Emacs

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

2
条件式の「and」と「when」
これは、この回答に対するコメントのフォローアップです。次のコードは同等のようです: (and a b) (when a b) もちろんand:あなたはより多くの条件に置くことができます(and a b c d)手段を(when (and a b c) d) 私はwhen分岐を表現するためだけに使用する傾向があります。実際の違いはありますか?どちらを使用するのが良いですか? EmacsのCソースは手元にありません。andC関数です。whenはに展開されるマクロでありif、それ自体はC関数です。

1
ディスクに保存されたものとは異なるインデントでコードを表示する
インデントスタイルを使用したいくつかのプロジェクトに取り組んでいますが、本当にイライラすることがあります。特定のインデントスタイルでコードを表示したいが、常に所定のインデントスタイルでディスクに保存したい。 具体的には、複数行の関数引数でのemacsのデフォルトのインデントスタイルが好きです... void foo(int a, int b, string c) しかし、プロジェクトはタブのみで、すべてを単一インデントしています... void foo(int a, int b, string c) 最初のケースは表示できますが、2番目のケースは共有できますか?

2
引用符内のシェル変数の強調表示
vimでは、次のドキュメントにより、$PWD2行目と3行目が2つの異なる方法で色付けされます。 #/bin/sh echo "Current Directory: $PWD" echo 'Current Directory: $PWD' の最初のインスタンスは$PWD、それが含まれる文字列の残りの部分とは異なる色になります。これにより、変数がリテラルテキストとして扱われるのではなく、展開されることを明確に視覚的に示します。対照的に、の2番目のインスタンスは$PWD、文字列の残りの部分と同じ色になります。これは、単一引用符によって文字列として扱われるためです。 このタイプの「シェル引用符認識」を提供する既存のemacsモードはありますか?
13 font-lock  bash 


