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