Разве это не намного быстрее, чем Ctrl-T в новый терминал и затем $ cd Desktop? Вы можете, вероятно, даже завершить табуляцию после написания Des
tomph
Ответы:
7
Быстро и легко по совпадению, так как мне нужно было только поменять скрипт, который у меня уже был немного :).
Скрипт предполагает, что у вас есть хотя бы один элемент на рабочем столе.
Как настроить
Создайте, если он еще не существует, каталог ~/.local/share/nautilus/scripts
Скопируйте приведенный ниже скрипт в пустой файл, сохраните его как terminal_here2(без расширения) и сделайте его исполняемым
Выйдите и вернитесь.
Теперь щелкните правой кнопкой мыши по любому файлу на рабочем столе, выберите Scripts-> open_terminal2:
и откроется окно терминала в каталоге рабочего стола (в моем случае «Bureaublad»)
Сценарий:
#!/usr/bin/env python3import subprocessimport osdef replace(path):for c in[("%23","#"),("%5D","]"),("%5E","^"),("file://",""),("%20"," ")]:
path = path.replace(c[0], c[1])return path# get the current path
current = replace(os.getenv("NAUTILUS_SCRIPT_CURRENT_URI"))# raise the found terminal window
os.chdir(os.path.realpath(current))
subprocess.Popen("gnome-terminal")
Вы, вероятно, должны использовать urllib.parse.unquoteвместо ручной замены% -кодированных символов
muru
Спасибо! Нет способа использовать уже существующий пункт контекстного меню «Открыть в терминале»?
Орширо
@orschiro Боюсь, что это жестко закодировано в nautilus. Очевидно, что рабочий стол не классифицируется как «обычное» окно в nautilus, хотя NAUTILUS_SCRIPT_CURRENT_URIпоказывает правильный каталог.
Джейкоб Влейм
Как вы думаете, стоит ли подавать запрос на функцию? Было бы последовательно, чтобы эта функция работала как ожидалось.
Орширо
2
Нет необходимости держать процесс Python запущенным, чтобы дождаться gnome-terminalзавершения и затем завершить себя. Вместо этого вы можете позвонить, os.execlp("gnome-terminal", "gnome-terminal")чтобы заменить процесс Python на gnome-terminal.
Дэвид Фёрстер
8
Решение без скрипта
Откройте Nautiuls в вашей домашней папке.
В вашей домашней папке, щелкните правой кнопкой мыши Desktop, нажмите Make link. Вам будет представлен Link to Desktopфайл.
Разместите ссылку на рабочем столе. Теперь всякий раз, когда вы щелкаете по нему правой кнопкой мыши и выбираете Open in Terminalего, открывается терминал с текущим рабочим каталогом, установленным как рабочий стол.
Ответы:
Быстро и легко по совпадению, так как мне нужно было только поменять скрипт, который у меня уже был немного :).
Скрипт предполагает, что у вас есть хотя бы один элемент на рабочем столе.
Как настроить
~/.local/share/nautilus/scripts
terminal_here2
(без расширения) и сделайте его исполняемымТеперь щелкните правой кнопкой мыши по любому файлу на рабочем столе, выберите Scripts-> open_terminal2:
и откроется окно терминала в каталоге рабочего стола (в моем случае «Bureaublad»)
Сценарий:
источник
urllib.parse.unquote
вместо ручной замены% -кодированных символовNAUTILUS_SCRIPT_CURRENT_URI
показывает правильный каталог.gnome-terminal
завершения и затем завершить себя. Вместо этого вы можете позвонить,os.execlp("gnome-terminal", "gnome-terminal")
чтобы заменить процесс Python наgnome-terminal
.Решение без скрипта
Desktop
, нажмитеMake link
. Вам будет представленLink to Desktop
файл.Open in Terminal
его, открывается терминал с текущим рабочим каталогом, установленным как рабочий стол.источник