ToDo-софт на Линуксе и Geany

Dec 04, 2020 00:31

Меня давно занимала эта проблема, составить списочек дел и вычеркивать по мере выполнения. Что может быть проще? А фиг-то там. На Линуксе такого нет. Есть какие-то страшные черные пещерно-командные линейно-терминальные кирпично-убогие программы или наоборот хитро-заумные облако-хранимые репозиторий-недоступные китайце-разработанные спамер-привлекательные хер знает что, но чтоб всё ЦРУ знало, чем я занимаюсь. Идите вы в жопу.

Я просто взял мой Geany и на Debian 9 нарисовал простой файл todo.sh.




Вот такая болванка в стиле sh.


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




Выполненные задания в закрытом положении.
Зеленая дата для выполненного задания уже поставлена, но линии еще не отсортированы.

Линии сортируются отдельным скриптом todo_sort.sh с содержимым

#!/bin/bash
sed '/^$/d' | sort

Или вот мой более элегантный сортировальный скрипт, который я написал сам на Питоне 2.7:

#!/usr/bin/python2.7

import fileinput, re

a=''
b=''
top=[]
bottom=[]

for line in fileinput.input():
line=line.strip()

if len(a)==0:
if line.find('{') == 0:
a=line
line=''

if len(b)==0:
if len(line) - line.rfind('}') == 1:
b=line
line=''

x = re.search("^[0-9]{4}-", line)

if x != None:
top.append(line)

else:
if len(line)>0:
bottom.append(line)

top.sort()
bottom.sort()
print a

for x in top:
print x

print b

for x in bottom:
print x

Скрипт помешается в меню Edit > Format > Send Selection to > Set Custom Command




и запускается клавишной комбинацией Ctrl-1.




Формат даты меняются в меню Edit > Insert Date > Set Custom Date Format. Я поставил %Y-%m-%d %H:%M. Он так лучше сортируется в алфавитном порядке, а дата в текст вставляется комбинацией Shift-Alt-D.




Еще можно ставить маркеры, но они после сортировки исчезают.




Маркеры и кнопка «Открыть/Закрыть» запоминаются после сохранения и переоткрытия файла. Но для этого надо поставить плагины Auto-close и Numbered Bookmarks:




sudo apt-get install geany-plugin-autoclose geany-plugin-numberedbookmarks

Еще у меня на Geany есть проверка орфографии, как русской, так и английской. Куда уж без нее?




sudo apt-get install aspell aspell-en aspell-ru
sudo apt-get install geany-plugin-spellcheck

А запускается мой ToDo лончером с рабочего стола.




todo.desktop

[Desktop Entry]
Type=Application
Icon=/opt/img/todo.png
Name[en_US]=ToDo
Exec=geany /home/alex/todo.sh

Previous post Next post
Up