なんか同じような名前の機能だけど別の機能。 三行で Emacsでの「ローカル」とは、変数にバッファごとに独立した値を保持できることです。 make-local-variableは、本来ローカルでない変数を現在のバッファで一時的にローカルにします。 make-variable-buffer-local は、その変数が常にローカルとしてセットされるようにします。 この両者の関係は、Emacs 24.3で追加された subr.el を見ればわかりやすいです。 emacs-26.0.91より抜萃。 (defmacro setq-local (var val) "Set variable VAR to value VAL in current buffer." ;; Can't use backquote here, it's too early in the bootstrap. (declare
![make-variable-buffer-localとmake-local-variableの関係 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/ad51ab8e17c6b179b12d080a8e81d104fbb2b1d5/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9bWFrZS12YXJpYWJsZS1idWZmZXItbG9jYWwlRTMlODElQThtYWtlLWxvY2FsLXZhcmlhYmxlJUUzJTgxJUFFJUU5JTk2JUEyJUU0JUJGJTgyJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz0wNzk3YjM4YzMyNzE2NmI4OTc4OWYzY2IyZWNkYTZjMw%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDB0YWRzYW4mdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTc2NjE1NTUyODViMDVjMGIwNDA3Mzg0ODg2OWY3YzQy%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Db7470945c7537b90955ef39eaa29649d)