Emacs

Emacsを使っている、拡張している、または開発している人のためのQ&A

1
フォントロックパフォーマンスの最適化
アンカーフォントロックマッチングのバリアントを実行したい。名前のリストで始まる関数定義があり、それらの名前を関数本体内で強調表示したいです。 これを行う関数を作成し、jit-lock-registerを使用してjit-lock関数として登録しましたが、パフォーマンスがかなり悪く、大きなファイルでスクロールが遅れます。 パフォーマンスを測定するにはどうすればよいですか?大きなファイルで関数を呼び出すとき(elpの前後または浮動時間)にパフォーマンスを大きく変えると、0.65から12秒までかかります。フォントロックのパフォーマンスをベンチマークする推奨方法はありますか? font-lock-keywordsで定義されたアンカーマッチャーとjit-lock-registerを介して関数を追加する間にパフォーマンスの違いはありますか? 編集:パフォーマンスの変動はガベージコレクションに関連しているようです。私のjit-lock関数の呼び出しは、ガベージコレクションが実行されるまで各呼び出しで連続的に遅くなり、その時点で再び高速になります。

2
アセンブリソースコードのインデントとナビゲーションの改善
CコードまたはJavaコードを書くときは非常に規則的ですが、アセンブリ(asm-mode)を使用すると非常に混乱します。 とを使用auto-completeしていyasnippetます。スニペットを作成して使用していますが、コードの編成とインデントが乱れています。 どのパッケージが私を助けますか: コードとコメントを簡単に適切にインデントして、各コードが何をしているかを確認できるようにします。 大量のコードをナビゲートするので、簡単にコード間​​をジャンプできますか?

2
シェルスクリプトモードで「<<<」と入力すると「<< EOF \ n <」が生成されるのはなぜですか?
emacsでシェルスクリプトを編集し、3つのシェブロンを入力して生の文字列をstdinにリダイレクトするたびに、emacsは文字「EOF」とその間に新しい行を挿入するため、 cat &lt;&lt;&lt; 'some string' になる cat &lt;&lt;EOF &lt; 'some string' 戻って余分な文字を削除して、必要な状態のバッファーを取得できますが、これは非常に厄介な動作であり、シェルスクリプトモードでのみ発生するようです。これは通常、このパターンを入力する唯一の時間です。この動作を無効にする方法はありますか?
13 bash  shell-mode 

1
組織テーブル全体で数学環境を使用することは可能ですか?
私が持っているorg-mode各セルのいくつかの数学のテキストを持っている必要がありますテーブルを。すべてのセルを$両方でラップすると、見た目が悪くなり、必要以上に多くのスペースが必要になります。テーブル内のすべてのテキストが数式として解釈されるように、何らかの方法でテーブル全体を数学(LaTeX)環境に配置する方法はありますか?

1
組織モードの番号付きリストのテキストの配置?
Q:org-mode番号付きリストにゼロを追加する方法はありますか? 番号付きリストのテキストの配置は、数字が2桁になると不快に見え始めます。 * A numbered list 1. Item 1 2. Item 2 3. Item 3 4. Item 4 5. Item 5 6. Item 6 7. Item 7 8. Item 8 9. Item 9 10. Item 10 # ah, my eyes! プレーンリストのorg-modeマニュアルには、次のように記載されています。 同じリストに属するアイテムは、最初の行に同じインデントが必要です。特に、順序付きリストが番号「10.」に達した場合、2桁の番号はリスト内の他の番号と左揃えで記述する必要があります。アイテムは次の行の前で終了します。次の行は、行頭記号/番号よりも小さいか、またはインデントされています。 したがってorg-mode、数字を左揃えにする必要があるようです。そのため、1桁のアイテムにゼロを追加して、テキストを適切に揃えることができるかどうか疑問に思っています。 * A zero-padded numbered list 01. Item …
13 org-mode 

2
Emacsでキーを作成:<Multi_key>は未定義です
Alt Grキーボードのキーをシステムの構成キーとして設定し(Ubuntu 14.04)などの文字を入力éóèàùçüします。しかし、EmacsでAlt Grキーを押そうとすると、次のようなメッセージが表示されます。 &lt;Multi_key&gt; is undefines 私はそれを機能させることができますか?ありがとう。 PS評判が悪いので、この投稿にもっと意味のあるタグを付けることはできませんでした。だから、タグを提案したいなら、大歓迎です。

1
defcustomを使用したマクロは、バイトコンパイル時に「変数としてのシンボルの値は無効です」というエラーにつながる
私のパッケージの2つには、defcustomフォームで定義された変数に本体が依存するマクロがあります。 Melpaからパッケージをインストールすると、バイトコンパイルは次のように終了します。 エラー:変数としてのシンボルの値は無効です:my-defcustom-variable 次に、ファイルをバッファで開いて手動でバイトコンパイルします。 autoloadクッキーを試してみましたが、それでも同じ動作をします。 ここに重要なものがありません。

