¿Cómo escribir fácilmente un sitio web utilizando un editor de texto y control de versiones? [cerrado]

0

Pregunta

Me gustaría escribir un sitio web con buen diseño , digamos como los generados por WordPress, SPIP o con plantillas avanzadas basadas en CSS. Al mismo tiempo, me gustaría escribe los contenidos en un editor de texto (posiblemente en modo texto, con Emacs o vim, por ejemplo) al igual que uno escribe un archivo LaTeX. Además, me gustaría utilizar control de versiones para ver fácilmente los cambios en diferentes versiones del sitio web. Debo decir que el sitio web que tengo en mente es no es un blog ; Está más organizado y varias páginas deben actualizarse con el tiempo. No estoy buscando una solución altamente compleja, ya que es un sitio web personal con unas pocas docenas de páginas (organizadas en "secciones", "subsecciones" y quizás incluso "subsubsecciones").

Supongo que tengo en mente el modelo LaTeX, donde escribes los contenidos y dejas que el compilador genere una salida agradable. El código LaTeX es bastante simple, y está en formato de texto, por lo que es trivial aplicar el control de versiones.

¿Por qué las soluciones clásicas no parecen funcionar?

WordPress es muy bueno, pero por lo que puedo decir, realmente no se puede editar desde un editor de texto en un terminal. Debe utilizar algún tipo de interfaz gráfica. SPIP, como WordPress, generará una base de datos para la cual el control de versión (con Git o algo así) no parece apropiado.

Las plantillas HTML / PHP / CSS son agradables, pero el contenido y el diseño son demasiado complejos. En particular, no es fácil cambiar de una plantilla a otra, especialmente porque no hay estándares. Por lo general, una plantilla no evoluciona, ya que simplemente la seleccionó en algún lugar. Además, ofrece poca flexibilidad y puede carecer de las funciones que necesita para agregarse. Por ejemplo, nunca puede producir una versión móvil, mientras que un exportador inteligente puede hacer eso.

Soy consciente de software como orgmode bajo Emacs y exportadores correspondientes. Pero esto es más para los blogs, y el diseño no es tan bueno al final.

Supongo que mi pregunta es si hay software que pueda publicar páginas web escritas en texto sin formato y organizar estas páginas web (en páginas / subpáginas, con menús, buen diseño, ...). Si la organización general de las páginas web debe llevarse a cabo desde el editor de texto, eso sería aceptable. Las páginas web podrían tener imágenes, ecuaciones, etc., si el software es lo suficientemente inteligente.

Cité WordPress y SPIP, pero consideré muchas otras soluciones como una wiki (MediaWiki o lo que sea), otras editoriales como Dotclear, CMS como Joomla, CMF como Drupal o incluso marcos como Django, ... Tal vez una de esas sea la solución ¿Y no me di cuenta de eso?

Editar

Hay una restricción / ejemplo adicional que me gustaría agregar. Imagine que desea incluir páginas generadas por un software externo, por ejemplo, Doxygen para la documentación de algún software. Entonces es posible que necesite automatizar la adición de la documentación (para una nueva versión del software). Esto requiere cierta flexibilidad, tal vez opciones de scripting.

olivaw
fuente
La mayoría de los wikis tienen un control de versión incorporado. No git, por supuesto, pero para deshacer el daño causado por los spammers y otros malhechores tienen registros de cambios con la capacidad de revertir el daño fácilmente. El editor de una wiki está integrado en la wiki para editar desde el navegador web. MediaWiki tiene cientos de extensiones, tal vez una de ellas puede importar archivos que genere desde un terminal. ¿Puedes explicar por qué necesitas usar un editor de texto en una terminal? ¿Alguna de esta información ayuda?
cybernard
Gracias por esta respuesta. Investigaré las extensiones de MediaWiki. Pero me gustaría no estar vinculado a ninguna GUI o interfaz específica, y me gustaría editar de forma remota (en cuyo caso una interfaz gráfica es demasiado pesada)
olivaw
¿Qué es demasiado pesado en kb / s? La razón por la que pregunto es porque a menos que estés usando un módem de 56 kbps, creo que te sorprenderá gratamente lo ligero que puede ser una wiki. Si usas un wiki, el navegador web está haciendo todo el trabajo pesado. El navegador web recibe un montón de comandos de texto y genera una GUI basada en comandos de texto. El resto del trabajo lo realiza el servidor que aloja el wiki. La razón por la que menciono esto es que la wiki es la forma más fácil de mantener un sitio web. También use "comparar asistente" para comparar wikis en wikimatrix.org 26 de ellos almacenan contenidos en archivos.
cybernard
Su pregunta es muy abierta, podría alcanzar su objetivo con docenas de lenguajes de programación, una multitud de plataformas (alojadas, auto hospedadas, SAAP, IAAP, y todo eso) y todo depende de qué tan bien las domine. Me temo que tendrás que dividir el problema en trozos más pequeños y tratar de resolverlos. Si tiene preguntas sobre esos problemas más aislados, siempre puede volver a preguntar.
Ivo Flipse

Respuestas:

2

Hay muchos lenguajes de marcado simplificados para los proyectos de conversión de html / sitio web. Por ejemplo

  • hay esfinge orientada a python: convierte los archivos ReST al sitio web, y
  • ruby-oriened jekyll: que convierte los archivos de Markdown al sitio web.

También desde que mencionas emacs:

  • modo org y
  • musa emacs

Puede generar sitios web desde lenguajes de marcado simplificados.

Finalmente hay marcos web completos, por ejemplo.

  • Python orientado: matraz, django, pirámide.
  • Rubí orientado: padrino, scourched, pakyow

En cada uno de estos casos, puede enviar los archivos de origen al control de versiones. Yo uso la esfinge con el tema de arranque de twitter yo mismo: usando python en la investigación .

Adobe
fuente
También tropezó con el clon de pitón de jekyll: Hyde .
Adobe
0

Si un sitio estático es lo suficientemente bueno para usted, entonces tal vez lo siguiente podría ser útil para usted. He configurado mi sitio web en mi máquina local versionada usando git. El repositorio local está asociado a un remoto splitted repositorio - El bare La parte está en mi servidor privado y el contenido está en el servidor público. De esta manera, puedo editar mi sitio localmente, y una vez que esté listo git push web Publica los cambios. Esto está inspirado en esta y repetido en mi blog . Puedes ver el sitio web resultante. aquí .

Con este enfoque, puede diseñar su sitio web como desee y tener tanto el diseño como el contenido bajo el control de versiones. Además, desde un punto de vista técnico, tiene tres (!) Copias sincronizadas del sitio: 1. la copia local, 2. el repositorio remoto remoto, y 3. el sitio público real.

Dror
fuente
0

No creo que este sea el lugar adecuado para hacer este tipo de pregunta, ya que hay una gran cantidad de respuestas y, de hecho, la interpretación es variable dependiendo de lo que quiere decir con "escribir fácilmente". Puedo (y he) escrito sitios web razonablemente decentes con un editor de texto, pero no es fácil porque requiere un conocimiento profundo de CSS y HTML, por ejemplo.

Dicho esto, ya que mencionó VIM, y parece que su sitio es para una "banda de 1 hombre" en lugar de un esfuerzo grupal, me pareció práctico desarrollarlo en un servidor (en vivo o de prueba) usando VI y luego usar FSVS junto con un Depósito de SUBVERSIÓN para versionar el código directamente en una caja de Linux sin dejar los archivos ".svn" por todas partes. [fsvs parece estar diseñado más para la configuración de versiones, pero funciona bien para otras cosas si no necesita hacer combinaciones]

davidgo
fuente