Emacs

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

1
ドキュメントビューの表示品質を向上させる
doc-viewに表示される私のPDFのフォントは、特に読みやすくありません。画質を改善するために変更できる設定はありますか?doc-view-resolution100から300に変更してみましたが、PDFレンダリングが大きくなりました。
11 pdf  docview 

2
TeX-PDFモードでpdflatexを呼び出す方法は?
私はすでにTeX-PDFモードです。Cc Ccと入力してpdflatexと入力すると、実行されません。TeX-PDFモードでpdflatexを実行するにはどうすればよいですか?注:emacs構成ファイルは変更しません。ありがとう。
11 auctex  tex 

1
組織モードでのコードブロックのデバッグ
組織モードブロックのエラーのトレースを簡単にするために利用できるツールはありますか?(私は特にPythonで作業しています) 現在のワークフローは、機能するコードをソースブロックにコピーし、最小限の変更のみを行うことです。大きなエラーが発生した場合は、それを別のファイルにコピーして戻すか、ブロックをもつれさせて結果のファイルをデバッグします。 不足しているツールはありますか?(たとえば、エラーが発生している行に移動するコンパイルモードのようなもの。) 編集:たとえば、Cc Cv vを見つけただけで、noweb参照が展開されたバッファーが表示されます。残念ながら、これにはヘッダー引数が含まれていないため、インタープリターに最初にそれらをインポートしないと、このコードは実行できません。同様に、returnステートメントがあり、それが実行されないようにしていて、バッファーが編集できない場合は、Pythonブロックから実行可能なソースを取得するためにいくつかの手順を実行します。

3
プライベートパッケージリポジトリをセットアップする方法
GNU Emacs用にいくつかのパッケージを作成しましたが、それらは私の会社の環境以外では役に立ちません。パッケージを私の会社の他の開発者と共有したいです。また、パッケージを経由で簡単に見つけられるようにしたいと考えていますpackage-list-packages。 私のリポジトリは私の問題を解決すると思いますが、個人のアーカイブのセットアップに関するマニュアルが見つかりません。私が理解している限り、Elispの情報マニュアルではプレーンディレクトリとpackage-upload-fileが推奨されていますが、パッケージの同時更新ではうまく機能しないと思います。セットアップが比較的簡単な他のオプションはありますか?

1
色で宣言された変数
emacsにC / C ++の単一の関数で宣言された変数を記憶させる簡単な方法を探しています。「シンプル」とは、外部パッケージがなく、構成ファイルにいくつかのelisp行があることを意味します。 私のデフォルトのEmacs構成では、宣言時に変数名を黄色に着色していますが、使用時には白色にしています。 char toto; // 'char' is green, 'toto' is yellow toto = 42; // 'toto' is white 同じ機能/スコープのすべての「toto」も黄色に着色したいと思います。 私はすでにこの質問を見てきましたが、もっと簡単なことを望みます。また、font-lockモードで何かをしようとしましたが、変数名に適応できるものを作ることに成功しませんでした。 (名前パターンを使用した)C ++クラスメンバー名のアイデアはすでにあるので、ここでローカル変数の一致を求めています。

3
大きなログファイルに適切なログ表示モードはありますか?
私が使用しているログファイルの一部はかなり大きい(> 200Mb)が、Emacsで参照すると便利です。現在のところ、デフォルトではEmacsはすべてを遅くするlog4jモードを有効にしようとします。私が本当に必要なのは、以下の軽量ビューアです。 元に戻すモードを無効にしました ログファイルが更新されたときに自動復帰できます 更新時にログの末尾を追跡できます 理想的には、閲覧しながらログファイルのごく一部をマッピングするだけでよいでしょう。そのようなログモードはありますか?
11 logging 

