Focus Notes is a Markdown focused notes extension for Visual Studio Code that takes inspiration from Notational Velocity and nvAlt.
It automatically parses tags, which can be nested e.g. #plants/vegetables/carrots, it allows for quick search in terms and note contents.
When applied to a git repository it will automatically store and synchronize push local changes.

Figure: The UI elements added by Focus Notes: Files, Tags and a progress status bar when using git syncrhonization.
Getting Started
Focus Notes will prompt you for a storage location the first time you access the extension from the Activity Bar or through the Command Pallet. If you would like to change the storage location, you can access the Focus Notes extension settings by clicking on the gear icon in Focus Notes or from the Command Pallet. After you've selected a storage location, you can access your notes from the Focus Notes icon in the Activity Bar, or through the Command Pallet.
Features
Notes are stored in a single location (directory) located anywhere on your computer. This allows you to store notes locally, inside a cloud service like Dropbox, iCloud Drive, Google Drive, OneDrive, etc or synched with a git repository. Notes are written in Markdown and are stored as .md by default, but you can change this in the settings. It's recommended to name your notes with a file extension, like .md, to help VS Code detect them as markdown.
The extension can be accessed using the icon that is placed in the Activity Bar, or in the Command Pallet (CMD+Shift+P or CTRL+Shift+P) by typing "Focus Notes".
- Quickly create new notes by using the
Alt+N(MacOS:⌥+⌘+N) shortcut, or by click on the+icon at the top when you are in Focus Notes. - Quickly access your list of notes by using the
Alt+L(MacOS:⌥+L) shortcut to bring up a searchable list at the top of VSCode. - Hovering over a note inside Focus Notes displays two icons, one allows you to rename a note and the other allows you to delete a note. There is no trashcan, so be careful.
Extension Settings
This extension contributes the following settings:
vscode-focus-notes.notesLocation: Location where notes are storedvscode-focus-notes.defaultNoteExtension: Extension used for new notesvscode-focus-notes.noteExtensions: List of extensions recognized as notes or '*' for all extensions
Day Journalling Template
There's a snippet for starting a new day plan and log file. To use it, create a new note and type dayplan follwed by CTRL+SPACE (MacOS: CMD+SPACE).
Development
Build local VSIX archive:
npm run pack-extension
Future Plans
- Allow for multiple notes locations and make them switchable
License
This work is licensed under a Affero GPL 3 License.
This work is a near-complete rewrite of the vscode-notes project which was at that time licenced under Creative Commons 1.0. It didn't receive any updates in some time, I had some ideas for improving it, so I forked it into this project.
This work uses some additional vscode logos shared in https://github.com/microsoft/vscode-icons
The logo uses a in live smiley https://www.svgrepo.com/svg/492552/in-love which carries a Creative Commons 0 license.
