タリーとして機能するショートカットを作成するにはどうすればいいですか

タリーとして機能するショートカットを作成するにはどうすればいいですか

仕事で毎週期限のある繰り返しのタスクをこなさなければなりません。これらのタスクの完了にどれくらい近づいているか知りたいので、紙に記録する傾向があります。残念ながら、私はよく旅行するので、いつもペンやノートを持っているわけではありません。代わりに gedit を使っているため、これは問題ありませんが、シャットダウン時に gedit を保存し忘れて、記録を見失ってしまうことがあります。

しかし、私が本当に欲しいのは、タスクを完了するたびにどこかに記録され、即座に保存されるようなショートカットを設定する方法です。また、何らかの方法ですばやく簡単に表示できる必要があります。

答え1

おそらく、Emacs を org-mode で使用できるでしょう。これは単にタスクを管理するだけよりもはるかに強力ですが、調べてみる価値はあるかもしれません。

答え2

私が見つけた最も簡単な解決方法は、集計をテキスト ファイルに保存し、 を使用して値を表示するダッシュ スクリプトを作成することですnotify-send

source以前は、集計したい値の場所を設定していました。

#!/bin/sh
. /home/jesse/.scripts/tally

集計ファイルには、次の 1 行だけが含まれます。

written=0

そして私は関数を作成しました見せる集計すると、クリア集計して追加集計中。

集計を表示するには、集計を再読み込みして最新のものであることを確認する必要があります。次に、notify-send次のように使用します。

show() {
  . /home/jesse/.scripts/tally
  notify-send -i "/home/jesse/.scripts/icon.png" \
  "Total for this week:" "Written: $written"
}

追加集計関数では集計から読み取り、値に 1 を追加し、集計を書き換えてから show 関数を呼び出す必要があります。

add() {
  num=$(($written + 1))
  printf "written=$num" > /home/jesse/.scripts/tally
  show
}

clear 関数は、かなり説明不要です。

clear() {
  printf "written=0" > /home/jesse/.scripts/tally
  show
}

最後に、スクリプトから個々の関数を呼び出すには、$@引数をそのまま呼び出せるようにスクリプトを終了する必要がありました。完全なスクリプトは次のとおりです。

#!/bin/sh
. /home/jesse/.scripts/tally
show() {
  . /home/jesse/.scripts/tally
  notify-send -i "/home/jesse/.scripts/icon.png" \
  "Total for this week:" "Written: $written"
}
add() {
  num=$(($written + 1))
  printf "written=$num" > /home/jesse/.scripts/tally
  show
}
clear() {
  printf "written=0" > /home/jesse/.scripts/tally
  show
}
$@

そこから、スクリプトから個々の関数を呼び出すためのキーボード ショートカットを割り当て、ボタンを数回押すだけで通知ウィンドウに表示される見栄えの良い集計を管理できるようになりました。

これが誰かの役に立つことを願っています。これは私の最初のダッシュ スクリプトであり、満足していますが、これを実現するにはもっときれいな方法があるはずです。

関連情報