Emacs

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

1
eshellバッファートランケーションのパフォーマンスを向上させる方法は?
私は現在、構成に以下を追加することにより、20,000行でバッファーを切り捨てます。 (setq eshell-buffer-maximum-lines 20000) ;; automatically truncate buffer after output (add-to-list 'eshell-output-filter-functions 'eshell-truncate-buffer) これは20,000行未満でうまく機能し、バッファーが20,000行に達すると、すべての行で切り捨てられます(そのため、バッファーは常に20,001行に留まります)。ただし、バッファーが20,000行に達すると、後続の各行の印刷に時間がかかり、emacsのCPUがしばらくの間100%に留まります。 バッファの切り捨てのパフォーマンスを向上させる方法はありますか?おそらく、追加された100行ごとにしか切り捨てられませんか?私は本当にそれがために必要みたいではありません正確に 、私はちょうどバッファが無限に成長する必要はありません20,000行。
8 eshell 

2
リージョンの周りの括弧を削除します
リージョンの周りの括弧を削除するために使用するこの関数のより良い代替手段はありますか?私はEmacsビルトイン、または選択された領域の周りのペアを削除するもの(例:大括弧、中括弧、二重引用符、単一引用符)を削除するものを探しています (defun my-delete-surrounded-parens () (interactive) ;; save where region begins & ends (let ((beginning (region-beginning)) (end (region-end))) (cond ((not (eq (char-after beginning) ?\()) ;; if region not begins by (, trigger error (error "Char at region-begin not an open-parens")) ((not (eq (char-before end) ?\))) ;; if region not ends by …

4
コーディング時に数式をemacsで表示する
emacsが実際の数式をLatexまたは同様のもので記述した場合、エディターに表示される可能性はありますか?あなたがコーディングしている(例えば、PythonまたはC ++としましょう)と、コメントがこのようなものではなく実際の式を含んでいる場合、はるかに読みやすくなるので、私は尋ねています // Calculate average for $\mu_1 = \frac{1}{n} ~ \sum_{1=i}^n ~ x_i$ ラテックスコードをコメントにコンパイルして画像に編集し、それをエディターに表示するプラグインはありますか?
8 latex  display 

2
Aquamacsが〜/ .emacs.d / init.elを読み取らないのはなぜですか?
でカスタマイズを行ってい~/.emacs.d/init.elます。私のコマンドラインemacsはinit.el期待どおりにを取得できます。ただし、Aquamacsはファイルをまったく読み取らないようです。これはのバッファです*message* Loading prestart plugin files ... ... done. Wrote /Users/antkong/Library/Preferences/Aquamacs Emacs/Packages/.nosearch Shell: /bin/zsh Loading /Users/antkong/Library/Preferences/Aquamacs Emacs/Recent Files.el (source)...done Cleaning up the recentf list...done (0 removed) 22 environment variables imported from login shell (/bin/zsh). Loading /opt/homebrew-cask/Caskroom/aquamacs/3.2/Aquamacs.app/Contents/Resources/lisp/aquamacs/edit-modes/auctex.el (source)...done Loading plugins ... Loading /opt/homebrew-cask/Caskroom/aquamacs/3.2/Aquamacs.app/Contents/Resources/lisp/aquamacs/site-start.el (source)...done ... done. Loading `custom-file' failed. Loading /Users/antkong/Library/Preferences/Aquamacs Emacs/Preferences.el …
8 osx  aquamacs 

1
実際のプロジェクトのファイルに対してのみ発射モードをオンにする
発射物はかなり素晴らしいですが、効果がある場所でのみオンにするのは難しいと感じています。 私が理解しているように、2つの標準的な選択肢は、メジャーモードフックのように手動でオンにするか、でグローバルに有効にすることprojectile-global-modeです。前者は十分に広いとは言えない。タイプに関係なく、プロジェクト内の任意のファイルを参照しながら、発射コマンドにアクセスできるようにしたい。しかし、モードをグローバルにオンにするのは広すぎます。それは私のホームディレクトリとして、そのような明白に非プロジェクトディレクトリを訪問しても、オン状態になる/tmp、/etcなど アクティブにするための標準的な方法があるprojectile-modeの有無をチェックする、によって決定されるかもしれないとして、実際のプロジェクトでの生活は、言うことを、ファイルを訪問したときにのみ.git、.svnなど、現在のファイルのいくつかの祖先ディレクトリ内のディレクトリには?

1
キーをリバウンドした私たちのための「caps-lock-mode」はありますか?
Caps-Lockキーを制御に再バインドすることは、よく行われることです(少し知識がなくても、それに反対する議論があります)。しかし、私が多くの時間を費やしている言語は、資本の実行をかなり広範囲に使用しています。 caps-lock-mode動作をシミュレートできるはありますか?(もちろん、既存のキーバインドに影響を与えるC-x C-sことなく、たとえば、ストライキは送信されませんC-X C-S。)

3
文字列の等価性、大文字と小文字を無視しますか?
Q:文字列の等価性をどのようにテストしますが、大文字と小文字を無視しますか? 文字列を比較したいが大文字小文字を無視したい状況があります。大文字と小文字はにとって重要でstring-equalあり、明らかに以下の影響を受けませんcase-fold-search。 (string-equal "string" "StrinG") ; => nil (let ((case-fold-search t)) (string-equal "string" "StrinG")) ; => nil 文字列をdowncase比較する前に、いつでも(たとえば、)文字列を前処理できます。 (string-equal (downcase "string") (downcase "StrinG")) ; => t しかし、それは毎回2つの追加の関数呼び出しを行うにはやり過ぎのようです。関連する述語関数を見落としたことがありますか?
8 elisp 

1
Evilに新しいコロンコマンドを追加するにはどうすればよいですか?
evil-modevimスタイルのコロンコマンドを導入します(:wq保存して閉じるなど)。 私は(のようないくつかのコマンドを持ってkill-buffer、org-babel-tangle私は代わりに、彼らが現在持っているキーバインドの本を介して実行できるようにしたいと思いますということ)。 :kfor kill-bufferや:tangleforのようなコロンコマンドをどのように追加できますorg-babel-tangleか?
8 customize  evil 

1
Emacsは時々自動的にカーソル位置を再中心化し始めます
特定できない時点(数日になることもあれば、数時間になることもあります)でEmacsをクリックすると、カーソル位置が自動的に再調整されます。カーソルをどこかに移動すると、数秒でバッファが移動し、カーソルがウィンドウの中央に垂直になります。これが発生すると、Emacsを再起動するまですべてのバッファーに保持されます。 何が原因なのかわかりませんがcustomize-group、customize-variableなどのGUIコマンドを使用すると、発生する可能性が高くなることに気づきました。 多分私のスムーズなスクロール設定が原因だと思いました。私はこれを私の中に使用していましたinit.el: (setq-default redisplay-dont-pause t scroll-margin 1 scroll-step 1 auto-window-vscroll nil scroll-conservatively 10000 scroll-preserve-screen-position 1) 今、私はそれをスムーズスクロールパッケージに置き換えました、そして言及された振る舞いはまだ起こります。 誰かがこれを手伝ってくれる?私はEmacsをデーモンとして実行していて、そのような愚かな問題のためにEmacsを再起動せざるを得なくなりました。

2
誤って「snake-case」を検索したときに、「snake_case」を自動的に一致させるにはどうすればよいですか?
クイックを行うときに、「_」を「-」と誤って入力することがよくありisearch-forwardます。 たとえば、私が探していてsnake_case、誤って入力C-s snake-caseしても結果が得られません。最良の場合はすぐに気付くので、検索語をあまり削除する必要はありません。最悪の場合、基本的にもう一度入力する必要があります。 isearch-forwardクエリをisearch-forward-regexpライクに変更するためにフックする方法はありますsnake[-_]caseか? lisp-case「-」を「_」に変更するだけで解決するよりも多くの問題が発生するほど頻繁に検索する必要があります。
8 isearch 

1
emacsがバイナリファイルをhexl-modeで自動的に開くようにする
emacsがhexl-modeでバイナリファイルを自動的に開くようにするにはどうすればよいですか?「バイナリ」を「nullバイトを含む」として定義することでおそらく十分です(それが不十分なヒューリスティックになる場合は、https://github.com/audreyr/binaryornotを使用できると思います)。

2
ウィンドウレイアウトセレクター
フレーム内の任意の数のウィンドウの定義済みレイアウトを選択するのに役立つパッケージはありますか?tmuxのselect-layout関数と同じように機能するなら、私は完璧です。 編集 これは、tmuxが異なるレイアウト間を切り替える方法を示すgifです
8 window 

1
ドキュメンテーション文字列でシンボルを引用する方法は?
Emacs Lispのドキュメントでは、`buffer-file-name'docstringの内部のように、引用符で囲まれたシンボルに出くわすことがよくあります。ここで興味深いのは、シンボル名をバックティックと引用符で囲むことによる引用のスタイルです。私はこのスタイルがどこから来たのか興味がありました。この回答によると、それは限られた文字セットに関連している可能性があります。 もう1つ注意すべき点は、これらの引用符付きのシンボルにはで構文の強調表示がemacs-lisp-modeあるのに対し、 'buffer-file-name'のように単一引用符だけで引用符付きのシンボルは構文の強調表示されないことです。 したがって、これは、バッククォート引用構文がEmacsでよく知られた規約で​​なければならないことを示しています。しかし、ドキュメントをグーグルで調べた後、どこにも言及されていませんでした。Emacs Lispマニュアルには、「ドキュメンテーション文字列のヒント」というセクションがあります。それは言う ドキュメンテーション文字列がLispシンボルを参照するときは、それが印刷されるのと同じように(通常は小文字を意味します)、周りを一重引用符で囲みます。 しかし、引用のスタイルについては触れていません。 入力C-h f thing-at-point RETしてソースコードへのリンクをクリックすると、引用スタイルの例がさらに表示されます。 (defun Thing-at-point(thing&optional no-properties) " ポイントでTHINGを返します。THING は 構文エンティティのタイプを指定するシンボルである必要があります。可能性には、` symbol '、 `list'、` sexp '、 `defun'が含まれます、「filename」、「url」、「email」、「word」、「sentence」、「whitespace」、 「line」、「number」、および「page」。 オプションの引数NO-PROPERTIESが非nilの場合 、戻り値からテキストプロパティを削除します。 シンボルを有効なTHINGとして定義する方法については、 `thingatpt.el 'ファイルを参照してください。" したがって、これはすべて、記号を引用するためにbacktick-quoteスタイルを使用する必要があることを示していますが、このスタイルはどこかに文書化されていますか?

2
以前の制限に狭める
以前の制限を復元する便利な方法はありますか?したがって、次の一連のイベントの後: 地域をマーク 電話narrow-to-regionして、いくつかの作業を行います。 widenジャンプして何かを探すように電話する 再度マークを付けずに、元の領域に再度絞り込みたいです。

1
標準としてワードラップを使用することはできますが、同時にバッファー内のいくつかの行を切り捨てることは可能ですか?
私はAucTEXで大きなLaTeXテーブルを扱っています。次のように、それらを切り捨てられた行で表示すると便利です。 赤いマークは、テーブルの列を区切る「&」文字です。多くの列を持つテーブルの場合、1つのテーブル行のラテックスソースコードはemacsフレーム幅よりも長いため、デフォルトでは複数行に折り返されます。を使用してもalign-current、テーブルのソースコードの読み取りと編集が非常に困難になるため、 テーブルの場合、ソースコードの行を切り詰めるようにしたい(水平方向にスクロールすることを強制する) 他のすべてのlatexソースについてはword wrap、フレームの幅に合わせて作りたいと思います ただし、LaTeXドキュメントの実際のテキストについては、通常のword-wrap設定にしたいと思います。 質問: でword-wrap標準として使用して、のEmacsような同じバッファー内にいくつかのラテックス環境があり、同時にd と表示されることは可能ですか?tablelongtablesidewaystabletruncate また、他のいくつかのような環境のためにequation、pycodeまたはtikzpicture切り捨てより適切であると思われます。したがって、ラップされずに切り捨てられる環境のリストを定義できるようにするのは良い考えかもしれません。 折り返しはソフトラッピングである必要があります(つまり、テキストはバッファーのfill-columnに折り返されますが、ファイルには反映されません)。 ソリューションはemacsだけでなく、Aquamacs 2.5でも機能するはずです。 (部分的な)解決策を提案するブログ投稿がありますが、実装は見つかりませんでした:http : //endlessparentheses.com/longlines-mode-in-latex.html

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