2026/07/03(金) [n年前の日記]
#1 [prog] Emacs系エディタ用のコメント行の名称が分からない
テキストエディタの xyzzy や Emacs は、ソースファイルの最初のあたりにコメント行で色々書いておくと、そこで指定したメジャーモードや文字エンコーディングでそのファイルを開いてくれる機能がある。以下のような感じのコメント行で…。
この、2行目3行目を、何と呼べばいいのかわからないなと…。
ググったところ、「モードライン」と呼んでる場合もあったけれど…。エディタ画面の下のほうにある、現在のモードを表示している行もモードラインと呼ばれることがあるようで…。
「マジックコメント」という呼び方も見かけた。どうやら Ruby あたりから始まった呼び方のようで、今では色々な言語でもその呼び方が使われている、とAIは言っていたけれど。Emacs系エディタの世界ではマジックコメントという呼び名はそもそも使ってなかったそうで…。
このあたりのコメント行は、一体どう呼べばいいのだろう…。
いやまあ、今時フツーのプログラマーはソース書く時に Emacs系エディタは使わんやろ、Visual Studio Code か vim あたりを使うんじゃないの? という気もするので、今更どうでもいい気もするのだけど。
ただ、今回、どういう記述をすればいいのか忘れてしまって、ちょっとググろうとした時に名称が分からなくて困ったという…。
#!python # -*- mode: python; Encoding: utf-8; coding: utf-8 -*- # Last updated: <2026/07/07 21:25:17 +0900>
- 1行目はいわゆるシバン行。*NIX のシェルが、そこを読んで、どの言語を使えばいいか判別するための行。
- 2行目、3行目が Emacs系エディタ用の記述。mode: でメジャーモードを指定して、Encoding や coding で文字エンコーディングを指定。
- 3行目はファイルを更新した際にタイムスタンプが記録される。
この、2行目3行目を、何と呼べばいいのかわからないなと…。
ググったところ、「モードライン」と呼んでる場合もあったけれど…。エディタ画面の下のほうにある、現在のモードを表示している行もモードラインと呼ばれることがあるようで…。
「マジックコメント」という呼び方も見かけた。どうやら Ruby あたりから始まった呼び方のようで、今では色々な言語でもその呼び方が使われている、とAIは言っていたけれど。Emacs系エディタの世界ではマジックコメントという呼び名はそもそも使ってなかったそうで…。
このあたりのコメント行は、一体どう呼べばいいのだろう…。
いやまあ、今時フツーのプログラマーはソース書く時に Emacs系エディタは使わんやろ、Visual Studio Code か vim あたりを使うんじゃないの? という気もするので、今更どうでもいい気もするのだけど。
ただ、今回、どういう記述をすればいいのか忘れてしまって、ちょっとググろうとした時に名称が分からなくて困ったという…。
◎ 余談。xyzzyに関数を追加してた :
xyzzy の siteinit.l に、このあたりの文字列を挿入する関数を追加していたことを忘れていた。
M-x insert-my-coding-check-string-(utf8n|sjis) で挿入できる、とメモしておくけれど明日には忘れてそう…。M-x insert-m まで打って補完、ぐらいは覚えておきたいけれど…。
;; 文字コード判別用の文字列を挿入 (defun insert-my-coding-check-string-utf8n() (interactive) (insert "-*- mode: <ModeString>; Encoding: utf-8; coding: utf-8 -*-")) (defun insert-my-coding-check-string-sjis() (interactive) (insert "-*- mode: <ModeString>; Encoding: sjis; coding: sjis -*-"))
M-x insert-my-coding-check-string-(utf8n|sjis) で挿入できる、とメモしておくけれど明日には忘れてそう…。M-x insert-m まで打って補完、ぐらいは覚えておきたいけれど…。
[ ツッコむ ]
以上です。