terminalで使うtodoをコマンドだけで作ってみた


はじめに

terminalで使うtodoが欲しかったので作ってみた。

あまりリッチな機能はいらないのでファイルを使ったTODOとする。
あと自分がzshを使ってるのでzshじゃないと動かないかも。

ちなみに自分はwindowsの場合はcygwinを使ってます。

機能

TODOの表示

tl でTODOを表示します。

TODOの追加

ta でTODOを入力します。

仕組みとしてはホームディレクトリに .todo というファイルを作成してるだけです。

TODO入力するとTODOの末尾に追加されて一覧が表示されます。

TODOの完了(削除)

td エンター後に対象TODOの選択(インクリメンタルサーチ可)になるので選択して実行。

対象が完了(削除)されて一覧が表示されます。

ちなみに私はmacでは peco windowsでは percol を使っているのでwindowsの場合は以下のエイリアスを設定してます。

peco=percol

また peco とか使わないよという場合は remove-todo-by-no という関数を作成してあるので alias を変更すれば番号指定で削除できるようになります。

完了したTODOは一応、 ホームディレクトリの todo_history というファイルの追加しています。

完了したTODOの表示

tcl で完了したTODOが表示されます。
完了時に日時を追加しているので完了日時とTODOの内容が表示されます。

TODOの変更

te でTODOをvimで開くようになってます。
vimで普通に編集して保存してください。

作ってみて

あまりshellを書く機会がないので面白かった。
↑詳しい人には無駄な処理があると突っ込まれそう。。
最初に tl 打つとファイルがないエラーでるしw
今回使用した nl コマンドとかしらなかったし。

まぁ自分的にはこれくらいシンプルなのが使いやすくて良いかなっと。

作成したものはgistにUPしておいたので使いたい方いれば自由に使ってください。