問題タブ [elisp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
emacs - Emacs を使用してコードをインデント (シフト 4) する
ViewSourceWith と Emacsを使用して、StackOverflow の回答と質問を編集します。多くの場合、私はコードを含めますが、StackOverflow の書式設定規則では、コード として認識されるには 4 つのスペースでインデントする必要があると規定されています。手動で、またはマクロでさえ、それを行うのは苦痛です。
SOの以前の投稿を検索しましたが、何も見つかりませんでした。
Python モードから始めて、次のように書きました。
うまくいくようですが、アドバイス、代替案、バグレポートなどを歓迎します。
emacs - カーソルの上に行を挿入してインデントする Emacs コマンド
上の行に変数定義 (または同様のもの) が必要であることに気付いたときに、行に入力していることに気付くことがよくあります。私がしたいことは
- 行の任意の場所から C-return を押して、正しいインデント (または少なくとも元の行と同じ) で、カーソルを上に新しく挿入された空白行に移動します。
- 任意のテキストをヤンクできる...
- 元の位置に戻るための Cu C-space
#1 はなんとかできましたが、私の emacs-fu は残りを行うには十分な強度がありません。
macros - Emacs Lisp マクロでインタラクティブ関数を作成できますか?
「ヘルパー関数」を作成するために emacs lisp でマクロを作成しようとしています。</p>
最終的に、私のヘルパー関数は、ここにあるものよりも便利になります。同じことを達成するためのより良い/より直感的な方法があるかもしれないことを認識しています(投稿してください)が、私の基本的な質問は、なぜこれが機能しないのか/何が間違っているのかということです:
macroexpand の出力を取得してそれを評価すると、マクロで取得するつもりだった対話型関数を取得できますが、マクロが実行されて評価されているように見えても、M-x text-ni
orを呼び出すことはできませんtext-swallow
。
lisp - パラメータおよび戻り値としてのelisp関数
次のコードがあります
呼び出し
SBCL では 55.0 (正しい値) を返しますが、emacs lisp では次のスタックでクラッシュします
どうすれば Emacs Lisp で動作させることができますか?
git - gitでブランチを切り替えるときに、変更されていないすべてのバッファをEmacsに元に戻すにはどうすればよいですか?
多くの場合、git でブランチを切り替えると、ファイルが emacs で開かれている場合、内容が同一であっても、emacs はそれらを元に戻すかどうかを尋ねます (ディスク上で変更されたと見なされるため)。
まず、ディスク上の内容がバッファ内の内容と同一である場合に、emacs がそれについてまったく尋ねないようにする方法を見つけたいと思います。
次に、保存されていない変更がないすべての開いているバッファを (クエリなしで) 元に戻し、保存されていない変更があるバッファについてクエリを実行するコマンドが必要です。
あるいは、私が試すことができる他のソリューション、作業方法などについての提案を受け入れます。emacs-lisp を書いて、どこから始めればよいか教えていただければ、とてもうれしいです。
PSそれが重要な場合、私はOSXでAquamacsを使用しています。
編集:
まあ、revbuffs パッケージが必要なものであることがわかりました。確かに、自分で何か新しいものを書き込もうとするのを止めるのに十分です. (revbuff を Cmd-R にマッピングしました。これは非常にうまく機能します。他の Mac アプリの Cmd-R に似ています)。
global-auto-revert モードはまったく問題のない解決策であり、2 つの答えを選択できればよかったのにと思います。私がリバフを好むのは、単に何が起こるかをコントロールしたいという、おそらく不合理な感覚のためです。
emacs 内から git にアクセスすれば、おそらくより簡単に処理できると思いますが、現在はコマンドラインから git にアクセスすることを好みます。(私は自分のオペレーティングシステムにするのに十分長い間 emacs を使っていません)。私はmagitをもう少し徹底的に調査します。
編集2:
私は 1 年間 magit を使用しており、emacs 内から git を処理する場合に強くお勧めできます。ただし、emacs の外でリベースを行うときは常に revbuff を使用します。
email - Emacsプログラムでメールを送信する
リージョンまたはバッファーから電子メールメッセージを作成し、受信者を設定してから、elispコードでメッセージを送信する方法はありますか?
Gmailアカウントを介してメールを送信するようにemacsを設定しましたが、elispプログラムから自分自身にメールを送信できるようにしたいと思います。使用されるコマンドはmessage-mailです。
emacs - 基本的な App<->Emacs 統合を取得するにはどうすればよいですか?
Emacs を外部プロセスと統合するアプリケーションはたくさんあります。GDBは頭に浮かぶものです。Emacs から GDB を制御し、画面にフィードバックを得ることができます。
私は自分のアプリケーションでその方向に何かしたいと思っています。
ここに私が欲しいものがあります:
- 私と emacs の間の接続を確立します。おそらく、新しい emacs プロセスを開始して、それを自分の GUI に丸呑みするでしょう。
- ファイルを表示するように emacs に指示します。(emacsclient で簡単)
- emacs にスクロールして特定の行番号を中心にハイライトするか、そこにカーソルを移動するように指示します。
- おそらく本当の問題は、emacs を実行するために外部アプリから任意の elisp コードを送信する方法です。
- 私は elisp を話せませんが、これは学ぶための素晴らしい口実になるでしょう
- トリガーされたときにアプリにメッセージを送り返す、emacs バッファー内のいくつかのクリック可能な領域を提供します。
- クリック可能性が不足していても、メッセージを送信するキー バインディングが出発点となります。(しかし、クリック可能なことが可能であることは知っているので、私は尋ねています)
これがすべて可能であることは知っていますが (emacs では何が不可能なのですか?)、どこからグーグル検索を開始すればよいかわかりません。
emacs - この Emacs Lisp スニペットが list-colors-display を壊すのはなぜですか?
私は Emacs が末尾の空白のフェイスを使用してタブ文字を強調表示するのが好きです。これは、背景色のわずかに灰色のバージョンに設定されています。そうすれば、不要と見なされるすべての空白 (タブ文字と末尾の空白) の背景がわずかに灰色になります。
これは私が使用するコードです:
ただし、list-colors-display が壊れているようです: この関数はすべての色を一覧表示しますが、モノクロです。それが提供するはずの見事な色のスペクトルが得られません。
なぜこうなった?修正できますか?
emacs - 新しい Emacs C スタイルを適用してすべてのソース ファイルを再フォーマットするにはどうすればよいですか?
emacs の Google フォーマット機能を使用して、すべてのソース ファイルを再フォーマットしたいと考えています: google-c-style.el (こちらを参照)。
この関数をすべてのソース ファイルに一度に適用して、すべてのソース ファイルが Google スタイルに従って正しくフォーマットおよびインデントされるようにするにはどうすればよいですか?