青竹雑記帖(6代目)

テキスト処理をメインとしたIT解説をします。

文字だけで扱うコンピュータの世界(9):テキストエディタ小技集(日付自動入力)

承前

ここまで8回に分けて、テキストエディタとは何か、テキストエディタの種類、基本的な使い方を書いてきました。もし、ここまで記事を読むだけ読んできてテキストエディタを開いて3秒しか経っていない方は、ぜひどれかのテキストエディタを1週間ほどお試しください。「サクラエディタ」をお試しの方はつい昨日、新バージョン正式版が2年7か月ぶりに登場し、バージョン 2.4.2.6048になりました。多くの機能追加、およびバグ修正が実施されています。そして、せっかくスクリーンショットを撮って紹介した「Grep」画面の入力欄配置がガラっと変わってしまいました。オウフ

この記事と次の記事くらいで、テキストエディタにある便利そうな機能を紹介していきます。どのテキストエディタにも入っている機能や、特定のテキストエディタだけに入っている機能があります。

タイムスタンプ(日付と時刻)をお手軽入力

いろいろメモを取ったり、日記を書いたりする際に、お手軽に今の日付と時刻を入力したくなる時があります。ない方は次へ進んでください。その際、多くのテキストエディタではキー操作ひとつ、メニュー操作ひとつで今の日付と時刻を入力できます。

メモ帳

  • キーボード「F5」
  • メニュー「編集 > 日付と時刻」

超シンプルなテキストエディタであるメモ帳にもこうした機能があります。ただし、書式は既定では「17:57 2022/12/11」(時:分 年/月/日)(専門的な表記では h:mm yyyy/mm/dd)という形で固定されているようです。より詳しく言うと、この日付と時刻の書式はWindows自体の設定により決まります。項目は「時刻と言語 > 言語と地域 > 地域設定」にあり、この設定中の「日付 (短い形式)」と「時刻 (短い形式)」のスタイルに従って、時刻→日付の順に半角スペース区切りで入力されます。ここの設定を変えると入力形式が変えられますが、同時にタスクバーの表示やエクスプローラーの表示も切り替わりますのでご注意ください。

さらに、小技界隈のネタとしてよく取り上げられて記事になる、メモ帳特有の機能に「1行目に『.LOG』(ピリオドと英大文字LOG)を入力しておくと、次回以降ファイルをメモ帳で開いたときに、自動的に最終行に現在の日付時刻が入った状態で開かれる、というものがあります。ひたすら1つのファイルに書いていくときにこれを設定しておくと、いつ書いたか思い出す手がかりになります。

サクラエディタ

  • キーボード「Alt + ;(セミコロン)」(Altキーを押しながら、セミコロンのキーを押す)で日付入力、「Alt + :(コロン)」で時刻入力
  • メニュー「編集 > 挿入 > 日付挿入」

サクラエディタの場合は、日付と時刻を別々に挿入できます。標準の書式は、日付が「2022年12月11日」(yyyy年M月d日・西暦年4ケタ、先頭にゼロがつかない形の月、先頭にゼロがつかない形の日)、時刻が「18:18:37」(H時mm分ss秒・24時間制の時間でゼロが頭につかない、2ケタの分、2ケタの秒)です。この書式はサクラエディタ内の「共通設定 > 書式」タブで「カスタム」モードを選ぶと変更できます。設定方法はサクラエディタのヘルプを参照ください。

メモ帳にある「.LOG」による自動日付追記機能は、サクラエディタではマクロを記載してそのマクロを「新規/開ファイル後」に自動実行するようにすると同様のものが再現できます。サクラエディタでは複数の形式によるマクロをサポートしていて、その中にWindows Script Hostという誰もが忘れ去った化石的機能によるマクロが利用できるので、以下のJavaScriptコードを記載して設定ファイルディレクトリ(C:\Users[各個人のユーザ名]\AppData\Roaming\sakura\)に保存して、マクロを登録してください。キーマクロでも一部再現できますが、「.LOG」の記載に関係なくすべてのファイルに対して動作してしまう問題があります。

// windows-notepad-dotlog.js
// Windowsメモ帳の「.LOG」機能

var firstLine = Editor.GetLineStr(1);
var firstLineStr = firstLine.replace(/\r?\n/g,"");

if (firstLineStr == ".LOG") {
    Editor.GoFileEnd();
    Editor.Char(13);
    Editor.InsertDate();
    Editor.Char(32);
    Editor.InsertTime();
    Editor.Char(13);
}

Mery

  • キーボード「Shift + F5」(シフトキーを押しながらF5キーを押す)
  • メニュー「編集 > 日付と時刻」

メモ帳と同様に、キー入力1回で日付と時刻を挿入できます。こちらの書式もメモ帳同様、Windows自体の設定により決まります。入力する日付の形式をカスタマイズしたい場合は、公式サイトに有志が製作掲載しているマクロを利用するといいかもしれません。(プログラミングの知識が少し必要になります)

www.haijin-boys.com

Visual Studio Code

  • 標準対応なし。要設定。

意外なことに、大変メジャーなVisual Studio Codeには、このような機能は標準では備わっていません。実現方法としては、個人設定のカスタマイズによりコードスニペット(定型文)を定義してショートカットキーを割り当てる形や、プラグインを導入する形などがあります。

qiita.com

jsstudy.hatenablog.com

次回予告

なんだか日付の自動入力だけで結構いい長さになってしまったので、小技集・便利機能紹介は次に続きます。