如何建立充當計數的快捷方式

如何建立充當計數的快捷方式

對於我的工作,我必須在每週截止日期內完成重複性任務。我想知道我距離完成這些任務還有多遠,所以我傾向於在一張紙上記錄下來。不幸的是,我經常出差,而且並不總是有筆或筆記本。這很好,因為我只是將 gedit 作為替代方案,但有時我會在關閉時忘記保存 gedit 並失去對計數的追蹤。

不過,我真正想要的是一種設定快捷方式的方法,以便每次完成任務時都會將其記錄在某處並立即保存。它還需要以某種方式快速、輕鬆地顯示。

答案1

也許您可以將 emacs 與 org-mode 一起使用。它比簡單地管理任務要強大得多,但可能值得深入研究。

答案2

我發現的最簡單的解決方法是創建一個破折號腳本,將計數存儲在文本文件中並使用notify-send.

我曾經source設定我想要記錄的值的位置:

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

計數文件只有一行內容:

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() {
  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
}
$@

從那裡,我可以指派鍵盤快捷鍵來從腳本中呼叫各個函數,並透過按幾個按鈕來管理顯示在通知視窗中的漂亮計數。

希望這對某人有幫助。這是我的第一個 dash 腳本,我對此感到滿意,但肯定會有更簡潔的方法來實現這一目標。

相關內容