Emacs

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

4
起動時にデフォルトウィンドウを設定する方法
私はEmacsのIを開くたびに実行して3つの窓を設定する傾向があるC-x 3(split-window-right当時)とC-x2(split-window-below)。その後、各ウィンドウに切り替えて、編集するファイルを開く必要があります。 これを自動的に行われるように設定するにはどうすればよいですか? Emacsに前回の使用から同じ画面構成(ウィンドウとファイル)を回復させる方法はありますか?

4
インデントされたブロックの前にコードを追加または削除するときに、elispコードを自動的に再インデントする
次のようなelispコードがあるとします。 (+ 2 3▮(+ 3 4)) シンボルを追加または削除したときに、カーソルの後にsexpを自動的に再インデントする方法はありますか? を押した後SPC 4 SPC、私は自動的に取得します: (+ 2 3 4 ▮(+ 3 4)) 私は呼び出すことで、このマニュアルを行うことができますmark-sexpが続きますindent-region。これを行うより良い方法はありますか?

2
ページを更新せずにewwで画像の表示を切り替えるにはどうすればよいですか?
私はewwを使用してインターネットを閲覧しますが、画像をロードしたくない場合が多いのですが、ewwに組み込まれたカスタマイズに関してはあまり多くないようで、画像を処理しません。 現在、ewwで画像の表示を開始および停止できるシステムセットアップがありますが、ページの更新後にのみ、ページを更新せずに画像のオンとオフを切り替える方法が必要です。 以下は、shr-put-imageewwが使用する内部構造を利用する現在の方法です。 (defvar display-graphic-override nil "Used to override `display-graphic-p' behavior. Should either be nil, or a list where the car is the override.") (defadvice display-graphic-p (around sometimes-lie activate) "Use the override if it is non nil." (if display-graphic-override (car display-graphic-override) ad-do-it)) (defadvice eww-render (around no-images activate) "Temporarily lie about …
18 images  eww 

3
WindowsでEmacsをセットアップして、単一のインスタンスを起動し、既存のインスタンスでファイルを開く
私は、次のようなWindowsの完全なエクスペリエンスに特に興味があります。 サーバーがまだ開始されていない場合に自動的に開始する サーバーを利用するためにemacsを呼び出す方法(コマンドラインまたはサードパーティのツールから) コンテキストメニューのサポート(たとえば、ファイルを右クリックして、表示および編集のためにemacsに送信できるようにする) そのようなサポートは、どこからでも利用できますか?

1
Magit内でファイルを移動/名前変更する方法は?
マニュアルの紹介には次のように書かれています: Magitはラップし、多くの場合、少なくとも次のGit磁器コマンドを改善します:add、am、bisect、blame、branch、checkout、cherry、cherry-pick、clean、clone、commit、config、describe、diff、fetch、format-パッチ、init、log、merge、merge-tree、mv、notes、pull、rebase、reflog、remote、request-pull、reset、revert、rm、show、stash、submodule、およびtag。 ただし、実際にファイルをそこから移動する方法はわかりません。確かに私は実行できますがgit mv、それを論理的な極端に取ってgit、Magit:Pの代わりに使用mvすることもできます。マニュアルの言及を考慮すると、それが間違いかどうか疑問に思います。 私はこの古い質問を見つけましたが、Magitの基準では非常に古い質問です。おそらく状況は変わったのでしょうか?
18 magit 

2
EmacsでKnitrワークフローを設定する方法
RStudioは、LaTeX + RソースからKnitrでPDFファイルを生成するためのワンボタン方法を提供します。再現可能な研究を行うのに最適です。そして、私はEmacsを次のように設定しようとしています: Knitr方式の左バッファLaTeX + Rコード。 右側のバッファでPDF出力プレビュー。 コンパイルのための1つのキーの組み合わせ。 可能であれば、これをどのように設定すればよいですか? (ESSは正常に動作しますが、Knitr-wayとコンパイル用の1ボタンを設定する方法がわかりません。)
18 latex  ess  r 

2
すべての自動インデントを完全に無効にします
Emacsですべての自動インデントを完全に無効にするにはどうすればよいですか?少なくとも基本モードでは無効にする必要がありますが、現在のセッションでグローバルに無効にすることで問題ありません。 重複することを宣言する前に、この質問の残りを読んでください。 私が見つけた他のすべての答えは、インデントのはるかにターゲットを絞った無効化です。セッション全体のすべての自動インデントを完全に無効にします。 に設定electric-layout-modeしnilても機能しません。 詳細 Windows ASCIIテキストエディターで大きなGitコミットメッセージを作成したいことがあります。これらのメッセージには、多くの場合、箇条書きリスト、コードブロック、またはソースドキュメントの正確な書式設定が意味のあるその他のものが含まれています。私のコードベースはLinux上にあり、テキストのみのSSHクライアントを使用してボックスに接続します。Gitがコミットメッセージを編集するためにEmacsに入ると、ソースコミットメッセージをWindowsクリップボードにコピーし、Windows貼り付けコマンドを使用して貼り付けたいと思います。Emacsの観点からは、Windowsテキストファイルで見つかったものを入力しています。残念ながら、Emacsがインデントされた行を見ると、独自の自動インデントが追加されるので、バッファーの左端に沿ってこの巨大な空白の三角形を取得します。 GNU Emacs 24.3.1を使用しています。 回避策 私の現在の回避策は、LinuxホストによってマウントされているファイルシステムにWindowsテキストファイルを転送し、そのファイルをEmacsにロードしてから、killとyankを使用してコンテンツを転送することです。これは少し不格好です。 例 テキストブロックの例を次に示します。 a - b c d MSWinペーストを介してEmacs-under-sshに貼り付けると、次のように表示されます。 a - b c d C-h l貼り付けを行った後に押すと、これが表示されます。改行はではC-jなくを使用して入力されることに注意してくださいRET。 a C-j C-j SPC SPC - SPC b C-j SPC SPC SPC SPC c C-j SPC SPC SPC SPC d C-j C-h l

1
選択した領域のみにコマンドを適用するためのElisp
たとえば、次のようなコードがあります。 (defun some-function () (interactive) ;; do something ) 今、私some-functionはバッファ内の選択された領域でのみ操作したいですか?どうやってやるの ?また、ある領域を選択した場合に何かを実行し、選択していない場合に別の何かを実行するための2つの個別のコードパスがあります。

3
スプラッシュ画面をrecentfのリストに置き換えます
スプラッシュ画面は最初は便利ですが、もっと便利なものが必要です。事前に定義されたファイルが開かれていない場合、emacsの起動時に最近開いたファイルのリストが表示されます。さらに良いのは、helm-recentfウィンドウにできる場合(helmパッケージを使用)
18 start-up  recentf 

1
`gc-cons-threshold`を非常に高く設定し、アイドル時にガベージを収集することにはマイナス面はありますか?
次の2行をmyの先頭に追加しましたinit.el。 (setq gc-cons-threshold (eval-when-compile (* 1024 1024 1024))) (run-with-idle-timer 2 t (lambda () (garbage-collect))) つまり、割り当てられたメモリの800kbごとにガベージを収集するのではなく、Emacsはアイドル状態、つまり一時停止が気にならないときに収集します。(1GBのメモリを割り当てた後にも収集されますが、そうなるとは思いません)。 これにより、起動時間が約3分の2短縮されました。理論的には、一般にパフォーマンスも改善するはずです。このアプローチには欠点がありますか?




3
各パッケージをload-pathに追加する必要があるのはなぜですか?(またはrequire '私のinitファイルのパッケージに関する問題)
パッケージメニューからパッケージをインストールするたびrequireに、initファイルでパッケージを試みると、ロードパスに手動で追加しない限りエラーが発生します。 (add-to-list 'load-path "/home/nick/.emacs.d/elpa/use-package-20141220.1645") (require 'use-package-autoloads) (require 'use-package) それは退屈です。通常、パッケージパスにはバージョン番号が含まれています。パッケージが更新された場合、ロードパスを手動で編集する必要があります。 これを自動化する方法はありますか?


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