6

What is your (Neo)Vim + version control for note taking setup?

 2 years ago
source link: https://lobste.rs/s/rzyvgq/what_is_your_neo_vim_version_control_for
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

What is your (Neo)Vim + version control for note taking setup?

I’m getting to the point where I can’t keep everything in my head. I don’t really know how well I trust the SEO on the results I’ve seen, so I’d like to hear what y’all’re doing. …And no, I’m not going to switch to Emacs just for Org mode :P

  1. bjg

    16 hours ago

    | link

    I kind of gave up on this dream, I now use https://obsidian.md to maintain my notes in markdown (with vim key bindings enabled).

    If I need to I can just edit the pages directly in vim, otherwise obsidian does a nice job of rending the notes and allowing for easy navigation and editing.

    By playing around with some configuration and limiting what obsidian features you use, you might be able to get obsidian and vimwiki to play nice together as well.

    1. toastal

      edited 6 hours ago

      | link

      I think I’m only interested in a FOSS approach. The Community section all linking to proprietary communications only is a turn-off as well that tells me a lot about who the target audience is. Markdown-based is a turn-off as well as its syntax is inferior to AsciiDoc in every way–which is by no means perfect–so something without a specific lightweight markup language is preferred.

      1. When I first read this thread I found myself wishing you had provided some criteria. My vim+version control setup is.. using vim+version control? :)

        1. Lobsters, I’d expect FOSS options to have the most upvotes :P

    2. I similarly gave up in favor of Obsidian (some of the extensions, including the graph view and syncing, were nice enough to get me to convert).

      That said, if you use Neovim, there’s a surprisingly good org-mode implementation available and steadily gaining functionality: https://github.com/nvim-orgmode/orgmode. It’s probably (I haven’t comprehensively tested) not as strong as “real” Org, but I have enjoyed using it for basic note-taking in Neovim.

  2. I’ve got a tiny program I wrote: er. I use it for zettelkasten: when you run it, every text file in the directory has outgoing links added to the bottom of the file and incoming links added to the top. The actual viewing and editing, you can just use vim with gf to navigate. Works pretty well!

    https://sr.ht/~subsetpark/erasmus/

    1. If there was a Nix Flake, I’d give it a go right now, but I don’t know enough about Zig tooling to check it out this second :(

  3. vimwiki + syncthing

    1. omg I’m not the only person!

      though I have largely started using vscode for the editing experience

  4. willjp

    14 hours ago

    | link

    Mediawiki for me. Sphinx for local-only work notes.

    I wrote my own thing for todos, but for work I think I could have gotten away with vim-journal or a custom syntaxhighlight file.

  5. As @akkartik says below, you have specific criteria (FOSS, no “specific lightweight markup language”) that you should probably add to your initial question.

    Also as @akkartik says in his post, my setup is that I write notes in neovim and store them with git. That’s it. In terms of the format of the documents, I write more complex notes in LaTeX, and simpler notes in markdown. Markdown supports everything I need for simple notes (paragraphs, lists, tables, links, and footnotes). Markdown is easy to write and read, there are lots of tools to work with it, and I can quickly turn markdown documents into other formats (in my case usually web pages or PDFs).

    I am very given to (unhealthy) yak-shaving, but in this case I keep things simple and it works well for me. (I don’t want to spend a lot of time managing how I take notes. I simply want to take notes.)

    1. toastal

      edited 3 hours ago

      | link

      In hindsight, I would have added more parameters and I am past the edit window. Your approach would have been my first, but I was curious what else was out there–even if some workflows are not for me personally.

  6. text file in dropbox + shell script that opens the file and inserts date -Iseconds, under which I write the notes.

  7. I use orgmode-nvim, which I find works surprisingly well.

  8. I write a blog using a static site generator that supports markdown. I write the blog mostly for myself: if I can’t explain something well, do I really know it? The markdown helps with writing and editing quickly, and is convenient to translate to HTML.

    If I am taking notes in a class or during a meeting, I take notes by hand in an engineering notepad and transcribe the useful parts into Quip/Google Docs/a website (depends on the audience) later.

  9. ubitux

    edited 10 hours ago

    | link

    Essentially neovim + vimwiki, manually git versioned, and immediately accessible through the i3 scratchpad.

    In more details, every day when I wake up I’m typing newday:

    newday() {
        cd ~/notes
        (
            set -e -x
            git diff-index --quiet HEAD  # make sure the repository is clean
            e +VimwikiMakeDiaryNote +w +VimwikiDiaryIndex +VimwikiDiaryGenerateLinks +q
            git add diary
            git commit -m "WIP: $(date -I)"
        )
    }
    

    And at the end of the day, I review my daily diff, remove the WIP mention from the commit message and sink into the night. I git commit -a --amend and push force several times a day.

    Random info:

    • After trying to find a tree structure that makes sense, I ended up with a fully flat layout (with very few exceptions). It helps moving stuff around a lot and building new relationships.
    • I’m using the markdown markup, so I can open my notes with other tools such as Obsidian or Logseq (beware the latter automatically git commits!) in order to contemplate the mind graph. Of course, markdown support is not the same in every tool.
    • I use fzf to jump between wiki pages; I have almost no plugin, but this tool was a life changer in my workflow
    • I’m using the wiki to store and sort all the www links; I have about 4000 links in it
    • Started taking notes in 2020-03-15, pages:1333 lines:53829 words:314997

    Caveats:

    • Image support: while I can do [my schema](files:medias/my-schema.webp), neovim doesn’t render them inline, so I have to press enter on each of them. It’s pretty primitive.
    • Similarly with math formulas: while simple formula such as $f_{n+1}(x)=x^n$ are live changed into their unicode equivalent, you can quickly get to the limits (as expected), and you would need some form of web preview for proper rendering.
    • Live preview technologies involve crappy nodejs technologies, fragile markdown parsers, and are generally an annoyance to setup
    • Vimwiki is slow af, in particular because it has no indexing; renaming a file takes a very long time
  10. j11g

    8 hours ago

    | link

    It’s just one file, the MAIN thing is that I can start typing right away, this is how I do it: https://j11g.com/2021/11/05/auto-insert-date-when-starting-vim/

  11. nwj

    4 hours ago

    | link

    My notebook is just a bunch of markdown files in a folder that I sync with dropbox.

    I use a small rust cli that I wrote to make management of the note files slightly easier: https://github.com/nwj/zeke

  12. I switched to Emacs for org mode. I never found a setup I liked in vim. Nothing is perfect, but Emacs has grown on me and I’m using it for many other things now. I pared my vim config way down and only use it on occasion for quick edits these days.

    I used doom emacs with the default evil mode which helped in the transition. I did find learning emacs and lisp in the process to increase the learning curve, though vim customization was constant learning too.

    I take notes, manage my todos, write presentations and papers all in org mode these days. I know you said you didn’t want to switch but I wanted to at least provide a voice that says this is a good FOSS option.

    1. I won’t disagree on the merits. GNU is generally a good. For me, typical stuff of not liking the modifiers, not caring for LISPs (despite liking FP), and being too stubborn to switch from anything Vim adjacent (and using evil-mode feels like a cheat). I’m taking a look at the twice-linked nvim-orgmode to see if it could work. AsciiDoc or [insert lang] + Pandoc have been my gotos for a lot of your listed tasks.

  13. I use Vimwiki, especially the diary feature, I don’t bother to version control it (I have backups of course).

    1. dermorz

      40 minutes ago

      | link

      Same. I don’t need to sync it to other machines and do regular scheduled borg backups including my vimwiki folder.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK