Manage your Evernote record notes on the Linux command line. If you've never heard of it, Evernote has a dedicated, user-friendly online service that can sync notes between different devices. In addition to providing a fancy web-based api,evernote, it also publishes clients on Windows, Macs, Android, and iOS. However, no official Linux clients are available yet. To be honest, one of the many unofficial Linux clients has a program that attracts all command line enthusiasts as soon as it appears, which is geeknote . The
Geeknote installation
Geeknote is developed using Python. So before you start, make sure you've installed Python (preferably version 2.7) and Git.
In Debian, Ubuntu, and Linux Mint
$ sudo apt-get install python2.7 git python-setuptools
$ git clone git://github.com/vitaliyrodnenko/geeknote.git
$ CD Geeknote
$ sudo python2.7 setup.py install
in Fedora or Centos/rhel.
$ sudo yum install git
$ git clone git://github.com/vitaliyrodnenko/geeknote.git
$ CD Geeknote
$ sudo python setup.py install
in the Arch Linux
For archlinux users, you only need to use the packages in Aur.
Basic use of Geeknote
Once you have finished installing Geeknote, you should associate Geeknote with your Evernote account:
$ geeknote Login
Then enter your email address, password, and your two-step authentication code. If you don't have the latter, ignore it and press ENTER.
Obviously you need a Evernote account to do this, so go ahead and sign up.
Once you've done this, you can start creating new notes and editing them.
But first, you need to set up your favorite text editor:
$ geeknote Settings--editor vim
Then, the syntax for creating a new note generally is:
$ geeknote Create--title [title of the new note] (--content [content]--tags [comma-separated tags]--notebook [comma-sep Arated Notebooks])
In the above command, only ' title ' is required, and it is associated with the title of a new note. Other annotations can add extra metadata to your notes: Add tags to your notes and specify them in that notebook. Also, if you have spaces in your title or content, don't forget to enclose them in quotes.
Like what:
$ geeknote Create--title ' My note '--content ' This was a test note '--tags ' finance business Important '--notebook ' Fami Ly
Then, you can edit your notes. The syntax is very similar:
$ geeknote Edit--note [title of the note to edit] (--title [new title]--tags [New tags]--notebook [new notebooks])
Note Optional parameters such as new headers, labels, and notebooks are used to modify the metadata of your notes. You can also rename your notes with the following command:
$ geeknote Edit--note [old title]--title [new title]
Now that basic creation and editing has been done, the more advanced features are search and delete. You can search for your notes in the following syntax:
$ geeknote Find--search [Text-to-search]--tags [comma-separated tags]--notebook [comma-separated notebooks]--date [dat E-or-date-range]--content-search
By default, the commands above will search for notes by title. With the "--content-search" option, you can search by content.
Like what:
$ geeknote Find--search "*restaurant"--notebooks "Family"--date 31.03.2014-31.08.2014
Show notes for the specified title:
$ geeknote Show [title]
One of my favorite tips is to use:
$ geeknote Show "*"
This will show all the notes and allow you to select one here.
Delete a note:
$ geeknote Remove--note [title]
Be careful that this is the real deletion. It deletes this note from the Cloud store.
Finally there are many options to manage the labels and notebooks. I think the most useful thing is to display a list of notebooks.
$ geeknote Notebook-list
The following commands are very similar. As you can guess, you can use the following command to list all the tags:
$ geeknote Tag-list
To create a notebook:
$ geeknote notebook-create--title [notebook title]
Create a Label:
$ geeknote tag-create--title [tag title]
Once you get the hang of it, it's clear that the syntax is very natural.
If you want to learn more, don't forget to check the official document.
Benefits
As a benefit, Geeknote's Gnsync tool allows you to synchronize between Evernote and your local computer. However, I found its syntax a bit boring:
$ gnsync--path [where to sync] (--mask [What kind of file to sync]--format [ in which format]--logpath ["Where to write" log]--notebook [which notebook to use])
is the meaning of these parameters.
--path/home/adrien/documents/notes/: The location of the sync notes with Evernote.
--mask "*.txt": only plain text files are synchronized. The default Gnsync will attempt to synchronize all files.
--format markdown: You want them to be plain text or markdown format (the default is plain text).
--logpath/home/adrien/gnsync.log: The location of the synchronization log. To prevent errors, Gnsync writes log information there.
--notebook "Family": Sync notes in which notebook. If left blank, the program creates a notebook that synchronizes the folder commands with you.
Overall, Geeknote is a beautiful Evernote command-line client. I personally do not use Evernote very often, but it is still very beautiful and useful. The command line makes it very geek and easy to combine with shell scripts. In addition, there is a branch of geeknote on Git, called Geeknote-improved-git on ArchLinux aur, which seems to have more features and more aggressive development than other branches. I think it's worth seeing.