You can force emacs to always open files using absolute real names:
(setq find-file-visit-truename t)
Я нахожусь в среде разработки на основе Linux, где у меня нет прав суперпользователя.
Моя основная проблема в том, что точки останова, которые я установил в emacs через pdb, никогда не работают. Отладчик никогда не останавливается на этих точках останова.
После изучения этой проблемы, я подозреваю, что это потому, что путь точки останова не совпадает с истинным путем файла.
Во-первых, путь, который я вижу из командной строки, выглядит следующим образом:
/home/me/a/b
Но администраторы настроили его так, что / home / me на самом деле является символической ссылкой на скрытое монтирование
/.hidden/x/me/a/b
Когда я запускаю emacs from /home/me/a/b
и пытаюсь отлаживать test.py
в этом каталоге, выдавая M-x pdb
и затем pdb test.py
, заголовок в gud
буфере утверждает, что полный путь к файлу
/.hidden/x/me/a/b/test.py
Затем, когда я пытаюсь установить точку останова в файле python с M-x space
помощью подсказки, которую я вижу в gud
буфере,
Breakpoint X at /home/me/a/b/test.py:Y
Таким образом, точка останова находится под, /home/me/a/b/test.py
но путь к файлу в заголовке gud
буфера есть /.hidden/x/me/a/b/test.py
. И отладчик никогда не останавливается на точке останова, что очень раздражает.
Я получаю подтверждение моих подозрений, когда я явно cd
в, /.hidden/x/me/a/b/
а затем запустить Emacs. Затем я могу установить точки останова, и отладчик останавливается на них.
В настоящее время мое решение состоит в том, чтобы явно cd
указать правильный путь и запустить emacs.
Но есть ли лучшие решения? Будь то через emacs, bash или python?
You can force emacs to always open files using absolute real names:
(setq find-file-visit-truename t)