3
pareditモードでフォームを上下に移動する
私は筆記体の構造編集(IntellijとCursiveのパーエディットのようなモード)を使用しており、フォームアップ(およびダウン)移動と呼ばれる素敵なコマンドを見つけました。 フォームを上に移動する|と、これが実行されます(ポイントです)。 (+ 1 |(+ 2 3) 4) => (+ (+ 2 3) 1 4) フォームを下に移動することも同様です。 (+ 1 |(+ 2 3) 4) => (+ 1 4 (+ 2 3)) Emacs paredit-modeでこれを行うことは可能ですか?基本的な編集セットには含まれていないと思います(少なくともこのチートシートには記載されていません
13 editing  paredit 

1
会社にヤスニペット名の候補を表示する
パッケージの会社モードとYasnippetを使用します。バッファーに入力しているときに、Companyからオートコンプリートの提案を受け取ります。 Yasnippetには、スニペットを含むディレクトリがあります。そのディレクトリには、たとえばファイルがありますfoo.yasnippet。 fooバッファーに入力してを押すとTab、ヤスニペットのポップアップメニューが表示され、挿入するスニペット(fooまたはfoo-bar)を選択できます。foo会社の完成にyasnippetを統合したいと思います。を入力するとfoo、Company completionポップアップにスニペットが表示されます。 これは可能ですか?もしそうなら、どうすればこれを達成できますか?Vimでは、NeocompleteとVimSnippetsでそれを実現しています。グーグルで検索したところ、Elispとのこのリンクを見つけましたが、それを適用する方法に頭を悩ますことができませんでした。 助言がありますか?

1
すでにemacsを開いているときに、emacs内でcrontabを直接編集する方法は?
私はEDITOR変数を設定し、emacsでcrontabを編集できることを知っていますが、それはシェルからプロセスを開始する必要があります $ crontab -e 私の質問は、すでにemacsの内部にいる場合、crontabを直接変更するにはどうすればよいですか?私はそこからeshellを起動してcrontab -eを実行しようとしましたが、端末は文句を言います: $ crontab -e emacs: Terminal type "dumb" is not powerful enough to run Emacs. It lacks the ability to position the cursor. If that is not the actual type of terminal you have, use the Bourne shell command `TERM=... export TERM' (C-shell: `setenv TERM …
13 editing 

3
「y」と入力せずにすぐにediffを終了する方法
ediffを終了qすると、本当に終了するかどうかを尋ねられます。すぐにやめたいです。カスタマイズには明らかなものはありません。ここにはqキーを再定義することで機能するように見える解決策がありますが、関数がどのように機能するかの詳細はわかりません。本当にやめることをやめるためにやめる最も簡単な方法は何ですか?
13 ediff 

2
ブラケット[または]を含むリンクを組織モードで作成できますか?
括弧([および])をエスケープして、それらをOrgモードリンクの説明に含めることができる方法はありますか?たとえば、次のリンクは機能しません。 [[http://mathoverflow.net/questions/195203/automorphisms-of-ideals-of-mathbbct][Automorphisms of ideals of C[t]]] バックスラッシュ(\[)を使用することで、または組織が存在することを期待していましたが、そうではないようです。
13 org-mode 

4
モードラインのみで新しいフレームを作成する
モードラインのみを含む新しいフレームを作成したい。特にファイルバッファではありません。 なぜこれが必要なのですか?組織モードのクロッキングを使用して作業時間を計ります。組織モードでは、現在作業中のタスクのタイマーがモードラインに表示され、タイマーがリアルタイムで更新されます。私はEmacs以外のアプリを使用しているので、それらに切り替えるとき(たとえば、ブラウザーまたは端末を使用するとき)、実行中のタイマーを確認できるようにします。私は新しいフレームを作成できると思っていましたが、モードラインでタイマーをクリックすると、.orgファイルが新しいフレームで開きます(すでにモードラインのみを表示するようにサイズ変更されています)最初のフレームで。 モードラインの外観(青いバー)は次のとおりです。これが新しいフレームに必要なすべてです。 (最終的には、新しいフレームを常に手前に表示する方法を理解する必要がありますが、それはこの質問の範囲外です) 関連する場合はOS Xを使用します。
13 mode-line  osx 

2
ウィンドウをフレームに「ポップ」する
多くの場合、現在のフレームにすべてのウィンドウに十分な不動産がないと任意に決定するまで、ウィンドウは自動的に分割されます。これが発生したら、手動でウィンドウを削除し、フレームを作成して、その削除されたウィンドウに切り替えます。これを行うelisp関数を作成するにはどうすればよいですか? 私は試した: (defun pop-window-into-frame () (interactive) (delete-window) (make-frame-command) (switch-to-prev-buffer)) しかし、何らかの理由で、これは私が考えるはずのことをしません。
13 window  frames 

7
インターネット接続を確認するためのElispコード
Emacsを開くと、initファイルが評価されます。これには、インターネット接続を介したパッケージアーカイブの更新が含まれます。これは、インターネットに接続していないときに問題になるため、インターネットに接続せずにEmacsを起動するときにそのコードの実行を防止する必要があります。この問題を解決するために、インターネットに接続していないときにEmacsがパッケージの更新コードを無視する方法があるのだろうか? ここに私の最初の数行がありますinit.el: ;; Requisites: Emacs >= 24 (require 'package) (package-initialize) ;; PACKAGE MANAGEMENT (add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t) (package-refresh-contents) 次のようにEmacsファイルをロードするコードを追加できると思います。 ;; Requisites: Emacs >= 24 (when (connected-to-internet-p) ; I need this predicate function (require 'package) (package-initialize) (add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t) (package-refresh-contents)) (connected-to-internet)この問題を解決する機能、または同様のアプローチはありますか?
13 elisp  networking 

1
柔軟な組織のTODO依存関係?
OmniFocusの機能をorg-mode実行したいと思います。順次リストの一番下のタスクが完了すると、リストの次のタスクがアジェンダに表示されます。この問題にどのように取り組むかについての考えはありますか? 私は本質的に、いくつかのアジェンダで葉と葉だけが見える木を書きたいです。 私は次のようなことを試して喜んでだろう * PENDING buy milk ** PENDING go to store *** PENDING get in car **** TODO find car keys **** TODO put on pants どこに「車に乗る」から自動的に行くPENDINGにTODOマークされている「パンツの上に置く」「車のキーを見つける」とするときDONE、いくつかの議題に。ただし、理想的には、すべて同じレベルのアイテムの特別なリストを作成し、一番下のマークを付けTODOます。


2
組織モードのファイルサイズの実際的な制限は?
私はorg-modeファイルを持っています。このファイルは約6,000行で、トップレベルの見出しが100ほどあります。ロードまたは保存に約1分かかり始め、ときどきemacsを雑草に送信し、強制終了する必要があります。 これは、組織モードで実際に処理するには大きすぎるファイルだと思いますか?大きなファイルの使用経験はありますか?同じような遅延が発生しますか?または、私がインストールした他のすべてのemacsパッケージのように、他の場所で速度低下の原因を調べる必要がありますか?たぶん、私は一般的にあまりにも多くのemacsを求めているのかもしれません。 これは、Mac OS X Mavericksのhomebrew emacs 24.4での問題です。

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