Re: Quanta+ for KDE 4 - GSOC

Andras Mantia <[email protected]> Thu, 25 Feb 2010 13:37:37 +0200
Newsgroups gmane.comp.kde.devel.quanta
Message-ID <[email protected]>
--===============0254098530==
Content-Type: multipart/signed;
  boundary="nextPart1995428.91LK3fE2Fv";
  protocol="application/pgp-signature";
  micalg=pgp-sha1
Content-Transfer-Encoding: 7bit

--nextPart1995428.91LK3fE2Fv
Content-Type: Text/Plain;
  charset="iso-8859-6"
Content-Transfer-Encoding: quoted-printable

Hi (again)!

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

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

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

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

5) HTML preview. I mean, not WYSIWYG, but just showing the current=20
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=20
code, you just get feedback how it would look. With PHP of course the=20
code needs to go through a preprocessor, like a web server (this was=20
supported by Quanta3).

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

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

Andras

PS: You might post your question on the user list ([email protected]), you=20
will get more feedback there.

--nextPart1995428.91LK3fE2Fv
Content-Type: application/pgp-signature; name=signature.asc 
Content-Description: This is a digitally signed message part.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.12 (GNU/Linux)

iD8DBQBLhmEHTQdfac6L/08RAupcAJ0TlMN5bH5TXvgxgmfRxpDwo6GDBgCgwzpg
fsnDWATEBzHn0i/UiAcBbzU=
=Dy2B
-----END PGP SIGNATURE-----

--nextPart1995428.91LK3fE2Fv--

--===============0254098530==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
quanta-devel mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/quanta-devel

--===============0254098530==--