Терминал: открыть путь с помощью среднего щелчка / контекстного меню?

Я трачу много времени на копирование путей, выводимых grep, и вставку их после команды, открывающей визуальный редактор.

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

Возможно, это функция какого-то терминала, которого я не знаю?

3
задан 15 April 2015 в 13:23

2 ответа

Создайте сценарий:

nano ~/<your_script_folder>/open_selection

Включают следующий код:

#!/bin/bash
selected_text=$(xclip -o)
if [[ "$selected_text" == ~* ]]; then
    file_name=$(readlink -f ${selected_text/\~/$HOME})
else
    file_name="$selected_text"
fi

notify-send "Open selection" "$file_name"
xdg-open "$file_name"

*You может заменить xdg-open другой командой по Вашему выбору для открытия выбора с этой программой.

Делают исполняемый файл сценария

chmod +x ~/<your_script_folder>/open_selection

, Создают ярлык для этого сценария.

Затем только выбирают имя файла в Вашем терминале и используют Ваш ярлык. Обход через буфер обмена не требуется.

2
ответ дан 15 April 2015 в 23:23

Что Вы могли сделать, поскольку альтернатива должна проанализировать вывод grep как аргумент Вашему предпочтительному текстовому редактору. Например

COMMAND | grep -i filename | xargs nano

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

Некоторое время назад я ответил - , вводят описание ссылки здесь , который попросил "открываться в терминале". Обходное решение, которое я использовал, должно связать ярлык на сценарий. Вы могли сделать, что-то подобное - связывает ярлык на простой рев сценария:

#!/bin/bash

FILENAME=$(zenity --entry --text="Enter path to file")

if [ $? -eq 0 ] 
   nano $FILENAME
fi

Это в основном должно поднять всплывающее окно, просящее путь к файлу. Путь может быть скопирован с командной строки с Ctrl Сдвиг C , или можно загрузить xclip и передать вывод по каналу в xclip -sel clip (который поместит текстовый путь к буферу обмена)

1
ответ дан 15 April 2015 в 23:23

Другие вопросы по тегам:

Похожие вопросы: