Ask Slashdot: Do You Use Markdown and Pandoc?
BartlebyScrivener writes "I am a author, screenwriter, law prof, and a hobbyist programmer. I love MacVim and write almost everything in it: Exams, novels, even screenplays now that Fountain is available. I use LaTeX and WordPress and so on, but several years ago I discovered Markdown and the wonderful Pandoc. I searched Slashdot expecting to find lively discussions of both Markdown and Pandoc, but found nothing. Do Slashdotters look down their noses at these tools and do their work in HTML and LaTeX? I can't imagine computer geeks using Word instead of their favorite text editors. If not Markdown and Pandoc, what tools do Slashdotters use when they create documents that probably need to be distributed in more than one format: HTML, PDF, EPUB or perhaps even docx?" And then there's DocBook, LyX, and a host of other markup languages. What do you use, in what context?
reStructuredText. It is a lot more powerful than Markdown while still maintaining beauty. It is a bit more strict with formatting though, as is always the tradeoff for more power.
I use the Rmarkdown flavor of markdown.
Markdown is gaining popularity again thanks to the environment and community around GitHub. That said, I afraid that most people still would prefer wysiwyg systems, as it easier to use than 'feel like a programmer' when using weird codes such as HTML, MarkDown, bbcodes, MediaWiki etc.
I can't imagine computer geeks using Word instead of their favorite text editors.
Indeed, everyone has his favorites. People have argued text editors to death. Find what works for you and use it (and stop flaming us). Also, programmers write software, not documentation. All document conversions are left to the secretary (and she may do it in any way she pleases).
I think you have a bunch of axis going on here at the same time.
1) Open source tools vs. closed source
2) General use vs. specialized
3) WYSIWYM vs. WYSIWYG editing.
Let's start with (3). I generally like WYSIWYM more than WYSIWYG environments. That being said WYSIWYG is very useful for content where consistency doesn't matter as much. While there are WYSIWYM systems for presentations but they only really work for data publishing better than WYSIWYG. I think a fairer comparison on this axis might be LyX vs. Word or FrameMarker vs. Word. Going up something like higher end composition engines vs. something like InDesign.
Then there is general use vs specialized. LaTeX is optimized for text with equations which is specialized. Fountain is for screenplays. That's not the same as a product like Word which is all purpose.
Finally open source vs. closed source is a complicating factor. When we consider Word do we consider all the myriad additional cost extensions, for example SharePoint or just the core product? For OpenSource do we consider the entire platform and how these components work together? More importantly closed vs. open goes beyond editing to broader computing issues.
Because it has C-x M-c M-butterfly.
LyX for reports and paper writing, with some raw LaTeX sprinkled in. I have a short python script that can merge multiple documents so I don't have extremely long bulks of content. And there is the python environment for LaTeX, which is awesome with sympy and matplotlib.
LibreOffice for quick documents perhaps with images for a quick WYSIWYG. There is no reason to do everything in text, for some (many?) things the feedback loop is just way too long.
reStructuredText for code documentation, anything that should be readable from command line, but also can be used to make pretty html websites. Sphinx helps. rst exports into plenty of formats via docutils (just expand for rst2* commands).
Converters to epub for stuff I want to read on my ebook reader (from Calibre).
For the text formats my usual editor is gedit. Simple and plain.
It doesn't matter much if you prefer Markdown or rst, that's like arguing which wiki has the best syntax. There are plenty of utilities that can cross-convert and export (pandoc is one of them).
NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
I use asciidoc as a quick and easy way to take minutes of meetings. I usualy mail the participants a quite decent-looking pdf version of the minutes immediately after the end of the meeting. I also use gitit as a personal wiki. I must admit that I sometimes confuse the syntax of the markdown used by gitit with the quite similar asciidoc. I could switch to pandoc for my minutes, of course, but the pdf produced by asciidoc looks a lot nicer than pandoc's
If you're writing a novel, a tool like Scrivener is a lot better than a text editor of any particular sort. It's designed for writers and makes it easy to do things like keep track of and organize all your notes, which if you're writing a novel is going to be far more important than whatever command is used to change the font.
-- "So they told me that using the download page to download something was not something they anticipated." - Bill Gates
He didn't say he was a good author...
#DeleteChrome
A bit of search told me that it's actually Mou, not Moc.
I use Emacs for writing; most of it is in XML (usually DocBook, sometimes TEI, occasionally XHTML). I use XSLT to transform it to LaTeX if I want publication-quality PDF, but more often the document is the input to other people's toolchains which want XML first. I occasionally transform to other formats (HTML, Word, or some wiki formats which are largely MarkDown-ish).
I author in XML because most of what I write involves quite detailed and very specific structure, and DocBook and TEI provide appropriate levels of markup for this. I made a conscious decision to go this way a very long time ago, when it was all still SGML, and I have never regretted it.
Most people don't have that level of specificity to adhere to. All the formats you mention have their areas of application, even Word, but there is a growing undercurrent towards using HTML5 as the default format, driven partly by the fact that Ebooks use it. The publishing industry is very interested, as they hate and detest Word, and only use it because its change tracking is useful and it has usable style-editing, which OpenOffice and friends don't have (ie they have no style margin like Word). It was very clear at the XML SummerSchool last month that there is growing support for HTML5 in editing tools, and some new advances in editorial control (eg systems like Xopus, FidusWriter, and Poetica) mean there may even be a way to escape from Word :-)
--
Disclaimer: editor interfaces are my thesis topic; I have no connection with any of the above except the XML SummerSchool.
...that any Slashdot posting opened up a new world to me. This is one of those - way too rare - postings. I use to write flat text, and hand that to secretaries or colleagues for formatting it into whatever they want or need: html, word, slides, whatever. Software documentation, to me, is generated javadoc - so basically html generated out of flat-text code comments. Of course I knew and know about the existence of LaTex et al.. Yet, as a software architect, I guess I have been, for decades, plain lazy. I simply write flat text in emacs or notepad++. Man, you opened up a universe to me !
Religous speak to God. Insane are spoken to by God. When all shut up, one can finally hear Shostakovich in peace
LyX for reports and paper writing, with some raw LaTeX sprinkled in. I have a short python script that can merge multiple documents so I don't have extremely long bulks of content.
\input{file.tex} is your friend, it's basically the latex equivalent of the include statement in many languages. It's particularly nice if you have a simulation, gnuplot etc. generating a splash of latex that you want to integrate in the full paper.
Escher was the first MC and Giger invented the HR department.
Markdown, Pandoc, and Vim/MacVim are my primary working tools for writing documentation.
I believed "Markdown and Pandoc" to be a work of 16th century French literature. By Alcofribas Nasier, is it not?
"Flyin' in just a sweet place,
Never been known to fail..."
As a web developer, I understand the need to allow users to create content. However, I consider full blown web-based WYSIWYGs (such as TinyMCE and CK Editor) to be terrible tools. Yes, they take care of most of the dirty details, but they also have the capacity produce bloated garbage markup. I've always found bbCode annoying. I've used a couple of Wiki syntaxes as well (MediaWiki, Jira), and find them only slightly less annoying than bbCode. Because I know HTML, I prefer to just write HTML when I know the final format will be HTML.
Markdown syntax is clean, succinct, and can be extended when needed. The vast majority of non-savvy users only need to do basic formatting (bold, italics, headlines, lists) and Markdown covers that very well, in a way that the user can't do much damage to the prescribed styling of the content.
I've very briefly experimented with LaTEX, not enough to have actually used it for anything. I was not aware of PanDoc, but it looks very interesting.
I like the emacs org mode (also available for vim, and even your mobile), though primarily for structured outlines/note-taking, its markup allows document formatting and it can export to a range of formats including PDF.
Notes, documents, TODOs, all in one format.
I wrote my own in Python; uses PostgreSQL to hold the data, gives me unlimited stylesheet and substitution capabilities, generates HTML or whatever I want directly. Table of contents, indexes in various formats, footnotes, endnotes (references), chaptering and sub-sectioning, local and global variables, image handling and conversions, etc. Works a charm. And since I wrote it, I can add to it, fix it, etc.
Here's an example of an output document:
SdrDx Manual
When I want to typeset something crazy, I do it in an image manipulation system and then shovel the image in; that's about the only thing I've run into that would require more work than I'm willing to put in.
I've fallen off your lawn, and I can't get up.
vi with Doxygen, since most of what I write is code. Also for other documents (yes, Doxygen is designed to extract markup from special comments, but it doesn't care if the input file is one block comment. Just start the file with /** and end with */). Makes sense to use the same tool.
FYI, Doxygen also understands some HTML and recently added a subset of Markdown. I use a few HTML and Markdown elements, usually for lists and tables.
For some documents, I use pure HTML, such as my resume. This gives me more control of the formatting. Also, MS Word understands HTML, so to provide a ".doc" file, I just make a copy with the .doc extension.
I have tried other tools, like LateX and Lyx, but Doxygen and HTML cover %99.9 of my needs. (Wold be nice if Doxygen supported reStructuredText and MediaWiki markups.)
(FWIW, I prefer MediaWiki markup over Markdown. My biggest complaint with Markdown as compared to MediaWiki is the link syntax and link handling. I think MediaWiki links are much better than Markdown links.)
Don't try to out wierd me, three-eyes. I get stranger things than you, free with my breakfast cereal. --Zaphod Beeblebr
For other things, Openoffice does everything I need. When I need a certain kind of fancy presentation I use Keynote.
"She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
Since wiki syntax has been mentioned, I'll jump in.
I now use wikitext for nearly all my writing, usually using gedit as the editor. My writing does not require the level of formating that LaTeX and its ilk are capable of. A good portion of my writing is in collaboration with others, and I want to grow that percentage since the text is consistently better when more than one person is stirring the word pot.
I've used several wiki engines since about 2003. At the moment Dokuwiki is my favorite: it has good ACL security, it handles embedded images and files okay, and it produces clean HTML5 pages. Mostly it behaves like Markdown in the way it gets out of my way when I'm using a plaintext editor.
An advantage of Dokuwiki and wikitext is that the semi-wysiwyg browser editor allows wider collaboration and effective proof-reading, by persons who don't want to learn a mark-up language, even a simple one.
When I need to do a brochure, business card, or other authoring task which is more about presentation than writing, then I use other tools. Inkscape is good, and I have done posters and slides in Gimp with little effort. But that is more about publishing than writing.
Will
Depends on what you're doing. You can't use grep, specifically, but you can search by regular expression in LibreOffice.
That's one way to slice it, but not the only way. I think publishing has an unhealthy relationship with LaTeX. Markup languages have come a long ways since 1980. Why are we so stuck on this one? Another language that is (1) more human readable (2) easier to machine parse (3) renders to equal or better quality (4) is wysiwyg friendly, should be quite possible.
I won't join Slashcott. OTOH, If Beta goes live, I just won't be back until it's fixed. Sorry Dice.
If you want wysiwyg markdown: on Windows, check out texts.io. On linux, Uberwiter. On Mac... there are probably lots of options besides texts.
If you write fiction, or any book-length texts (a Ph. D. thesis or academic papers, frex), you owe it to yourself to check out Scrivener. It's available for OS X, Windows, and in beta for Linux. Closed software and charged for, but worth it.
As someone that writes a great deal both for online and offline distribution, I use markdown *extensively*.
It's fabulous for the grunt work of formatting: headers, italics, links. The rest can be done by tossing in HTML, XML, or whatever other markup code is needed. It's fabulously lightweight and fast and unobtrusive.
In fact, for all those "I wrote my dissertation in LaTeX, *sniff* *sniff*" people here on Slashdot, how about this:
I wrote my dissertation on an iPad 2, in Daedalus, in markdown, embedding HTML or other kinds of markup as necessary, then formatting it all in a final pass through a couple different parser/formatters. Sometimes the right tool for the job is the one that you have to think about the least—the one that stays out of your way—and for me, that's markdown+Daedalus.
(Yes, I'm prepared for the onslaught of accusers, ridiculers, and doubters here—prepared to ignore them.)
STOP . AMERICA . NOW
...jEdit or gVim for entry, pandoc for conversion, Firefox for viewing in HTML. I take notes in markdown during tech meetings. It"s scary-fast to create good looking notes.
Its actually called Mou, sorry, its a markdown editor with instant rendered preview
In the past century, there was also this neat tool called Scribe which spawned a bunch of similar tools, such as Skribe, Scribble, and Exscribe. Essentially, a rather light-weight semantic markup (like Markdown etc.) but at the same time extensible and programmable (like TeX) in a sane language (unlike TeX) and with multiple backends (again, unlike TeX).
I wonder if there's a space in the lightweight markup space for a better markup than Markdown. That's what many people use, but it sure is limited, and not even the extensions themselves are extensible.
If you haven't done it yet, I also advise you to take a look at Pandoc and Asciidoc. These are rather complete tools that have some pretty neat functionality. (If you know them, perhaps this mention will be useful to someone else at least.)
Ezekiel 23:20
The flamebait mods are obviously from people who use the other editor.
I am TheRaven on Soylent News
\include{chapter} is even better, as it lets you do things like compile only a single chapter (but with correct page numbering and such) when you're working on something specific. \input is a lot more low-level.