Interview with Jeroen Wijnhout of Kile

Jeroen Wijnhout, the current maintainer of the TeX/LaTeX editor and GnuPlot frontend Kile was interviewed for kde.de's monthly series "Application of the Month". The interview was conducted in English by Andreas C. Diekmann who kindly provided us with this English transcript. Read on for Jeroen's personal background, how he got involved and the upcoming features of Kile 1.6.

How did you get involved in this project? What's your job in this project?

After using Kile for a while, I decided that I would like to implement some features and fix some bugs. Therefore I contacted Pascal Brachet, the developer of Kile at that time, and offered him my help. It turned out that he wanted to stop the development of Kile. So I got more than I bargained for, the project was in my hands now. Since Pascal used to work alone, I had to take over all his jobs, which means that I'm project manager and developer at the same time. But, many developers of the KDE team have helped me since then. However, if anybody is interested in taking over some of the project management tasks I would be very pleased.

What was/is your motivation to work in such a project?

Well, programming is alot of fun and even more so if you can work on a program that is used by many people all over the world. Editing TeX/LaTeX source files can be a pain sometimes and, since I love KDE so much, it would be a pity if there wouldn't be a tool available for KDE.

As I could see the previous developer was Pascal Brachet. Who else should be mentioned when we talk about Kile?

The list is pretty long. There are translators, packagers and a few people who provide patches. Very helpful are some of the more experienced developers of the KDE team, such as Laurent Montel. They guard over the quality of the code.

I think the next version will be 1.6. Which new feature or changes may we
expect?

From the technical point of view, the difference will be huge. Many parts of the program are rewritten. But the most important change will be that the editor for Kile will be the same editor as is used for Kate. This editor is much more powerful than the current editor of Kile: flexible syntax highlighting, block selection, editing commands, to name just a few. A modest form of project management, a feature much wanted by the users, is also planned for version 1.6.

Is Kile sponsored in any way?

Kile is hosted on sourceforge.net. Sourceforge offers a location for a website, a download area, mailinglists and much more. The source code of Kile is located on a KDE CVS server. We do not receive any direct financial support, though.

Working with Kile requires knowledge in TeX/LaTeX thus it's not as easy to use as KWord for example. What would you say to convince someone to produce his documents with Kile? :-)

Certainly, it requires some time to learn TeX/LaTeX. But compared to KWord, for example, TeX/LaTeX is much more powerful. Some users do not need the power of TeX/LaTeX, they are invited to use KWord. If you do need these powerful tools, you want to make your life as easy as possible, by using tools that form a userfriendly shell around the command-line programs you need to prepare a
document with TeX/LaTeX. Kile offers such a shell, but it also helps you editing the TeX-source files. For example, it offers a way to insert LaTeX commands very easily, jump to lines with an error in it or view a graphical representation of the structure of your document (sections, chapters etc.).

What are your favorite tools under KDE (apart from Kile ;-) )?

Apart for the development tools, such as KDevelop & Cervisia, I am fond of KMail and KOrganizer, they help me a great deal to manage the Kileproject.

Kile is published under the GPL and also another example that great software doesn't have to be expensive and that it even could be offered for free. What do you think about Open Source?

Since I come from an academic background, it is very natural for me to share my results with others. Scientists are used to sharing their results, openly and freely. It allows other scientists to build upon the results of others and make progress more quickly. This is similar to the open source environment, sharing your code with others allows the community to develop software more efficiently. In other words, I think open software is a very valuable asset. It prevents developer from having to reinvent the wheel every time they start a new project.

Do you have a "vision" or wishes for the "Desktop Of the Future"?

Ideally, in the future desktops will be based on "Open Standards", not neccessarily open software, although that would be great. Suppose for example that the document formats for MS Office and KOffice would all be based on the same open standard. Users could then share their documents without any problems, it wouldn't matter if you are using KDE and the other person is working on a Windows box. There is a role for the government here, if they would be the first to use software based on open standards, the rest might follow. Fortunately several European governments are starting to support open
standards.

How does the hard- and software look like you're using?

