Emacs

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



2
C- [を実際にバインドする方法は?
C-[これは、米国英語キーボードのエスケープキーに相当します。したがって、バインドしようとすると、M-動作が台無しになります。 EmacsはGUIフレーム<escape>をC-[区別するのに問題がないようです。以下は正常に動作し、バインディングはM-引き続き機能します。 (global-set-key (kbd "<escape>") (lambda () (interactive) (message "<escape>"))) しかし、私がバインドした場合 (global-set-key (kbd "C-[") (lambda () (interactive) (message "C-["))) 突然、emacsがクレイジーになり、M-xブレークのように拘束されます。さらに、押すとC-[バインドされたラムダのトリガーが拒否されます。興味深いことに、C-x @ c [(修飾子コントロールを開き角かっこに適用して)まだ言いC-[ is undefinedます。 C-[emacsを壊さずに何かをバインドする方法はありますか?

2
空のエコー領域を利用して情報を表示する
ほとんどの場合、エコー領域には何も表示されないため、情報を表示するために使用できると思います。たとえばorg-clock、現在のタスク、残り時間、合計経過時間をモードラインに表示します。この情報は実際に読めるがない(モードラインはかなり短くすることができます)、(それが全体のEmacsセッションに適用されるため)各モードライン上で繰り返されて、ではないことを、私はそれのためにいくつかの貴重なモードラインのスペースを犠牲にして喜んだと便利。一方、ここに表示するものがない場合は、エコー領域に表示される可能性があります。 これを達成するための標準的な方法はありますか?私は挿入機能をハッキングするminibuffer-inactive-mode-hook(ただし、エコー領域が再び使用されるとすぐにメッセージが消えるなど、確実に機能しない)か、ログに記録されていないメッセージをスパムすることを考えました(しかし、これは他の用途では混乱します)エコー領域とミニバッファ)。 これの貧乏人バージョンはアイドルタイマーを使用しますが、エコー領域は空にすることができます(たとえば、テキストを入力しているとき)。

1
Mx ansi-termでZshを使用してプロンプトが表示される前に4m離れる
私が最近読んEmacsの中にシェルを実行している、との限定された機能を持つ仕事への迅速私の精巧なZshの適応するためのいくつかの時間を過ごすM-x shellとをM-x ansi-term。 この努力の結果、ようやくEmacs内からZshを使用できるようになりました。ただし、マイナーではありますが、には厄介な点がありM-x ansi-termます。4mプロンプトの前に常にテキストが表示されます。 ご覧のとおり、この現象は実際のプロンプトテーマとは無関係のようです。また、組み込みのプロンプトのいずれかとともに表示されます。派手な制御文字を使用しない単純なプロンプトでも表示されます。実際のところ、デフォルトのプロンプトでも発生します。つまり、なしでZshを起動した場合.zshrcです。 まあ、それはほんのマイナーな迷惑であり、私がそれを取り除くことができなかったとしても私は本当に気にしません—私はM-x shellとにかくたいていこの問題が発生しない場所を好みます。 しかし、本当にデバッグしようとしたのに、この問題の原因を見つけることができなかったのは本当にうんざりしています。ただし、端末についての私の理解はかなり限られているので、非常に明白なものは見逃したかもしれません。 OS X 10.10を使用しています。私のEmacsは25.0.50で、Homebrewを使用してトランクから直接ビルドし、特別なフラグはありません。Yosemiteに含まれているZshは5.0.5ですが、Homebrew経由でインストールされた5.0.7でも問題が発生します。 誰でもこの問題に光を当てることができますか?
10 ansi-term 

2
ORGファイルの見出しのソート
私は、次のような構造の大まかなorg-modeファイルでメモをとっています。 * Toto, A Notes about Toto. * Titi, C Notes about Titi. * Tutu, A Notes about Tutu. ファイルを並べ替えて、すべての見出しのA前に、次に見出しのB前に、というCようにします。org-modeで自動化する方法はありますか?
10 org-mode  sorting 

2
ファイルの上部に長いGPL著作権表示を隠す
私は最初に長い著作権表示を含む* cppおよび* hファイルをたくさん扱っています。emacsが実際にテキストを削除せずに、これらのファイルが存在しないかのように表示したいと思います。 これは、これです: /* * Copyright (C) 2006-2008 Author A * Copyright (C) 2006-2008 Author B * Copyright (C) 2006-2008 Author C * Copyright (C) 2006-2008 Author D * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU …
10 display 

1
helm-find-filesでファイルリストを並べ替える方法
helm-find-filesディレクトリの検索に使用する場合。候補のリストの最初に完全一致とディレクトリを表示し、次にファイルを表示したいと思います。 たとえば、「src」を検索すると、次の結果が得られます。 「src」は完全一致であり、ディレクトリでもあるため、最初に表示するにはどうすればよいですか?または、それをむき出しにして、「。」を非表示にします。ファイルはリストの最後に移動します(アルファベット順のように見えるため)。

3
ファイル名(番号付き)をdiredでソートする
Diredがファイルを名前でソートする場合、アルファベット順にソートします。文字でそれで結構です。ただし、ファイル名が数字で始まる場合は、数値でソートすることをお勧めします。 例: これはdiredが私のファイルをソートする方法です: 10 11 12 13 ... 1 21 22 23 ... 2 31 欲しい1 2 3 4…9 10 11…
10 dired  sorting 

2
かっこだけでなく、キーワードで定義されたブロックをforward-sexpに認識させる
以下のようなキーワードで定義されたブロックを持った言語(ジュリア)でfor..end、begin..endだけでなく、カッコが、そのようなブロックをスキップする良い方法は何ですか?また、endblockキーワードだけでなく、他の場所で使用される有効な識別子でもあります。 1つの方法は、ブロックの開始/終了の正規表現を探し、すべての文字列、コメント、endsなどをスキップすることですが、これは多少効率が悪く、少し見苦しいです。 emacs独自の構文解析でこのようなブロックキーワードを認識させる方法はありますか?forward/backward-sexpそうすれば、自動的に機能し、現在のブロックの開始を、たとえばの出力からすばやく知ることができsyntax-ppssますか? [注:ファイルを自分で解析してもかまいませんが、その場合でも、パーサーを残りのemacsに接続する方法を知りたいと思います。]
10 syntax  parsing 

2
org-agenda-filesのワイルドカード
私は、プロジェクトベースのフォルダを持って、~/prj私は多くの個々のプロジェクトを持っているの内側、2014_prj1、2014_prj2、...、私が持っている内部が、他の人の間で、docフォルダ。レイアウトは次のようになります。 ~/prj ~/prj/2014_prj1 ~/prj/2014_prj1/README.org ~/prj/2014_prj1/data ~/prj/2014_prj1/doc ~/prj/2014_prj2 ~/prj/2014_prj2/README.org ~/prj/2014_prj2/data ~/prj/2014_prj2/doc 次に、すべてのプロジェクトディレクトリ(2014_prjX)とorg-agenda-files、docプロジェクトディレクトリのすべてのサブディレクトリをに追加したいと思います。dataフォルダはすべきではないの一部であるorg-agenda-files、彼らはおそらくファイルの10,000秒を含めることができるため、。 どうすればこれを達成できますか?簡単に試してみました (setq org-agenda-files (quote ("~/doc/notes" "~/.emacs.d" "~/prj/*/doc" ) ) しかし、これは私にエラーを与えます Non-existing agenda file ~/prj/*/doc

3
最後のテキスト挿入を繰り返す
Vimでは、を押す.と、テキストの挿入など、最新の変更を繰り返すことができます。 EmacsではC-x z、最後のコマンドのみを繰り返します。ここではマクロを使用できることは承知していますが、同じテキストを再挿入するのが遅すぎることに気付くことがよくあります。もう一度挿入する必要がある場合は、マクロを定義しても意味がありません。 Q: Emacs内でテキストの挿入を繰り返す方法はありますか?

2
異なる言語のキーボードレイアウトを切り替える方法は?
Q:非標準のキーボードレイアウトを使用しているときに、異なる言語の入力方法を切り替えるにはどうすればよいですか? 2つの異なる言語でテキストを編集する必要があります。もちろん、テキストをバッファに挿入する場合を除いて、2つの言語間でキーバインドを使用できるようにしたいと思います。toggle-input-method(C-\)で代替言語を選択できるはずです。 これまでのところ、ほとんど問題ありません。 ここに問題があります。私は、OSレベルで(つまり、setxkbmap)設定した英語のDvorakレイアウトを使用します。とき私はtoggle-input-method、私はQWERTYレイアウト(米国での標準)を有していたが、私はドヴォルザークの上だからちんぷんかんぷんのように出てくる場合は、テキストIインサートは正しいだろう。(FWIW、レイアウトを標準のUSに切り替えると、正常に動作します。) それで、私がDvorakを使用していることをEmacsに通知してtoggle-input-method、友人が私のキープレスを他の言語の正しい文字に変換する方法を教えてください。

1
センチネルおよびフォントロック中のエラーをデバッグする方法
プロセスセンチネル内またはフォントロック中にエラーが発生すると、debug-on-error以前は有効にされていたとしても、Emacsはバックトレースを表示しません。 これらのエラーがキャッチされる理由を理解しています。バックトレースを表示しようとすると、同じエラーが再度トリガーされる可能性があります。ただし、実際にそのエラーをデバッグする場合、あまり役に立ちません。私はEmacsがこれから作業しなければならないよりも応答しなくなる危険を冒したいのです。 error in process sentinel: Wrong type argument: stringp, nil 結局のところ、最初のインスタンスがクレイジーになった場合は、2番目のインスタンスを開始することができます。センチネルで理論的にこのようなエラーが発生する可能性のある場所がたくさんある場合は、もう少しコンテキストが役立ちます。 それでdebug-on-error、効果がない場合でもEmacsにバックトレースを表示させるにはどうすればよいですか?
10 debugging 

1
リージョンやラインを右揃えする方法は?
私たちは、使用してテキストを中央にすることができますM-x center-regionし、M-o M-s。右揃えに似たものはありますか? 前の例: Item 0: value | Item 100: value | Item 30: value | 後: Item 0: value| Item 100: value| Item 30: value| fill-column ^ テキストを右揃えする最も簡単な方法は何ですか?

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