10 ms·
Neorg: Neovim 0.5’s answer to modern life organization
- nynx 5y agoThis is neat! I wonder if this kind of functionality would be accessible through a language server, so multiple text editors could use it.
- CA0DA 5y agoI'm not very familiar with VIM - could someone explain what this is? Seems like some settings to make NeoVIM into a note-taking app?
- cercatrova 5y agoorg mode in emacs is a very popular note-taking tool. This seeks to emulate and refine it for (neo)vim.
- CA0DA 5y agoThanks!
- bloopernova 5y agovim is the "VIsual editor iMproved", which is an upgrade to the "VIsual editor". It works by having a text entry "mode" and a separate text manipulation mode. This is very powerful, but does take some getting used to. For example, let's say you want to delete 5 lines: In visual studio code, you'd either select all the text and hit backspace, or maybe hold ctrl+backspace to delete whole words at a time. In vim, you'd hit escape to exit "insert" mode, then position your cursor at the beginning of the 5 lines to be deleted, and type "5dd" which means "delete a whole line, 5 times". In the hands of an experienced vim user, it can make amazing edits to text in fractions of a second. It's really cool! It also works in a terminal, so it's available to you when you SSH to a remote server, for instance. Org-mode is kind of like Markdown, in that it's a way for plain text to have structure. Something like this: * Birthday Party Plan ** INPROGRESS [#A] Buy cake Ask Jen about her baker friend's availability ** TODO [#B] Buy beverages Talk to Mike about his party and what people drank ** INPROGRESS [#A] Send invitations <DEADLINE 2021-08-10> *** DONE Design invites *** TODO Get Addresses *** TODO Mail merge *** TODO Print invites Lots of stuff going on there! I'm tracking the state of each made up todo item. I've got a priority on the main todo items, and a deadline for one of them. Org is note taking, scheduling, structured text, even running programs and scripts inside your notes and saving the results in the note itself. From orgmode.org: "Org mode is for keeping notes, maintaining to-do lists, planning projects, authoring documents, computational notebooks, literate programming and more — in a fast and effective plain text system." So, all of that is being supported by NeoVIM now :) I hope that helped, let me know if there's anything you want clarified or expanded.
- crubier 5y agoTo remove 5 lines in VSCode I would just type cmd-backspace 5 times. Don’t even have to count the number of lines beforehand. Just delete lines until it looks as you wanted. Much simpler than the complex process you describe, that involves counting lines and moving the cursor to the exact correct position. As always, I am unimpressed by “vim tricks” that vim people always boast about. And I am yet to see a single real use case where vim is faster than good old basic keyboard shortcuts (that includes cmd-d)
- Ancapistani 5y ago> And I am yet to see a single real use case where vim is faster than good old basic keyboard shortcuts (that includes cmd-d) I feel like I’m far from a vim “power user”, but people regularly comment on how quickly I edit text and code when I’m doing a screenshare. It becomes second nature in short order, so I’m never thinking about some multi-step process to before an edit; I just “do it”. As for the “5dd” example… there are multiple ways to do things. For me, that would likely be: * navigate to the first or last line of the block * <shift+V> to start a selection of whole lines. * navigate to the other extreme * <D>
- paraknight 5y agoThere are many ways to skin a cat. Personally, in vim, I would do "dj" or "dk" twice, (deletes two lines up or down respectively) and then dd for the 5th one. Where vim shines is where you can just naturally start stringing together "sentences" of vim vocabulary and you can do what you mean. The macro system allows you to store these commands on the fly and replay them too.
- iimblack 5y agoIn vim you would actually just do 5dk to delete 5 previous lines. Or just do dk to delete one line, then . to repeat until satisfied. So you get an easy way to repeat actions. You can make this into a macro easily if needed. Then, most importantly in my opinion, you keep your hands in the normal typing position. The command key is awkward for me to reach and hurts my hands.
- 5y ago
- slightwinder 5y agoLooks like another iteration of someones personal markup-flavor, aimed at task-managment for self-organization. Basically, a todo-list in text-form. But I don't see anything worthful yet which makes this flavor preferable over org-mode or markdown. Seems to be also still very in progress. So give it some more years to grow I would say.
- zelphirkalt 5y agoMarkdown and Org are not in the same league. However, the goal is to have something like Org in (Neo)Vim. It will take a while, if it ever happens to get to feature parity with Org though. Edit: I would welcome though, if Org was supported well in (Neo)Vim. Then there would be one less excuse not to use it.
- slightwinder 5y ago> Markdown and Org are not in the same league. I don't think so. Their focus and culture is different and so each has different tools available, but syntax-wise they are pretty much the same and you can overall build the same tools for both.
- zelphirkalt 5y agoOrg comes more like an interconnected ecosystem, while in Markdown, you will have to choose your tooling wisely and will still not be able to do all the things you can do in Org. A few examples: Export to many formats. Emacs ox-... packages. Hit C-c C-e there you go. In Markdown there is no integrated tool for that, there is only the rather excellent Pandoc, but Pandoc itself suggests its own Markdown dialect (! not what we are talking about here) for things like footnotes and quotes and such things, which are required for technical writing. Running code from Org files in Emacs is, thanks to the Emacs integration of Org, a simple thing to do, once you got an interpreter / compiler installed and configured appropriately. This in conjunction with noweb (oh, did I mention that one?) enables literate programming. Yet another case of needing a specialized markdown dialect. LaTeX in Org mode documents is possible and the format takes precautions to enable you to do anything you want using LaTeX in an Org file. In Markdown it depends again on your Markdown processing tool. Again Pandoc to the rescue, mostly. Things like the already mentioned footnotes and citations and quotes. Some of that stuff is not available in Markdown. You can merely patch something up using HTML or, if you use Pandoc, perhaps you can add LaTeX to your document. This becomes a necessity, rather than a choice like in Org, because Org supports these things. Document internal linking. In Markdown you can again only patch it to full capability by using HTML. In Org it is included in the format. Tables and spreadsheets. You need special markdown dialects for that, which have special processing tools, which can then do half the things you can do in Org using spreadsheets. You can probably somehow shoehorn all of that into some kind of markdown dialect or multiple ones and process it using multiple external tools. It is just not there in normal Markdown and you will have to build the whole chain yourself or use some obscure tool, that has already showhorned it all. So Org and Markdown are really 2 different kinds of beasts. For more details you could join the Emacs-org-mode mailing list, where people all the time come with tricky questions and use-cases they are using Org for. Quite an active mailing list.
- _benj 5y agoIn my opinion is the creation of an actual alternative to emacs, but more modern and simpler using lua instead of (e)lisp. I have nothing against emacs but being a fan of vim and of simpler systems I'm a fan of what I'm seeing being done with NeoVIM!
- dimal 5y agoIt feels like the promise of neovim is finally being realized. So much good stuff in 0.5, and now we're seeing cool things being made with the lua integration. It's gone beyond just being a more maintainable fork. It's starting to really feel like the next generation of vim. Very exciting.
- e12e 5y agoLooks interesting, but I'm a bit sceptical - feel a bit likes it's features before use-cases - ie: many features, that may or may not be useful, but mmaybe not a few good use-cases? I've simply changed my notes.txt to notes.md - and that handles most of what I need for ideas, To-do lists and such.
- oezi 5y agoYes, I agree. The command vocabulary needs to come first for it to make sense and be a sensible application which is different from just a text editor. I have recently developed my own terminal-based UI for day journalling and todo/task tracking [1] in markdown files because I was sick of rearranging todos in other tools and just needed something which provides a standard template for each day (journal, high priority, todos of the day). The main advantage is that you can "migrate" all unfinished todos to a new page/day and thus get a clean start each day. This idea comes from bullet journalling. Long term I would like to add generated views (for instance: last year this time one of your highlights was...) and support recurring tasks to be inserted into the daily log. [1] https://github.com/coezbek/rodo https://github.com/coezbek/rodo Stack: Ruby, Curses, Markdown
- zelphirkalt 5y agoHm looks like an interesting approach, to let the user configure what symbols to use for what kind of markup. However, using a bunch of regexes reminds me of painful regex writing for Atom, Sublime and GEdit (or was it Geany?) syntax highlighting. It was never really easy to make it work correctly, without disregarding some edge cases. For most users it will probably mean to use a popular config and that's it. EDIT: From the readme: > Let's be real here, org and markdown have several flaws - ambiguity (tons of it), ugly syntax and the requirement for complex parsers. Aside from the fact, that I do not think org has ugly syntax, I think an actual parser is way better than having to rely on putting everything into regexes. It makes the code easier to maintain.
- p00f 5y ago> However, using a bunch of regexes reminds me of painful regex writing I searched "regex" in the repo, the only places it appears are in the code (as comments) and in the parser spec
- bluenose69 5y agoI have no doubt that this is a useful project, but I sure wish this webpage used words instead of animated images to explain things, especially because the images are taller than the browser size on my laptop (unless I shrink to the point where the letters are too small to read. The setup steps are also really quite unclear. What content do we insert, and in what file? Just a few more words of clarification on this would be appreciated. PS. I agree with the contention that neorg, when more completely coded and described, could encourage users to switch from vim to neovim. Another contender (which, for me, is more convincing) is telescope.
- parafactual 5y agoIt would be nice if the default keybindings were listed somewhere in the wiki. Did I miss them?
- bryceneal 5y agoThis seems promising. Some things I would like to see: 1. Deft-like interface for viewing and searching norg files. 2. Perhaps as part of the above, a way to create a new note which is automatically saved with a file name or prefix (i.e. The current date or timestamp). 3. Project-wide todos / agenda view. Perhaps this could be based around dirman's workspace concept. It seems the author has gone through some trouble to make the project easy to extend, and the documentation looks quite good for such a young project, however from the commit history and PRs it looks like it's maintained largely by a single developer so far. I don't see any links in the README to modules that have been built by the community yet. I will be keeping an eye on this one. I'm really excited about NeoVIM's future and all of the interesting projects that could be built using LuaJIT.
- shakow 5y ago> The pain... it won't stop. After so much oppression from other text editors, it's time we fight back. > Woah, keybinds that actually make sense. Some text editors should take notes. Am I being overly sensitive tonight, or is it a bit out of taste for a landing page? It's great that they are re-implementing org-mode and I'm all for a bit of friendly banter, but that sounds surprisingly bitter to me.
- smoldesu 5y agoWelcome to the editor wars, my friend. Shit has been flung far and wide for nearly 50 years now.
- deleted 5y ago[deleted]
- maccam94 5y agoThe author commented on this on Reddit, they're going to fix that text soon: https://www.reddit.com/r/neovim/comments/oi6z11/neorg_a_road_to_01_neovim_05s_answer_to_modern/h4u45oi https://www.reddit.com/r/neovim/comments/oi6z11/neorg_a_road...
- shakow 5y agoGreat, I'm glad to see it was indeed friendly banter.
- vimacs2 5y agoA shame because I personally found it funny and completely non-offensive as an Emacs user. This weird fake editor war is part of the culture of both editors and I'd prefer this kind of banter to the boring and tired jokes of "it's a great operating system that just lacks a decent text editor".
- root_axis 5y agoDoes someone know which plugin creates the style of buffer tab that appears in the gifs on this page?
- knubie 5y agoBarbar perhaps? https://github.com/romgrk/barbar.nvim https://github.com/romgrk/barbar.nvim
- root_axis 5y agoDoesn't look quite the same, but this looks cool too! Thanks!
- folkrav 5y agoI think it's nvim-bufferline https://github.com/akinsho/nvim-bufferline.lua https://github.com/akinsho/nvim-bufferline.lua
- Normille 5y agoLooks like vim-airline to me: https://github.com/vim-airline/vim-airline https://github.com/vim-airline/vim-airline
- konart 5y agoQuite a few plugins for a bufferline out there, but as it was mentioned - looks like a https://github.com/akinsho/nvim-bufferline.lua https://github.com/akinsho/nvim-bufferline.lua with default settings.
- supernintendo 5y agoI'm interested to check this out but for me simplicity is more important than features when it comes to note taking software in general. I've tried apps like Notion, Evernote, etc. but I always find myself going back to Simplenote; it doesn't have all of the bells and whistles of those other apps but it works well for my use case of quickly writing some text and having access to it across all platforms. When it comes to Vim, I get a ton of use out of vimwiki [0] with Markdown syntax. It may not be as powerful as Org-mode (or Neorg in this case) but it's had the most "stickiness" out of any comparable plugin I've tried. [0] https://github.com/vimwiki/vimwiki https://github.com/vimwiki/vimwiki
- stewbrew 5y agoWhat's the advantage of vimwiki w/ markdown over just markdown + gf (or a lean hyperlink plugin)?
- supernintendo 5y agoVimwiki has some basic keyboard shortcuts for editing and navigating between pages in your wiki. It also has a couple of neat features, like the ability to export your entire wiki as HTML documents using a single command. But you could accomplish all of this with some basic configuration changes so I wouldn't call any of those "advantages". To be honest, I don't remember why I started using vimwiki as it was years ago but for whatever reason it has stuck with me.
- yewenjie 5y agoIt is very hard to beat the extensibility of Lisp though. Like what is the equivalent of defadvice in Lua?
- _pmf_ 5y agoI thought NeoVim would fix the "dozens of different package managers" problem, but apparently not.
- Protostome 5y agoI have been using vim (and recently - nvim) daily for almost 15 years for development and general text editing. I'm certainly a big fan. However, I couldn't really find any set of configurations that surpasses simple todolist applications like todoist/etc. Sure, If you want to spend your days tinkering and hacking the app that's super cool. But most of us want a todo-list app that just works. Ability to send notifications to the OS/phone would be nice Calendar sync would also be nice Per-project tasks is cool too But that's mostly it. I couldn't understand from the wiki of that project how can I do those things. Those are the most important issues to address, way before an elaborate discussion on modularity and customization. Show the simple functionality first.
- chrisMyzel 5y agoCool! The reason I sticked with org-mode was org-roam which changed my usage from a single document to a whole zettelkasten system and I love it. Any plans on linked documents?
- elflaune 5y agoThe true power of orgmode lies in its embedded source blocks. I have dozens of little codeblocks inside my orgmode files that aggregate data for me. I also have a a collection of scripts inside org for various tasks, neatly sitting in a todo tree.Babel src blocks are a true game-changer. What language does neovim/neorg use for scripting? As much as i like orgmode, i'm still not very fond on scripting LISP.
- carlosgj94 5y agoLua
- jgb1984 5y agoHow is this different from vim + vimwiki which exists for ages and is very stable and mature? I don't like this "must rewrite everything in Lua" obsession that neovim has started. The neovim plugin landscape is now riddled with rewrites of vim plugins, often multiple attempts of the same thing, but usually with half the features and more bugs. Can't say I'm happy with the split that neovim has brought in the vim community, the incompatibly between the two is increasing sharply.
- jmiskovic 5y agoI wish installation instructions were more clear. Neorg depends on plenary and packer, and they also don't have clear installation instructions. I followed steps as well as I could, :CheckHealth doesn't show any plugin problems, but .norg files don't show syntax or any advertised features. Being complete Neovim noob, I don't know how much time I'd have to spend in Neovim ecosystem to understand how to make it work?
- nahuel0x 5y agoSeems good, but I think Neovim as a platform lacks a couple of features to make this competitive against Emacs org-mode, in particular inline images and proportional fonts.