dir-locals.elで相対パス
emacscf: StackExchange
((nil . ((eval . (set (make-local-variable 'my-project-path)
(file-name-directory
(let ((d (dir-locals-find-file ".")))
(if (stringp d) d (car d))))))
(cmake-ide-project-dir . my-project-path)
(eval . (setq cmake-ide-build-dir (concat my-project-path "build")))
)))
上のように書くと、my-project-path
に、.dir-locals.el
のあるディレクトリのパスが入る。
- make-local-variableで、シンボルをローカル変数にできる
- evalで、cdrを評価できる
という感じなのかね。