This package is a fork and rewrite of the now unpublished package nvatom. The general idea behind this package is to provide an embedded Notational Velocity-like note-taking feature for Atom users. This package is NOT affiliated with Notational Velocity.
Notational Velocity is an application that stores and retrieves notes. This package provides some similar features embedded directly in your Atom editor.
- Modeless Operation
- Incremental Search
- Mouseless Interaction
- Interlinks
- Triggerable from outside Atom
Note: For interlink syntax highlighting, please install
language-atom-notes
.
Embedding these features in Atom provides the following advantages.
- Use Atom's Features - Such as Syntax Highlighting and Tree View.
- Use Other Packages - Such as Markdown Preview and Minimap.
- Multi-OS - You can use it in macOS, Linux, and Windows.
With no new updates to Notational Velocity in years, some users are searching for alternatives with more features. For example Evernote. We do not believe Evernote is a good alternative to Notational Velocity. Advantages over Evernote are:
- Open Source - Uses the MIT license.
- No Rich Text - Instead, you get to use Markdown!
- Sync Wherever You Want - You can save notes locally, in Dropbox, or in Google Drive.
Other solutions such as nvALT are stand-alone applications which don't have the same synergy with Atom as Atom Notes provides.
Most users prefer to have access to their notes from multiple computers. This is not a feature of Atom Notes per se. Instead, please use your favorite synchronization and/or cloud storage solution in conjunction with Atom Notes. For example, if you store your notes in a directory managed by Dropbox, then you will have all your notes available to you on any machine you wish ๐
This package does not by default provide any keyboard command shortcuts. There's
no way to know what keyboard shortcuts are even available on your machine. For
example, on my machine I could map the Toggle command to shift-cmd-j
. However
if you have the popular atom-script
package installed on your machine, then
there would be a conflict because that package also wants to use that same
keyboard shortcut. However, all is not lost!
Atom itself already provides you with everything you need to
create your own custom keymaps. For example, the following
keymap.cson
would add a shortcut for the atom-notes
Toggle command:
'atom-text-editor':
'shift-cmd-j': 'atom-notes:toggle'
Map any of the following commands to your own keyboard shortcuts as described above.
atom-notes:toggle
: Toggle the search box.atom-notes:toggle-preview
: Toggle the search box, and automatically open Markdown files in preview.atom-notes:interlink
: Jumps to referred note when the cursor is on an[[interlink]]
.
To add Atom Notes to the Apple Services menu and set a keyboard shortcut for use outside Atom use this Apple service. Then use your configured shortcut โ see the section on Keybindings, above, for details on configuring a shortcut inside Atom โ from inside or outside Atom to toggle the notes view.
Alternatively in macOS and Windows the URL atom://atom-notes/toggle
will
toggle the notes view. The command will operate in the front-most or most
recently active window or open a new one. It will start Atom if necessary. There
are many ways to automate this. For example, in macOS:
- Call
open atom://atom-notes/toggle
from the command line or a script. - Use the Apple service mentioned above.
- Install Alfred (requires the Power Pack purchase) and the alfred-atom-notes workflow.
In versions prior to 1.16.0
, a dependency of Atom Notes used a native module
that required compilation for each specific version of Atom. This would cause
errors whenever Atom updated from one version to the next. You'd know this had
occurred when:
If you're on an old version, and see that, click on it and it will take you to
the Incompatible Packages settings in Atom. You can also bring it up by
running the command Incompatible Packages: View
from your Atom Command
Palette. You will see something like the following, depending on your current
Atom themes.
All you need to do is click the Rebuild Packages button. If that doesn't work, please report the issue so I can investigate.
This package is in active development and I'm willing to review your pull requests and triage any issues you're having. Please report your issues!
If you'd like to take a stab at improving this package, please check out the following list of possible improvements.
- Fix broken spec tests that fail because the test runner can't do async.
- Build a notes server to offload processing from the Atom editor.
- A better screencast animated gif.
- Any improvements to package activation time are welcome.
- Speed and usability improvements are also always welcome.
- Write more spec tests!
- Does it make sense to utilize etch somehow?
- Replace
chokidar
usage with Atom's new File Watch API. - Rip out
DocQuery
and usesearch-index
directly. - When
DocQuery
match returns nothing, fallback tofuzzaldrin-plus
. - Use async to ensure the notes directory exists in the background.
- Start loading documents in background at package activation time.
- Refactor autocomplete to be less hacky โ add support to
atom-select-list
?
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
MIT ยฉ lexicalunit, seongjaelee et al