¿Cuál es la mejor manera de hacer que vim highlight ejs (http://embeddedjs.com/) archivos? ¿Es posible configurar html highlight para el archivo en general y javascript highlight para sus partes dentro de <%%>? ¡Apreciar tu ayuda!Resaltado de sintaxis para archivos .ejs en vim
Respuesta
Si desea que se destacaron como los archivos .js regulares, se podría añadir esto a su .vimrc:
au BufNewFile,BufRead *.ejs set filetype=js
No es 100% seguro de que es lo que está buscando - espero que ayude.
Aquí hay algo que hice hoy (hice algunas modificaciones al script eruby). Requiere que se instale el plugin vim-javascript.
esto es genial, si eres como yo, tal vez solo quieras obtener el: https://github.com/briancollins/vim-jst/blob/master/syntax/jst.vim archivo e incluirlo en tu Archivo $ HOME/.vimrc como: au BufNewFile, BufRead * .ejs so $ HOME/.vim/jst.vim – todd
Bien. Acabo de instalar Vundle y luego agregué 'Bundle 'briancollins/vim-jst'' a mi' ~/.vimrc'. –
Gracias; este trabajo con Pathogen también. – bigtunacan
Créditos va a @inkedmn sólo quería señalar que html Encuadernaciones mejor manera, por lo tanto, poner esto en su archivo ~/.vimrc:
au BufNewFile,BufRead *.ejs set filetype=html
¡Gracias! Esto funcionó de maravilla yo –
que he tenido el mejor resultados descarga this syntax file directamente en ~/.vim/sintaxis
No funciona para mí. – GMA
Para usar este archivo tuve que agregar a mi .vimrc: au BufNewFile, BufRead * .ejs set filetype = ejs – Ultrasaurus
tratan este
cd /usr/share/vim/vim74/syntax #maybe vim64 or other
cp html.vim ejs.vim
vim ejs.vim
sólo puede editar html.vim
pero no te sugeriría ... luego encontrar
syn region javaScript start=+<script\_[^>]*>+ keepend end=+</script>+me=s-1` [email protected],htmlCssStyleComment,htmlScriptTag,@htmlPreproc
y escribir
syn region ejsScript start=+<%+ keepend end=+%>+ [email protected],htmlCssStyleComment,htmlScriptTag,@htmlPreproc
debajo de esa línea.
encuentran
HtmlHiLink javaScript Special
añadir
HtmlHiLink ejsScript Special
debajo de ella
añadir esta línea a su ~/.vimrc
au BufNewFile,BufRead *.ejs set filetype=ejs
ahora su voluntad código ejs parece js código ... o solo quieres que se vea como algo más?
replase
HtmlHiLink ejsScript Special
por (por ejemplo)
hi def ejsScript term=bold cterm=bold gui=bold
de hecho, en este ejemplo, las dos líneas puede vivir juntos ...
hace el código preciosa ~
se puede leer this para ayudarle con su vim-sintaxis
Para una solución que utiliza JavaScript y la sintaxis HTML en su caso (y no depender de ningún tercero javascript plugins) necesita un archivo ftdetect que ejecute autocmd
cuando los archivos con la extensión .ejs
se carguen combinados con un archivo de sintaxis ejs.
Si no le preocupa cómo funciona, he reunido un paquete que puede tomar de github here. Si se utiliza Vundle sólo tiene que añadir esto a su .vimrc:
Bundle 'nikvdp/ejs-syntax'
para hacerlo usted mismo, cree dos archivos en la carpeta que ~/.vim
:
Un archivo ftdetect: ~/.vim/ftdetect/ejs.vim
:
autocmd BufNewFile,BufRead *.ejs set filetype=ejs
autocmd BufNewFile,BufRead *._ejs set filetype=ejs
function! s:DetectEjs()
if getline(1) =~ '^#!.*\<ejs\>'
set filetype=ejs
endif
endfunction
autocmd BufNewFile,BufRead * call s:DetectEjs()
Y una archivo de sintaxis (desde la respuesta del usuario456584): ~/.vim/syntax/ejs.vim
runtime! syntax/html.vim
unlet b:current_syntax
" Include Java syntax
syn include @ejsJavaScript syntax/javascript.vim
syn region ejsScriptlet matchgroup=ejsTag start=/<%/ keepend end=/%>/ [email protected]
syn region ejsExpr matchgroup=ejsTag start=/<%=/ keepend end=/%>/ [email protected]
" Redefine htmlTag so that it can contain jspExpr
syn clear htmlTag
syn region htmlTag start=+<[^/%]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster,ejsExpr,javaScript
" syn keyword ejsPrint contained print
syn match javaScriptType /\<\zsvars\ze\./
syn match javaScriptSpecial /\<\zsexports\ze\./
syn match javaScriptFunction /\<\zsprint\ze(/
syn match javaScriptFunction /\<\zsinclude\ze(/
syn match javaScriptFunction /\<\zsincludeObject\ze(/
syn match javaScriptFunction /\<\zsfetch\ze(/
syn match javaScriptFunction /\<\zsfetchObject\ze(/
command -nargs=+ HiLink hi def link <args>
HiLink ejsTag htmlTag
delcommand HiLink
let b:current_syntax = "ejs"
- 1. Resaltado de sintaxis en vim
- 2. Sintaxis Vim Resaltado
- 3. resaltado de sintaxis Vim para ruby 1.9
- 4. vim resaltado de sintaxis para jinja2?
- 5. Razor .cshtml resaltado de sintaxis para vim?
- 6. resaltado de sintaxis de Javascript en vim
- 7. resaltado de sintaxis personalizado en Vim
- 8. VIM: Ciertos archivos .c se abren sin resaltado de sintaxis
- 9. resaltado de sintaxis para archivos sin extensiones
- 10. Habilitar Vim resaltado de sintaxis Por defecto
- 11. resaltado de sintaxis para expresiones regulares en Vim
- 12. resaltado de sintaxis en un encabezado de doblez VIM
- 13. Cómo evitar el resaltado de sintaxis para archivos grandes en vim?
- 14. vim plegado meta la pata de resaltado de sintaxis
- 15. resaltado de sintaxis para javadoc?
- 16. vim sintaxis predeterminada para archivos sin extensión
- 17. vim resaltado de sintaxis de las marcas de hash ColdFusion
- 18. Vim fondo de resaltado de sintaxis personalizada solo
- 19. ¿Está roto el resaltado de sintaxis Haskell de Vim?
- 20. El resaltado de sintaxis no está activado en vim al abrir varios archivos usando argdo
- 21. Cómo hacer que los archivos .less tengan resaltado de sintaxis .css en Vim?
- 22. Vim, cómo volver a cargar el resaltado de sintaxis
- 23. Convertir Notepad ++ sintaxis del archivo de vim destacando (o ¿alguien tiene aq/kdb + archivo de resaltado de sintaxis de vim?)
- 24. ¿Cómo puedo hacer que vim abra ciertos tipos de archivos con resaltado de sintaxis específico?
- 25. idioma resaltado actual de vim
- 26. problemas para usar de Vim syn-inclusión y syn-región para incrustar resaltado de sintaxis
- 27. Resaltado de sintaxis
- 28. sintaxis de Vim resaltando 'else' para Python
- 29. NSTextView resaltado de sintaxis
- 30. C# - resaltado de sintaxis perfecta
Bueno, cambiándolo un poco t o au BufRead, BufNewFile * .ejs set filetype = javascript Pude obtener la iluminación de javascript, sin embargo, no es realmente legible ... Sería genial tener html resaltado como html y javascript - como javascript (si es posible). – lyuba
Aparentemente puede usar múltiples tipos de archivos para un solo buffer. Vea aquí: http://stackoverflow.com/questions/2601403/multiple-file-types-in-vim/2604558#2604558 –
Esto funciona, ¡gracias! Sin embargo, ¿hay probablemente una forma de aplicar este comando automáticamente a cada archivo con la extensión .ejs? – lyuba