nvpy is a simplenote-syncing note-taking tool inspired by Notational Velocity (and a little bit by nvALT too) on OSX and ResophNotes on Windows. It is significantly uglier, but it is cross-platform. Yes, you heard right, you can run this on Linux (tested), Windows (tested) and OS X (lightly tested).
It was written by Charl Botha, who needed a simplenote client on Linux and doesn't mind ugliness (that much). Sjaak Westdijk has contributed significantly to the codebase since right after the 0.8.5 release.
Since nvPY v1.0.0, it is maintained by yuuki0xff <https://github.com/yuuki0xff>
_.
public nvpy google group <https://groups.google.com/d/forum/nvpy>
_ or subscribe to its RSS topic feed <https://groups.google.com/group/nvpy/feed/rss_v2_0_topics.xml>
_.If nvpy blows up your computer, loses your job or just deletes all your notes, I am NOT liable for anything. Also see the liability clause at the end of the new BSD licence text in the COPYRIGHT file.
That being said, I use nvpy daily on my own precious notes database and it hasn't disappointed me (yet).
Picasa Web album containing various screenshots over time <https://picasaweb.google.com/102438662851504788261/NvpyPublic?authuser=0&feat=directlink>
_.nvpy google group <https://groups.google.com/d/forum/nvpy>
_.See the nvPY installation guide <https://github.com/cpbotha/nvpy/blob/master/docs/installation.rst>
_.
Create a file called .nvpy.cfg in your home directory that looks like the following::
[nvpy]
sn_username = your_simplenote_username
sn_password = your_simplenote_password
If you installed this via pip install, you should now be able to start the application by typing "nvpy". The first time you run it, it will take a while as it downloads all of your simplenote notes. Subsequent runs are much faster as it uses the database it stores in your home directory.
If you prefer to run from your git clone, you can just invoke python on nvpy.py, or on the nvpy package directory.
The example nvpy.cfg <https://github.com/cpbotha/nvpy/blob/master/nvpy/nvpy-example.cfg>
_ shows how you can configure the font
family and size, the widget theme (!) configure nvpy to save and load notes as clear text, disable simplenote syncing, and so forth.
On Linux, I set the nvpy ttk theme to clam
(instead of default
; the example
config above has more information about themes), and I select nicer fonts. The
relevant config options are as follows::
theme = clam
font_family = droid sans mono
font_size = 12
list_font_size = 12
On Debian systems, you have to install the fonts-droid
package to be able to
select the attractive droid sans mono
font. ubuntu mono
is also good and
should work out of the box on Ubuntu installations.
Let us know on the Google group if you have suggestions for further decreasing the level of ugliness!
nvPY was prepared two themes. You can apply it by editing nvpy.cfg
.
Light Theme: ::
# Colors (light theme)
text_color = black
selected_note_color = light blue
note_info_color = dark gray
highlight_note_info_color = light yellow
url_color = blue
background_color = white
highlight_background_color = yellow
.. image:: ./images/light-theme.png
Dark Theme: ::
# Colors (dark theme)
text_color = white
selected_note_color = #04a
note_info_color = light gray
highlight_note_info_color = #440
url_color = #08f
background_color = black
highlight_background_color = #440
.. image:: ./images/dark-theme.png
If you dont like it, it would be better to customize the theme as your like. Let's change some options based on the above theme. Options are accept 3 formats:
color names list <https://www.tcl.tk/man/tcl8.5/TkCmd/colors.htm>
and color chart <https://wiki.tcl.tk/37701>
)Note: during customizing the theme we highly recommend setting simplenote_sync = 0
to disable sync.
Because prevent reach the API rate limit by automatic full synchronization at startup.
nvPY was designed for lightning-speed note-taking and management with the keyboard. As you type words in the search bar, the list of notes found will be refined. In the default search mode ("gstyle"), it finds notes that contain all the words you enter. For example::
t:work t:leads python imaging "exact phrase"
Will find all notes tagged with both "work" and "leads" containing the words "python" and "imaging" (anywhere, and in any order) and the exact phrase "exact phrase". The default is to search with case-sensitivity. This can be changed with the CS checkbox. Remember though that case-sensitivity has a significant effect on search speed.
By editing the config file, or by toggling the search mode option menu, you can use regular expression search mode. This is of course much more powerful, but is much slower than gstyle. The difference is noticeable on large note collections.
Here's a summary of the different shortcut keys that you can use in nvPY:
============= ========== Key combo Action ============= ========== Ctrl-? Display these key-bindings. Ctrl-A Select all text when in the note editor. Ctrl-C Copy selected text into the clipboard. If no text is selected, copy the note title. Ctrl-D Move note to trash. This can be easily recovered using the simplenote webapp. Ctrl-F Start real-time incremental regular expression search. As you type, notes list is filtered. Up / down cursor keys go to previous / next note. Ctrl-G Edit tags for currently selected note. Press ESC to return to note editing. Ctrl-J Navigate (down) to next note in list. (VIM binding) Ctrl-K Navigate (up) to previous note in list. (VIM binding) Ctrl-M Render Markdown note to HTML and open browser window. Ctrl-N Create new note. Ctrl-Q Exit nvPY. Ctrl-R Render reStructuredText (reST) note to HTML and open browser window. Ctrl-S Force sync of current note with simplenote server. Saving to disc and syncing to server also happen continuously in the background. Ctrl-Shift-S Toggle a pinned button. Ctrl-Y Redo note edits. Ctrl-Z Undo note edits. Ctrl-SPACE In search box, autocomplete tag under cursor. Keep on pressing for more alternatives. Ctrl-+/- Increase or decrease the font size. Ctrl-BS Delete previous word in the note editor. Ctrl-Delete Delete next word in the note editor. ESC Go from edit mode to search box (and, optionally, in empty search box, exit nvPY). Ctrl-[ Same as ESC. (VIM binding) ENTER Start editing currently selected note. If there's a search string but no notes in the list, ENTER creates a new note with that search string as its title. ============= ==========
screencast <http://youtu.be/NXuVMZr31SI>
_.the github issue tracker <https://github.com/cpbotha/nvpy/issues>
_.nvpy google discussion group / mailing list <https://groups.google.com/d/forum/nvpy>
_.tipping me with paypal <https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=BXXTJ9E97DG52>
_! fantastic simplenote.py library by mrtazz <https://github.com/mrtazz/simplenote.py>
_.Cemagraphics <http://cemagraphics.deviantart.com/>
_.Run the following command. ::
make test
NOTE: While test cases are running, the nvpy window is displayed many times. It will impede your work.