In org with org-indent-mode mode the following text:
* Foo
** Bar
baz
Is rendered as: * Foo
* Bar
baz
This visual indentation and separation is, at least to me, an important feature which helps when reading.It is basically a must-have for any org-mode re-implementation (I'm not just making up obstacles here, I daily-drive neovim and like the idea behind the org-mode plugin for neovim but I've tried it multiple times and it just doesn't work for me).
There are also probably many other shortcomings too.
I'm also a VIM user suffering Emacs just for org-mode. Evil makes it livable.
At least there's another plugin which replaces the asterisks with a single symbol per heading.
Have a look at orgExtended for Sublime Text for a more fully featured reimplementation of org mode.
What's important for me is the tree structure, tags, states (like TODO, but I use many custom variants in different files), links, archiving, quoting (including code blocks, but I don't need to run them in place), easy per-file properties, easy export to many formats. I barely use time tracking, and never use agenda though.
Anyway, a subset of features implemented is a good foundation for further development.
Right now I'm trying out Obsidian, with a plugin it has kanban boards using Markdown in the background. Which is the one kind of feature I've missed for a long time: actual 2d representation of content instead of keeping it limited to linear text files, sometimes vertical lists just aren't quite enough.
Org-Mode for Visual Studio Code - https://news.ycombinator.com/item?id=16198369 - Jan 2018 (124 comments)
I like emacs and have been using it for like 8 years, and doom makes my additional configuration small and manageable, but I’d switch to vscode in a heartbeat if it was possible to replicate basic features of an extended emacs. I just want a good editor at the end of the day.
* wgrep is hugely useful.
* Fuzzy searching with orderless is unmatched in any other editor. Being able to resume is hugely useful. Being able to plop the results into a saved buffer is hugely useful.
* magit is the only way to do complicated rebases.
I really want to move on but until vscode fixes their search, I’m stuck. I can live without a good git interface, I can’t live without navigating projects in a grep-oriented way.
Vim doesn’t have this either, by the way.
I use this
https://marketplace.visualstudio.com/items?itemName=kahole.m...
* works decently well on Windows
Emacs is just so so so painfully slow on Windows. And running the Linux version in WSL leaves me stuck in 16-color terminal mode because (at least as of Windows 10) getting an X server working on Windows without creating a security problem for yourself is, to put it mildly, easier said than done.I say this a a former emacs user now using VS Code.
That said, as a multi-decade Emacs (and Lisp) user, I do like VS Code and its JavaScript/TypeScript basis.
On a spectrum of "notepad to IDE", vim is closest to "editor only"; although with effort it's possible to get an environment with nice bells & whistles.
Emacs has always been 'heavier' than vim (although I don't think it's "works well out of the box enough" to count as an 'IDE'). A couple of ways in which it's heavier is e.g. its fancy UI for customising properties; or its "apps" like org-mode or magit, or having an elisp shell or support for virtual terminals.
VSCode's also not quite an 'IDE'. But it's also heavier than just a pure 'editor'.
VSCode doesn't quite have the insane level of customisability that Emacs has. VSCode also doesn't have people bragging about e.g. reading email from VSCode. -- But, VSCode does have some of these features (e.g. an 'app' for interacting with Git, or inbuilt terminal).
I like to think that VSCode's discoverability owes a bit to Emacs (e.g. the key bindings showing in the command palette reminds me of emacs' which-key).
Some time ago people started slowly bringing things to VS Code. Org mode syntax has also been separated out as "orgdown". Now finally other editors are catching up to what has been possible in Emacs for a long time using org mode. They still got a long way to go, because integration of org mode things in Emacs is very far ahead, but at least work is being done.
The key thing is, org-mode treats data/text as a tree graph programmatically, you move through headings, and properties can be attached to those.
So a property for a deadline time can be added, and parsed, so you can get a list of todos/schedule showing the headline, and being able to jump to it.
Your api access targets these "nodes", so you are adding under "journal" rather than line 674 when using the template feature to quickly add entries.
emacs has ridiculous levels of customisation that let this data structure do basically what you want or need with some scripting.
What makes Org unique is the presence of interpreters, including user-defined ones, that take Org files as input and do things on them.
A famous interpreter is org-agenda which harvests TODO keywords, timestamp deadlines, etc. from different Org files to generate a weekly agenda. Another one is Babel which runs embedded code in Org files, i.e. a literate programming system.
To sum up, Org is a plain text format analogous to Markdown, but with many more features and also interpreters that define certain operations on them.
It primarily appeals to weekly status jockeys (project managers) whose rudimentary programming skills are just good enough to hack some emacs lisp. As someone who doesn't mind grepping an omnibus "notes.txt" file and thinks "literate programming" is a waste of time, I've never found a use for org-mode.
What is Emacs? Is it a text editor, for editing config files?
Is it an IDE for development? An email reader?
Org-Mode is a mode for Emacs that provides structure to documents in such a way that it allows documents to be used for many things- authorship (web sites, books, etc.) but its primary use for most of us who is it is to integrate into our todo management systems- allowing us to manage our tasks in a way that's integrated into our work. It provides flexible, queryable and programmable todo lists, document generation, literate programming, spreadsheets, living documents that can execute code, time tracking, and more.
It can also integrate with other tools, like org-roam, to provide backlinks and other features, or work with tools like mu4e to integrate email and todo lists in both directions.
In other words, it's a system for working with data/life.
In all seriousness though, org changed my life. Had never gotten organized before it.
As an added bonus, it has nice export functionality.
There's more to it than that, but I think that that's the killer use case that gets most people hooked on it in the first place.