We switched to a manual approval system for registration on this forum, as this makes it easier to keep bots out of the forum. We'll approve everybody who doesn't look like a bot!

Note taking workflow and improvements to Zettlr

edited May 10 in Features

Hi everyone!

I'm a PhD student struggling with note-taking (read: I'm not taking any notes), thus I'm trying this Zottelkasten graph-based method to improve and motivate myself.
The main reason to why I usually don't take notes is because if I'm not able to search, retrieve and link them... they may as well not exist. A webpage that is not linked by any other webpage does not exist. A forgotten note in a notebook does not exist for me.
The Zottelkasten method seems to solve this problem, so I'm quite excited to try it!

I have chosen Zettlr as my note-taking app for various reasons:

  • First of all because it works with plain file texts
  • Nice integration with Zotero

Since it is currently in active development I'm interested to understand if it is going to evolve in a way that will suit my needs or not (maybe my point of view will help it going in a direction I like :) )


Workflow

  • Single notes folder: otherwise a considerable cognitive effort goes into where to put the note. There is another pics folder that contains linked media that do not have a human-readable name.

  • File name format "{ID} {FILENAME}": This will enable easier interaction with other systems. The initial ID ensures the notes will always be chronologically sorted, and the title ensures easier explorability without opening each file.

  • Tag as much as possible the notes: topics (e.g. nlp, probability), category (e.g. idea, original). The impossible-structure tree that I would have thought must be implemented through tags.

  • Note structure: I'm trying to establish a more o less standardized structure for every note (to avoid to think how to structure every note). I'm converging toward this structure:

Features I seek

  • As you can see at the moment I have 3 copies of the title: filename, yaml frontmatter, first header. At the moment to change the title I must change every one of the three occurrences by hand. I'd like A LOT if these could be automatically in sync. At least the front matter title and the file name. Since the title in the frontmatter hides the original filename on the left, it is impossible to see if you forgot to rename the file. i.e. If I change the yaml frontmatter title I'd like to change the title in the file name too.

  • I'd like to have an autogenerated frontmatter that gathers the: id, title, tags in the whole file and wiki-links in the whole file. That is, the front matter will gather all the information needed to build the notes graph. This would increase a lot the portability to other tools (that is something I value), and it would make building custom scripts to explore the graph much easier (for me, but I think even for a future graph approach in Zettlr since it does not have to scan all the documents but only the front matter). I'm actually excited at the idea to do some analytics on my own knowledge graph some year down the road, having this standard template will help to build these scripts.

  • Graph-based analysis: backlinks are fundamental, i.e. on the right maybe I should see all the other notes that link the current one. I consider a semantical error manually adding a backlink (adding another wikilink), you are turning a directed graph into an undirected one. Cluster analysis or other fancy graph-based things would be cool too.

  • I admit that I probably would have liked more Zettlr... as a visual studio code plugin :] The main features that I am missing from VSCode are:

    • The command palette: shift-ctrl-P opens the command palette where you can search for commands. Anyone who ever used sublime text or vscode or any other modern editor knows how much it is useful.
    • File search: ctrl-P opens the fuzzy file search with a drop-down menu to choose which file to open. This is essential if I am going to have a lot of files in a single folder. It is not feasible to scroll the list
    • Fuzzy search everything: e.g. if I search for "avg pred" i want to find "average prediction" (in the file, or the file that contains it. Depending on where I am searching). I found this fuse.js that may come in handy. However I never did anything in javascript, so I'm not sure.
    • Enhanced multiple cursor support: see how sublime text handles them. It is awesome, even better than vscode. The base commands are "add a cursor to next word occurrence" and "remove the current cursor and go to the previous word occurrence". But there are a lot more functionalities to enhance the workflow.

What do you think, does or will Zettlr match my workflow?

Tagged:

