tritask-sta は タスク管理メソッド Tritask を実装したタスク管理ツールです。
- tritask-sta
- 秀丸エディタ + Python による実装
- 操作はツーステップ
- 1: ショートカットキーを押してメニューを開く
- 2: 実行したい項目を選ぶ
- ルーチンタスク
- 例1: 毎日繰り返す → rep:1
- 例2: 3日毎に繰り返すが休日は省く → rep:3 skip:休
- 実行日の操作
- Walk day(指定したタスクの実行日をn日後・n日前に変える)
- Walk +1 day(指定したタスクを明日にスキップする = 実行日を+1する)
- Change to Today(指定したタスクの実行日を今日にする)
- Windows 7+
- Python 3.6
- 秀丸エディタ
- 動作確認を行っているのは V8.91
- 古いバージョンだとマクロが動作しないかもしれません
- (1)環境の準備
- 上記システム要件を全て満たす
- ※Python インストール方法など詳細は割愛
- (2)入手
- ダウンロードページ から zip をダウンロード
- (3)秀丸エディタの設定
- tritask.mac をマクロ登録する
- (4)データファイルの準備
- .trita ファイルを新規する(空ファイルなり サンプル 使うなり)
- (5)秀丸エディタの設定
- tritask.mac を「キー割り当て」や「ツールバー」から素早く呼び出せるようにする
- trita ファイル用の強調表示設定を適用する
- その他 > ファイルタイプ別の設定 > 設定の一覧
- 適当な設定をコピーして trita 用設定をつくる
- 秀丸エディタで trita ファイルを開き、trita 用設定を選んだ後、trita.hilight を強調表示設定として読み込む
- ダークテーマもあります → trita_dark.hilight
tritask.mac マクロを実行するとメニューが表示されるので、実行したい操作を選択します。
詳細については以下ドキュメントを参照してください。
秀丸エディタ上で trita ファイルを見易く&扱いやすくするために、専用の強調定義ファイルを用意しています。
出来ること:
- 各種文法のハイライト表示
- 属性(繰り返しの
rep:1
など) - 未完了タスク
- 開始中タスク
- 土曜日を青色で、日曜日を赤色で表示
- 属性(繰り返しの
- 見出し(
--
を含む行)のサポート- 強調表示
- 秀丸エディタの「次(前)の見出しに移動」も使えます
管理者権限でインストールしてください。
管理者権限で実行してください。
秀丸エディタから関連付けることも可能です。
- 1: 秀丸エディタ > 「その他」メニュー > 動作環境
- 2: 関連付け
- 3: 「関連付け可能な拡張子の登録」ボタン
- 4: 「追加」ボタンから
trita
を登録
秀丸エディタの 自動インデントをオフ にしてください。
- ファイルタイプ別の設定 > 体裁 > インデント > 自動インデント のチェックを外す
秀丸エディタ上での表示が折り返されていないか を確認してください。
折り返されている場合、tritask.mac が正常に動作しないため、このような動作になります。折り返されないように、行の文字数、ウィンドウ幅、折り返し設定などを変更してください(.trita ファイルタイプの折り返し設定は「折り返さない(最大幅で折り返し)」にすることをおすすめします)。
以下は正しくない例です(15文字で折り返す設定の場合)。
2 2017/09/16 Sat タ
スク1
2 2017/09/16 Sat タ
スク2
2 2017/09/16 Sat タ
スク3
折り返された結果、「スク1」「スク2」のように不正な行が発生してしまっています。こうなると tritask.mac は正常に動作しません。
以下は正しい例です(折り返しがありません)。
2 2017/09/16 Sat タスク1
2 2017/09/16 Sat タスク2
2 2017/09/16 Sat タスク3
上記と同様の原因です。秀丸エディタ上での表示が折り返されていないか を確認してください。
特に過去タスクのリファレンスを開く場合、そのタスクより上にあるタスク行のどこかで折り返し(による余分な行)が発生していないか を確認してみてください。
(詳しい話をしておくと)リファレンス機能は、helper.py に対して「N行目のタスクが持つリファレンスを開いてください」という風に命令を与えているのですが、折り返しにより余分な行があると、行数指定 N の位置がずれてしまい、このエラーが生じます。
一応あります。
trita ファイルの終了済タスクを集計した結果をファイルに保存します。
trita ファイルと同じディレクトリに以下が生成されます:
report_daily.md
report_monthy.md
report_hourly.md
ファイルの中身例を以下に示します(monthlyを例に):
# Monthly
All 11 keys.
- 2018/05 : 166 Tasks, Total:36.6[H], Avg:13.2[M]
- 2018/04 : 737 Tasks, Total:152.9[H], Avg:12.4[M]
- 2018/03 : 719 Tasks, Total:181.5[H], Avg:15.1[M]
- 2018/02 : 678 Tasks, Total:161.9[H], Avg:14.3[M]
- 2018/01 : 609 Tasks, Total:133.2[H], Avg:13.1[M]
- 2017/12 : 752 Tasks, Total:157.3[H], Avg:12.5[M]
- 2017/11 : 728 Tasks, Total:167.2[H], Avg:13.8[M]
- 2017/10 : 500 Tasks, Total:106.1[H], Avg:12.7[M]
- 2017/09 : 728 Tasks, Total:172.4[H], Avg:14.2[M]
- 2017/08 : 441 Tasks, Total:107.2[H], Avg:14.6[M]
- 2017/07 : 227 Tasks, Total:58.5[H], Avg:15.5[M]
こんな具合に日毎、月毎、時間帯毎のレポートを知ることができます。
一部操作のみ v1.6.1+ にて対応しました。
設定手順:
- (1) tritask_cmd_start.mac や tritask_cmd_end.mac をマクロ登録する
- (2) 1 に対してキー割り当てを割り当てる
- 例: PageUp に tritask_cmd_start を、PageDown に tritask_cmd_end を
利用方法:
- キー割り当てにて割り当てたショートカットキーを押す
制約事項:
- tritask_cmd_XXXX.mac は tritask.mac と同じフォルダに置く必要がある
tritask.mac を編集すれば可能です。
以下のあたりを見てください。
...
// [[[ menu item start
#idx=#I_ADD; $items[#idx] = "(&A)Add Task";
#idx=#I_ADDINBO; $items[#idx] = "(&X)Add Inbox";
#idx=#I_COPY; $items[#idx] = "(&C)Copy Task";
……(中略)……
#idx=#I_EDIT_SCRI; $items[#idx] = "(&P)Programming helper script";
#idx=#I_EDIT_ME; $items[#idx] = "(&P)Programming this macro";
#idx=#idx+1; #maxidx = #idx;
// menu item end ]]]
...
たとえば Start Task の発動を S キーから H キーに変えたい場合、以下のように修正します。
#idx=#I_START; $items[#idx] = "(&S)Start Task";
↓
#idx=#I_START; $items[#idx] = "(&H)Start Task";
v1.9.0から追加した機能で、キーワード(範囲選択された文字列)を含む「今日のタスク」すべてを操作対象にする、というものです。
Walk day、Walk +1 day、Change to Today など日付系操作が対応しています(メニューに表示されています)。
使い道は色々ありますが、作者が以下を実現したかったがために誕生しました。
- やりたいこと
- テレワーク時は「出社時のみ行うルーチンタスク」をスキップしたい
- 出社時は「テレワーク中にのみ行うルーチンタスク」をスキップしたい
これを実現するために、以下のようにします。
- 出社時のみ行うルーチンタスクには office というキーワードを入れておく
- テレワーク中にのみ行うルーチンタスクには tele というキーワードを入れておく
- たとえばテレワーク時は、以下の操作をする
- office という単語を範囲選択する
- Walk +1 day する
こうすると 範囲選択されたキーワード(この場合はoffice)を含む「今日のタスク」 が操作対象になります。結果として、出社時にのみ行うルーチンタスクすべてをまとめて Walk +1 day できます。
v1.11.0から追加した機能で、「何個もつくっておいたものの中から選んで開始する」類のタスクをかんたんに増やすものです。
たとえば「休憩」を行うタスクは、まさにその類のタスクだと思います。
2 2022/06/24 Fri 休憩
2 2022/06/24 Fri 休憩
2 2022/06/24 Fri 休憩
……
2 2022/06/24 Fri 20:09 休憩 ★休憩するときは一つ選んで開始する
2 2022/06/24 Fri 休憩
2 2022/06/24 Fri 休憩
……
このようなタスクをかんたんに増やすのが Clone 属性です。以下のように書きます。
2 2022/06/24 Fri 休憩 clone:0
増やしたいときは、clone:★ここを変えます
。
2 2022/06/24 Fri 休憩 clone:4
変えた後にソートを行うと、その数だけ複製されます。
2 2022/06/24 Fri 休憩
2 2022/06/24 Fri 休憩
2 2022/06/24 Fri 休憩
2 2022/06/24 Fri 休憩
3 2022/06/25 Sat 休憩 clone:0
このとき、Clone 属性を持つ元のタスクが「翌日に移っている」点に注目してください。つまり Clone 属性は、一日一回使うようなイメージになります。「今日は休憩は5回くらいしようかな」と思ったら、clone:5
と書いてソートするだけで5個の休憩タスクをつくれます。
非常にマニアックな属性ですが、rep:1
や手作業で増やすのが面倒くさいという方には便利だと思います。