1
バッファを切り替えるとき、emacsが自動的にフレームを切り替えるのを防ぎます
バッファーを切り替えると、バッファーが既に開かれている場合、emacsは既存のフレームに切り替えます。 私はidoを使用して切り替えるときにそれを防ぐ方法を見つけました: (setq ido-default-buffer-method 'selected-window) しかし、それだけでは十分ではありません。たとえば、Lispエラーが発生した場合、emacsは自動的にバッファ* Backtrace *に切り替え、すでに開いている場合はフレームを切り替えます。 emacsが既存のフレームに完全に切り替わるのを防ぐ方法はありますか?

2
bashスクリプトを実行しているときの「ターミナルプロセスグループを設定できません」エラー
init.elファイルに次の2行のコードがあります。 (setq shell-file-name "bash") (setq shell-command-switch "-ic") 次のスクリプトを実行して、シェルスクリプトdmenu_pathを使用して実行可能ファイルのリストを取得しようとしました。 (defun dmenu-path-out () (shell-command-to-string "dmenu_path")) 次のエラーが表示されます。 bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job control in this shell [ 0ad ... 使用時にbashがそのエラーを返すのを防ぐにはどうすればよいshell-commandですか?

1
組織モード:エクスポート時に目次から特定の見出しを除外する
Q:org-modeエクスポート時に目次から特定の見出しを除外するように指示するにはどうすればよいですか? たとえば、エクスポート * Headline 1: Put me in TOC * Headline 2: Put me in TOC * Headline 3: DO NOT put me in TOC HTMLへの生成 ... &lt;div id="text-table-of-contents"&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="#sec-1"&gt;1. Headline 1: Put me in TOC&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="#sec-2"&gt;2. Headline 2: Put me in TOC&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="#sec-3"&gt;3. Headline 3: …

2
遅延初期化をどこに含める必要がありますか?
latexモードに特定のキーバインディングを追加したい: (define-key latex-mode-map (kbd "&lt;f6&gt;") 'my-latex-defun) 同時に、特定のモードがロードされたときにのみ設定したいです。そのため、適切なフック(latex-mode-hook)を使用してそれを達成するか、句(with-eval-after-load "tex-mode" ...を使用してキーバインディング定義をラップするか、どちらが優先されるか(ベストプラクティス)を知りたいと思います。私は両方をテストしましたが、うまく動作しますが、どちらが正しい方法なのでしょうか。
13 init-file  hooks 

1
パッケージ開発のためにemacsの複数のバージョンを実行する方法は?
複数のEmacsバージョンでパッケージをテストできるようにするツールのセットはありますか?たとえば、24.4はほぼリリースされています。それをインストールしても、24.1でパッケージを安全にテストできますか? 競合する.emacs.d /をどのように処理しますか? Githubのレポに出会った 現在、NamesはEmacs 24ファミリー全体でサポートされています(24.1–24.4) そして、複数のEmacsバージョンできれいにテストを行う方法がわからないことに気付きました。

4
フックを使用したメジャーモードキーの設定とモードマップへの追加の違い
と呼ばれるメジャーモードをダウンロードしmagical-mode、それに独自の魔法のキーマップがありmagical-mode-mapます。このモードは、バッファのメジャーモードになるmagical-mode-hookたびに実行されるフックも提供しますmagical-mode。次に、initファイルを変更して、そのモードで使用するいくつかのカスタムキーバインディングを追加します。 のカスタムキーバインディングをセットアップする方法は(少なくとも)2つあるようですmagical-mode。私が最も一般的に見るものはこれです: (defun my-magical-keys () (local-set-key (kbd "C-i") 'previous-line) (local-set-key (kbd "C-k") 'next-line) (local-set-key (kbd "C-j") 'backward-char) (local-set-key (kbd "C-l") 'forward-char)) (add-hook 'magical-mode-hook 'my-magical-keys) ただし、次のようにすることもできます。 (define-key magical-mode-map (kbd "C-i") 'previous-line) (define-key magical-mode-map (kbd "C-k") 'next-line) (define-key magical-mode-map (kbd "C-j") 'backward-char) (define-key magical-mode-map (kbd "C-l") 'forward-char) 2番目の方法は、実際には私にとってはきれいに見えます。 ある方法を他の方法よりも有利にすることはありますか?

6
auto-mode-alistを尊重するために(ファイルだけでなく)バッファーを取得する方法は?
Q:マッピングを尊重する新しいバッファを取得するにはどうすればよいauto-mode-alistですか? ファイルを見つけると、Emacsはファイル拡張子とを比較しauto-mode-alistて、ファイルのバッファに使用するメジャーモードを決定します。情報を使用して、auto-mode-alist(まだ)ファイルが関連付けられていないバッファのモードを決定する方法はありますか? つまり、ファイル拡張子のように見える名前を持つ新しいバッファを開くと、予期したモードで自動的に開くようにできますか?たとえば、a-new-buffer.elまだファイルに関連付けられていない新しいバッファを開く場合emacs-lisp-mode、デフォルトモードではなく開くようにします。

2
なぜemacsにはゲームやアミューズメントが同梱されているのですか?
大学の新入生だった私が教授に気付かれずに研究室でダンネットを通り抜けようとしている間、この質問は私を混乱させてきました。なぜ世界ではemacsにゲームや娯楽が付属しているのですか?テキストエディターにゲームを含める理由 この質問については、正確な歴史的要約を探しています。最初からemacsにゲームがありましたか?愚かな娯楽は常に機能として意図されていましたか?誰かが最初のインクルードゲームをジョークとしてパッケージ化し、誰もがそれを実行しましたか?それは時間の砂に失われた謎ですか?
13 package 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.