每当我必须编辑C代码时,我使用ff-find-other-file在头文件和实现文件之间来回切换.我可以将它用于Python文件在实现和测试之间来回切换吗?例如,如果我在foo.py中,我希望能够切换到foo_test.py.
最佳答案
你实际上想要设置ff-other-file-alist(也可能还有ff-search-directories).这些变量自动缓冲本地,因此您可以在模式挂钩中安全地设置它们.
cc-other-file-alist是C/C++文件的预配置映射,它只是ff-other-file-alist的默认值.
要处理从测试返回到实现的反向映射,您将添加第二个条目,因此alist将如下所示:
'(("_test\\.py$" (".py"))
("\\.py$" ("_test.py")))
在这种情况下,反向映射需要先行,因为规则按顺序处理,.py匹配两个文件名.如果他们是相反的方式你仍然会从foo_test.py到foo_test_test.py,依此类推……
有关更多信息和示例,请参阅此相关问题:
If I open doc.foo file,I want emacs to look for and open doc.bar file in the same folder
对于您的情况,您可以使用:
(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")))))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。