iimport - notes - a console notes manager using git Err bitreich.org 70 1Log /scm/notes/log.gph bitreich.org 70 1Files /scm/notes/files.gph bitreich.org 70 1Refs /scm/notes/refs.gph bitreich.org 70 1Tags /scm/notes/tag bitreich.org 70 1LICENSE /scm/notes/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit cd514f9fb3d6f5753d014f908f89d142989fc7a7 /scm/notes/commit/cd514f9fb3d6f5753d014f908f89d142989fc7a7.gph bitreich.org 70 hAuthor: Solene Rapenne URL:mailto:solene@perso.pw bitreich.org 70 iDate: Thu, 12 Jul 2018 13:17:53 +0200 Err bitreich.org 70 i Err bitreich.org 70 iimport Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i A notes | 120 +++++++++++++++++++++++++++++++ Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 120 insertions(+), 0 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/notes b/notes /scm/notes/file/notes.gph bitreich.org 70 i@@ -0,0 +1,120 @@ Err bitreich.org 70 i+#!/bin/sh Err bitreich.org 70 i+ Err bitreich.org 70 i+# tool for taking notes inside a git repository Err bitreich.org 70 i+ Err bitreich.org 70 i+REPO=~/notes/ Err bitreich.org 70 i+ Err bitreich.org 70 i+# default editor to vi Err bitreich.org 70 i+if [ -z "$EDITOR" ]; then Err bitreich.org 70 i+ which nvi 2>/dev/null 1>/dev/null && EDITOR=nvi Err bitreich.org 70 i+ test -z "$EDITOR" && which vim 2>/dev/null 1>/dev/null && EDITOR=vim Err bitreich.org 70 i+ test -z "$EDITOR" && EDITOR=vi Err bitreich.org 70 i+fi Err bitreich.org 70 i+ Err bitreich.org 70 i+usage() { Err bitreich.org 70 i+ NAME=$(basename $0) Err bitreich.org 70 i+ echo "$NAME [init|ls|edit|history|cat|rm] [path]" Err bitreich.org 70 i+ echo "" Err bitreich.org 70 i+ echo " $NAME init" Err bitreich.org 70 i+ echo " - initialize the git repository" Err bitreich.org 70 i+ echo "" Err bitreich.org 70 i+ echo " $NAME [ls]" Err bitreich.org 70 i+ echo " - show hierarchy tree" Err bitreich.org 70 i+ echo "" Err bitreich.org 70 i+ echo " $NAME edit path" Err bitreich.org 70 i+ echo ' - start $EDITOR on file and auto commit' Err bitreich.org 70 i+ echo "" Err bitreich.org 70 i+ echo " $NAME history path" Err bitreich.org 70 i+ echo " - start tig on file to display file history" Err bitreich.org 70 i+ echo "" Err bitreich.org 70 i+ echo " $NAME cat path" Err bitreich.org 70 i+ echo " - output content of the file" Err bitreich.org 70 i+ echo "" Err bitreich.org 70 i+ echo " $NAME rm path" Err bitreich.org 70 i+ echo " - delete file" Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+# display a file tree of notes taken Err bitreich.org 70 i+display() { Err bitreich.org 70 i+ colortree -C --prune --noreport "$REPO" Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+# edit a file given as parameter Err bitreich.org 70 i+edit() { Err bitreich.org 70 i+ DEST="$1" Err bitreich.org 70 i+ DIRNAME=$(dirname "$DEST") Err bitreich.org 70 i+ cd "$REPO" Err bitreich.org 70 i+ Err bitreich.org 70 i+ if [ ! -d "$DEST" ] Err bitreich.org 70 i+ then Err bitreich.org 70 i+ mkdir -p "${DIRNAME}" Err bitreich.org 70 i+ $EDITOR "$DEST" Err bitreich.org 70 i+ git add "$DEST" Err bitreich.org 70 i+ git commit -m "editing by $USER" "$DEST" Err bitreich.org 70 i+ else Err bitreich.org 70 i+ echo "${DEST} is a folder. Aborting" Err bitreich.org 70 i+ exit 1 Err bitreich.org 70 i+ fi Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+# show file history using tig program Err bitreich.org 70 i+histo() { Err bitreich.org 70 i+ DEST="$1" Err bitreich.org 70 i+ cd "$REPO" Err bitreich.org 70 i+ Err bitreich.org 70 i+ tig "$DEST" Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+# output the content of a file Err bitreich.org 70 i+show_file() { Err bitreich.org 70 i+ DEST="$1" Err bitreich.org 70 i+ cd "$REPO" Err bitreich.org 70 i+ cat "$DEST" Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+# delete a file and commit in git Err bitreich.org 70 i+delete() { Err bitreich.org 70 i+ DEST="$1" Err bitreich.org 70 i+ cd "$REPO" Err bitreich.org 70 i+ if [ -f "$DEST" ]; Err bitreich.org 70 i+ then Err bitreich.org 70 i+ git rm "$DEST" Err bitreich.org 70 i+ git commit -m "deleted by $USER" "$DEST" Err bitreich.org 70 i+ else Err bitreich.org 70 i+ echo "${DEST} is a folder. Aborting." Err bitreich.org 70 i+ exit 1 Err bitreich.org 70 i+ fi Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+# create a git repo Err bitreich.org 70 i+initialization() { Err bitreich.org 70 i+ cd $REPO Err bitreich.org 70 i+ if [ -d .git ] Err bitreich.org 70 i+ then Err bitreich.org 70 i+ echo "Git already initialized" Err bitreich.org 70 i+ exit 3 Err bitreich.org 70 i+ else Err bitreich.org 70 i+ git init Err bitreich.org 70 i+ fi Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+mkdir -p ${REPO} Err bitreich.org 70 i+if [ $? -ne 0 ] Err bitreich.org 70 i+then Err bitreich.org 70 i+ echo "Can't create ${REPO}. Aborting." Err bitreich.org 70 i+ exit 2 Err bitreich.org 70 i+fi Err bitreich.org 70 i+ Err bitreich.org 70 i+PARAM1=$1 Err bitreich.org 70 i+PARAM2=$2 Err bitreich.org 70 i+ Err bitreich.org 70 i+if [ "$PARAM1" = "ls" ]; then display ; exit 0 ; fi Err bitreich.org 70 i+if [ "$PARAM1" = "init" ]; then initialization ; exit 0 ; fi Err bitreich.org 70 i+if [ "$PARAM1" = "" ]; then display ; exit 0 ; fi Err bitreich.org 70 i+if expr "$PARAM1" : "^e" >/dev/null && [ -n "$PARAM2" ]; then edit "$PARAM2" ; exit 0 ; fi Err bitreich.org 70 i+if expr "$PARAM1" : "^hi" >/dev/null && [ -n "$PARAM2" ]; then histo "$PARAM2" ; exit 0 ; fi Err bitreich.org 70 i+if expr "$PARAM1" : "^c" >/dev/null && [ -n "$PARAM2" ]; then show_file "$PARAM2" ; exit 0 ; fi Err bitreich.org 70 i+if [ "$PARAM1" = "rm" ] && [ -n "$PARAM2" ]; then delete "$PARAM2" ; exit 0 ; fi Err bitreich.org 70 i+if expr "$PARAM1" : "^he" >/dev/null ; then usage ; exit 0 ; fi Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 .