Вопрос

Я хотел бы написать сайт с хорошим дизайном, скажем, сгенерированный WordPress, SPIP или с расширенными шаблонами на основе CSS. В то же время я хотел бы записать содержимое в текстовом редакторе (возможно, в текстовом режиме, например, с Emacs или vim) так же, как один пишет файл LaTeX. Кроме того, я хотел бы использовать контроль версий, чтобы легко видеть изменения в разных версиях веб-сайта. Я должен сказать, что сайт, который я имею в виду, не является блогом ; это более организовано, и несколько страниц должны быть обновлены со временем. Я не ищу очень сложное решение, как для персонального веб-сайта с несколькими десятками страниц (организованных в "разделах", "подразделах" и, возможно, даже в "подразделах").

Я предполагаю, что имею в виду модель LaTeX, где вы пишете содержимое и позволяете компилятору генерировать хороший вывод. Код LaTeX довольно прост и представлен в текстовом формате, так что применять контроль версий тривиально.

Почему классические решения не работают

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

HTML/PHP/CSS шаблоны хороши, но их содержание и дизайн слишком сложны. В частности, нелегко переключаться с одного шаблона на другой, особенно из-за отсутствия стандартов. Обычно шаблон не эволюционирует, так как вы просто его где-то выбрали. Кроме того, он предлагает небольшую гибкость и может не иметь функций, которые вам нужно добавить самостоятельно. Например, он может никогда не создать мобильную версию, в то время как умный экспортер может сделать это.

Мне известны такие программы, как orgmode под Emacs и соответствующие экспортеры. Но это больше для блогов, и дизайн не так хорош в конце.

Я предполагаю, что мой вопрос заключается в том, существует ли программное обеспечение, которое могло бы публиковать веб-страницы, написанные в виде простого текста, и организовывать эти веб-страницы (по страницам / подстраницам, с меню, хорошим дизайном, ...). Если общая организация веб-страниц должна выполняться с помощью текстового редактора, это будет приемлемо. Веб-страницы могут все еще иметь изображения, уравнения и так далее, если программное обеспечение достаточно умен.

Я процитировал WordPress и SPIP, но я рассматривал многие другие решения, такие как вики (MediaWiki или что-то еще), другие издатели, такие как Dotclear, CMS, такие как Joomla, CMF, такие как Drupal, или даже фреймворки, такие как Django, Может быть, одно из таких решений на самом деле и я просто не осознавал этого?

редактировать

Есть дополнительное ограничение / пример, который я хотел бы добавить. Представьте, что вы хотите включить страницы, созданные внешним программным обеспечением, например, Doxygen, для документации какого-либо программного обеспечения. Тогда вам может потребоваться автоматизировать добавление документации (для новой версии программного обеспечения). Это требует некоторой гибкости, возможно, вариантов сценариев.

3 ответа3

2

Существует множество упрощенных языков разметки для проектов конвертации html/web-сайтов. Например

  • есть Python-ориентированный сфинкс: конвертирует файлы ReST на веб-сайт, и
  • ruby-ориентированный jekyll: который преобразует файлы Markdown на веб-сайт.

Также, поскольку Вы упоминаете emacs:

  • орг-режим и
  • Emacs Muse

может создавать веб-сайты из упрощенных языков разметки.

Наконец, есть готовые веб-фреймворки, например

  • ориентированный на питона: колба, джанго, пирамида
  • ориентированный на рубин: падрино, опаленный, пакёв

В каждом из этих случаев Вы можете подвергать исходные файлы контролю версий. Я сам использую sphinx с темой twitter-bootstrap: использую python в исследованиях.

0

Если статический сайт достаточно хорош для вас, возможно, вам может помочь следующее. Я настроил свой веб-сайт на моем локальном компьютере с использованием git . Локальный репозиторий связан с удаленным splitted репозиторием - bare часть находится на моем частном сервере, а содержимое - на общедоступном сервере. Таким образом, я могу редактировать свой сайт локально, и как только он будет готов, git push web публикует изменения. Это вдохновлено этим и повторяется в моем блоге . Вы можете увидеть полученный сайт здесь .

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

0

Я не верю, что это подходящее место для того, чтобы задавать подобные вопросы, так как существует огромное количество ответов, и действительно, интерпретация варьируется в зависимости от того, что вы подразумеваете под "легко писать". Я могу (и написал) достаточно неплохие веб-сайты с помощью текстового редактора, но это нелегко, потому что это требует глубоких знаний CSS и HTML, например.

Тем не менее, поскольку вы упомянули VIM, и кажется, что ваш сайт предназначен для группы "1 человек", а не для групповой работы, я счел целесообразным разработать его на сервере (в режиме реального времени или в тестовом режиме) с использованием VI, а затем использовать FSVS вместе с SUBVERSION репозиторий для версии кода прямо на Linux-коробке, не оставляя файлы ".svn" на всем протяжении. [fsvs, кажется, больше предназначен для управления версиями конфигурации, но хорошо работает для других вещей, если вам не нужно делать слияния]

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .