2009-12-15 16 views
22

normalmente el código es algo como:¿Qué modo usa la gente cuando usa Emacs para editar páginas web que contienen CSS, javascript y HTML?

<html> 
    <head> 
    <style type="text/css"> 
     body { font-size:12pt; font-family: Arial;} 
     .... 
    </style> 
    <script type="text/javascript" src="jquery.1.3.2js"></script> 
    <script type="text/javascript"> 
    <!-- 
     $(document).ready(function(){ 
      ... 
     }); 
     ... 
    --> 
    </script> 
    <meta ... /> 
    </head> 
    <body> 
    <div> 
     <p> 
     .... 
     </p> 
     ... 
    </div> 
    .... 
    </body> 
</html> 

me gusta Javascript-modo para la syntaxt resaltando y sangría. Del mismo modo para sgml-mode para el HTML. También obtengo autocompletar en las etiquetas abiertas. El modo Css no es tan importante, así que no es tanto una prioridad.

Son 3 idiomas diferentes y 3 modos. En este momento, he estado intercambiando modos manualmente mientras edito diferentes secciones. Esto funciona, más o menos.

¿Alguien tiene un mejor enfoque?

+0

¿Pertenece en superuser.com? –

+15

Veo eso en las preguntas de emacs a menudo. Déjame preguntarte: si hubiera preguntado cómo configurar la fuente del código en una ventana de Visual Studio, o cómo reconfigurar una perspectiva de Eclipse, ¿pertenecería al superusuario? – Cheeso

+2

No, porque esas son herramientas para programadores. : P –

Respuesta

11

Creo que mumamo se usa generalmente para esto. http://www.emacswiki.org/emacs/MuMaMo

+0

Sí, perfecto. Al hacer clic en el enlace, descubrí que la mejor manera de obtener Mumamo es descargar e instalar el modo nXhtml. Está funcionando perfectamente. – Cheeso

+0

¿Está disponible nXhtml (MuMaMo) para plataformas que no sean Win23? Estoy ejecutando Debian Squeeze. – SabreWolfy

+2

Aparentemente mumamo no se ha actualizado durante 4 años, mientras que el modo web más nuevo está activo. Ver [esta publicación] (http://stackoverflow.com/a/21222987/48082) – Cheeso

8

Yo uso nXhtml para emacs. Citando de la página

Una de las partes principales de nXhtml es nxhtml-mode, un modo principal de GNU Emacs que se basa en el modo nxml. Conoce la sintaxis XHTML y puede verificarlo a medida que escribe. También puede decirle qué etiquetas y atributos puede usar en un determinado punto y ayudarlo a insertarlos.

Esa característica, que llamamos terminación, es una de las características principales de este modo. Otra característica importante es la capacidad de mezclar varios idiomas en un búfer y obtener el resaltado de sintaxis correcto y la sangría para cada uno de ellos.

+1

nXhtml funciona muy bien, pero a menudo estoy contento con solo el modo sgml. La verdadera pregunta difícil no es "¿qué modo usar para (X) HTML?", Sino "¿qué modo usar para un archivo con contenido mixto?" – Cheeso

+2

Recupero todas las dudas que tenía sobre el modo nXhtml. La mejor parte de nXhtml es el modo Mumamo, que hace exactamente lo que describí: admite múltiples modos en un único búfer. Puedo editar y aplicar sangría a Javascript, CSS y (X) HTML, todo en el mismo archivo. Agradable. Gracias. – Cheeso

4

me gustaría ser reacios a llamar a mi mejor enfoque, pero fwiw, evito esta situación como la peste poniendo CSS en archivos css y javascript en archivos .js y luego poner "incluyen" etiquetas en el html archivo. Entonces Emacs maneja cada uno muy bien. Es cierto que tener tres monitores grandes con Emacs de pantalla completa en cada uno hace que los búferes contiguos contengan los archivos que casi no necesito dolor. - :) Y no funciona muy bien en un entorno empresarial donde no tengo control sobre lo que otros ingenieros eligen hacer.

+4

Paciente: "Me duele cuando hago esto, doc." Doctor: "No hagas eso". – Cheeso

+0

Hago esto, y cuando no puedo (código PHP y JSP) confío en nXhtml. – stsquad

19

Desde web-mode vinieron a la existencia , Me he deshecho de mumamo y nxhtml. web-mode es más fácil de usar e instalar. Para empezar, utiliza diferentes resaltados de sintaxis y sangría de un archivo mixto js/html/css. Pero para mí, lo realmente útil es que funciona en otros lenguajes de plantillas. Aquí está un ejemplo de configuración de su página web:

(require 'web-mode) 
(add-to-list 'auto-mode-alist '("\\.phtml\\'" . web-mode)) 
(add-to-list 'auto-mode-alist '("\\.tpl\\.php\\'" . web-mode)) 
(add-to-list 'auto-mode-alist '("\\.jsp\\'" . web-mode)) 
(add-to-list 'auto-mode-alist '("\\.as[cp]x\\'" . web-mode)) 
(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode)) 
(add-to-list 'auto-mode-alist '("\\.mustache\\'" . web-mode)) 
(add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode)) 
+0

¿Cómo se lleva a cabo la inserción de etiquetas como C-c C-t en el modo html predeterminado en emacs en el modo web? –

+1

Esto debe marcarse como la respuesta correcta. el modo web simplemente funciona, y MuMaMo nunca funcionó para mí. – tuxdna

4

A modo de comparación, aquí están algunos de los modos disponibles, a partir del 04.07.2014:

 
| library  | files | size | last update | url             | 
|----------------+-------+---------+-------------+-----------------------------------------------------| 
| web-mode  |  1 | 279 kb | 2014-07-03 | https://github.com/fxbois/web-mode     | 
| polymode  |  7 | 120 kb | 2014-06-14 | https://github.com/vitoshka/polymode    | 
| mmm-mode  | 17 | 185 kb | 2014-02-12 | https://github.com/purcell/mmm-mode     | 
| multi-web-mode |  1 | 16 kb | 2013-08-23 | https://github.com/fgallina/multi-web-mode   | 
| mumamo   | 115 | 3090 kb | 2010-04-25 | http://ourcomments.org/Emacs/nXhtml/doc/nxhtml.html | 
| multi-mode  |  1 | 23 kb |  2009 | http://www.loveshack.ukfsn.org/emacs/multi-mode.el | 

También se ha añadido a la Wiki Emacs: http://www.emacswiki.org/emacs/MultipleModes

Cuestiones relacionadas