I'm using SuSE 8.1 with the 2.4.20 kernel on a AMD Athlon XP 1800+. SuSE is great, because if comes with so many packages, just everything you need (and much more). For my work Mathematica is very helpful, but this program is not free and can be quite expensive if you don't work for a university.

Tell us a little bit about yourself. What do you do for a living? How do you spend your free time (if there's any ;-) )?

Well, I'm 26 years old and live in a small town nearby Amsterdam. The University of Amsterdam was so kind to offer me a PhD position a few years ago in the String Theory group of the Institute for Theoretical Physics. This leaves me little free time, and lately most of my free time was spent on the development of Kile. But if I'm not working on Kile I like to spend my free time on playing the guitar and cycling.

Dot Categories: 

Comments

by Jos (not verified)

Kile is a very nice program. I'll probably not use it since I've grown too accustomed to vim, but I can see that for many people kile can be really useful. The fact that data plotting is integrated is a nice plus. Kile looks a lot like WinEdt, a program for windows that makes editing LaTeX text easier by providing convenient buttons for quickly accessing commands.

I'd like to ask some more questions that are not directly KDE related but related to scientific text editing.

- When editing text for LaTeX there a number of tools already. These tools can be placed in two categories: WYSIWY[MG] and plain text editors with easy buttons. In the first category one has LyX and TeXmacs, the second, one has vi, emacs, kate etc. What is the unique selling point of kile for being chosen as a LaTeX editor?

- Do you think LaTeX will be replaced by an XML based language soon? Do you think it would be desirable, since the LaTeX syntax is so inconvenient in several places (\alpha, \beta are pre-unicode relics, adding spaces with ~ is silly and a space after a command is ignored).

- Will you implement a possibilty for unicode symbols to be shown as unicode symbols instead of \alpha commands? This would be a real benefit. I'm using a vim plugin for this but it's not really perfect (you need a unicode aware terminal or [kg]vim).

- What do you think of data plotting solutions under linux at the moment?

by Thomas (not verified)

> - What do you think of data plotting solutions under linux at the moment?

I second that....
That's what bugs me most at the moment. Excel may completely unsuitable for plotting graphs, but so many people are using it even for scientific work, because it's just sooo easy to use. Excel is far more responsive than OO.calc and has the nice option to put a chart on a single sheet (what OO.calc is missing...)

I've been using QMatplot (very nice program) for some time now, but it's main (and only?) developer just disappeared without a word or so and was never seen again... so QMatplot seems to be a dead end by now. Gnuplot is what I use most at the moment. It's a working horse. it just works and you can feed it with very large amounts of data. It eats matrices of 5000 x 5000 points without a burp... and output is good quality as long as you don't want to have colors in the game... How do you get a colored 3D-surface plot with gnuplot using colour scale for the heights?

Yeah... I know there'S OpenDX (http://www.opendx.org/) but that's just like breaking a fly on the wheel...

by jadrian (not verified)

IMO, what we really need is a really good GUI frontend to open source Numerical and Algebraic Computing Systems (octave, maxima, yacas).
I know there are some frontends (even kde ones) around, but I stress the "really good". It would be a killer application and IMO it is so important as a providing a good office suite.

If, on one hand, there are more typical potencial office users than NAS/CAS users, the potential users of NAS/CAS are still many and easier to reach because there are no open source alternatives and they are an easier public (more tech).

Again I stress that I'm talking *very good* GUI, not just another simple frontend.

J.A.

by Ravi (not verified)

Actually, I did start writing a unified front end for Yacas, Octave, Macaulay2 and Singular. You can find it under kdenonbeta/frontman in KDE CVS. The development on it is temporarily halted until the kmdi API in kdelibs stabilizes since the current interface based on KJanusWidget is not extensible. The idea is to create something similar to KDevelop, except that it is geared towards interpreted languages.

One wish I have is for khtml to display MathML. I tried to write support for it but it is very hard to extend khtml that way. Ideally, I would like for khtml to load a library on demand when it sees an embedded objects of certain types such as MathML, SVG, etc. This way one can operate on the DOM tree easily.

On QMatPlot: I sent the author several bugfixes for the widget library, but I did not receive any response. In case anyone is interested in the bugfixes, please email me privately. Note that I fix bugs on in the widget library and not in the app itself. If anyone wants to take over maintainership of the application, I'd be glad to lend a hand with widget library part.

Regards,
Ravi

by jadrian (not verified)

I only saw your answer now :)
It would be great to have such an unified front end available!
About MathML, in case you're interested there is already a whishlist report:
http://bugs.kde.org/show_bug.cgi?id=30526

