2009-12-15 15 views
22

in genere il codice è qualcosa di simile:Che modalità usano le persone quando usano Emacs per modificare pagine Web che contengono CSS, javascript e 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> 

mi piace javascript-mode per la syntaxt evidenziare e rientro. Allo stesso modo per la modalità sgml per l'HTML. Inoltre ottengo il completamento automatico sui tag aperti. La modalità Css non è così importante quindi non è tanto una priorità.

Questo è 3 lingue disparate e 3 modalità. In questo momento ho scambiato le modalità manualmente mentre modifico diverse sezioni. Funziona, una specie di.

Qualcuno ha un approccio migliore?

+0

Appartiene a superuser.com? –

+15

Lo vedo spesso sulle domande su emacs. Lascia che ti chieda: se avessi chiesto come impostare il font del codice in una finestra di Visual Studio, o come riconfigurare una prospettiva di Eclipse, apparterrebbe su superuser? – Cheeso

+2

No, perché sono strumenti per i programmatori. : P –

risposta

11

Penso che il mumamo sia generalmente usato per questo. http://www.emacswiki.org/emacs/MuMaMo

+0

Sì, perfetto. Cliccando sul link ho appreso che il modo migliore per ottenere Mumamo è scaricare e installare la modalità nXhtml. Funziona perfettamente. – Cheeso

+0

È disponibile nXhtml (MuMaMo) per piattaforme non Win23? Sto usando Debian Squeeze. – SabreWolfy

+2

Apparentemente il mumamo non è stato aggiornato per 4 anni, mentre la modalità web più recente è attiva. Vedi [questo post] (http://stackoverflow.com/a/21222987/48082) – Cheeso

8

Io uso nXhtml per emacs. Citando dalla pagina

Una delle parti principali di nXhtml è nxhtml-mode, una modalità principale di GNU Emacs che si basa sulla modalità nxml. Conosce la sintassi XHTML e può controllarlo durante la digitazione. Può anche dirti quali tag e attributi è possibile utilizzare in un determinato momento e aiutarti a inserirli.

Questa funzione, che chiamiamo completamento, è una delle caratteristiche principali di questa modalità. Un'altra caratteristica importante è la possibilità di mescolare più lingue in un buffer e ottenere l'evidenziazione della sintassi corretta e il rientro per ognuno di essi.

+1

nXhtml funziona alla grande, ma spesso sono contento solo della modalità sgml. La vera domanda complicata non è "quale modalità utilizzare per (X) HTML?", Ma "quale modalità utilizzare per un file con contenuto misto?" – Cheeso

+2

Ricevo ogni dubbio sulla modalità nXhtml. La parte interessante di nXhtml è la modalità Mumamo, che fa esattamente quello che ho descritto: supporta più modalità in un singolo buffer. Posso modificare e indentare Javascript, CSS e (X) HTML tutti nello stesso file. Bello. Grazie. – Cheeso

4

sarei restio a chiamare il mio approccio migliore, ma FWIW, ho evitare questa situazione come la peste mettendo CSS in file css e javascript in file .js e poi mettere "include" tag nel codice HTML file. Poi Emacs li gestisce bene. Certo, avere tre monitor di grandi dimensioni con Emacs a schermo intero su ognuno crea buffer affiancati contenenti i file che mi servono a malapena. - :) E non funziona molto bene in un ambiente aziendale in cui non ho il controllo su ciò che altri ingegneri scelgono di fare.

+4

Paziente: "Fa male quando lo faccio, Doc." Dottore: "Non farlo." – Cheeso

+0

Faccio questo a, e quando non posso (codice PHP e JSP) mi affido a nXhtml. – stsquad

19

Fin da quando è venuto a esistenza web-mode , Mi sono liberato di mumamo e nxhtml. la modalità web è più facile da usare e installare. Per cominciare, utilizza l'evidenziazione della sintassi e il rientro di un file misto js/html/css. Ma per me la cosa veramente utile è che funziona in altre lingue di template. Ecco un esempio di configurazione dal loro sito:

(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

Come si esegue l'inserimento di tag come C-c C-t nella modalità html predefinita in emacs in modalità web? –

+1

Questo deve essere contrassegnato come la risposta corretta. la modalità web funziona e MuMaMo non ha mai funzionato per me. – tuxdna

4

A titolo di confronto, qui sono alcune delle modalità disponibili, a partire dal 2014/07/04:

 
| 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 | 

anche aggiunto alla Emacs Wiki: http://www.emacswiki.org/emacs/MultipleModes

Problemi correlati