In the screenshot here https://pauljmiller.files.wordpress.com/2015/05/lyx-main-scr... you can see there is a pane on the left with the document structure. At the bottom of that pane, there are four buttons, the right of which are an up and down button. Those four buttons (left, right, up, down) allow you to take a section of the document and move it around. The up/down change its position relative to other sections, and left/right promote/indent the section (e.g. change heading to sub-heading, or vice versa).
When editing large documents (e.g. > 100 pages), I find this invaluable if I wish to restructure the document.
MS Word has an interactive draggable outline view with the promote/demote/drag features ("View"|"Outline"), it also has a navbar outline view ("View"|"Navigation Pane" checkbox). You can use both combined.
On Word, if you move a heading up/down with the buttons (in "View"|"Outline") the heading moves but the text and sub-sections underneath it don't move.
Before:
MY HEADING
Some text
SUB-HEADING
Text about the sub-heading
SUB-HEADING 2
More text
If you take "SUB-HEADING 2" and click "move up", the document is now: MY HEADING
Some text
SUB-HEADING
SUB-HEADING 2
Text about the sub-heading
More text
What you want, when you move a heading, is not only to move the heading, but to really move the whole section, including: the heading, its text, and sub-headings, the text under the sub-headings, etc.LyX moves the sections around, Word only moves the headings.
I'll concede that dragging in Word does give the desired effect (I admit I never tried drag before you mentioned it, despite having used Word for 25 years and always wishing for that feature. I assumed dragging did the same as the buttons.) And the indent/outdent buttons do work take their contents with them as well.
Org-mode is certainly not directly comparable. But the output you get from Org-mode is comparable. Org-mode has excellent support for seamless export to LaTeX and LaTeX-generated-PDF, and many use it for writing, e.g., academic papers. Output is as beautiful as any other LaTeX tool, depends on the styling you build in. Here, e.g., is someone who modified LaTeX output to have an "Edward Tufte" look, once you incorporate the mods n your Emacs init file, conversion to this output happens automatically from the plain text Org file export: https://damitr.org/2014/01/09/latex-tufte-class-in-org-mode/
Also, I've seen this recently: https://innovationdilation.com/ but there are many many more like that.
LyX can not only do that, it can also move the sections around (with left/right/up/down buttons). This moves the heading, plus all text under the heading, any sub-sections including their text, etc. It's very useful for restructuring the document.
for markdown at least.
So for LaTeX if I do...
:g/^\\\(sub\)*section/p#
I get... 35 \section{Introduction}
37 \section{Setup}
39 \subsection{CSS Setup}
66 \subsection{JS Setup}
74 \subsection{HTML Setup}
92 \subsection{React setup}
113 \section{Components}
261 \subsection{Card Box}
541 \section{Old Chunks}
562 \section{Index}
566 \section{Code Chunks}
and... :92
Takes me to the React Setup subsection.If you're new to LaTeX, just grab LyX and go. It is a great gateway to LaTeX, and a reliable friend even if you wind up working in pure LaTeX, in order to collaborate or satisfy a formatting requirement, some of the time.
Thank you, LyX!
Edit: I took the opportunity to donate :)
LyX is really good if you need to produce simple documents and don't need to invoke a lot of special LaTeX packages. I think LyX hits a sweet spot between Microsoft Word and full-blown LaTeX.
If you need to do anything out of the ordinary (like use TikZ), LyX will still let you do it but it's going to feel a bit unwieldy. LyX is also quite slow on very large documents like dissertations. I recall the WYSIWYM rendering of math symbols and the old-school fonts looking a little unpolished compared to the PDFs generated by LaTeX, which bothered me a little. Many advanced LaTeX heads are sticklers for correct aesthetics. I know LyX can generate PDFs too, but if I wanted that, I'd rather write LaTeX code directly (more control, much more lightweight and responsive).
I eventually wrote my dissertation on TeXworks.
p.s. as mentioned in another comment, TeXmacs has a higher fidelity WYSIWYG than LyX.
Have you tried it again in the last year or two? I've found that scrolling, for example, has become a lot faster since I first started using it.
Eventually, though, I export to LaTeX and format the rest myself. I find that using LyX long enough, you don’t have the formatting commands available to you (and you end up with a ton of unreadable custom insets and inline TeX), and configuration becomes as complex as LaTeX itself.
It’s a neat project and I’ve been happy to see it steadily grow over the past 10+ years.
Does this mean a LyX user can't easily collaborate with others? Most people don't use LyX. If in a collaboration one author uses LyX and everyone else uses normal LaTeX (possibly with lots of packages, tikz/pstricks, etc.), will this cause problems---either for the LyX user, for everyone else, or for version control?
I've been a happy user of LyX for about a decade and I have to agree whole-heartedly with you here. Creating a new document in LyX invariably starts with me copying a previous .lyx file and deleting all the content because the preambles and associated settings are very large.
I suppose I should just make a template, but copying and pasting a file is easier, and I like the analogy with a mother dough...
If you have the skills please help out.
C++ and Python: https://www.lyx.org/GetInvolved
I like to write thoughts about what I'm writing, notes to myself etc and keep them within the document, knowing they won't be output in the final file.
Word's comments never work as well for this. For reviewing they're fine, for longer prose... no.
Especially important for me:
- track changes, which makes collaboration convenient (especially with less technically-oriented colleagues)
- math typesetting with instant preview
- integrated BibTex support, which makes citing easy
- easy to reference equations, tables, and figures in the text
The main issue I had at one point was producing usable HTML output from the LaTeX conversion process, but I found a tool that processes the LyX file directly into HTML which produced acceptabled results.
Tables do not split across pages (at least not by default). Word and Google Docs etc. can do this out of the box. Maybe there is a way to get this to work. For e.g. the description of a database table, as a table in the document with columns like "column name", "type", "description", not being able to use multiple pages is a real limitation.
You can enable the "multi table" option in the table properties, which will use the longtable package to extend the table across multiple pages.
The formatting is a bit different, but I believe it will split the table across pages while supporting headers, footers, captions, and other options.
We put the software architecture document (about 100 pages) in a single .lyx file in a "doc" directory of our Git repository, which stores our software source code.
We love feature branches, so we update not only the code, but the documentation as well, in the branch. When we merge, everything gets merged together.
What I mean to say is, we're not just using Git to "check out, check in", we are also merging and branching as well.
The workflow works perfectly for us.
We've been using this for 2 years, with many many commits. Hardly any merge errors. And no times where Git merged wrongly and corrupted the document or similar. I fix merge errors in a text editor if they occur (maybe once every few months, takes a few minutes to repair.)
One thing I would say is that LyX always writes the newline endings native to your platform. Git, by default, checks out Windows newlines on Windows and converts them to UNIX newlines on commit. So that works well too. But if you don't use that feature of Git, you might experience problems.
We haven't had a need to edit the generated TeX document manually. We just use LyX.
While there's an argument for writing plain text, I don't think it applies to most of the academics who can barely run a python script and wish they had secretaries typesetting their papers like the good old days.
Why do people think this is a thing? Whether I’m making a poster or slides in latex / beamer, dealing with spreadsheet data with pandas in an ipython console, programmatically checking email, writing code in emacs no window mode, or virtually anything else I do with a computer, perhaps the hugest rule of thumb is to avoid GUIs at all costs, they are the biggest productivity killer.
I know people will chime in with their opposing experiences, but it’s just noise to me. Sure, there are limited good uses for GUIs, but I cannot fathom at all how writing tex documents could be one. Doesn’t matter if you’re totally new to it or been doing it for years, anything taking your hand away from the keyboard to deal with menus is killing you.
If you want wysiwyg-like behavior, just open another shell tab with a permanently running job that detects changes to your source file, re-runs whatever document compilation command you use, and refreshes evince or some other viewer that you never interact with except to look at. Spending time learning this way of working from the start is worth far more than spending relatively less time on the first few documents in lyx.
Also Ctrl-Alt-arrow moves the sections around.
In an editor with first-class outlining support, the document is usually composed with the outline view in play, so essentially you’re always adding text and headers to a “node” rather than to the document as a whole. You then place the node in the outline, rather than placing text in a linear document that happens to (sometimes) reflect a valid outline.
It’s less comparable to Word, and more comparable to editing .rtf files and placing them into a flow in Desktop Publishing software. The content (the .rtf file) and the document (the flow-boxes) are separate, and can be modified separately without knowledge of how the other side has been modified.
(This workflow also being the original TeX workflow, just replacing “.rtf files” with individual .tex content files, and “the layout” with a structural .tex file that imports those content files.)
And in Word you can always collapse the section and then move it around with all of the text.