J.A.

by nic (not verified)

I've been working on a scientific visualisation program for the past year that I hope will become part of a new KDE module (KDE Engineering). It is currently called KVisualiser and is a combined high level plotting program and low level scientific visualiser, using the VTK library for graphics.

If anyone is interested, I should be making an initial announcement in a week or so. I have started a website at kvisualiser.free.fr, and there is information there on the design and the code that I have written so far. I am (of course!) looking for collaborators, and I think this is going to end up being a biggish project. It currently stands at about 20k loc and there is a long way to go yet. I'd appreciate any comments.

by Thomas (not verified)

It seems you've already invested a fair amount of work into it. I'm looking forward to the announcement and the source-release...

by Anonymous (not verified)

> I've been working on a scientific visualisation program for the past year that I hope will become part of a new KDE module (KDE Engineering)

How about finishing and releasing it stand-alone first? And a module is for more than one program and if there is a need for it.

by anon (not verified)

> How about finishing and releasing it stand-alone first?

Agreed.

> And a module is for more than one program and if there is a need for it.

No, some rather big programs can get their own modules.

perhaps kdeedu for this project though.

by nic (not verified)

Well, the idea behind KDE Engineering would be to have a set of complementary applications. KV would just be the visualisation component for any application that needs scientific visualisation. Other existing applications would also link in, for example KDevelop could be used for the programmig environment component, etc..

by AC (not verified)

> How do you get a colored 3D-surface plot with gnuplot using colour
> scale for the heights?

With the pm3d plotting mode, see

http://www.sci.muni.cz/~mikulik/gnuplot.html

by Thomas (not verified)

hurray... drool.... Now if I just knew that 2 weeks ago it would have saved me a lot of trouble..

by Carsten Niehaus (not verified)

Hi

I am plotting quite a lot data and am using xmGrace:

http://plasma-gate.weizmann.ac.il/Grace/

The GUI _sucks_ but the app itself _rules_. And
in case somebody has to much spare time: xmGrace is GUI-independent,
you could simply kick Motiv or whatever it is and write a nice
Qt-Frontend for it.

by aleXXX (not verified)

Yes, I also did a lot of plotting using xmgr. Leaves with approx. 1 million open windows, but gives great results, nice graphs and can do things like digital filters, FFT, histograms, numerical integration and other stuff.

I'd recommend the "old" version of xmgr (where the development has stalled), instead of the new one, the last time I tried it was quite buggy and the UI was "different", but not significantly better.

A KDE frontend would be a nice thing :-)

Bye
Alex

by Raj (not verified)

Hi, Does any know how to plot two x-axis with one y-axis?..for e.g., if i have one set of y values and one set of x values....one can plot these values in xmgrace...but in addition i need to multiply all x-values by a number and then want to plot it in the same plot...i.e., two x-axis (one on top and other in bottom) and one y-axis..
thanks
raj

by Jos (not verified)

This might be a good future alternative to LaTeX:

http://tbookdtd.sourceforge.net/

It's a DTD for scientific texts that allows for figures and math.

by Thomas (not verified)

This might be a good future alternative to LaTeX

and if I did not overread something important it's merely an additional abstraction layer to LaTeX which itself is already a layer for TeX...

It's main advantage may be direct html output. Of course you can use latex2html for that purpose, though I don't know if tbook may convert formulas to mathml (latex2html will output pngs to display equations and math symbols)

by Jos (not verified)

Formulas in tbook _are_ mathml. So tbook is not just an abstraction of latex, it's a document type for scientific texts. These texts can be converted to LaTeX, but that's just one of the possibilities.

by John Allsup (not verified)

It may be in future, but what does one use to edit stuff written in tbook?
(A text editor is sufficient for document production in LaTeX and an augmented editor such as WinEdt makes things that much easier. The same cannot be said of tbook since you can't edit mathematical notation in any efficient manner (drag and drop with the mouse is not efficient, nor acceptable in the face of having LaTeX as an alternative.)

John.

by jadrian (not verified)

Not the author but I'll comment anyway :)

" - When editing text for LaTeX there a number of tools already. These tools can be placed in two categories: WYSIWY[MG] and plain text editors with easy buttons. In the first category one has LyX and TeXmacs, the second, one has vi, emacs, kate etc. What is the unique selling point of kile for being chosen as a LaTeX editor?"

I'm an xemacs user :) anyway I know that for many people it would be better to have a native KDE application for editing LaTeX. It's a matter of look and feel consistency, integration capabilites, and using kde specific features like working via ssh! I really miss that in Xemacs.

" - Do you think LaTeX will be replaced by an XML based language soon? Do you think it would be desirable, since the LaTeX syntax is so inconvenient in several places (\alpha, \beta are pre-unicode relics, adding spaces with ~ is silly and a space after a command is ignored)."

I don't see how both these aspects are related.
In the beginning you also couldn't use any isolatin characters in LaTeX, some editors made the task easier for you by accepting isolatin chars and converting the buffer to the equivalent ASCII LaTeX codes, now by importing the appropriate package you may use themdirectly. I hope that in the future I might use unicode with LaTeX too.

" - Will you implement a possibilty for unicode symbols to be shown as unicode symbols instead of \alpha commands? This would be a real benefit. I'm using a vim plugin for this but it's not really perfect (you need a unicode aware terminal or [kg]vim)."

Agree, this is not a request for kile though, but for kate.
I've made such a whishlist report (58340). Details here:
http://bugs.kde.org/show_bug.cgi?id=58340

J.A.

by Jos (not verified)

The vim plugin I use (and wrote) is available here. It has a useful list of characters and a description (in the code) of how the codes may be replaced reversibly, which is important.

http://www.vandenoever.info/software/vim/

by jadrian (not verified)

Very nice. Mind if I add your url to the whishlist report?

by Jos (not verified)

Of course not! I'm honoured. :-)

by John Allsup (not verified)

Regarding \alpha, etc. What is probably wanted is an easy way to get between
e.g. ASCII* only and unicode representation (round trip capable at that.)
The reason being that it can be inconvenient to need to take your hands off the keyboard in order to insert symbols: for example, I can type \alpha in the time it takes to get my right hand off the keyboard to the mouse (before I've done any hunting around to find the right symbol.)

* When I say ASCII, I really mean just what can be input using the keyboard, and using as little inconvenient EscapeMetaAltControlShift stuff to get out the stuff used most commonly (e.g. greek characters, math symbols, etc.)

So far as an XML language is concerned, the problem is input. You don't want to be using a text editor to typeset large technical documents using XML, unless the editor takes care of it for you. The XML stuff should require less typing of \commands\ than \LaTeX\ does (which is IMO too much.) Then e.g. MathML is impossible to input quickly at present (compare the time with that required to type the LaTeX input for an equation: e.g. with a few simple macros,
something like \set{x\stc x\not\in x} is possible. The ability to write macros like this is a great 'programmer accelerator' for using LaTeX, and this should be present in whatever follows LaTeX (else like e.g. MS equation editor, or KOffice's equivalent, inputting maths will be too cumbersome.) In short, the move to a _convenient_ XML language will necessarily preclude the possibility of editing documents using a text editor, and this in turn will make editing applications more complicated, more or less requiring an IDE of some sort for practical usage. This will, of course, hinder making it widespread.

A lot of thinking needs to go into not just the document format of an XML replacement for LaTeX, but the entire workflow of document production from editing to printing to web-publishing, and have usability issues thought through properly. This will not be a quick thing, nor will it be any less complicated than what we have with Latex, though its implementation will probably suck a little less (p.s. yes, I have written and modified LaTeX packages, and delved around in the internals in order to get a few things done.)

John.

by Mike (not verified)

I'm a newbie. When I realized I was actually capable of creating my own pdfs, I was ecstatic. I only recently learned how much more was possible with pdfs created with free software when using LaTeX. Compared to the TeX tools, using Ghostscript just seems lame (I could be wrong -- this is just based on my limited investigations).

Kile has been a joy to use to mark up text that I then used pdftex and hyperref to create pdfs with hyperlinked table of contents... something that I never would have thought possible without buying an expensive product from Adobe!

by notMe (not verified)

>Compared to the TeX tools, using Ghostscript just seems lame to the TeX >tools, using Ghostscript just seems lame

The normal latex compiler actually generates a dvi file and it's ghostscript that converts it to .ps and .pdf :) Ghostscript is not that lame

by Mike (not verified)

Can Ghostscript produce pdfs with hyperlinks and/or fillable form fields?

by Pato (not verified)

Ghostcript can produce pdfs with hyperlinks when using hyperref package properly.

by Alex (not verified)

How can you use hyperref package? How is it use? Can you send me a code or suggestion on how to incorporate hyperlinks in PDF? Thank you.

by Heini (not verified)

I am a admirer of the editor program textpad under Windows that is a slim but powerful shareware text editor, i use it as default under windows. So I like it very much that Kile becomes more and more closer to Textpad in every version. But a execution of a compiler or java sdk is still better in textpad implemented.

However I wonder why there are three editors under KDW when kile already serves me best.

by anon (not verified)

Are you sure you mean kile and not kate?

kile=powerful latex editor
kate= powerful editor

by Thomas (not verified)

If you're speaking of kate (and not of kile):

kedit is gone in newer versions of KD_E_.... it's obsolete
kwrite and kate use the same editor component, but kwrite follows the 'just a basic editor' approach, whereas kate is more and more becoming a lightweight IDE...

by Anonymous (not verified)

> kedit is gone in newer versions of KD_E_.... it's obsolete

Hu? It's still there in current HEAD.

by anon (not verified)

> kedit is gone in newer versions of KD_E_..

kedit is very much alive, mainly because kate/kwrite doesn't support BiDi

by Wurzelgeist (not verified)

I tried it under Knoppix, but it didn't work, got error messages I could'nt resolve.

I also miss a kind of "rapid action" options, I think Kile shall be delievered with a few sample texts in order to explore the tool. It makes it easier to start as a beginner or to check whether your program is wrong configured OR you just didn't get it, made mistakes ecc.

by anonymous (not verified)

Are you planning add a interface for use kile with others plot programs? like
http://fung-calc.sourceforge.net or http://kmatplot.sourceforge.net

by TimLinux (not verified)

I just wanted to say thanks Jeroen and other developers involved with kile. I used it to write my thesis and it saved me hours of headaches going through the steep learning curve of latex (which was well worth it). I am even more grateful in that it allowed me to stop using ms word which is a nightmare program to try an write a thesis in. So thanks very much. Here are some other things I would like to see in kile:

- A nice user friendly frontend to the makebst program that allows you to easily define your bibliography style.
- A package browser that will show a list of available packages on ctan with a short description next to each, lets you do searches and then automtically downloads and includes selected packages into your document.
- A decent table and long table editor
- A document options dialog that lets you manage common properties like line spacine, in text citation format, document font size, page numbering format, and the fancyheader options.

Many thanks for a brilliant program!

by André Somers (not verified)

>- A nice user friendly frontend to the makebst program that allows you to easily define your bibliography style.
Please file a wish for that on http://bugs.kde.org/

> - A package browser that will show a list of available packages on ctan with a short description next to each, lets you do searches and then automtically downloads and includes selected packages into your document.
You mean like this wish? http://bugs.kde.org/show_bug.cgi?id=65360

>- A decent table and long table editor
Please file a wish for that on http://bugs.kde.org/

>- A document options dialog that lets you manage common properties like line spacine, in text citation format, document font size, page numbering format, and the fancyheader options.
Please file a wish for that on http://bugs.kde.org/

These are all good ideas (IMHO), but they will be lost if they are not inserted in the bugsystem.

by TimLinux (not verified)

Thanks - I have added them to the wishlist.