Skip to content

Commit f27a172

Browse files
committed
notes search feature plus updated docs
1 parent c32b41a commit f27a172

File tree

2 files changed

+77
-1
lines changed

2 files changed

+77
-1
lines changed

README.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,46 @@ Any note names specified in either the command line OR when prompted
169169
the spaces replaced with underscores. So if you enter *notes add my new
170170
note* you will create 'my_new_note'.
171171

172+
173+
### Sub-command config
174+
175+
Displays the 'config' file and also the DEFAULT and USE (current)
176+
notebooks.
177+
178+
179+
### Sub-command newkey
180+
181+
The *notes* application will prompt for a new GPG KEYID to use. You may
182+
use either the full 40 character ID or the shorter 16 characters (the
183+
last 16 characters of the full KEYID).
184+
185+
After checking that the key is valid and that you have the private key
186+
on your keyring the application will process EVERY note in ALL
187+
notebooks.
188+
189+
The 'config' file will also be updated.
190+
191+
If you have your private key on a Yubikey then this will require the
192+
entering of your PIN number (which is cached).
193+
194+
If you have enabled touch decryption protection then you will need to
195+
touch your Yubikey. With older Yubikey with firmware prior to 5.2.3
196+
this will mean you will need to touch the key for every file decrypted.
197+
With older Yubikeys you may wish to turn off the requirement for
198+
touchin if you have a lot of notes.
199+
200+
```shell
201+
$ ykman openpgp touch enc off
202+
```
203+
204+
For newer Yubikeys with firmware 5.2.3 or later you can set a cached
205+
policy for touch.
206+
207+
```shell
208+
$ ykman openpgp set-touch enc cached
209+
```
210+
211+
172212
### Sub-command add | insert
173213

174214
To add a note simply issue the command
@@ -182,6 +222,7 @@ open your default editor ($EDITOR) to edit a the file. After saving and
182222
exiting the note will be encrypted with GnuPG using the key specified
183223
in the config file.
184224

225+
185226
### Sub-command view | cat
186227

187228
To view a note you enter the command:
@@ -194,6 +235,7 @@ This will decrypt the note 'note title.gpg' in the current notebook
194235
(see 'USE' pointer) with the private key specified in the 'config'
195236
file. GnuPG will output the decrypted note to the STDOUT.
196237

238+
197239
### Sub-command edit|ed
198240

199241
To edit an encrypted note simply issue the command:
@@ -284,6 +326,7 @@ This will copy the note 'original_note_file.gpg' to another note file.
284326
The user will be prompted for the name of the new note file. The
285327
original file is NOT decrypted in the process.
286328

329+
287330
### Sub-command rename | mv
288331

289332
You can rename a note into another note file in the same notebook. Simply
@@ -319,6 +362,7 @@ prompted (for rename and copy operations) will be scanned for spaces
319362
and then the spaces replaced with underscores. So if you enter
320363
*notebook add my new notebook* you will create 'my_new_notebook'.
321364

365+
322366
### Sub-command default
323367

324368
This command is used to set the DEFAULT notebook.
@@ -329,6 +373,7 @@ $ notes default work notebook
329373

330374
This sets the DEFAULT notebook to 'work_notebook/'
331375

376+
332377
### Sub-command use
333378

334379
The 'USE' pointer points to the notebook currently in use. You can
@@ -355,6 +400,7 @@ notebooks.
355400
This will list all of the notebooks that you have created together with
356401
the initial notebook *notes* created by *notes init*.
357402

403+
358404
### Sub-command add | insert
359405

360406
You can have as many notebooks as you wish. To add a notebook simply
@@ -368,6 +414,7 @@ This command will create a new notebook 'work_notebook'. The current
368414
notebook will remain unchanged and you will need to issue the command
369415
*notebook use work notebook* to switch to this notebook.
370416

417+
371418
### Sub-command rename | mv
372419

373420
This sub-command is used to rename an existing notebook.
@@ -380,6 +427,7 @@ The notebook 'original_notebook_name.gpg' will be renamed. The user
380427
will be prompted to enter a new name for the notebook and the
381428
containing directory (relating to the notebook name) is renamed.
382429

430+
383431
### Sub-command copy | cp
384432

385433
You may duplicate a notebook together with all the containing notes:
@@ -393,6 +441,7 @@ user will be prompted for a new notebook name. All notes within the
393441
original notebook will be copied to the new notebook without decrypting
394442
the notes first.
395443

444+
396445
### Sub-command delete | rm
397446

398447
To delete a specific notebook:
@@ -413,6 +462,7 @@ therefore the PIV slots on the Yubikey) in a future release as this
413462
will require some switching within the functions to support two
414463
different commands for encryption and decryption.
415464

465+
416466
## Yubikeys
417467

418468
GnuPG keys can be added to most recent Yubikeys. The Yubikey 5, Yubikey
@@ -451,6 +501,27 @@ each file. The flashing is the only indication that GnuPG is waiting
451501
for the Yubikey.
452502

453503

504+
#### Workaround for newer Yubikeys
505+
506+
If you have a newer Yubikey with a firmware of 5.2.3 or higher you can
507+
cache the button touch for 15 seconds.
508+
509+
To bypass this annoyance you can run the following command:
510+
511+
```shell
512+
$ ykman openpgp set-touch enc cached
513+
```
514+
515+
This will set the touch policy to cache touches for 15 seconds which
516+
should be enough time for most notebooks to be searched with only one
517+
touch.
518+
519+
Please note that you need YKMAN version 4 and above for this option to
520+
be available. Those working on Debin 10 based systems (BUSTER) will
521+
need to either get the repo from GitHub; install ykman from Debian
522+
TESTING or upgrade to Debian 11 when it becomes available.
523+
524+
454525
### Recommended Yubikey guides
455526

456527
We will not look at how to get your GnuPG keys onto the Yubikey here

notes

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -423,7 +423,12 @@ cmd_show () {
423423
}
424424

425425
cmd_find () {
426-
echo cmd_find
426+
searchterm="$@"
427+
428+
for file in ${USE_POINTER}/*.gpg
429+
do
430+
gpg -d $file 2>/dev/null | grep -H --label ${file} $searchterm
431+
done
427432
}
428433

429434
cmd_insert () {

0 commit comments

Comments
 (0)