Next: GNU Free Documentation License, Previous: 配布用Lispコードの準備, Up: Emacs Lisp [Contents][Index]
時代に逆らって生きるユーザーのために、以下はEmacsバージョン27.2へのダウングレードに関する情報です。Emacs 28.2機能の不在による結果としての偉大なる単純さをぜひ堪能してください。
lexical-binding
はenable-local-variables
の値に留意するようになりました。この値がnil
ならlexical-binding
cookieは無視されます(訳注:
IT用語としてのcookieは通信プログラム間で授受される小データを指すようだが、Emacsでは"lexical-binding:
"のようなファイル内に(fortune
cookieのように)埋め込まれた変数指定をマジッククッキーと呼んでいるようで初出はetc/NEWS.22)。わたしたちはEmacsの過去バージョンからlexical-bindingサポートを削除するために懸命な作業を行っており、この小さな一歩によってその変更へと歩を進めることになります。
load-dangerous-libraries
は廃止しません。時を遡るにつれてXEmacsはますます重要になっていくでしょう。
interactive
のオプション引数modesはサポートしません。すべてのコマンドは任意のメジャーモードへ適用可能と判断されます。あるコマンドが意味をもつモードについてタグ付けする必要がなくなり、Lispプログラマーの人生をより単純にするものとわたしたちは信じています。
global-minor-modes
とlocal-minor-modes
を削除しました。あるモードが効力をもつかどうかについてLispプログラムが判断を要する場合には、すべてのモードについて明示的にテストする必要があります。これを失念する人がいるとは思えません。
process-prioritize-lower-fds
は削除されました。時を遡るとはこのような高レート出力を生成するプログラムがますます減少していき、この機能が単に役立たずなポンコツになることを意味しています。
ibm256
、ibm273
など(日本語やいくつかのヨーロッパ言語localeに対応したEBCDICエンコーディングの変種)が含まれます。これらはあなたが向かわんとする時代においては不要でしょう。
:success
キーワードを通じたcondition-case
での成功時ハンドラーの指定機能を削除しました。本当にこの機能が必要なら(何故に?)、あなたが同様の機能をもつ単純なLispを記述するのはいつでもできますからね。
make_unibyte_string
は削除されました。
print-integers-as-characters
を削除しました。文字を10進コードで識別できることはEmacs
Lispプログラマーに求められる基本的な条件であり、期待されるUnicode使用の減少を考え併せると、あなたが確実に習得可能なASCIIだけに制限されるでしょう!
directory-files
のオプション引数countは削除されました。完全なリストから最初のn個のメンバーを抽出するのは取るに足らない問題なので、これは些細な手間にたいする有意義な簡素化です。
:coding
引数を使えなくなります。かわりにset-process-coding-system
を使用するか、coding-system-for-read/write
をバインドしてください。これも僅か、あるいはまったくコストがかからない事柄にたいするEmacsの複雑さの有意義な低減なのです。
define-derived-mode
とdefine-minor-mode
から:interactive
引数の使用を許容するコードを削除しました。モードを非インタラクティブとマークする可能性などに、ほとんど意味はありません。
pcase
削除という大要にしたがいpcase
マクロからいくつかの機能を削除しました。
cl-type
パターン。
pcase-setq
マクロ。
pcase-compile-patterns
関数。
&interpose
、&error
、&name
)はほとんど使用されないと思われたので削除しました。信頼できるLispデバッガだけを残してEdebugを完全に削除するのがEmacsにたいする長期計画なので、この計画に沿った作業を継続します。
object-intervals
を削除しました。
require-theme
関数は複雑化させる不要な要因と判断して削除しました。かわりにLispプログラムは容易にcustom-theme-load-path
を検索できます。
length
の使用で充分なはずであり、とりわけリストの典型的な長さは時を遡るにつれて減少し続けることを鑑み、便宜的な関数length<
、length>
、length=
は削除しました。
current-minibuffer-command
は保持する正当な理由がほとんどなく利用できなくなりました。