1
一致しないIsearch文字列の一部、または完全一致の場合は最後の文字を削除します
私は以下を持っています (defun isearch-del-fail-or-char () "Delete failed isearch text, or if there is none, a single character." (interactive) (if (isearch-fail-pos) (delete-region (isearch-fail-pos) (point)) (isearch-del-char))) (define-key isearch-mode-map (kbd "DEL") 'isearch-del-fail-or-char) このコードの目的は、deleteisearchで失敗した文字列全体を削除することです(または、失敗した文字列が1文字しかない場合)。 ただし、delete-regionバッファからテキストを削除するとisearch、isearchバッファ自体ではなく、検索が行われます。 これを行う適切な方法は何ですか?私のemacs lispスタイルの残りについての批評も歓迎します:)
11 isearch  deletion 

1
C- [を実際にバインドする方法(今回は本当に深刻に)
C-[何かにバインドし、すべてのM-(メタ)バインディングをめちゃくちゃにしない方法はありますか? この質問が出てくるのは初めてではありません。残念ながら、前のスレッドで提供された唯一のソリューションは、a) Linux固有、b) Emacsとは何の関係もない外部ツール(これもLinux固有)を必要とします。同様に、Emacs がシーケンスを取得する前にOS XでKarabinerのようなものを使用してC-[シーケンスを盗むこともできましたが、これは不格好で高価です。 それが翻訳を主張しているEmacsのであることを考えるC-[にESC、C-iにTAB私は非常にこれらの関係を壊し、バック貴重なキーシーケンスを取得したいと思い他の人と、おそらく。最近、私はこの問題に全速力で取り組み、静かで無邪気なsmartparensモードを非難しました。 関与することを可能な解決策function-key-mapとkey-translation-mapして、ここで議論したが、悲しいかな、それのいずれかもはや作品かは、最初の場所(または私が何かを間違ってやっている)で動作しませんでした。それは正しい方向に進んでいたと思います。

1
orgmodeファイルを自動的に暗号化する方法は?
いくつかの組織モードファイルが存在するgitリポジトリがあります。それらのいくつかはプライベートな性質を持っており、gitリポジトリが存在するサーバーには、信頼できないサードパーティがアクセスできます。それで私はプライベートな組織ファイルを暗号化したいのです。 私が達成したいことは次のとおりです:最初にファイルは暗号化されます。これは、パスワード付きの対称鍵にすることも、GnuPG鍵にすることもできます。ファイルを開くと、Emacsはパスフレーズを要求し、ファイルを開きます(pwが正しい場合)。これで、他のorgファイルと同じようにorgファイルを操作できます。ファイルを保存または閉じると、再度暗号化されます。また、git commitも暗号化する必要があります。 GNU / Emacsでそのようなことをするにはどうすればよいですか?

3
2つのプロパティリストをマージする関数?
次のように、2つのプロパティリストをマージする標準のElispライブラリ関数が見つかりません。 (setq pl nil) (setq pl (plist-put pl 'key-1 'value-1)) (setq pl (plist-put pl 'key-2 'value-2)) で何かを構築できますがdolist、その前に、ライブラリの既存の関数を見落としていないことを確認したいと思います。 コメントに基づく更新: 「多方向」コメントへの応答: 私はそのような関数は存在しないと想像します。異なる(そして有効な)可能性のある質問に対する回答が存在するためです。異なる値を持つ重複したプロパティ名がある場合はどうすればよいですか? はい、重複をマージする方法についての質問がありますが、それに対処する方法は比較的少数です。一般的なアプローチは2つあります。まず、引数の順序で重複を解決できます。たとえば、Clojureのマージのように、右端の勝利。第2に、Rubyのmergeの場合と同様に、マージはユーザー指定のコールバック関数に委任できます。 いずれにせよ、さまざまな方法があるという事実は、他の多くの言語標準ライブラリがマージ機能を提供することを妨げません。同じ一般的な議論はソートについても言えますが、Elispはソート機能を提供します。 「詳しく説明していただけませんか?」/「探している動作を正確に指定してください。」 一般的に言って、私はElispコミュニティーが使用するものにオープンです。特定の例が必要な場合は、次の例が機能します。 (a-merge-function '(k1 1) '(k2 2 k3 3) '(k3 0)) そして戻る '(k1 1 k2 2 k3 0)) これは、Clojureのマージのように、最も右勝者のスタイルになります。 「それらはリストなので、追加するだけですか?」 いいえ、プロパティリストのセマンティクスappendは保持されません。この: (append '(k1 1 k2 2) '(k2 0)) …

1
font-lock-defaultsでカスタムフェイスを指定するにはどうすればよいですか?
既存のフェイスを使用してフォントロックキーワードを定義すると、文字列「foo」を強調表示できます。 (defconst my-mode-font-lock-keywords (list (cons "foo" 'font-lock-type-face))) (define-derived-mode my-mode fundamental-mode "My mode" "A demo mode." (set (make-local-variable 'font-lock-defaults) '(my-mode-font-lock-keywords))) これは正しく強調表示されます: ただし、自分の顔を定義した場合: (defface my-mode-foo-face '((t :inherit font-lock-preprocessor-face)) "Face for highlighting 'foo'.") (defconst my-mode-font-lock-keywords (list (cons "foo" 'my-mode-foo-face))) (define-derived-mode my-mode fundamental-mode "My mode" "A demo mode." (set (make-local-variable 'font-lock-defaults) '(my-mode-font-lock-keywords))) ハイライトは適用されません: font-lock-defaults自分で定義した顔でどのように使用できますか?

2
EmacsでピクセルベースまたはベクターベースのUI要素を描画するにはどうすればよいですか?
つまり、端末エミュレーターの等幅文字グリッドに制限されず、画面上の任意のピクセル位置の任意の形状にすることができるUI要素(テキストフィールドやアニメーションボタンなど)を意味します。それが可能かどうか、またそれがどのように可能か、そしてそれが不可能な場合は、将来に向けて計画されているかどうかに興味があります。
11 elisp  editing  images 

2
`find-file-noselect`の何が問題になっていますか?
lunaryornによる最近の回答で、彼は次のように述べています。 ただし、すでにコメントで述べられている理由から、私はOrgの他のほとんどの部分に対してお勧めします。それは古く、レガシーで有害な慣例(たとえば、非対話的にファイルを読み取るfind-file-noselect)でいっぱいです。 find-file-noselectElispプログラムでファイルを読み取るのが悪い考えである理由を誰かが説明できますか?もっと良い方法はありますか?私のプロジェクトの1つでそれを使用することを考えていたので、私は尋ねています。
11 files 

5
組織テーブルのフィールドをプレビュー
org-modeでテーブルを作成するときに、手動で列幅を設定すると便利な場合があります。これにより、列が最も長いエントリのサイズまで大きくなる必要がなくなります。とorg-modeテーブルのエントリが、それが見つかる列よりも長い場合、エントリは=>最後に記号が付いて視覚的に切り捨てられます。 をC-c `使用できることはわかっていますorg-table-edit-fieldが、これを押すC-c C-cと、プレビューウィンドウを閉じて組織モードバッファに戻る必要があります。同じコマンドを前置引数で呼び出すと、C-u C-c `フィールド全体が表示されるので、その場で編集できますが、5〜10個のフィールドをすばやく連続してすばやくプレビューするのは面倒です。 LibreOffice Calcには、スプレッドシートの上部にプレビューフィールドがあり(MS Excelも同様)、現在選択されているフィールドの値が表示されます。 組織モードのテーブルを編集するときに同様のプレビューを取得することは可能ですか? ミニ*Messages*バッファーは、バッファーがすぐにいっぱいになるという副作用があるかもしれませんが、そのための良い場所のように見えます。バッファーの上部または下部にある専用のミニウィンドウも機能します。

2
emacsがファイルの最後の改行を表示しないようにするにはどうすればよいですか?
vimの奇妙な点の1つは、ファイルが改行文字で終わっている場合、ファイルの最後に空の行が表示されないことです。このように、ファイルが改行で終わっていない場合、表示は同じ[noeol]ですが、モードラインのマーカーのみが表示されます。 一方、Emacsは、ファイルが改行で終わっている場合は最後の行を表示し、それ以外の場合は表示しません。 Emacsの振る舞いは根本的に賢明ですが、良くも悪くも、私は前者に慣れてきました。 最後の空の行の表示を抑制しながら、ファイルを改行で終了する必要がある方法はありますか? スクリーンショットは3つのウィンドウを示しています(小さすぎる場合は、新しいタブに画像を表示します)。 の左側の大きなemacsウィンドウ。hexl-modeファイルの最後(カーソルが置かれている場所)に改行が実際にあることを示しています。 右上のEmacsウィンドウ。空の3行目にカーソルがあります。 右下にVimウィンドウがあり、最後のテキスト行にカーソルがあります。ファイルが改行で終わっていても、カーソルはこのポイントの下に移動できません([noeol]vimステータスラインにマーカーはありません)。

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