在 elisp 中获取当前弹丸根路径
Posted
技术标签:
【中文标题】在 elisp 中获取当前弹丸根路径【英文标题】:Get current projectile root path in elisp 【发布时间】:2017-08-18 19:44:47 【问题描述】:有没有办法在elisp中获取当前弹丸根路径。
类似于eproject.
中的命令eproject-root
的东西
谢谢
【问题讨论】:
【参考方案1】:有!该函数称为projectile-project-root
。您可以在我的 virtualenvwrapper.el 项目中看到使用 here 的示例。
【讨论】:
【参考方案2】:没有单一的方法可以做到这一点,因为项目根目录的定义没有内置到 emacs 中。
您可以致电:
ffip-project-root
find-file-in-project 的用户。
projectile-project-root
projectile 的用户。
不依赖第三方包,您可以直接使用vc
(假设项目使用版本控制)。
(defun my-vc-root-path-or-default (filepath &optional default)
"Return the version control directory from FILEPATH or DEFAULT."
(let ((vc-base-path default))
(condition-case err
(let ((vc-backend (ignore-errors (vc-responsible-backend filepath))))
(when vc-backend
(setq vc-base-path (vc-call-backend vc-backend 'root filepath))))
(error (message "Error creating vc-backend root name: %s" err)))
vc-base-path))
【讨论】:
以上是关于在 elisp 中获取当前弹丸根路径的主要内容,如果未能解决你的问题,请参考以下文章