ХОРОШО -
Exec=cd PATH && <application-name> %F
у меня не сработало, поскольку PATH не определен, чтобы указывать путь% F. Единственные переменные, доступные в любом файле рабочего стола приложения:
- % fa одно имя файла.
- % F несколько имен файлов.
- % ua отдельный URL.
- % U несколько URL.
- % da один каталог. Используется вместе с% f для поиска файла.
- % D несколько каталогов. Используется вместе с% F для поиска файлов.
- % na одно имя файла без пути.
- % N несколько имен файлов без путей.
- % ka URI или локальное имя файла расположения файла рабочего стола.
- % v имя записи устройства.
Вот оно:% d - это единственный каталог, который вы ищете, так как нет смысла переходить на несколько каталогов. Перейдите в / usr / share / Applications и отредактируйте файл application-name.desktop (в вашем случае pymol.desktop); Вы должны иметь привилегии суперпользователя, чтобы сделать это. Затем найдите строку, которая начинается с «Exec =». Это, вероятно, читает
Exec=<application-name> %F
(В вашем случае Exec = pymol% F). Измените эту строку на
Exec=cd %d && <application-name> %F
Сохраните этот файл рабочего стола, и в следующий раз, когда вы нажмете на файл .pdb, ваш рабочий каталог должен быть тем, в котором находится этот файл .pdb, так что pymol сможет увидеть все ваши файлы там.
Конечно, вы также можете запустить pymol из командной строки после первого перехода в каталог, где находятся ваши файлы, но я думаю, что вам нужно решение с графическим интерфейсом, поэтому вам нужно немного отредактировать :-)