Emacs 25.1を26.1にアップデートした後、org-modeが機能しなくなります


12

私はEmacsのエキスパートではありませんが、Emacsをorg-mode頻繁に使用しています。.orgファイルを認識できるようにEmacsを構成しました。バージョン26.1に更新した後、Emacsは.orgファイルを認識しなくなっただけです。

File mode specification error: (file missing Cannot open load file No such file or directory ob-sh)

に変更することもできませんorg-modeM-x org-mode与える:

Cannot open load file No such file or directory ob-sh

.emacsファイルや.emacs.dフォルダを移動しませんでした。

何か案が?


.emacsファイルと.emacs.dフォルダーを別の場所に移動した後、すべてが正常に動作しました。それでも私は私が間違ったことを知りたいです。
マーティンピーターセン

ちなみにあなたは何も間違っていませんでした。これはorg-modeの互換性のない互換性のない変更であり、Emacs 26にアップグレードする多くの人がこれに失敗した(そして今後もそうなる)と思われます。
phils 2018

ここにあなたの問題とは関係のないヒントがあります:.emacs邪魔にならない代わりに、emacs --no-init-file(macOS:でopen -a Emacs --args --no-init-file)起動してください。(--no-init-fileに短縮できます-q。)また--no-site-file、サイト固有のファイルのロードを停止するフラグもあります。
Harald Hanche-Olsen

回答:


16

Emacs 26.1には、25.1よりもはるかに新しいバージョンのorg-modeが付属しています。ob-shob-shellorg-mode 8.2でに名前が変更されたためob-shob-shの削除で説明されているように、.emacsでが参照する設定を調整する必要があります。

**互換性のない変更

***にob-sh.el名前が変更されましたob-shellこれはユーザー設定で2つの変更が必要になる場合があります。

  1. org-babel-do-load-languages、に変更(sh . t)(shell . t)ます。

  2. local.mkファイルを編集して値を変更し、BTEST_OB_LANGUAGES「sh」を削除して「shell」を含めます。

ほとんどの場合、関連付けられている言語のリストで、設定を検索して呼び出しをorg-babel-do-load-languages変更shする必要がありますshell


ご協力いただきありがとうございます。.emacsおよび.emacs.dで文字列ob-shを検索しましたが、見つかりませんでした。とにかく、私は私の設定を段階的に復元します。
マーティンピーターセン

「ob-sh」ではなく「sh」の場合もあります。構成を2分割すると、正確な問題が検出されます。
rpluim 2018

またemacs --debug-init、問題を引き起こしている行を特定する可能性があります。
rpluim 2018

2
@MartinPetersen構成を調べてorg-babel-do-load-languages、変数の呼び出しまたは設定を行いますorg-babel-load-languages。あなたは変更する必要がありますshshell言語の関連するリストに。古いバリアントと新しいバリアントの両方をサポートする必要がある場合は、アレンジすることもできるので、お知らせください。
phils 2018

皆さんのおかげで問題を解決することができました。すべてが意図したとおりに機能するようになりました。繰り返しますが、トンに感謝します。
Martin Petersen
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.