Как открыть каталог в Guake из Nautilus

12

В Nautilus у меня при щелчке правой кнопкой мыши по каталогу есть возможность открыть Терминал с приглашением в выбранной директории. Я думаю, что это очень удобно, и я часто им пользуюсь.

Теперь я хотел бы использовать Guake вместо классического терминала. Есть ли способ сделать это?

Я борюсь с действиями наутилуса. Я могу открыть Guake полностью (т.е. он падает сверху вниз, поскольку он постоянно загружен), но приглашение не находится в выбранном каталоге. Кроме того, это еще один щелчок мышью, чтобы открыть терминал (если он будет работать), я бы предпочел более короткий путь.

Кто-нибудь есть идеи, как справиться с этим? (или это может быть возможным запросом функции?)

Ubuntu 12.04, гномик-классик без единства

Tinellus
источник
1
Если кто интересно , как OP имеет возможность открыть терминал из Nautilus, вы можете просто сделать: sudo apt-get install nautilus-open-terminal. Для Guake, вы должны будете следовать ответу, хотя.
Гаррет

Ответы:

19

Итак, я нашел сценарий оболочки, который будет работать, и изменил его для работы с guake. Чтобы заставить его работать, выполните следующие действия.

  1. Создайте новый пустой документ, щелкните правой кнопкой мыши => Создать новый документ => Пустой документ
  2. Назовите это Open in Guakeили что-то подобное
  3. Откройте его и вставьте код, указанный ниже - Источник 1 (Это необходимо, потому что nautilus возвращает определенный путь к файлу и его необходимо переформатировать для работы в терминале.)

    #!/bin/bash
    # From Chris Picton
    # Replaces a Script by Martin Enlund
    # Modified to work with spaces in path by Christophe Combelles
    # Modified to use guake by Matthew Jump
    
    # This script either opens in the current directory,
    # or in the selected directory
    
    base="`echo $NAUTILUS_SCRIPT_CURRENT_URI | cut -d'/' -f3- | sed 's/%20/ /g'`"
    if [ -z "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" ]; then
     dir="$base"
    else
         while [ ! -z "$1" -a ! -d "$base/$1" ]; do shift; done
         dir="$base/$1"
    fi
    
    #there should be an embracing around the $dir
    guake --show --execute-command="cd '$dir'"

    Обратите внимание, что последняя команда - это то, что используется для открытия каталога в guake, для --showпереключения внешнего вида guake и --execute-command="cd $dir"перехода к каталогу. запустить man guake(в терминале) для получения полного списка команд (обратите внимание, что это усложняется смешиванием команд).

  4. Сохраните файл и затем поместите его в:

    Для 12.04: ~/.gnome2/nautilus-scripts
    для 14.04: ~/.local/share/nautilus/scripts/

    Какие скрытые папки находятся в вашей домашней папке, для просмотра скрытых папок перейдите на => Вид => Показать скрытые файлы

  5. Теперь нам нужно сделать исполняемый файл, щелкните правой кнопкой мыши по файлу, перейдите в> Свойства> щелкните вкладку Разрешения> найдите «Выполнить» и установите флажок «Разрешить выполнение файла как программы», затем закройте.

Далее нам просто нужно попробовать скрипт, щелкнуть правой кнопкой мыши папку в Nautilus, а затем перейти к => Scripts => Открыть в Guake

Теперь у вас есть собственный скрипт «Open in Guake», который вы щелкаете правой кнопкой мыши.


Откройте в новой вкладке Guake и переименуйте вкладку в качестве пути:
я внес некоторые изменения в скрипт, чтобы открыть новую вкладку в Guake и переименовать вкладку после каталога. Поэтому, если вы хотите использовать эти изменения, просто замените последнюю строку кода на эту

guake -n "$dir" -r "$dir" -t

-n "$dir"создает новую вкладку с каталогом в качестве подсказки, поэтому она быстрее, чем выполнение "CD", как я делал выше. И -rэто переименовать вкладку.

Открыть в новой вкладке с коротким именем для текущего каталога:
теперь он показывает либо имя каталога, в котором вы находитесь, либо выбранный каталог, в зависимости от того, где вы щелкнули правой кнопкой мыши, для файлов и пустое место, имя папки каталога, в котором вы находитесь, для выбрав папку, он отображает имя папки, чтобы использовать просто заменить последнюю строку с этим кодом-

guake -n "$dir" -r "`echo ${dir%/} | rev | cut -d'/' -f1 | rev`" -t

цитаты вокруг $dirменя также исправляют проблему с некоторыми папками, в которых было много пробелов.

Mateo
источник
Пробовал и работает. Мало того, что он открывает выбранный каталог, но если выбран файл, он открывает каталог, в котором находится файл. Это именно то, что мне нужно, большое спасибо +++
Tinellus
Я добавил немного, чтобы создать новую вкладку и переименовать ее
Mateo
Также попробовал тот, и работает. Большое вам спасибо, я обязательно буду использовать это. Еще одно замечание: большинство моих вкладок будут иметь неудобно длинные имена (/ home / Pictures / 2011 / xxx / etc ...). Можно ли сохранить только имя последнего каталога? Тем не менее, щедрость ваша ...
Tinellus
Только что наградил вас за вознаграждение. Спасибо за все ваши усилия ... Только что попробовал: работает элегантно, именно то, что мне нужно. В дополнение к услуге, которую вы мне дали, вы дали мне, самый полный новичок, много понимания кодирования. Спасибо
Тинеллус
4
Для Ubuntu 13.04 я должен был вставить скрипт, /home/$USER/.local/share/nautilus/scripts/мне также пришлось поставить -tновую строку, например:guake -n "$dir" -r "`echo ${dir%/} | rev | cut -d'/' -f1 | rev`" guake -t
thelastshadow
1

Итак, сценарий у меня не сработал, и мне не нравилось проходить через меню сценариев, поэтому я попытался с помощью инструмента настройки nautilus-actions

Я создал команду, использовал "guake" в качестве пути и поместил это в параметры:

-n '%d%f ' -r "%f " --show -e "cd '%f' && ls -l"

Работай хорошо для меня. Ubuntu 17.10.

Anarkopsykotik
источник
Принятый ответ не сработал, но это сработало. Благодарность! Для тех, кто с thunar: редактировать - настраивать пользовательские действия ... и guake -n '%d%f ' -r "%f " --show -e "cd '%f' && ls -1FSshX --file-type"
Alnitak