История изменений
Исправление
gh0stwizard,
(текущая версия)
:
но с расширенным описанием, описанием того, зачем нужны были те или иные файлы проекта, книги и т.д.
Чей-то у тебя запросы растут :)
Ну вот выше предложили Tracker и у него только два представления иерархии файлов: файловое дерево или таги (что по сути тоже самое дерево).
Суммируя, тебе нужно отдельно бэкапить и отдельно хранить мета-данные по файлам. Две разные задачи. Я бы написал свой «трекер» в таком случае, но придется работать с файлами только в нем, т.к. тебе нужна поддержка всех трех ОС.
Бэкенд по работе с файлами (тебе придется их перемещать, переименовывать, удалять и т.д.) я бы написал в виде сишной либы, т.к. там проще всего сделать разграничение по API для каждой ОС через ifdef. Она получится маленькой, т.к. по сути дублирует библиотечные вызовы.
Фронтенд я бы написал на чем-то простом и портабельном, может быть tcl/tk. Может Qt5 и его новомодный js-подобный сахарок. Далее, линкуем фронтенд с библиотекой и вауля у нас все круто и легко :)
P.S. Еще можно рассмотреть дизайн всяких VFS. Может есть что-то готовое.
Исходная версия
gh0stwizard,
:
но с расширенным описанием, описанием того, зачем нужны были те или иные файлы проекта, книги и т.д.
Чей-то у тебя запросы растут :)
Ну вот выше предложили Tracker и у него только два представления иерархии файлов: файловое дерево или таги (что по сути тоже самое дерево).
Суммируя, тебе нужно отдельно бэкапить и отдельно хранить мета-данные по файлам. Две разные задачи. Я бы написал свой «трекер» в таком случае, но придется работать с файлами только в нем, т.к. тебе нужна поддержка всех трех ОС.
Бэкенд по работе с файлами (тебе придется их перемещать, переименовывать, удалять и т.д.) я бы написал в виде сишной либы, т.к. там проще всего сделать разграничение по API для каждой ОС через ifdef. Она получится маленькой, т.к. по сути дублирует библиотечные вызовы.
Фронтенд я бы написал на чем-то простом и портабельном, может быть tcl/tk. Может Qt5 и его новомодный js-подобный сахарок. Далее, линкуем фронтенд с библиотекой и вауля у нас все круто и легко :)