Vimでスケジュール帳 (viske.vim)
概要
Vimで予定管理を行うためのプラグインです。タイムラインで予定を管理できます。Rubyが動く環境ならば、Googleカレンダーと同期もできます。calendar.vimの日記機能では物足りなかったので、初めてのVimスクリプトとして作ってみました。
使い方
準備
ファイルを保存するディレクトリを作成します。デフォルトでは"$HOME/Schedule/"です。保存先ディレクトリは設定(g:ViskeDir)で変更できます。
起動 / 終了
-
コマンドモードで"Viske"と打てば起動します。
"q"で終了します(予定は自動保存)。
予定を登録する
-
予定を登録したい時刻を、タイムライン上でビジュアルモードにより選択します。
Returnを押します。
カーソルがサブ画面に移動してインサートモードになります。
予定を入力してます。
"Ctrl+R"を押せば登録完了です。
サブ画面では、1行目の">"以降がサマリーとなり、メイン画面に表示されます。2行目以降に詳細な内容を記すことも可能です。
サブ画面で予定入力中、30分単位より細かい時刻を設定したい場合は、時刻の文字列を直接編集することで可能です。また、Ctrl+n, Ctrl+pで時刻を15分単位で変更できます。変更する対象(開始、終了)の切り替えは
予定の種類
サブ画面での予定入力時に、予定の先頭に記号を付加することで、予定の種類を変更できます。また、予定登録後にメイン画面から予定の種類を変更することもできます。また、Task1〜Task5に割り当てる種別は設定(g:ViskeTaskTypeLabel)で変更可能です。カッコ内はデフォルトの種別になります。
記号 | 種別 |
---|---|
* | 終日予定 |
*+ | TODO |
*! | 重要TODO |
*+ | 完了済みTODO |
なし | Task1 |
# | Task2 (出張) |
! | Task3 (重要) |
% | Task4 (会議) |
+ | Task5 (私用) |
キーマップ
メイン画面(上部)
Key | 内容 | 操作可能な場所 |
---|---|---|
q | 保存して終了 | 全て |
Q | 保存せずに終了 | 全て |
j、k | カーソルを上下の日付に移動 | 全て |
J、K | カーソルを上下の日付、タスクに移動 | 全て |
h、l | カーソル位置を30分進める、遅らせる | 全て |
H、L | カーソル位置を1時間進める、遅らせる | 全て |
gh | カーソル位置を今日の日付に移動 | 全て |
<、> | タスクを30分早める、遅らせる | タスク上 |
(、) | タスク開始時刻を30分早める、遅らせる | タスク上 |
{、} | タスク終了時刻を30分早める、遅らせる | タスク上 |
yy | タスクをヤンク | タスク上 |
p | タスクをペースト | タイムバー上 |
dd | タスクを削除 | タスク上 |
cc | タスクを変更する | タスク上 |
* | タスクの種類をTask1に変更 | タスク上 |
# | タスクの種類をTask2に変更 | タスク上 |
! | タスクの種類をTask3に変更 | タスク上 |
+ | タスクの種類をTask4に変更 | タスク上 |
% | タスクの種類をTask5に変更 | タスク上 |
+ | 終日予定をTODOに変更 | 終日予定上 |
* | TODOを終日予定に変更 | TODO上 |
- | TODOを完了済みに変更 | TODO上 |
! | TODOを重要TODOに変更 | TODO上 |
サブ画面(左下部)
Key | 内容 | モード |
---|---|---|
Ctrl+N | 時刻を変更(15分進める) | インサート |
Ctrl+P | 時刻を変更(15分遅らせる) | インサート |
Ctrl+E | 変更する時刻のターゲットを変える(開始時刻/終了時刻) | インサート |
Ctrl+R | 予定を登録する | 全て |
Ctrl+Return | 予定を登録する | 全て |
Return | 予定を登録する | ノーマル |
Ctrl+W | 登録をキャンセルする | 全て |
カレンダー画面(右下部)
Return | カーソル下の日付をメイン画面で開く |
設定
設定項目 | 内容 | 設定例 |
---|---|---|
ViskeSubWinHeight | サブウィンドウとカレンダー画面の高さを設定 | 7 |
ViskeCalWinWidth | カレンダー画面の横幅を設定 | 25 |
ViskeDir | スケジュールファイルの保存先フォルダ名 | /var/Schedule/ |
ViskecutDownMsg | タスク名の切詰め設定 | 0(切詰めなし),1(切詰め) |
ViskeStartTime | 1日の始まりの時刻 | 8 |
ViskeEndTime | 1日の終わりの時刻 | 20 |
ViskeWidthFuzzy | 画面からはみ出ても良い許容値 | 4 |
ViskeLang | 言語設定 | jp, us, cn |
ViskeTaskTypeLabel | タスクの種類の設定 | 下記参照 |
ViskeDayLabel | 曜日の表示設定 | 下記参照 |
タスクの種類や曜日の表示を変える場合は、下記のように設定します。
let g:ViskeTaskTypeLabel=['\ ', 'ゼミ', 'サークル', 'バイト', '自宅', 'TODO'] let g:ViskeDayLabel = ['日曜', '月曜', '火曜', '水曜', '木曜', '金曜', '土曜']
カラースキーマ
256色端末向けのカラースキーマを配布しています。明るい背景色のviske.bright256と暗い背景色のviske.dark256の2つです。.vimrcにて通常のカラースキーマを読み込んだ後に読み込まれるように指定してください。
colorscheme desert256 "通常のカラースキーマ colorscheme viske.dark256 "Viske用
自分で色を変更する場合は下記の名称を参考にしてください。
スクリーンショット
gVim default color
16 default color
colorscheme: bright256
colorscheme: dark256
ダウンロード / インストール
Vundleで管理している場合
下記の設定を追加して、":BundleInstall"してください。
Bundle 'vimyum/viske'
手動管理の場合
下記のgithubからダウンロードして、適切に配置してください。
https://github.com/vimyum/viske
0 件のコメント:
コメントを投稿