Bullet Journaling

Bullet journalling is a way of quickly getting your thoughts down for the day. In many ways, its more akin to a GTD and task management than traditional journalism.

Kevin's Workflow

Features Used

Create Daily Journal Notes Command

One of the most common ways of note taking is the daily journal.

You can create a daily journal by typing > Dendron: Create Daily Journal Note in the Command Palette. You'll also see the corresponding keyboard shortcut for your operating system when you use this command (Ctrl+Shift+I / Cmd+Shift+I).

Create Daily Journal

By default, it will create the journal under daily.{date} though this is configurable by setting the dailyDomain in your dendron.yml config.

New daily journal notes can also be created, interactively, with Calendar View.

Create Daily Journal from Calendar

Schema Templates

a template you can apply to all notes that match this schema. See Schema Templates for more details.

  # identifier for the template (for a note based template, it would be the name of the note)
  id: journal.template.daily
  # what sort of template we are creating. currently, only 'note' is supported
  type: note

If a template does not exist, a warning message will be shown and the note will created without a schema applied.

VS Code Commands

Move Editor Command

You can move VS Code tabs using the following builtin commands:

  • View: Move Editor Into Next Group
  • View: Move Editor Into Previous Group

They are mapped on to the following keyboard shortcuts:

  • mac: cmd+ctrl+left|right

This is helpful for looking at your notes side by side.

Pinning Tabs

You can pin tabs in VS Code by right clicking on a tab and selecting Pin Tab.

The latest VS Code lets you control pin behavior for tabs. It's not currently documented as of 2020.09.28 but as of the latest Insiders build, it has a few different options to control the pinned behavior.

  • options:
    • normal: (default) normal tab size with a pin icon
    • shrink: reduced tab size with some text visible
    • compact: only icon visible
"workbench.editor.pinnedTabSizing": "shrink"

Zen Mode

VS Code can be visually noisy. You can hide most of the UI by toggling Zen Mode with a three panel layout.

The following setting overrides are useful:

// by default, zen mode will open a new "workspace" which I don't like
"zenMode.fullScreen": false,
// I'm a Vim user so I like my line numbers
"zenMode.hideLineNumbers": false,

To navigate tabs and look at the breadcrumb outline, You can use the following commands

workbench.action.showAllEditors -> (no shortcut by default, consider mapping to ctrl + t)
breadcrumbs.focusAndSelect -> cmd + t

You can see a video of this workflow in the video below.

Indenting Wrapped Text

Some PKM editors like Obsidian will automatically further indent lines in places like bulletpoints. VS Code offers this functionality via the wrappingIndent setting:

    "editor.wrappingIndent": "same",
  • options
    • none: No indentation. Wrapped lines begin at column 1.
    • same: Wrapped lines get the same indentation as the parent.
    • indent: Wrapped lines get +1 indentation toward the parent.
    • deepIndent: Wrapped lines get +2 indentation toward the parent.

Changing the value to indent may provide better visual understanding of indentation, otherwise same is the default.


  • Update your settings to the following
// The following settings will only apply to Markdown files:
  "[markdown]": {
    // quickSuggestions true will provide suggestions as you type.
    // If you turn this on and DO NOT want suggestions
    // for non-wiki-link, non-tag words,
    "editor.quickSuggestions": true,
    // This is poorly documented, but seems to offer suggestions
    // from any word in open document when turned on, which
    // can be a little distracting in Markdown docs:
    "editor.wordBasedSuggestions": false,
    "editor.tabSize": 2,
    // Set this to false if you turn on quickSuggestions
    // but don't want suggestions for Markdown related snippets
    // as you type:
    "editor.suggest.showSnippets": false,


Always have the preview open

You can add the following setting to your workspace to always have a Markdown editor show up with your content.

"markdown-preview-enhanced.automaticallyShowPreviewOfMarkdownBeingEdited": true,

When using the standard file-search in VS Code (ctrl-P), you can search for all titles in your workspace if you use the starting keyword #

Example: if i know i had a header with the title "cheatsheet", i can type in # cheatsheet

Auto bullet list

VS Code doesn't support auto-formatting by default. You can use the following workaround to mimic the behavior.

  • Add list-item below current position. Using -
        "key": "shift+enter",
        "command": "type",
        "args": {
            "text": "\r\n- "
        "when": "editorTextFocus && !editorReadOnly && editorLangId == 'markdown'"
  • Add list-item below current position. Using *
        "key": "shift+enter",
        "command": "type",
        "args": {
            "text": "\r\n* "
        "when": "editorTextFocus && !editorReadOnly && editorLangId == 'markdown'"

Credit for this recipe goes to Discord user @Stigs#0135

Academic Notes with Templates

With Dendron's schema templates you can make templates that are applied automatically whenever you create reading notes. You can even make different templates for different types of sources. For instance, you can have one template for articles and another for books.

  • Add an article.schema.yml schema file that applies an article.template.notes.md template file
  • Add a book.schema.yml schema file that applies a book.template.notes.md template file
  • Add other schema and template files with relevant patterns for conference presentations, TED talks, edited collections, etc.

You can adopt or adapt these schema template files for books and articles.

Once you've made similar schema and template files, when you make a new file using the lookup bar, the template will be applied to your new note in the corresponding schema's domain. A new note with a name like article.hall-stuart-encoding-decoding.notes will apply the article template, and a new note with a name like book.hooks-bell-feminism-is-for-everybody.notes will apply the book template.

Other Tools

This is a list of other tools that work well with Dendron.

  • nvAlt: local Markdown editor that works well with Dendron notes (mac only)

Other VS Code Extensions


  • Git Automator: one command to commit and push all changes
  • Git Doc: auto-commit and (optionally) auto push your notes at fixed intervals
  • Gitlens: Repository/File/Line history and annotations of all your files
  • Path AutoComplete: Path autocomplete for Visual Studio Code



Other Browser Extensions

Web Clipper

Kevin's Workflow Part 2

By popular demand, here's an expanded take on how Kevin uses journals in Dendron

Kiran's Workflow