6

C ++コードを編集する必要があるときはいつでもff-find-other-file、ヘッダーファイルと実装ファイルを切り替えるために使用します。Pythonファイルで実装とテストを切り替えるために使用できますか?たとえば、にいる場合はfoo.py、に切り替えられるようにしたいと思いfoo_test.pyます。

4

2 に答える 2

4

あなたは実際に設定したいff-other-file-alist(そしておそらくもff-search-directories)。これらの変数は自動的にバッファー ローカルであるため、モード フックで安全に設定できます。

cc-other-file-alistは、C/C++ ファイルの構成済みマッピングであり、 のデフォルト値にすぎませんff-other-file-alist

テストから実装へのリバース マッピングを処理するには、2 番目のエントリを追加します。したがって、連想リストは次のようになります。

'(("_test\\.py$" (".py"))
  ("\\.py$" ("_test.py")))

この場合、ルールは順番に処理され、.py両方のファイル名に一致するため、リバース マッピングを最初に実行する必要があります。それらが逆の場合でも、 からfoo_test.pyfoo_test_test.py、など...

詳細と例については、この関連する質問を参照してください。

doc.foo ファイルを開くと、emacs が同じフォルダー内の doc.bar ファイルを探して開くようにしたい

あなたの場合、次を使用できます。

(add-hook 'python-mode-hook 'my-python-mode-hook)

(defun my-python-mode-hook ()
  "My python customisations."
  (setq ff-search-directories '(".")
        ff-other-file-alist '(("_test\\.py$" (".py"))
                              ("\\.py$" ("_test.py")))))
于 2012-06-09T06:52:19.850 に答える
1

cc-other-file-alistを設定する.emacsルールを作成する必要があります。例:

(setq cc-other-file-alist
  `(("\\.py$" ("_test.py"))))
于 2012-05-03T20:01:03.847 に答える