я нахожусь в среде разработки на основе linux, где у меня нет прав суперпользователя.
моя основная проблема в том, что точки останова, которые я устанавливаю в emacs через pdb, никогда не работают. Отладчик никогда не останавливается в этих точках останова.
после изучения этой проблемы, я подозреваю, что это потому, что путь точки останова не соответствует истинному пути к файлу.
во-первых, путь, который я вижу из командной строки идет как это:
/home/me/a/b
но администраторы настроили его так, что /home / me на самом деле является символической ссылкой на скрытое монтирование
/.hidden/x/me/a/b
когда я запускаю emacs из /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?