新しい/隣接ウィンドウでEmacsのクリック可能なテキストを開く

新しい/隣接ウィンドウでEmacsのクリック可能なテキストを開く

現在私はスキーマ(正確に言えばmagit)を持っていますクリック可能なテキストバッファをファイルに切り替えます。しかし、時には新しいウィンドウや隣接するウィンドウで開くことを好むときもあります。可能ですか?

PS。ウィンドウとは、EmacsフレームではなくEmacsウィンドウを意味します。

答え1

magit-statusバッファでは次のことができます。通常これを達成することによってC-u RET
同じ通常info-modeとのアクティブリンクに適用されますhelp-mode

しかし、Emacsにはこれを行う普遍的な方法はありません。 〜のようにリンクした文書クリック可能なテキストの操作に応答する方法を基本モードで独自に決定することを説明します。
処方箋は次のとおりです。

リンクの実装には 3 つの個別のステップが含まれます。 (1) マウスがリンク上を移動したときのクリック可能性を表示します。 (2)リンクでMouse-2にいくつかのタスクを実行させる。 (3) リンクが次のようにリンク条件を設定します。マウス1をクリックしてリンクをたどります。

ただし、これは必須プロトコルではありません。

  • 完全な実装の必要性を示すものはありません。
  • また、起動時に必ずアクセスバッファに応答する必要はありません。
  • また、特定のバッファ内のすべてのリンクを同じ方法で処理する必要はありません。
  • したがって、上記の「通常」です。

いくつかの例では、動作の違いを簡単に観察できます。

  • magit-statusバッファはマウスクリックにまったく反応せず、「キーボードクリックRET」にのみ反応します。
  • info-mode「キーボードクリック」に対してのみ「新しいウィンドウで開く」動作を提供し、マウスクリックには提供しません。
  • magit-statusこの動作はファイルにアクセスするときにのみ提供され、コミットに「アクセス」するときは提供されません。また、コミットを「アクセス」(キーボードクリック)すると、まず確認してから表示する副作用もあります。
  • describe-functionバッファ内のソースファイルへのリンクは、常に他のオプションなしで新しいフレームを開きます。
  • バッファ内のdescribe-function他の関数へのリンクは常に現在のバッファの新しい内容をロードするため、代替手段はありません。
  • magit履歴バッファとバッファのdescribe-function[転送]help-modeボタンは[back]' and常に現在のバッファを更新します。
  • バッファ内のdescribe-mode「マイナーモードを有効にする」相互参照へのリンクは、現在のウィンドウを下にスクロールするだけです。
  • dired-modeバッファはアクティブリンクを強調表示しません。

これらすべての実装の詳細は非常に複雑かもしれませんが、実際の魔法が関係していないことを説明するために方法を比較してください。info-mode マウスクリックとキーボードクリックを異なる方法で処理(比較defun Info-mouse-follow-nearest-node (click)してdefun Info-follow-nearest-node (&optional fork)

答え2

編集する:解決策はインストールすることです。組織マージンパック。その後、OrgModeで次のコマンドを使用してリンクを新しいウィンドウで開くことができます。

Ctrl-u Ctrl-c Ctrl-o

新しいウィンドウでファイルとバッファを開くには:

次のコマンドを使用して、新しいウィンドウでバッファを開くことができます。

Ctrl-x 4 b

次のコマンドを使用して、新しいウィンドウでファイルを開くこともできます。

Ctrl-x 4 f

関連情報