parent
fee04030e6
commit
5b956b096c
36
README
36
README
|
@ -1,20 +1,44 @@
|
||||||
nnote: nora's notes
|
nnote: nora's notes
|
||||||
----
|
----
|
||||||
|
|
||||||
provides four notemaking scripts: dnote, mnote, ynote, gnote
|
provides a script, nnote, to quickly make notes in a simple hierarchy
|
||||||
|
provides four quick aliases: dnote, mnote, ynote, gnote
|
||||||
|
|
||||||
installation
|
installation
|
||||||
----
|
----
|
||||||
set $NOTESDIR or use ~/Notes
|
optionally, set $NOTESDIR.
|
||||||
clone this repo to ~NOTESDIR/bin
|
if you don't do this, nnote will use ~/Notes
|
||||||
symlink dnote, mnote, ynote, gnote to your path like
|
|
||||||
|
|
||||||
$ ln -s "$NOTESDIR/bin/dnote" "$HOME/.bin/dnote"
|
then, install the scripts
|
||||||
|
option 1: clone this repo to ~$NOTESDIR/bin
|
||||||
|
then symlink dnote, mnote, ynote, gnote to your PATH like
|
||||||
|
|
||||||
|
$ ln -s "$NOTESDIR/bin/dnote" "$HOME/.bin/dnote"
|
||||||
|
|
||||||
|
option 2: clone this repo (wherever you like) and either
|
||||||
|
a) add that directory to your PATH, or
|
||||||
|
b) copy or symlink these scripts into your PATH
|
||||||
|
|
||||||
usage
|
usage
|
||||||
----
|
----
|
||||||
|
|
||||||
use dnote for daily notes, mnote for monthly, ynote for yearly, gnote for global
|
when you call nnote, you give it a note type (daily/monthly/yearly/global)
|
||||||
|
and, optionally, a note name, which can include spaces with or without quoting.
|
||||||
|
|
||||||
|
nnote will:
|
||||||
|
- create the appropriate note directory,
|
||||||
|
- make the note if it doesn't exist,
|
||||||
|
- cd into $NOTESDIR so your CtrlP.vim or whatever will work,
|
||||||
|
- and then open the note in $EDITOR
|
||||||
|
|
||||||
|
when the editor closes it'll cd back to where you were.
|
||||||
|
|
||||||
|
aliases are provided:
|
||||||
|
- dnote for daily notes
|
||||||
|
- mnote for monthly
|
||||||
|
- ynote for yearly
|
||||||
|
- gnote for global
|
||||||
|
|
||||||
you can enter different names but by default those are the note names too
|
you can enter different names but by default those are the note names too
|
||||||
the file hierarchy is very simple, for instance:
|
the file hierarchy is very simple, for instance:
|
||||||
- $NOTESDIR
|
- $NOTESDIR
|
||||||
|
|
37
arbnote
37
arbnote
|
@ -1,37 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
set -euo pipefail
|
|
||||||
NOTETYPE="${1-}"
|
|
||||||
if [[ "$NOTETYPE" == "daily" ]]; then
|
|
||||||
DATESTRING="$(date +%Y/%m/%d)"
|
|
||||||
NOTEHEAD=" for $DATESTRING"
|
|
||||||
elif [[ "$NOTETYPE" == "monthly" ]]; then
|
|
||||||
DATESTRING="$(date +%Y/%m)"
|
|
||||||
NOTEHEAD=" for $DATESTRING"
|
|
||||||
elif [[ "$NOTETYPE" == "yearly" ]]; then
|
|
||||||
DATESTRING="$(date +%Y)"
|
|
||||||
NOTEHEAD=" for $DATESTRING"
|
|
||||||
elif [[ "$NOTETYPE" == "global" ]]; then
|
|
||||||
DATESTRING=""
|
|
||||||
NOTEHEAD=""
|
|
||||||
else
|
|
||||||
echo "usage: arbnote <type> [notename]"
|
|
||||||
echo " create or edit a note"
|
|
||||||
echo " arbnote --help"
|
|
||||||
echo " print this help"
|
|
||||||
echo " "
|
|
||||||
echo "arbnote requires a type: daily, monthly, yearly, or global"
|
|
||||||
echo "if not provided, type is used for notename, too"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
NOTESDIR="${NOTESDIR:-$HOME/Notes}"
|
|
||||||
NOTEKIND="$1"
|
|
||||||
NOTENAME="${2:-$NOTETYPE}"
|
|
||||||
DATEDIR="$NOTESDIR/$DATESTRING"
|
|
||||||
mkdir -p "$DATEDIR"
|
|
||||||
NOTEPATH="$DATEDIR/$NOTENAME"
|
|
||||||
echo "$NOTEPATH"
|
|
||||||
if ! [ -f "$NOTEPATH" ]; then
|
|
||||||
printf "$NOTENAME$NOTEHEAD\n---\n\n" > "$NOTEPATH"
|
|
||||||
fi
|
|
||||||
$EDITOR "$NOTEPATH"
|
|
13
dnote
13
dnote
|
@ -1,14 +1,11 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
if [ "${1-}" == "--help" ] || [ "${1-}" == "-h" ]; then
|
if [ -f "$(which nnote)" ]; then
|
||||||
echo "usage: dnote [notename]"
|
NNOTE="$(which nnote)"
|
||||||
echo " create a daily note in \$NOTESDIR/year/month/day"
|
|
||||||
echo " default \$NOTESDIR is ~/Notes"
|
|
||||||
echo " yours is ${NOTESDIR-$HOME/Notes}"
|
|
||||||
echo " default notename is 'daily'"
|
|
||||||
echo " multi word notenames accepted without quotes."
|
|
||||||
else
|
else
|
||||||
NOTEBIN="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
NOTEBIN="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
||||||
$NOTEBIN/arbnote daily "$*"
|
NNOTE="$NOTEBIN/nnote"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
$NNOTE daily "$*"
|
||||||
|
|
||||||
|
|
13
gnote
13
gnote
|
@ -1,14 +1,11 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
if [ "${1-}" == "--help" ] || [ "${1-}" == "-h" ]; then
|
if [ -f "$(which nnote)" ]; then
|
||||||
echo "usage: gnote [notename]"
|
NNOTE="$(which nnote)"
|
||||||
echo " create a note in \$NOTESDIR/"
|
|
||||||
echo " default \$NOTESDIR is ~/Notes"
|
|
||||||
echo " yours is ${NOTESDIR-$HOME/Notes}"
|
|
||||||
echo " default notename is 'global'"
|
|
||||||
echo " multi word notenames accepted without quotes."
|
|
||||||
else
|
else
|
||||||
NOTEBIN="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
NOTEBIN="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
||||||
$NOTEBIN/arbnote global "$*"
|
NNOTE="$NOTEBIN/nnote"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
$NNOTE global "$*"
|
||||||
|
|
||||||
|
|
13
mnote
13
mnote
|
@ -1,14 +1,11 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
if [ "${1-}" == "--help" ] || [ "${1-}" == "-h" ]; then
|
if [ -f "$(which nnote)" ]; then
|
||||||
echo "usage: mnote [notename]"
|
NNOTE="$(which nnote)"
|
||||||
echo " create a monthly note in \$NOTESDIR/year/month"
|
|
||||||
echo " default \$NOTESDIR is ~/Notes"
|
|
||||||
echo " yours is ${NOTESDIR-$HOME/Notes}"
|
|
||||||
echo " default notename is 'monthly'"
|
|
||||||
echo " multi word notenames accepted without quotes."
|
|
||||||
else
|
else
|
||||||
NOTEBIN="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
NOTEBIN="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
||||||
$NOTEBIN/arbnote monthly "$*"
|
NNOTE="$NOTEBIN/nnote"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
$NNOTE monthly "$*"
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,48 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
NOTETYPE="${1-}"
|
||||||
|
if [[ "$NOTETYPE" == "daily" ]]; then
|
||||||
|
DATESTRING="$(date +%Y/%m/%d)"
|
||||||
|
NOTEHEAD=" for $DATESTRING"
|
||||||
|
elif [[ "$NOTETYPE" == "monthly" ]]; then
|
||||||
|
DATESTRING="$(date +%Y/%m)"
|
||||||
|
NOTEHEAD=" for $DATESTRING"
|
||||||
|
elif [[ "$NOTETYPE" == "yearly" ]]; then
|
||||||
|
DATESTRING="$(date +%Y)"
|
||||||
|
NOTEHEAD=" for $DATESTRING"
|
||||||
|
elif [[ "$NOTETYPE" == "global" ]]; then
|
||||||
|
DATESTRING=""
|
||||||
|
NOTEHEAD=""
|
||||||
|
else
|
||||||
|
echo "usage: nnote <type> [notename]"
|
||||||
|
echo " create or edit a note"
|
||||||
|
echo " nnote <type> --help | -h"
|
||||||
|
echo " get help for a note type"
|
||||||
|
echo " "
|
||||||
|
echo "nnote requires a type: daily, monthly, yearly, or global"
|
||||||
|
echo "if not provided, type is used for notename, too"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${2-}" == "--help" ] || [ "${2-}" == "-h" ]; then
|
||||||
|
echo "usage: nnote $NOTETYPE [notename]"
|
||||||
|
echo " create a $NOTETYPE note in \$NOTESDIR/$DATESTRING"
|
||||||
|
echo " default \$NOTESDIR is ~/Notes"
|
||||||
|
echo " yours is ${NOTESDIR-$HOME/Notes}"
|
||||||
|
echo " default notename is '$NOTETYPE'"
|
||||||
|
echo " multi word notenames accepted without quotes."
|
||||||
|
else
|
||||||
|
NOTESDIR="${NOTESDIR:-$HOME/Notes}"
|
||||||
|
NOTEKIND="$1"
|
||||||
|
NOTENAME="${2:-$NOTETYPE}"
|
||||||
|
DATEDIR="$NOTESDIR/$DATESTRING"
|
||||||
|
mkdir -p "$DATEDIR"
|
||||||
|
NOTEPATH="$DATEDIR/$NOTENAME"
|
||||||
|
echo "$NOTEPATH"
|
||||||
|
if ! [ -f "$NOTEPATH" ]; then
|
||||||
|
printf "$NOTENAME$NOTEHEAD\n---\n\n" > "$NOTEPATH"
|
||||||
|
fi
|
||||||
|
pushd "$NOTESDIR" > /dev/null
|
||||||
|
$EDITOR "$NOTEPATH"
|
||||||
|
popd > /dev/null
|
||||||
|
fi
|
13
ynote
13
ynote
|
@ -1,14 +1,11 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
if [ "${1-}" == "--help" ] || [ "${1-}" == "-h" ]; then
|
if [ -f "$(which nnote)" ]; then
|
||||||
echo "usage: ynote [notename]"
|
NNOTE="$(which nnote)"
|
||||||
echo " create a yearly note in \$NOTESDIR/year"
|
|
||||||
echo " default \$NOTESDIR is ~/Notes"
|
|
||||||
echo " yours is ${NOTESDIR-$HOME/Notes}"
|
|
||||||
echo " default notename is 'yearly'"
|
|
||||||
echo " multi word notenames accepted without quotes."
|
|
||||||
else
|
else
|
||||||
NOTEBIN="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
NOTEBIN="$( dirname -- "$( readlink -f -- "$0"; )"; )"
|
||||||
$NOTEBIN/arbnote yearly "$*"
|
NNOTE="$NOTEBIN/nnote"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
$NNOTE yearly "$*"
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue