Иногда возникает необходимость быстро просмотреть начало книги. К тому же, неплохо иметь в своём арсенале ещё одну читалку, особенно когда читаешь несколько книг "одновременно" (то есть периодически переключаясь с книги на книгу) в разных читалках (например, fbreader, foliate, coolreader), и "терять" в одной из читалок возможность при запуске определённой читалки ставиться на последнее прочитанное место не хочется.
Консольную читалку, то есть запускаемую в окне терминала можно установить командой sudo apt install fbless
Сразу оговорюсь, что файла настроек и кэша, как описано здесь и здесь, на своей системе Linux Mint 21.2 найдено не было. Тем не менее, читалка была признана рабочей.
Однако использование команды fbless путь_к_книге навевало определённую тоску 😟
В результате было принято решение попробовать открыть файл с помощью fbless через правое контекстное меню файлового менеджера Cinnamon.
Открыть книгу fb2
В папке ~/.local/share/nemo/actions (~ означает папки своего профиля) создайте файл fbless.nemo_action и в его свойствах (секция "Права") установите галочку в поле "Выполнение" – Разрешить исполнять как программу. Содержание файла:
[Nemo Action]
Active=true
Name=fbless
Comment=Открыть файл в fbless
Exec=sh -c 'fbless %F; exec bash'
Icon-Name=FBReader
Selection=s
Extensions=fb2;
Mimetypes=text/plain;
Quote=double
Terminal=true
Icon-Name=FBReader соответствует значку раскрытой книги голубого цвета.
Теперь при выделении книги fb2 и вызове правого контекстного меню мыши можно вызвать пункт fbless (его название указывается в строке Name=, поэтому можно указать своё), после чего выбранная книга будет открыта в терминальной читалке fbless.
Вторым вариантом команды в строке Exec может являться просто fbless %F
Открыть книгу fb2 и перейти на место чтения в %, которое вы запомнили с прошлого сеанса чтения
По аналогии с предыдущим пунктом в папке ~/.local/share/nemo/actions (~ означает папки своего профиля) создайте файл fbless-proc.nemo_action и в его свойствах (секция "Права") установите галочку в поле "Выполнение" – Разрешить исполнять как программу. Содержание файла:
[Nemo Action]
Active=true
Name=fbless proc
Comment=Открыть файл в fbless в месте %
Exec=sh -c 'fbless %F -g $(/home/minter/Tools/scripts/modules/fbless-proc.sh && cat /tmp/proc.txt); exec bash'
Icon-Name=fbreader
Selection=s
Extensions=fb2;
Mimetypes=text/plain;
Quote=double
Terminal=true
Icon-Name=fbreader соответствует значку раскрытой книги фиолетового цвета.
#!/bin/bash
zenity --width=180 --height=50 --question --text="Перейти на место,\nобозначенное % ?$task" --timeout 5
answer=$?
if [ "$answer" -eq 0 ]; then
zenity --width=100 --title "Ввод цифры" --entry > /tmp/proc.txt
elif [ "$answer" -eq 1 ]; then
echo '0' > /tmp/proc.txt
elif [ "$answer" -eq 5 ]; then
echo '0' > /tmp/proc.txt
fi
exit
Вводимое в строку запроса значение % записывается в файл /tmp/proc.txt, откуда он потом считывается при выполнении команды правого контекстного меню Nemo. Если в течение 5 секунд не было введено никакой цифры, то в файл автоматически записывается значение 0, соответствующее самому началу книги.
Короткий ролик, демонстрирующий выполнение описанных настроек смотрите здесь.
📌 Примечание. Значение 13% вместо введённых 14% обусловлено небольшим расхождением в несколько строк текста книги. В то же время программа "не понимает" дробных значений, например, 18,6 , поэтому в место, например, 35% может укладываться несколько десятков строк текста.
Похожее решение для Thunar здесь.
Комментариев нет:
Отправить комментарий