Idea about connecting console and gui

Hi. I was trying to sent my idea to opensuse-factory mailing list, but my idea was rejected.
I asks why? I asks also about your’s opinion’s and waiting for suggestions. XML can be easier processed than normal text, because we have got semantic information. It could also be used to generate nice UI, using web browser engines.
<— Message
Hi, this is the Mlmmj program managing the <>
mailing list.

The message from <slawek@lach> with subject “Connecting both gui and
cui/cli world?” was unable to be delivered to the list because of an access
rule set up by the list administrator.

(The denied message is below.)
Encapsulated message
[opensuse-factory] Connecting both gui and cui/cli world?

Many years ago I have an idea to create a way console, but event-driven programs to talk
with special daemon. This mechanism would been similar to Windows console
mechanism, but in this case daemon would be web browser. I also plan to create an
library, which could read output of program as XML and translated it to text + escape
sequences or HTML. It will parse xslt files, stored in per-application basis.
This daemon could been called bonsole. I didn’t have manpower and even good
computer to compile Firefox (Firefox needs more than 8 GiB of ram to compile on
OpenSUSE with Plasma).

Now someone just realized similar idea.[1] . He/She allows to generate HTML or other output by nmap. What about
discuss about similar approach?
Using web engines to create rich applications is very good idea, in my mind. Even for
console - we could output just text, using xslt stylesheets and could provide an
standardized XML application (XML sub-language) to have certainty our applications will
be correctly rendered under console. Because XML is extensible, application could deliver
many additional information, such like images. And… user could modify or pass different
path to xslt stylesheet, so he/she would get different look/feel or include javascript to
modify behavior.

Lach Sławomir.
<— End of message

WIthout going into the content of your post: your mail was rejected because it was html formatted, which the MLs don’t accept. Resend the message in plain text.


that sounds like an interesting idea. If I understand it correctly, you want to create a way for applications to communicate in two ways - using a traditional text console and a web console. For the web console part you want to modify a browser to be able to communicate with the application though a translator that will generate HTML based on an XML format outputted by the application and for the text console you want to use a translator from the same XML format, but to the plain text + escape sequences to be displayed in a terminal (correct me if I’m wrong).

I’m thinking that perhaps libYUI could be ported to use the communication protocol you suggest - this could theoretically enable using YaST with a web interface.

As of the resource problem - you can use the openSUSE Build Service for building.


Perhaps not surprisingly,
What you’re describing has been around for awhile, there are many different implementations, applications and use…

One noteworthy “heavy client app” implementations is Microsoft’s XAML.
Practically everything from the GUI to the code behind is expressed in XML.

In the cross-platform world,
What you’re describing is most often has been implemented as a web application, and has been described various ways, ie event-driven, responsive and commonly seen in Javascript based frameworks based on HTML5, Javascript and CSS3. Although they use raw XML sparingly, there can be extensive use of JSON which is a close cousin of raw XML, but with more of a structured definition of objects (I’d consider raw XML as structured but more ad hoc).

For this reason and what you propose in your idea, React and Angular have been wildly popular web application frameworks for the past several years, companies and developers, the benefits are so attractive that there has been a massive rush to use these technologies as they were formulated instead of waiting for clear specifications. And, for that reason also maybe only more experienced coders should seriously adopt these leading edge frameworks because they undergo changes weekly.

For the past decade, there have also been a lot of work creating foundation technologies for creating these more advanced frameworks, like automated work flow tools so that complex solutions can be re-built with a click (eg gradle, grunt) and more stable frameworks like backbone, jquery (which is used by over 75% of all websites on the Internet supposedly)

What you’re proposing is very cool, but you’re a bit late to the game as a basic concept… From mere configuration to entire apps, XML and its relatives JSON and HTML have been used to build apps for quite awhile now. But, despite having been around for more than a decade there is still plenty of room for innovation if you think of something that is not already done or can be improved upon.