Emacs

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

5
プロパティリストに関数をマッピングしますか?
Q:プロパティリスト全体で関数をマップする慣用的な方法は何ですか? さまざまなマッピング関数(mapcarおよびファミリ)は、リストなどのシーケンスに関数をマッピングします。プロパティリストを扱うとき、つまりリストに含まれる各プロパティ(最初の要素から始まる他のすべての要素)をマップしようとするとき、これらの関数をどのように使用しますか?マッピング関数は、個々の要素としてではなく、要素のペアでリストにアクセスする必要があるように思えます。 おもちゃの例として、プロパティリストを取得してすべてのプロパティ値を収集する方法を教えてください。代わりに関連付けリストである場合、それは非常に簡単です。 (mapcar #'cadr '((:prop1 a) (:prop2 b) (:prop3 c))) ;=> (a b c) ループを使用してこれを実行できると確信していますが、少し面倒で、もっと慣用的な方法があるのではないかと思っています。
17 elisp  mapping 

2
TLS接続が不適切に終了しました
実行するpackage-list-packagesと、次のエラーが表示されます。 Failed to download `gnu' archive. gnutls.c: [0] (Emacs) fatal error: The TLS connection was non-properly terminated. WindowsでEmacs 24.4を実行しています。今週まで、パッケージのダウンロードは正常に行われていました。 Emacs-GnuTLS-Windowsのセットアップについてこのガイドを試しました。「動作するかどうかを確認する」セクションからこのコードを実行してみました。 (condition-case e (delete-process (gnutls-negotiate :process (open-network-stream "test" nil "www.google.com" 443) :hostname "www.google.com" :verify-error t)) (error e)) 私は取得しないnil記事によると、成功の兆候であるなし検証エラー、と、バッファに挿入されました。ただし、(setq gnutls-log-level 2)コードを再度設定して実行すると、次の出力が得られます。 gnutls.c: [1] (Emacs) allocating credentials gnutls.c: [2] (Emacs) allocating x509 credentials …

1
Magitでコマンドスイッチにアクセスする方法
ほとんどのmagitコマンドは、サブコマンドとスイッチのメニューをポップアップ表示する単一のキーで呼び出されます。例えば、P番組PおよびtサブコマンドとAS -fと-uのような「スイッチ」。 サブコマンドの文字を押すとそれらが呼び出されますが、スイッチをどのように呼び出すのでしょうか?2つのリモートがあるリポジトリがあり、他のリモートにプッシュしたかった。-uだけのもののようなスイッチに見えますが、I型の場合P -u、-uターンは赤、しかしMagitは、リモートのためのプロンプトは表示されません。 マニュアルでは、これらのスイッチについて、私が知る限りのコマンドについては何も述べていません。 これらのスイッチが一般的にどのように使用されるかを誰かが説明できますか。私はこの特定のスイッチだけでなく、施設全般にも関心があります。
17 magit 

5
組織モードからマークダウンへのエクスポート
ドキュメントに記載されているemacs関数は、私の組織のバージョン7.9.3fには存在しないようです。 http://orgmode.org/manual/Markdown-export.html 私の髪を抜かずに組織モードをマークダウンにエクスポートする方法はありますか?
17 org-mode 

1
評価を中断し、emacs-lispデバッガーで現在のスタックを観察しますか?
メジャーモードフックなどのemacs-lisp関数の実行に予想よりも長い時間がかかっている場合、それを中断して現在のスタックを確認したいことがあります。理想的には、デバッガーで変数値などを見ることもできるようにしたいです。私は意図的にemacs-lispモードで実行しているコードについてではなく、emacsの通常の操作で実行されるコードについて話している。 emacsでemacs-lispコードの実行を直接中断するにはどうすればよいですか?どの関数をデバッグする必要があるかは事前にはわかりません。 たとえば、を入力するとC-g、実行が中断されますが、どの機能が中断されたかについても何もわかりません。
17 elisp  debugging 

5
「forward-word」の単語の先頭で停止する
私はよく、複数の呼び出しとforward-wordそれに続く単一の呼び出しを使用backward-wordして、ポイントを行の単語の先頭に移動します。私forward-wordはvimとは違う方法にw慣れたことはないと思いますし、Emacsを何年も使用した後でも、その違いに慣れることはできません。 forward-word単語を飛び越えず、単語の先頭で停止する代わりに使用できる関数はありますか?繰り返し実行を伴わない、ポイントを前方に移動するときに単語の先頭に移動する他の戦略はありforward-charますか?
17 motion 

2
新しいemacsenのfletの正しい代替品は何ですか?
関数の動作を一時的に変更するために使用するコードがいくつかfletあります。 ;; prevent changing the window (flet ((pop-to-buffer (buffer &rest args) (switch-to-buffer buffer))) (compilation-next-error-function n reset)) ただし、Emacsのバイトコンパイラは警告を表示します。 In ag/next-error-function: ag.el:103:7:Warning: `flet' is an obsolete macro (as of 24.3); use either `cl-flet' or `cl-letf'. ただし、cl-flet動作が異なり、一部のユースケースに適さないため、これはそのようなケースの1つであると考えています。 私が見ることができるオプションは次のとおりです。 Emacsに警告を無視するように伝えます。 私自身を転がしてくださいflet。 nofletまたはdfletを使用します。 最善のアプローチは何ですか?
17 cl-lib 

2
ロードファイルとロードの違い
私は両方の機能のドキュメントを調べましたが、多くの情報を流していないようです。loadload-fileはインタラクティブなリストコンパイルされた関数であるのに対して、Cソースコードの組み込み関数であるという事実を除いて、実際の違いは何ですか。 init.el両方が同じ仕事をしているように見えるので、使用する推奨機能は何ですか?
17 elisp  functions 

3
SCHEDULEDアイテムが組織モードのアジェンダに表示されるのを遅らせることのポイントは何ですか?
議題の締め切り前にデフォルトの日数org-deadline-warning-daysをDEADLINE項目に表示するように設定するか、タイムスタンプなどに追加することにより、ケースバイケースでそれを行うことができます。-3dDEADLINE 今、同じ警告の表記法を使用して-3d上のSCHEDULED項目は逆効果を生じる:アイテムが追加が、日の数のためのアジェンダビューからスキップされません。 組織モードのマニュアルから: If you want to _delay_ the display of this task in the agenda, use `SCHEDULED: <2004-12-25 Sat -2d>': the task is still scheduled on the 25th but will appear two days later. In case the task contains a repeater, the delay is considered to affect all occurrences; …

2
Vimに似たEvilのアンドゥ動作を取得するにはどうすればよいですか?
Evilのデフォルトのアンドゥ動作は、挿入モードに入ってからそれを1つの編集操作として終了するまでの間に行われることをすべて考慮しているため、粒度が粗すぎます。1回の挿入中にテキストの段落全体を入力してから元に戻すを実行すると、段落全体が削除されます。それとは対照的に、Vimは、テキストを入力する以外の方法で挿入モードでカーソルを移動するたびに、新しい取り消しユニットを開始します。 Evilには、よりきめ細かい取り消し履歴を取得するために使用できるカスタマイズ変数があります。 (setq evil-want-fine-undo t) この設定では、Vimと同様に、カーソルが挿入モードで移動すると、Evilは新しい取り消しユニットを開始します。ただし、この設定は、置換操作の処理方法も混乱させます。を使用して単語を置換する場合cw、元の単語を復元するために2回元に戻す必要があります。これはVimと矛盾しており、replaceはアトミックでなければならないため、あまり意味がありません。 質問:Vimの取り消し動作を取得するために、どのように悪と取り消しツリーを構成できますか?

1
LaTeX / AUCTeXアイテム化環境でアイテムをインデントする方法は?
Q:どのようにしてLaTeX itemize環境の「適切な」インデントを取得できauctexますか? ここに私itemがいるitemize環境でありたい場所です: \item 行は環境の先頭から2スペース分インデントされます 項目における継続行はに対してさらに2つのスペースインデントされている\item行を これは私が見たい/期待しているものです: \begin{itemize} \item Here's a really long item in a LaTeX itemize environment; note how the *initial* item line is indented two spaces, and the continuation lines are indented another two spaces. \end{itemize} LaTeX-item-indent変数を使用してアイテムの初期インデントを調整できます。この変数のデフォルトは-2です。このデフォルトでは、私は、望ましくない行動を取得\itemインデントされていないが、私はやる、追加の二つの空間によって相殺されている継続行の所望の動作を得ます: \begin{itemize} \item Here's a really long item in a LaTeX …

4
どのemacsコミュニティが存在しますか?
メーリングリスト、ウィキ、ブログ、ircチャンネル、フォーラム、またはGNU Emacsが主要なトピックである他のコミュニティを説明するコミュニティwikiの回答を維持してください。 リストに掲載されるには、コミュニティが「開かれている」必要があります。つまり、誰でも参加できます。 その規則の例外が作成される可能性があります。判断を下す。例:もちろん、SachaのブログとXahのサイトはこのリストに属します。
17 learning 

2
現在のファイルをわずかに異なる名前で保存します
私のファイルには長いファイル名があり、ファイル名の一部は日付とバージョン番号です。多くの場合、バージョン番号または日付を変更するだけで、ほぼ同じ名前を使用してファイルをバッファーに保存したいと思います。 現在のバッファのファイル名をキルリングに入れるコマンドがあれば、これははるかに簡単です。そのため、ファイルを開き、C-x C-w(ファイルを書き込む)と入力し、Cyで現在の名前をヤンクし、変更して保存しますそれ。 WindowsではEmacs 24.3を、Linuxでは24.4を使用しています。さまざまな理由で、gitではなく異なるファイル名を使用する必要があります。このコマンドがAUCTeX / LaTeXをメジャーモードとして使用できたら幸いです。 編集1: 私はミスを犯した:私はタイプしたくないC-x C-f(=ファイルを見つける)が、C-x C-w(=ファイルを書き込む)。上記を修正しました。 編集2: 重複した質問と回答を見つけました:https : //unix.stackexchange.com/a/45381しかし、これ以上の答えはありません! 編集3: ここ:http ://www.gnu.org/software/emacs/manual/html_node/elisp/File-Name-Components.htmlは関数であり、filnameの「非ディレクトリ」部分を選択します。 機能:ファイル名非ディレクトリファイル名 This function returns the nondirectory part of filename. (file-name-nondirectory "lewis/foo") ⇒ "foo" (file-name-nondirectory "foo") ⇒ "foo" (file-name-nondirectory "lewis/") ⇒ "" Lispしか知らなかったら...
17 files 

3
コードを記述するときに「TODO」アイテムを追跡する
コードを書くときに「やること」項目のリストをその場で簡単に作成する方法はありますか?たとえばwrite-this-now、サポート関数を記述する必要があることに気付いたときに関数を記述しているとしますwrite-this-later。 (defun write-this-now () (unless (write-this-later) ... createに行くのを一時停止する代わりにwrite-this-later、あたかもそれが既に存在しているかのように先に進みます。ただし、後で戻って作成する必要があることに注意してください。 過去に使用した解決策の1つは、単語にコメントを追加することです TODO (defun write-this-now () (unless (write-this-later) nil)) ; TODO create function `write-this-later` これで、後で戻って、単語の出現をファイルで検索できますTODO。自分で残したこの小さなメモを見つけることができます。 ファイルまたはプロジェクト内でTODOアイテムを簡単に作成および追跡できるようにするパッケージまたは拡張機能はありますか? 現在のプロジェクトのすべてのTODOアイテムを1つのTo Doリストに集約できますか?TODOアイテムを作成した場所にリンクするブックマークをTo Doリストに追加できますか?
17 programming  todo 

1
組織モードバッファの最上位の見出しを個別のファイルにエクスポートする方法は?
org-modeバッファの各トップレベルの見出しを、対応するCUSTOM_ID+(サニタイズ)タイトルの値にちなんで命名された個別のファイルにエクスポートするにはどうすればよいですか? バッファに次のものが含まれているとしましょう: * Title of Heading 1 :PROPERTIES: :CUSTOM_ID: fibrillogenesis :END: Suspendisse potenti. Mauris ac felis vel velit tristique imperdiet. ** Sub-Heading Nullam rutrum. * Another Title for Heading 2 :PROPERTIES: :CUSTOM_ID: mitochondrion :END: Mauris mollis tincidunt felis. Sed bibendum. 最終結果は、エクスポート時に選択された形式(HTML、LaTeXなど)で、次のファイル名とコンテンツを含む2つの最上位見出しのそれぞれに1つずつ、2つのファイルを含むディレクトリになります。 最初にエクスポートされた見出しのファイル名: fibrillogenesis-title-of-heading-1.[ext] 元の最初のトップレベルの見出しに対応するエクスポートされたコンテンツ: * Title of Heading 1 :PROPERTIES: …

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