Comments

  • JmeJme
    edited May 11

    @luca said:

    • As you can see at the moment I have 3 copies of the title: filename, yaml frontmatter, first header. At the moment to change the title I must change every one of the three occurrences by hand. I'd like A LOT if these could be automatically in sync. At least the front matter title and the file name. Since the title in the frontmatter hides the original filename on the left, it is impossible to see if you forgot to rename the file. i.e. If I change the yaml frontmatter title I'd like to change the title in the file name too.

    This is not possible in Zettlr, you have to manually rename files to your YAML title. But that feature is lacking for good reason, because changing the filename is generally not a good idea. The reason why is that it breaks the links between notes, which are based on filenames.

    So if you start to rename filenames of notes to new titles, the existing links to those notes do not work anymore. That in effect kills the whole Zettelkasten because now you have links to content that (seems) to no exist anymore.

    The reason why some people just use numerical IDs in the filenames is precisely for that. When the filename only has the numerical ID, you can change the note's title as often as you wish, because the ID remains the same.

    @luca said:

    • I'd like to have an autogenerated frontmatter that gathers the: id, title, tags in the whole file and wiki-links in the whole file.

    That's not possible in Zettlr.

    @luca said:

    • Graph-based analysis: backlinks are fundamental, i.e. on the right maybe I should see all the other notes that link the current one. I consider a semantical error manually adding a backlink (adding another wikilink), you are turning a directed graph into an undirected one. Cluster analysis or other fancy graph-based things would be cool too.

    This would be a cool feature but is currently not there.

    Perhaps in the mean time, when you search for a file ID, the search results do show all the other notes that mention that searched-for note, including colours to show how much they match. That way you also get a backlink profile.

    @luca said:
    - The command palette: shift-ctrl-P opens the command palette where you can search for commands. Anyone who ever used sublime text or vscode or any other modern editor knows how much it is useful.

    Not in Zettlr at that moment.

    @luca said:
    - File search: ctrl-P opens the fuzzy file search with a drop-down menu to choose which file to open. This is essential if I am going to have a lot of files in a single folder. It is not feasible to scroll the list

    Not possible.

    • Fuzzy search everything: e.g. if I search for "avg pred" i want to find "average prediction" (in the file, or the file that contains it. Depending on where I am searching). I found this fuse.js that may come in handy. However I never did anything in javascript, so I'm not sure.

    Not possible, search in Zettlr is literal. (Although I agree this might be a good optional feature to have!)

    @luca said:
    - Enhanced multiple cursor support: see how sublime text handles them. It is awesome, even better than vscode. The base commands are "add a cursor to next word occurrence" and "remove the current cursor and go to the previous word occurrence". But there are a lot more functionalities to enhance the workflow.

    I don't know what this is, it's been a long time since I used Sublime so the references are lost on me. :smile:

    @luca said:
    What do you think, does or will Zettlr match my workflow?

    Well the workflow you describe is totally doable with Zettlr, but you probably don't want to rename files and none of the advanced features you seek are there. So if it's a good match I'll leave to you! :lol:

    • File search: ctrl-P opens the fuzzy file search with a drop-down menu to choose which file to open. This is essential if I am going to have a lot of files in a single folder. It is not feasible to scroll the list

    Besides the fact that currently it's not "fuzzy", you can actually use the global search for this. Just hit Ctrl+Shift+F and begin typing a file, Zettlr'll autocomplete that file name. If the file name typed in the global search bar matches a file in the file list, Zettlr'll open this.

  • edited May 12

    Hi, thank you very much for your replies.

    @Jme said:
    This is not possible in Zettlr, you have to manually rename files to your YAML title. But that feature is lacking for good reason, because changing the filename is generally not a good idea. The reason why is that it breaks the links between notes, which are based on filenames.

    So if you start to rename filenames of notes to new titles, the existing links to those notes do not work anymore. That in effect kills the whole Zettelkasten because now you have links to content that (seems) to no exist anymore.

    The reason why some people just use numerical IDs in the filenames is precisely for that. When the filename only has the numerical ID, you can change the note's title as often as you wish, because the ID remains the same.

    I see. I think it's a very good advice, thank you very much!
    I'm going to use only the ID in the filenames

    Perhaps in the meantime, when you search for a file ID, the search results do show all the other notes that mention that searched-for note, including colours to show how much they match. That way you also get a backlink profile.

    Oh! With the night theme, I didn't notice it was a heatmap.
    I think it's a great addition this heatmap that ranks the correlation with the query.
    Why is it different than sorting the results in function of the correlation with the query?

    @luca said:
    - Enhanced multiple cursor support: see how sublime text handles them. It is awesome, even better than vscode. The base commands are "add a cursor to next word occurrence" and "remove the current cursor and go to the previous word occurrence". But there are a lot more functionalities to enhance the workflow.

    I don't know what this is, it's been a long time since I used Sublime so the references are lost on me. :smile:

    If you are curious you can see them in action on the homepage of sublime text: https://www.sublimetext.com/

    @hendrik said:

    • File search: ctrl-P opens the fuzzy file search with a drop-down menu to choose which file to open. This is essential if I am going to have a lot of files in a single folder. It is not feasible to scroll the list

    Besides the fact that currently, it's not "fuzzy", you can actually use the global search for this. Just hit Ctrl+Shift+F and begin typing a file, Zettlr'll autocomplete that file name. If the file name typed in the global search bar matches a file in the file list, Zettlr'll open this.

    Oh cool! I didn't know it.

    Even though now that I started using IDs as filenames, this autocomplete is less useful.
    Maybe it should autocomplete the title contained in the file metadata... it is a bit more involved ...

  • In the filename I use both an ID and a description (e.g. justice_restorative_202005191341). Hence, I can both benefit from the autocomplete and keep links clickable occassional description changes (which I try to avoid) notwithstanding.

Sign In or Register to comment.