作曲・指導・C言語・Linux

金沢音楽制作

金沢音楽制作では、楽曲・楽譜の制作と、作曲や写譜などレッスンを行っています。

show_todo

シェルの起動時にToDoリストを番号付きで表示します。ファイルを読み込んで表示するだけですが、意外と便利なので公開します。

環境:BSD/Unix、bash

/*====  ToDo List  ====*/
 1| works編集
 2| 歌謡楽譜スキャン
 3| hanging-punctuationのoverflow-x
 4|   石川県証紙
 5|   確定申告開示請求
/*=====================*/
$

.bashrcfn_show_todo関数を作り呼び出します。関数にすることで、シェルの起動時だけではなく、いつでも実行できます。

# ~/.bashrc
fn_show_todo() {
  local FILE="${HOME}/Google Drive/todo.txt"
  local DELIM='| '

  if [ -e "${FILE}" ]; then
    echo '/*====  ToDo List  ====*/'
    awk '/[^[:space:]]/{printf("%2d'"${DELIM}"'%s\n", NR, $0)}' "${FILE}"
    echo '/*=====================*/'
  fi
}

fn_show_todo

FILE変数には、todo.txtの任意のパスを指定します。 todo.txtは、文字列を改行区切りで記述してあるだけです。また、空白行が含まれていますが、awkの正規表現によるパターンマッチで空白行を飛ばして表示させています(タブは完了を表しているだけです)。

関数定義しているので、いつでも実行できます。

$ cat todo.txt
works編集

歌謡楽譜スキャン
hanging-punctuationのoverflow-x

  石川県証紙


  確定申告開示請求

$ fn_show_todo
/*====  ToDo List  ====*/
 1| works編集
 2| 歌謡楽譜スキャン
 3| hanging-punctuationのoverflow-x
 4|   石川県証紙
 5|   確定申告開示請求
/*=====================*/
$

更新情報

  • 作成日:2023-03-23