[prev in list] [next in list] [prev in thread] [next in thread] 

List:       quanta-devel
Subject:    Re: [quanta-devel] Quanta+ for KDE 4 - GSOC
From:       Andras Mantia <amantia () kde ! org>
Date:       2010-02-25 11:37:37
Message-ID: 201002251337.44608.amantia () kde ! org
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


Hi (again)!

 I will list some of the key points in Quanta that I think made it 
either unique (at that time) and powerful. As I told on IRC, of course, 
the one who codes decides which is more important for him (you) and 
which is more fun to work on.
1) First of all, custom XML support. I used Quanta to write different 
kind of XMLs, like the KDE feature page, XMLGUI, Quanta's own language 
definition types, etc. The abbility to load the DTD (or some other kind 
of definition file) for an XML varianta and get basic features, like 
autocompletion, document tree, validation and error reporting, tag 
editing, was very useful. Kate has some kind of XML support, at least in 
KDE3 times it had autocompletion, but wasn't that powerful. 
Unfortunately HTML!=XML, so there were some HTML specific code, but it 
can be done in a way, that you focus on XML and add the strange features 
of html (like possibility to ommit closing tags) later.

2) Autocompletion that is context aware, so it won't just blindly show 
all the XML tags, but only those that are valid at that point. 

3) document tree overview and error reporting. Related to 2 and at least 
in Quanta3 they were basicaly the same functionality with a different 
view. Document tree helps a lot to overview the structure of your 
document and spot problems, like missing closing tags. The error 
reporting just helped and shown the same problems in a different 
toolview.

4) Custom toolbars and actions. I know you mentioned like something you 
would not use, but I think it is  very powerful and usable also in other 
parts of KDevelop. This was kind'a working and mostly Quanta indepent, 
when I stopped to work on Quanta, but of course KDevelop changed a lot 
meantime. The idea is that you can create actions (that can be 
integrated functionality, external scripts, etc.) and you can organize 
them in toolbars, and of course assign shortcuts to it. The benefit is: 
easier to extend Quanta (both for the user and the developer for the 
next version), actions/toolbars can be shared, easy to create useful 
toolbar packages for different XML languages. Check the Quanta3 docs 
about what they are, how they worked. So they were not only to introduce 
simple text, but were much more. E.g code formatting or running 
htmltidy, xmllint, even showing the page in an external browser was 
implemented with the help of the action. You could eg. run an external 
script to process the selected text and replace with something else.

5) HTML preview. I mean, not WYSIWYG, but just showing the current 
content of the document. If that is in a different view, and updates on-
the-fly(of course with a delay), even better. So the editing is still in 
code, you just get feedback how it would look. With PHP of course the 
code needs to go through a preprocessor, like a web server (this was 
supported by Quanta3).

6) This feature was unique, but underutilized: event actions. Related to 
4) you could assign actions to certain events, like opening the project, 
saving the file, opening a file, etc. A good idea IMO and not XML/HTML 
development related. Check the Quanta3 docs for a detailed description.

If I remember something else, I will post. :) E.g dialogs for tag 
editing although nice, I think it is less important, if autocompletion 
works fine. 

Andras

PS: You might post your question on the user list (quanta@kde.org), you 
will get more feedback there.

["signature.asc" (application/pgp-signature)]

_______________________________________________
quanta-devel mailing list
quanta-devel@kde.org
https://mail.kde.org/mailman/listinfo/quanta-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic