В ходе очередного сеанса ревизии содержания своего жёсткого диска было найдено интересное решение, текст которое сначала был отложен на потом, а затем про него было успешно "забыто". По прошествии времени уже и не вспомню, на каких просторах сети оно было найдено, вследствие чего не в состоянии указать первоисточник.
Сначала проведу маленькую демонстрацию.
Открываю текст (в рассматриваемом случае это файл pdf, но это может быть страница в браузере, файл Word и т.п.) и выделяю текст, который необходимо сохранить в файл.
Нажимаю на кнопку запуска, которая указывает на скрипт sh.
Перехожу в папку с сохранённым файлом и вижу, что скрипт отработал.
Правда здорово? Ну а теперь, собственно, и сам скрипт:
#!/bin/sh
out="/tmp/notes.$$"
dir="$HOME/Dropbox/Notes" # папка, в которую будут сохранятся заметки
xclip -o | zenity --width=600 --height=300 --title "Текст заметки" --text-info --editable > "$out"
if [ $? -eq 0 -a "`cat "$out"`" != "" ]; then
name=$(zenity --title "Название заметки" --entry --text "Введите название заметки")
if [ $? -eq 0 ]; then
if [ "`echo $name`" = "" ]
then name="Заметка $$"
fi
cp "$out" "$dir/$name.txt"
fi
fi
rm "$out"
exit 0
Примечание. Если скрипт должным образом не срабатывает, то, возможно, в системе отсутствует пакет xclip. Установите его командой sudo apt install -y xclip
В свойствах значка запуска галочка в поле "Запускать в терминале" снята.
Кроме кнопок (значков) запуска можно использовать такой инструмент как autokey. Пользуюсь им в течение 7 или 8 лет и за это время мной оценено удобство назначения горячих клавиш на разные специфические операции. В Ubuntu и Linux Mint его можно установить одной командой
sudo apt install -y autokey-gtk
В поле текст скрипта указать путь к скрипту, например:
import subprocess
subprocess.Popen(["/home/cemea/Tools/scripts/notes.sh"])
Комментариев нет:
Отправить комментарий