На работе я отвечаю за поддержание организации множества различных данных в стандартной файловой системе. Отчасти это связано с разумной классификацией (по сходству, необходимости, доступу для чтения / записи и т.д.), Но большая часть фактически документирует это: какие документы / файлы / носители должны идти куда, чего не должно быть в этом каталоге, "для чего-то немного другого, см ../../other-dir "и т. д.
На данный момент я задокументировал это, используя файл readme
с открытым текстом в каждой директории, которую я хочу документировать. Если кто-то не уверен, что должно быть в каком-либо каталоге, он читает этот файл.
Это работает хорошо, но кажется странным, что у меня есть это примитивное пользовательское решение проблемы, с которой должен столкнуться любой разработчик нетривиальной структуры каталогов. Например, каждая известная мне компания имеет какую-то общую файловую систему, где важна согласованная терминология для категоризации. По моему опыту, люди просто должны узнать, что к чему, методом проб и ошибок и экспериментами.
Итак, позвольте мне предложить лучшее решение, и, надеюсь, вы можете сказать мне, если оно существует. Любой каталог в любой файловой системе может иметь скрытый текстовый файл с именем .readme
. Его содержание является описательным человеческим языком. Он использует некоторую разметку, например Markdown, с чуть более жирным, курсивом и (относительными) гиперссылками на другие каталоги. Теперь браузер файлов с соответствующим включением будет проверять файл с именем .readme
всякий раз, когда он отображает каталог. Если он существует, его содержимое анализируется и отображается в ненавязчивой панели рядом с виджетом пути каталога. Можно щелкнуть любые ссылки в нем, и пользователь будет перенаправлен в целевой каталог этой ссылки.
Я думаю, что усилия по внедрению такого стандарта многократно окупятся за счет удобства использования. У нас были бы, скажем, плагины для Nautilus, Konqueror и т.д. Его можно использовать для отображения информации каталога в стандартных списках файлов, обслуживаемых веб-серверами. И так далее.
Итак, вопрос: такая вещь существует? Если нет, то почему нет? Люди думают, что это стоящая идея?