Release early, release often!
В продолжение тем Time Card и Консольный тайм-трекер хочу представить общественности свой собственный велосипед.
Отличается от других велосипедов квадратными колёсами, тем, что время сам считает.
Вобщем, что меня не устраивало в других подобных программах, так то, что надо в ручную заводить, что когда делать начал и не забывать потом ещё всё это вовремя терминировать. А я человек очень ленивый и забывчивый. Поэтому сдружиться с такими программами я не смог.
Так родилась идея всё это дело автоматизировать. Т.е. программа сама следит за тем, какие окна активны и записывает время проведённое в том или ином приложении. К концу рабочего дня можно разобрать на что же было потрачено время и записать уже всё это по-хорошему в систему учёта времени или ещё куда.
Когда срабатывает скринсейвер счёт прекращается. Неактивные таски забываются после 8-и часов (плюс-минус рабочий день).
Всё это дело бежит просто на заднем фоне и предоставляет (пока ещё рудиментарные) результаты на http://localhost:8001/ Записи дампятся каждую минуту на диск, т.ч. рестартов тоже не боится.
Работает с EWMH компатибельными WM. (Для xmonad нужна особая магия, которую я не осилил.) UPD: внизу по треду есть решение.
Т.ч. приглашаю, кому не лень, потестить мой быдлокод и поделиться идеями и предложениями. А так же поругать и поучить. Надеюсь мой маленький проект окажется не безинтересным.
Установка: go get github.com/dim13/gone
ref: https://github.com/dim13/gone
UPD: в планах добавть ещё какую-нибудь fuzzy logic для группировки окон по названиям.