Emacs

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

3
シェルコマンドを完全にサイレントにする方法(ウィンドウを分割したり、新しいフレーム/ウィンドウを開いたりするのを防ぐ)
シェルコマンドをサイレントで(バックグラウンドで)実行することは可能ですか?を使用するとasync-shell-command、emacsがウィンドウを分割します。特定のシェルコマンドが完全にバックグラウンドで実行されるようにしたい(視覚効果なし)。 明示的な例として、次のコードがあります(https://emacs.stackexchange.com/a/7932から借用)。作業中のtexファイルのPDFバージョンを開きます。それを実行すると、ウィンドウが分割されます。この特定の状況では、この動作を防止します。 (defun my-view-pdf () (interactive) (async-shell-command (concat "SumatraPDF " (file-name-base (buffer-file-name)) ".pdf")))
8 latex  shell 

1
同じ.emacs.dでEmacsの複数のバージョンを実行するにはどうすればよいですか
あるいは、24.5と25.0.50を実行します。残念ながら、25.0.50からインストールおよびコンパイルされたパッケージcl-struct-defineは、Emacs 24.5(一般的な原因)では動作しません。 簡単な解決策の1つは、何もバイトコンパイルしないことです。しかし、それは物事をかなり遅くします。 .emacs.d24.5と25.0.50の両方に同じものを使用しながら、(パフォーマンスのために)コンパイルされたパッケージをどのように使用できますか?また、コンパイル済みファイルを無視して24.5で大丈夫です。

2
TODOリストの議題ビューの組織習慣グラフ
私はorg-habitを使用しており、習慣グラフは通常のアジェンダビューにうまく表示されます。ただし、タグフィルタリングを使用してToDoリストを使用したいのですが、習慣は通常のToDoアイテムのように見えますが、習慣グラフはありません。 TODOリストのアジェンダビューを使用しているときに、習慣グラフを表示するにはどうすればよいですか?

1
ファイルごとに組織モードで「+」マークアップを無効にする
+単一のファイルで取り消し線を意味しないようにエスケープするにはどうすればよいですか?たとえば、 ++の代わりに+ = 1を使用 これを取り消し線で消すにはどうすればよいですか? のように+with \をエスケープする\+ことはうまくいきますが、by-fileではありません。
8 org-mode 

2
一部のEmacs Lispフォームのインデントを変更する
Common Lispのように、いくつかのEmacs Lispフォームをインデントしてほしい。たとえば、Emacs Lispでは、次のifようにインデントされます。 (if COND THEN ELSE) 私はそれをこのようにしたいのですが: (if COND THEN ELSE) 私はこれを行うことができます: (setq lisp-indent-function #'common-lisp-indent-function) しかし、これはすべてのフォームに影響を与えるためcl-letf、ユーザー定義マクロなどのEmacs Lispマクロのインデントが解除されます。

3
Shift- <backspace>をバインドできないのはなぜですか?
私のシステムはdebian wheezyです。私は次のことを試みました (global-set-key (kbd "S-&lt;backspace&gt;") 'evil-shift-left-line) (global-set-key (kbd "&lt;S-backspace&gt;") 'evil-shift-left-line) (define-key global-map [S-backspace] 'evil-shift-left-line) 私が欲しいのは邪悪な挿入モードです。Backspaceキーを4回押す代わりに、1つのタブ幅を前方に削除できます。キーバインドは私のラップトップでは機能しますが、私のデスクトップでは機能しません。evil-shift-left-lineのバインディングを確認しました。変更されましたが機能しません。「shift-backspace」のヘルプでは「backspace」しか表示されません。ただし、shiftは「backspace」に影響を与え、「shift-backspace」は文字の代わりに前の単語を削除します。 「Cq」の後に「shift-backspace」を挿入すると、「^?」と同じ表記になります デスクトップでは「バックスペース」として、ラップトップでは前者は「^ @」です。 デスクトップで機能しない理由についてのアイデアはありますか?ご協力ありがとうございました! この質問はこれに関連している可能性があります: Shift + UpはターミナルのEmacsで認識されません

1
期限付きのエントリの組織ToDoリストを表示しますか?
期限付きの組織モードエントリのリストを取得する方法はありますか?理想的には、締め切りが表示され、締め切り順に並べられています。 このようなものは見つかりませんでした。私が見つけた最も近いものはですorg-check-deadlines。これは、次の2週間の予定であるか、すでに延期されていることについて知らせてください。
8 org-mode  todo 

2
文字列をキープレスに変換する
elispの文字列が与えられた場合、その文字列を再作成するために必要なすべてのキープレスを受け取るemacsをシミュレートしたいと思います。したがって、文字列 "Hello"を指定すると、emacsはShift + H、e、l、l、oを押した場合とまったく同じように動作します。これは常にテキストをバッファに挿入することと同じではないことに注意してください-isearch-modeのようないくつかのモードは直接keypressイベントをリッスンします。 これが必要な理由は、すべての入力がキーボードからのものであると想定したり、バッファ/ウィンドウ/フレームの変更がキーボード入力イベントに関連付けられると想定したりする多くのモードや拡張機能があるためです。彼らがそのイベントに関連するデータを検査する時間。既存のコード本体とシームレスに連携するように取り組んでいる音声認識モードの場合、elispを直接呼び出してアクションを実行するだけでなく、キーを押してアクションを実行するようにelispに指示する必要があります。 unread-command-eventsを見つけましたが、文字列を必要なキーシーケンスに変換する既存のコードは知りません。そのようなものはすでに存在していますか?

1
アジェンダクロックレポートの式を使用して時間を変換しますか?(議題のポモドーロ数)
アジェンダクロックレポートに、タスクに投資したポモドーロの数を表示するようにしています。ポモドーロは25分です。たとえば、1:15時間の作業は3ポモドーロです。 カスタマイズしorg-agenda-clockreport-paramater-plistたいのですが、「時間」を抽出してポモドーロに変換したいのですが。すなわち、(分単位の時間/ 25)=ポモドーロ。 クロックテーブル:formulaからの使用を検討していましたが、どこから始めればよいか、例を探す場所がわかりません。 これはどういうわけか技術的に可能ですか? [解決策を編集] Sachaの投稿のおかげで、私は次のように構成を使用します。 (setq org-agenda-clockreport-parameter-plist '(:fileskip0 t :link t :maxlevel 2 :formula "$5=($3+$4)*(60/25);t")) これは、空のorg-agendaファイルをスキップし、2レベルの深さを持ち、小数点以下2桁のpomodorosを示す列を追加するレポートを作成します。( 't' =時間単位の時間)。 例えばスクリーンショット: よろしければ、サチャの回答に賛成投票してください。

1
最後のコマンドを繰り返す(複雑かどうか)
Emacsにはとがrepeatありrepeat-complex-command、コマンド履歴からさまざまなコマンドを描画し、さまざまなキーにバインドされています。単一のキーで、最後のコマンドを(複雑であるかどうかにかかわらず)どのように繰り返しますか?つまり、このような繰り返しコマンドはrepeat-complex-command、最後のコマンドが入力を必要とする場合と同様に動作し、それ以外の場合はと同様に動作しますrepeat。 EDIT:つまり、私は複雑かどうか最後のコマンドを、読むための方法を探していますし、その後のいずれかを呼び出すrepeat-complex-commandかrepeat適切な方、それに。たとえば、そのような新しいコマンドがにバインドされて&lt;f8&gt;いるとしましょう。次に: (と模倣C-x M-: (repeat-complex-command)するM-z (zap-to-char)):C-u M-z a &lt;f8&gt; &lt;f8&gt;と同等になりますC-u M-z a C-x M-: RET C-x M-: RET (と模倣C-x z (repeat)するC-f (forward-char)):C-u C-f &lt;f8&gt; &lt;f8&gt;と同等になりますC-u C-f C-x z z ここで、repeat-complex-command実行されるLispフォームを確認する必要があります。確認なしで複雑なコマンドを繰り返すことを可能にするためにrepeat-complex-command、と呼ばれるの代替バージョンを作成しましたrepeat-complex-command-no-confirm(実装については以下を参照)。問題は、を押すrepeatかrepeat-complex-command-no-confirm、を押すかを判断する方法が理解できないこと&lt;f8&gt;です。 - (defun repeat-complex-command-no-confirm (arg) "Like `repeat-complex-command' but does not require confirmation." ;; Adapted from `repeat-complex-command' of Emacs 24.5.1. (interactive "p") …
8 history 

4
重複する行を強調表示するにはどうすればよいですか?
ここに私が持っているものがあります: (defun my-show-duplicate-lines () (interactive) (highlight-lines-matching-regexp (concat "^" (regexp-quote (substring-no-properties (thing-at-point 'line) 0 -1)) "$") font-lock-warning-face)) 私の意図は、これを追加してpost-command-hookロジックを複製している行を見つけることですが、コマンドを2回目に実行しても効果がありません(古いフォントロックはまだ有効です)。 2番目の問題は、フォントロック自体が更新されないことが原因です。(font-lock-mode -1) (font-lock-mode 1)定義にを追加しようとしましたが、効果がありませんでした。 しかし、なぜこのコマンドが1回の実行に対してのみ有効なのかはわかりません。
8 font-lock 

2
会社のバックエンド結果の適応ソート
company過去の選択に基づいて表示される結果を並べ替える方法はありますか?カスタム変数company-transformersはこの動作を制御します。組み込みの選択肢はcompany-sort-by-occurrenceおよびのみcompany-sort-by-backend-importanceです。これらの結果の適応フィルタリングを行うために使用できる、おそらく別のパッケージからの既存の方法はありますか?

1
日付ツリーの1日の小見出しにキャプチャテンプレートを提出することは可能ですか?
組織モードでは、キャプチャテンプレートを次のように保存したいと思います。 * 2015 ** 2015-05 May *** 2015-05-21 Thursday &lt;--- I can get this with file+datetree **** Todo today &lt;--- here's the problem ***** TODO something &lt;--- this is the captured content 箱から出してそれは可能ですか?そうでない場合、それを実装する方法についてのアイデアはありますか?

1
自動保存データがファイルと同じ場合、自動復元のプロンプトを無効にする
emacsを(killall emacsたとえば、シェルプロンプトから)強制終了し、ファイルを編集していたときに、Emacsが再起動してメッセージが表示される ファイル名には自動保存データがあります。Mx recover-this-fileを検討してください 最近ファイルを保存してから変更し、変更を元に戻し、保存されたバージョンと同じように見える場合、自動保存ファイルにまったく変更がない場合でも、このメッセージが表示されます(ファイルサイズまたはM-x diff) これを無効にするにはどうすればよいですか? 公式 ドキュメントにも、emacswikiにも、何も見つかりませんでした。
8 auto-save 

2
Emacs + Evilを使用してOSクリップボードにアクセスする方法
使用時にWindowsクリップボードとの間でヤンクするにはどうすればよいですか? Windows 7(x64) GNU Emacs 24.4.1(x64) 悪1.0.9 と(setq x-select-enable-clipboard nil)私の中で.emacs?私はvimの変化(たくなかったので、(私はこの行を入れてx、d私のOSのクリップボードを壊しする、など)。 私が試した"+p、"*p、"+y、"*y、CTRL+Yそれは動作しません。実行:registersしても、表示+も*登録もされません。 明確にするために:テキストを変更するコマンドごとにosクリップボードを壊さずに、異なるレジスタ間でコピー/ヤンクするとき、EmacsがVimのように動作することを望みます。特に: yy-テキストをOSクリップボードにヤンクしないでください(0登録のみ) "+yy -テキストをOSクリップボードにヤンクする必要があります dd -osクリップボードを壊さないでください cw -クローバーOSクリップボードを保持しない 等

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