mode特有の話ではないのだが、最近のEmacsのパッケージ管理について。Lispで書かれたパッケージを導入することで柔軟に機能を拡張できる。Lispのファイルをひとつひとつ手で落としてきて設定していたのだが、しばらく前からはpackage.elを使い、パッケージ間の依存関係に従ってMELPAのようなパッケージ・アーカイヴから芋づる式に自動インストール、といった管理が主流になった。最近では、Caskやel-get、Borg、Quelpaなど様々なパッケージマネージャが登場している。いうことになるかというと要はどれも一長一短あるからだが、比較的最近開発されたstraight.elは先行する他のパッケージマネージャをよく研究していて、なかなか筋が良い設計になっている。使っていたのだが、つい最近straight.elに乗り換えた。いうわけで、その紹介をしたい。自体のインストールにPythonが必要だった。最近では大概のシステムにPythonが入っているので、ある意味どうでもいいとは言えるのだが、Windowsなどではひと手間増えてしまうのは間違いない。'nomessage))ようはGithubのstraight.elのレポジトリからinstall.elを落としてきて、それを実行しているわけですね。中にあるので、何かおかしくなったらこのディレクトリを消してやり直せばよい。好ましい点の一つは、use-packageと緊密に連携しているところである。ライブラリの読み込みや、起動時の遅延読み込みの設定が明快に書けるようになる便利なマクロだ。書き続けて数十年のオールドタイマーだと目が慣れるまでは違和感があると思うが、いったん要領を掴めば書き換えはそんなに手間ではない。パッケージを落としてきてインストールしてくれるのである。以下にクローンされたGitレポジトリとして展開されているので、内容確認や手直しも簡単だ。パッケージのアップデートという概念はなく、fetchとかmergeとかpushなのである。対応を無効にしてやればよい。そのパッケージがMELPAにあるのは知っているが、MELPAのバージョンだと不具合があるので、他の人がGithubかどこか別のところで公開しているバージョンが使いたい、ということもあるだろう。"mhatta/foobar")))などとフォークを明示的に指定してインストールすることもできてしまうのである。このあたりの記事を参照してもらいたい。起動するだけでパッケージのインストールから設定まで終わってしまうのである。modeをインストールするときに若干の小細工が必要になるからである。存在していてすでに読み込まれている、ということが避けられない。org)などと書いておくとよい。)こんな感じになるのでしょうかねえ。コメントデータの処理方法の詳細はこちらをご覧ください。キャンセル投稿を送信できませんでした。メールアドレスを確認してください。メール送信チェックに失敗しました。このブログではメールでの投稿共有はできません。%d人のブロガーが「いいね」をつけました。