With wikis or note taking applications, I always find it hard to get into a habit of using them. I think this is largely because too much brain space is taken up with:
1. When should I write something here?
2. How should I organize it?
For this reason, I'm currently trying out more of a "journal" model. The answers to the previous two questions are:
1. Write whenever you have an interesting idea, or you get that
feeling that something important is about to get evicted from
your brain cache.
2. Every note goes in YYYY-MM-DD.md on the day you make the note.
You can add #tags to entries to track your thinking or progress
on a particular topic over time.
I've just started this, so we'll see how it turns out. But I'm optimistic.
Ugh man I love vim but now I have to be the one to bring it up: this is exactly why org-capture is so useful. Jotting down quick notes / tasks / todos and being able to customize exactly how these get filed or templated is exactly why org-capture exists.
That said after locking myself into Spacemacs to use org-mode and org-capture, I always wish there was a way to make org a bit more independent of Emacs, or at least a bit more collaborative. We use Asana at work for tasks / issues / todos and syncing that between my TODO.org and back again can be tiresome when trying to preserve information and context. I'm definitely better at maintaining my org files, but Asana preserves context in a more clean way because people can collaborate and add information to tickets, whereas they can't do that with org files.
This is a very relevant comment! I think it is very important to lower the barrier between a thought and a note. I personally do this by having a shortcut on my keyboard that immediately opens my index/"scratchpad", which means I'm always ~0.1 seconds from writing down a thought. If I know exactly in which context it belongs, I'll use an fzf backed shortcut to very quickly find the relevant note (e.g. for Python notes I add it to my WIKIPATH/python.wiki).
I actually recommend against putting everything in a diary, because I want my notes regarding a topic to be collected in the same place.
I started a while ago now with that, I just wrote a bunch of things into a file as a time line, and it slowly got more and more useful. Then I found I had a bunch of info around various topics scattered through the journal, so I started making topic guides. My topic guides are super useful now. I maintain and add them much more than the journal. So, to my point, I think recording things is useful, but it's best done in an organic way, where you just try things and adapt what you do based on how you are finding it. The only other thing I'd say is it is actually much nicer, in my experience, just using files (backed up by your favorite drive syncing software) and no specific tools. I also use markdown, but doesn't really matter.
In the past I have done this with Evernote, making a new note each day. Not too different except then I can access/edit the notes on mobile and search them easily. It can be helpful when done daily (even as a reference). Saying that, I enjoy vim so must take a closer look at vim wiki.
vimwiki allows for maintaining a "journal" through diary mode: it automatically creates diary entries with whatever file-naming scheme you want, organizes a diary index page (table of contents), etc.
Gonna start doing this but with a single big text file, synced and linked to everywhere convenient. I figure one file will keep it tidier if I'm going to be doing grep to parse and sometimes appending other things to it.
I want to put in a good word for zim-wiki here. Its a shame the Windows port seems to be on indefinite hiatus for now. Its by far the easiest GUI-based wiki to deal with, easily handles just dropping in files into a hierarchy and simply working with them after a refresh. Sorry but being able to use a mouse to navigate a wiki beats out a keyboard-based wiki any time.
Have you tried one that's controlled by keyboard? I haven't used Vim since I think rich text formats provide more value, but I like to control as much as possible by keyboard if possible. There are certain applications where you really need a mouse (like image editing), but I feel like the keyboard is under appreciated.
I've been working on the new user interface for Emvi [1] for the past three months or so and once you have build the muscle memory, you can use it blindly. You can read about it here [2] if you like and find current screenshots/gifs on Twitter [3].
One thing that might have turned people away from learning keyboard controls is that they get overwhelmed by a ton of different shortcuts. We (hopefully) solved this issue by using commands (words) you can type out instead of remembering two or more keys.
I'd love to help out but my programming experience is limited. Use zim-wiki all the time on both Linux and Windows. It's one of the best note taking programs out there.
I used Zim-wiki for years, and loved it. However, there is a fatal flaw in Zim that people using it for notes about code should know about. Zim parses all text as "wiki text" and some computer code snippets get parsed and interpreted as formatting. See this bug:
https://bugs.launchpad.net/zim/+bug/585300
Other than that issue, Zim is brilliant. The developer is very responsive to most issues and feature requests. Sadly, Zim wasn't for me as many of my notes involve code.
Want to clarify for the OP that there is still a Windows port available and it is feature complete. The new 0.7 line is the one where more work is required to build an installer.
I used WikidPad (https://en.wikipedia.org/wiki/WikidPad) for a while and quite liked. It looks somewhat similar to zim-wiki. Unfortunately it does not look like it is under active development.
Whats good about: 1) cross platform 2) entries are plain text files 3) scriptable/extendable with python
Zim has its good points, but the biggest problem I have with it is the inability to wrap lines shorter than the full monitor width. On a 13" laptop, it's usable; on a widescreen desktop monitor it just doesn't work. Other wikis like tiddlywiki, pmwiki, and dokuwiki are able to avoid this.
Certainly not had that problem myself but one of the reasons I use zim-wiki is because it supports displaying embedded pictures which for certain things is very useful.
I could shrink the window, but that's definitely not an optimal solution. It also means that I lose much of my screen width. That creates its own problems.
Here's a bug someone filed that hasn't even so much as gotten a response after nearly eight months:
I adopted vim-wiki a little while ago and have really appreciated its functionality. I like that all files are plain text and located in a single folder. It is easy to reach from anywhere in vim, providing simple means to quickly make a note of todo/diary items during work.
Also, I greatly enjoy that it allows for making local references in between your wiki files. A simple link towards another wiki- or diary-entry allows you to jump to that note. It is not only nice for navigation, but also to explore connections between your thoughts. To understand those connections better, I create a simple script (vimwikigraph [0]) to draw these connections using the DOT language [1].
In that way it is similar to Roam [2] I think, although I have not used it myself.
For me it was just structure and ease of use. You can configure vim to make files on specific keypresses to link your diy wiki together, use gf like you mentioned to jump around, make your own auto folding and stuff...
Or you can be lazy and install a plugin that takes thirty seconds to get the hang of.
Actually writing and staying organized has been challenging due to the fact I don't focus well. Spending time recreating vimwiki is time not spent staying organized. Vimwiki has low friction so I use it.
I like the ease of use and I greatly enjoy its diary feature. This provides simple keypresses to open an entry for today or yesterday, without requiring to think about the date. It provides me quick access to make notes and continue my way. Similarly, the creating of new notes, inserting likes, and navigating these links, are made relatively easy with commands provided by vimwiki.
I suppose that it is not that difficult to recreate the basic behaviour of vimwiki with custom commands and navigating with `gf` between your notes. However, for me vimwiki provided an easy way to get started in an environment where these commands were provided out of the box. Since then, I have gotten used to, and somewhat attached, to vimwiki and have kept using it.
After originally using vim-wiki, and then slowly progressing through a dozen or so personal wiki software tools ( all FOSS ), about a year ago I settled on Tiddlywiki.
It's also all self-contained within one folder, but I can stick it behind a server and access the files from wherever. Without having to rely on syncing tools like nextcloud.
Tiddlywiki is actively developed and has a healthy amount of plugins, including a mindmap like plugin.
Thanks for this comment! I already use Vim to edit semi-organised (Pandoc-style) Markdown files that I search using grep. I thought about trying vimwiki a few years ago but didn't want to learn another markup language. Glad to hear it now supports Markdown so I'll give it a try.
I've been using Vim as my main editor on BSD, Linux and Windows for > 20 years. I also use Vim extensions in the IDEs I use (Visual Studio, VS Code, PyCharm).
One of the things I love about PyCharm when dealing with Markdown is that you get a nice preview rendering side-by-side with the raw Markdown. Very useful. I'm not sure if VS or VS Code have something similar. At least VS Code, if it's possible, it's not enabled by default. Might be possible with an extension.
I use https://github.com/iamcco/markdown-preview.nvim with Neovim (should work with vim >=8 as well)
It gives you live preview in browser. It also scrolls automatically to the part your vim cursor is at.
I’ve been using vimwiki for a while now and it seems to fit the way I work the best of all the options out there.
But, I recently dumped all my vimwiki markdown files into Obsidian and have really been enjoying that experience. Same local files with an upgraded visual experience and some neat linking features.
It has basic vim bindings, unlike roam and others, and that makes all the difference. I just wish I could use vim keybindings to switch between panes but I hope they’ll address that at some point.
I've been using vim-wiki for years. I'm a satisfied user. It supports alternative syntaxes, and I use markdown. I like that I can link to a folder on my local machine, or a file, or a web page and it loads in the correct application. With thunderlink I can also link to specific emails and have them open in Thunderbird.
I also use github.com/Konfekt/FastFold to make the folding fast enough to be useful, and github.com/plasticboy/vim-markdown to make vim understand the right way to fold.
I created wiki.vim after having used Vimwiki for some years. I wanted to clean up the code and make it less "bulky" - Vimwiki is a filetype plugin, a wiki linker plugin, a plugin for handling/managing todo lists, and much more. There are a lot of very good Vim plugins for e.g. Markdown filetypes and for todo lists. So, I decided I wanted to simplify and make wiki.vim with a primary focus on the wiki specific features: link and url handling and graph features. I've also included the diary/journal features.
It sort of started as a fork. And at the time, the Vimwiki maintenance was quite inactive and issues were not addressed. I tried to fix things, but the code was quite messy.
Wow, thanks for the reply. Never had a direct reply from a software creator before.
I only started using vim at the end of last year so am still very inexperienced. I'm not sure what a file type plugin is and to be honest had a hard enough time I stalling plug to get vimwiki installed. I'll take a look at wiki.vim too. I like the idea of the diary/journal. I use that in zim-wiki all the time.
Only in that it uses a markup language that can link to other files/pages in the wiki.
Org-mode: "Org mode is for keeping notes, maintaining TODO lists, planning projects, and authoring documents with a fast and effective plain-text system." via https://orgmode.org/
It does have the emacs string attached but I've been using doom emacs with it (for vim keybindings) and the learning curve is 100% worth it. 3 weeks in and I haven't looked back here.
It's such a nice piece of code, and the author and community are fantastic. Asking for help is encouraged, as is sharing your modifications to the standard workflow.
It's also actively developed, and as such new features are frequently popping up.
I've been using Vimwiki for years. I've tried other note taking/todo listing/whatever solutions but I always end up back at Vimwiki. The only thing better than it that I've found is Emacs' OrgMode.
I made a small ruby gem to convert (most) of vimwiki markdown format files into html (using GitHub's markdown conversions). May be of use to some of you reading this.
I love vim wiki, but have never been able to use it. Or any wiki for that matter.
I can't seem to find the right mind frame to keep feeding the wiki.
I do it for a while, and than I just stop, since I am not able to make a good workflow.
I also haven't been able to find a solution that would easily be publishable, with the right format for me to search over it.
(Another meta problem is that every time I try to consistently use a wiki it I seem to fall in the types of thoughts that the previous paragraphs show, and I simply get discouraged and drop the project)
I've been using this for years for basic knowledge store. It's great how you can also link to other wiki notes like anchors on a webpage.
On a side note: The 3rd screenshot. Is that really possible? Shifting all done tasks to the done section automatically? Or is this just manually arranged for the sake of a screenshot?
Years and years ago I used Tomboy (https://wiki.gnome.org/Apps/Tomboy) because it had a decent UI , though it's storage mechanism left something to be desired...
I don't organize my life so I never had a need for TODO lists. I get stress from seeing TODO lists. I deal with shit when it's in my plate. Maybe I could mitigate some things by planning better. But until know I planned as I need and my personal life is in good shape.
Work I tried many times to have lists. Doesn't work either. I just have text files and or mindmaps about things I'm workin on. It contains everything what I'm thinking, code snippets, links to websites, meeting minutes, short todo items or things I'm waiting on. Doesn't really have any form it evolves. After I'm done that os my little knowledge base of the thing I worked on.
I have syncthing set up on my laptop and phone. On my Android phone I use Markor for viewing and editing the files, and the changes are then synced back to my laptop.
Admittedly I don't use Markor very frequently, and often just use Evernote instead when I'm on my phone and want to jot down something quickly... This is mostly because I feel the need to organize in folders etc when using Markor and vimwiki, so my mental model of it includes a bit more friction compared to Evernote.
I organize my notes the same way, though I have a structure of my documents: every midnight my server creates a new directory with today (06-05-Fri) which I work with. So when I need to create a file with Markor (which is very rare case), I create it there. The only issue I’m having with this system is that Markor does not work with symlinks, which I use frequently. Or maybe it’s not Markor but Android, not sure on this part.
I've used Org-Trello [1] in the past to sync an org file with a Trello board. I did this for a few semesters to quickly move all my homework assignments into Trello. Obviously this is an Emacs mode; if you're a Vim veteran, you can always use evil-mode to get the Vim keys in Emacs. YMMV
I'm looking for something like vim-wiki or org-mode or the like that allows you to both edit and view the content in vim as well as the web, somehow syncing the two. Does this exist?