Markdown, LaTeX combined in WYSIWYG editor. Is there any?
Solution 1:
Lyx comes to mind. It's technically a LaTeX editor, so it's maybe a bit more complicated than you're looking for. But it is basically WYSIWYG, and supports LaTeX. I don't know of any other document editors that do that.
Solution 2:
I suggest that you stick with LaTeX (only) for the following reasons:
- In using a markup external to LaTeX you'd need an additional program (editor or compiler) to
pdflatex
or whatever you use. This may be an unnecessary overhead and may make it so that it's harder to share your files due to portability (LaTeX is commonly used for technical texts but not some markup solution). If you stick with LaTeX you don't need this overhead. - In using a markup external to LaTeX you may lose some of LaTeX's tremendous customizability.
- You can match the ease of writing with a markup such as WMD in LaTeX.
I can think of the following ways to ease writing with LaTeX:
-
Autocomplete. Use an editor that suggest completion of phrases, e.g. to suggest
\emph{
if you start to enterem
. - Snippet management. Use an editor that lets you define snippets, e.g. if you write
em
and press Tab it will enter\emph{}
and place the cursor between{}
and place the cursor after}
as you press Tab again. If you use gedit see http://live.gnome.org/Gedit/Plugins/Snippets. - Use an editor in which you can use templates (either via a template function or snippets), e.g. so that you may write something short or press some keys to input a certain document class, some packages to load and the places the cursors between
\begin{document}
and\end{document}
. This way you'll start writing on a new document with LaTeX in an instant. - Use a setup that makes compilation and viewing of output easy. This means using an editor that suits you and that you know well. The following list might be interest for you https://tex.stackexchange.com/questions/339/latex-editors-ides. Also, you might find tools such as
latexmk
. - If you think some macro is verbose define your own macro around it. Say that you find
\longmacroname{}
verbose, then you can define a shorter macro name around it such as\newcommand\foo[1]{\longmacroname{#1}}
so that you may use\foo{}
instead. Note that this can be a bad practice if macro names are hard to understand for those reading your code.
Solution 3:
I recently discovered Zim, a very interesting editor, that is meant as a note taker and organizer, that supports a sort of markdown and the insertion of mathematical stuff, and is WYSIWYG.
Here is the description:
Zim aims to bring the concept of a wiki to your desktop. Every page is saved as a text file with wiki markup. Pages can contain links to other pages, and are saved automatically. Creating a new page is as easy as linking to a non-existing page. This tool is intended to keep track of TODO lists or to serve as a personal scratch book. But it will also serve you when writing longer and more complicated documents.
A "desktop wiki" means that we try to capture the idea of a wiki, not as a webpage but as a collection of files on your local file system that can be edited with a GUI application. The main focus is a kind of personal wiki that serves for all kind of notes: todo-lists, addresses, brainstorm ideas etc.
But we want to go further then just a wiki filled with random content. It should also be possible to use you random notes as the basis for more structured data: articles, presentations etc. Zim will not include tools to layout a presentation or something like that, you should use your office suite of choice for that, but it should be a tool that can deliver all the content for a presentation in a form that only needs a template and some layout before usage. Therefore certain features normally not found in wikis will be added.
and here are a couple of screenshots:
It is available in Ubuntu repos, but a more up-to-date PPA version is available too.
Solution 4:
I just discovered https://stackedit.io/editor. Apparently it is also available offline and includes many other interesting features aside from being a WYSIWYG Markdown+LaTeX editor/viewer.
Solution 5:
ReText and some conversion tools might be interesting:
- http://sourceforge.net/p/retext/home/ReText/
- http://fletcherpenney.net/multimarkdown/
- http://johnmacfarlane.net/pandoc/
- http://code.google.com/p/wkhtmltopdf/