пятница, 2 марта 2018 г.

Календарь в XFCE

Один из моих "собратьев по Linux" подвергал меня критике по поводу того, что у меня в системе нет даты. На что неизменно получал ответ: "Зачем мне дата? Мне и без даты ... хорошо".

Хотя дата, конечно, в XFCE присутствует, просто с настройками по умолчанию не отображается. Для того, чтобы посмотреть текущую дату необходимо подвести курсор мыши к часам, а для отображения календаря на текущий месяц с подсветкой даты щёлкнуть по часам. Для отключения календаря необходимо снова щёлкнуть по часам.



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

В текстовом редакторе внести строки:

#!/bin/sh
ncal
sleep 7; exit

Сохранить полученное как файл с расширением sh, например, calendar.sh  В свойствах файла найте и поставьте галочку в поле "Разрешить выполнение этого файла как программы" (Свойства – Права). Создать кнопку запуска (значок запуска) данного скрипта sh, указав в его свойствах параметр "Запускать в терминале". Проверить работу кнопки запуска. Должно получиться:


Если в тексте скрипта указать не ncal, а cal, то вывод текущего месяца будет таким, как принято в странах Западной Европы. Т.е. первым днём недели будет являться не понедельник, а воскресенье.


Аналогичным образом можно осуществить вывод текущего месяца, предыдущего и последующего. В этом случае вместо команды ncal необходимо указать команду ncal -3, а чтобы "рассмотреть" полученный вывод сделать автозакрытие окна не через 7 секунд, а, например, через 40. Тогда полный текст скрипта примет вид:

#!/bin/sh
ncal -3
sleep 40; exit


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

Экспериментально было установлено, что в моём случае эти значения составляют 80х30. В этом случае содержание скрипта sh будет следующим:

#!/bin/sh
xfce4-terminal --geometry=80x30 --hold -e "ncal -y"
exit

При создании кнопки запуска в свойствах не ставить галочку в параметре "Запускать в терминале", так как команда запуска терминала уже присутствует в тексте скрипта (xfce4-terminal). Завершение работы скрипта произойдёт после закрытия окна терминала вручную.

В результате у меня получилось:



Комментариев нет:

Отправить комментарий