Atom に日付時刻を入力するショートカットキーを追加
ATOMで作業ログを残したいとき、日付時刻を入れるショートカットが見つからなかったので追加。
環境はMacOS10.14.4 でJISキーボード。 ATOMのファイルを2点変更して、以下のような感じにした。
cmdと; を押すとYYYY/MM/DD(曜日)を出力 例. 2019/04/27(土) cmdとctrlと; を押すとhh:mm:ssを出力 例. 17:20:00 cmdと: を押すと上記のどちらも出力 2019/04/27(土) 17:20:39
まるまる参考にしたのはこちら。Dateパッケージを使う方法もあるけど、曜日も入ってほしい。
- Atomのinit.coffeeファイルに以下を追加
~/.atom/init.coffee
################################################################ # 現在日時を挿入するコマンドを追加 # 参考: https://github.com/dannyfritz/atom-date # 参考: https://github.com/JerrySievert/date-utils daysKanji = ['日', '月', '火', '水', '木', '金', '土'] pad = (str, length) -> str = String(str) str = '0' + str while(str.length < length) str dateOrTime = (kind) -> now = new Date() yyyy = now.getYear() + 1900 mm = pad(now.getMonth() + 1, 2) dd = pad(now.getDate(), 2) ddd = daysKanji[now.getDay()] hh24 = pad(now.getHours(), 2) mi = pad(now.getMinutes(), 2) ss = pad(now.getSeconds(), 2) if kind == 1 "#{yyyy}/#{mm}/#{dd}(#{ddd})" else if kind == 2 "#{hh24}:#{mi}:#{ss}" else "#{yyyy}/#{mm}/#{dd}(#{ddd}) #{hh24}:#{mi}:#{ss}" insertText = (str) -> return unless editor = atom.workspace.getActiveTextEditor() selection = editor.getLastSelection() selection.insertText(str) atom.commands.add 'atom-text-editor', 'torout-date:date', -> insertText(dateOrTime(1)) atom.commands.add 'atom-text-editor', 'torout-date:time', -> insertText(dateOrTime(2)) atom.commands.add 'atom-text-editor', 'torout-date:datetime', -> insertText(dateOrTime(0)) ################################################################
- ATOMのキーマップファイルに以下を追加
~/.atom/keymap.cson
'atom-text-editor': 'cmd-;': 'torout-date:date' 'cmd-ctrl-;': 'torout-date:time' 'cmd-:': 'torout-date:datetime'
これでATOMを一旦終了して再起動したら動いた。いい感じ。 後でキーバインドを調べると他にcmd-: を使うものもあったみたいだけど、問題なさそうなのでこれで動かしてます。