LINUX.ORG.RU

Экспорт кучи текстовых файлов в Markdown + статический блог

 , , , ,


1

4

Уважаемые форумчане!

Вот тут я давече создавал тему «Как перенести все свои шпаргалки из .txt файлов в облако с красивым оформлением»:

За много лет накопилось огромное количество (десятки тысяч) собственных заметок, шпаргалок, туториалов, которые составлял в обычных текстовых (*.txt) файлах, с минимальным форматированием. Хранится все это добро локально диске. Информация структурирована по каталогам, а имена файлов выполняют роль тегов, таким образом поиск нужной информации легко осуществляется через поиск файла, в имени которого содержится нужная информация. В редких случаях помогает поиск по содержимому файлов.

Долгое время такая схема устраивала. Но теперь назрела необходимость переложить это все в интернет (сделать подобие wiki), и отсюда вопросы:

1. Возможно ли сделать пакетную конвертацию огромного количества .txt файлов к хоть какой-то, пусть совсем минимальной, html-верстке, применяемой к технической (компьютерной) документации? Существуют ли специальные языки разметки и парсеры для этого?

2. Сейчас информация структурирована в удобном для поиска виде (каталоги, плюс имена файлов в качестве тегов, плюс поиск по содержанию). Возможно ли сделать так, чтобы перенос всего хозяйства в интернет был без ущерба для быстрого и простого поиска и с минимальными трудозатратами?

3. В данный момент составление заметок происходит путем создания или редактирования обычного текстового файла, то есть очень быстро и просто. Возможно ли сохранить эту простоту и легкость при составлении таких форматированных html-заметок в облаке?

P.S. Уточняю - требуется конвертация текстовых данных к html-разметке и публикация их в общем доступе, а не перенос данных в облачное хранилище (типа Яндекс.Диск, Google Drive, Dropbox)!


И, следуя вашим советам, взялся перелопачивать все свои заметки в Markdown-разметку с последующей их публикацией в статический блог на движке Octopress. Идея очень понравилась, но появилось одно очень неприятное «Но», которое сводит все труды на нет - дело в том, что в Octopress (как и в других аналогичных движках) все посты (точнее их исходники) складываются в один единственный каталог octopress/source/_posts/, и их имена имеют формат «год-мес-чис-тайтл.markdown».

Таким образом:

  1. каталогизация всех моих заметок по тематическим каталогам идет прахом;
  2. легкий поиск нужного файла по его имени (имена заметок выполняли роль тегов) также идет прахом;
  3. и, самое главное - с этими заметками я постоянно работаю, внося в них изменения и дополнения, которые хотелось бы сразу и с минимальными усилиями обновлять и в блоге. С этим, к сожалению, тоже полный провал! :'(


С файлами в markdown-разметке работать одно удовольствие, но вот найти нужный файл в исходниках (когда таких файлов тысячи), геморойно, поскольку все они лежат в одной куче... Получается, что такое решение подходит для буквально статических блогов.

Основной вопрос, как в вышеупомянутом решении (git, markdown, octopress) осуществлять частый поиск и изменение файлов (постов), годится ли оно для этого?
Если нет, то посоветуйте альтернативное легковесное решение. (Всякие wiki-движки не предлагать)

В идеале требуется решение, которое бы не нарушало структуру текстовых (markdown) файлов, а переводило бы их в html и коммитило на хостинг. Ну то есть, создавало бы зеркало, преобразуя markdown в html.



Последнее исправление: vosempopugaev (всего исправлений: 4)

Напиши свой движок на боттле, делов-то. Хуяк-хуяк и готово. Очень легковесно. Ещё базу данных для быстрого поиска заведи. Удивительно, но можно даже сделать поиск не только по имени файла, но по содержимому и тегам, нопермер. Я бы так сделал. Это проще, чем прикручивать все эти блоат-движки и пытаться найти в них нужный тебе одному функционал, которого, естественно, там нет, а если есть, то вместе с этим ещё и огромная куча ненужного кала.

anonymous
()
Ответ на: комментарий от anonymous

Напиши свой движок на боттле, делов-то. Хуяк-хуяк и готово.

ну блин, умел бы писать свои движки, тему не создавал :)

vosempopugaev
() автор топика
Ответ на: комментарий от vosempopugaev

Предлагали же dokuwiki. Все данные хранятся в файлах, именование строится на основе имён файлов, нужны теги, можно прикрутить плагин с тегами. Файлы на диске хранятся практически в txt формате, добавлена только вики разметка. В общем, имхо, зря прошли мимо.

Сам пользую её для заметок, очень доволен. Киллер фичи для меня - формулы в латех и экспорт страницы в pdf.

Jurik_Phys ★★★★★
()
Последнее исправление: Jurik_Phys (всего исправлений: 1)

https://staticsitegenerators.net/

Ещё как вариант, попробовать sphinx-doc. На знаю, подойдёт ли, но попробовать стоит. В придачу куча шаблонов и плагинов. Исходники оформляются в reStructuredText. Никаких ограничений на имена файлов так же нет. Всё, что нужно, чтобы создать новую запись — создать rst файл и выполнить make html. Для html доступен так же поиск. При желании можно сгенерировать epub, man pages и многое другое.

Пример того, что можно получить: http://flask.readthedocs.org/en/latest/

Kilte ★★★★★
()

Octopress (как и в других аналогичных движках) все посты (точнее их исходники) складываются в один единственный каталог

У меня такой задачи не было, однако считаю, что это решаемо правкой несколько строчек в коде.

их имена имеют формат «год-мес-чис-тайтл.markdown».

Такой формат используется только, если тебе лень задавать дату поста в шапке файла. Задай дату (и заголовок) и имя файла может быть любым.

--

Под заметки, я лично ушел на Zim (у меня их правда около сотни). Он ближе к твоей модели.

gh0stwizard ★★★★★
()
Последнее исправление: gh0stwizard (всего исправлений: 2)

Давай я попробую свою телепатию. Ты наверное хочешь генератор статического блога, который умеет в теги и категории. Тебе подойдёт Jekyll, если готов осилить немного ruby. Основное достоинство Jekyll состоит в том, что github умеет сам генерировать из твоего markdown'а при помощи твоего jekyll'а html и отдавать его по адресу username.github.io. Также я думаю можно найти похожий генератор на любом ЯВУ (я например использую Hakyll на Haskell).

KblCb ★★★★★
()
Ответ на: комментарий от KblCb

Давай я попробую свою телепатию. Ты наверное хочешь генератор статического блога, который умеет в теги и категории.

хочу ровно то, что написал: «В идеале требуется решение, которое бы не нарушало структуру текстовых (markdown) файлов, а переводило бы их в html и коммитило на хостинг. Ну то есть, создавало бы зеркало, преобразуя markdown в html». И вообще в идеале было бы реализовать это в octopress.

Тебе подойдёт Jekyll, если готов осилить немного ruby

Дык я и так на нем сейчас - octopress это и есть набор руби скриптов над Jekyll

Основное достоинство Jekyll состоит в том, что github умеет сам генерировать из твоего markdown'а при помощи твоего jekyll'а html и отдавать его по адресу username.github.io.

вот в username.github.io я как раз сейчас и деплою.

vosempopugaev
() автор топика
Ответ на: комментарий от vosempopugaev

хочу ровно то, что написал: «В идеале требуется решение, которое бы не нарушало структуру текстовых (markdown) файлов, а переводило бы их в html и коммитило на хостинг. Ну то есть, создавало бы зеркало, преобразуя markdown в html». И вообще в идеале было бы реализовать это в octopress.

Я так понимаю ты не можешь написать скрипт для jekyll'а, который будет собирать markdown из твоей файловой иерархии потому что не умеешь ruby?

KblCb ★★★★★
()
Ответ на: комментарий от KblCb

Я так понимаю ты не можешь написать скрипт для jekyll'а, который будет собирать markdown из твоей файловой иерархии потому что не умеешь ruby?

Да )

vosempopugaev
() автор топика
Ответ на: комментарий от KblCb

Я так понимаю ты не можешь написать скрипт для jekyll'а, который будет собирать markdown из твоей файловой иерархии потому что не умеешь ruby?

готовых решений не существует?

vosempopugaev
() автор топика
Ответ на: комментарий от vosempopugaev

готовых решений не существует?

Ну тебе же нужно не просто готовое решение (octopress), а специальное готовое решение. Я думаю самым разумным будет либо воспользоваться генератором на своём любимом ЯВУ и компилировать html локально, либо уговорить знакомого рубиста написать тебе конфиг jekyll'а за смузи.

KblCb ★★★★★
()
Ответ на: комментарий от vosempopugaev

умел бы писать свои движки

Перестань ныть и просто попробуй. Абсолютно ничего сложного, это как править конфиги, даже ещё проще. Ты хотя бы просто посмотри.

Плюсом получишь новый скилл.

Если файлов не много, то и через find/grep можно искать. Да и если много, тоже можно. Не миллион же у тебя их там.

anonymous
()

Вот тебе рабочее двигло на боттле от доброго анона. Для начала, так сказать.

Список возможностей: * поиск по имени файла (через поиск на странице) * поиск по имени папки * канпеляция markdown в html (через markdown) * просмотр и правка markdown, html, txt, csv, xml, svg и т.п. * встроенный редактор markdown с возможностью дополнить его подсветкой синтаксиса * 100% кастомизируемый интерфейс, иконки, шрифты, шкурки вот это вот всё * нескучные стили оформления markdown в виде отдельных дополнений (not included) * из зависимостей только питон, скрипт боттла и markdown

Скопируй двигло вместе со скриптом боттла в папку с твоими файлами, запусти (не стесняйся) и заходи на локалхост:8080. При публикации функцию редактирования можно выпилить и вообще, там, дальше сам думай.

Спасибопожалуйста.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.