¿Cómo puedo personalizar Vim para el desarrollo y la programación web?


10

Ya intenté encontrar algo para mi pregunta en [askubuntu.com], pero nada respondía a mis necesidades. Entonces, lo que quiero es construir vim como un editor muy potente y útil para html, css, javascript, etc. pero también para programación. Estoy tratando de aprender CSS y, en general, quería un editor muy agradable con muchos complementos. Entonces, ¿alguien puede ayudarme, paso a paso, a personalizar vim y sobre qué características mirar a mi alrededor que podrían ayudarme en mi período de aprendizaje? Gracias

Ah, y la única forma en que vim se está ejecutando es desde la terminal, gracias

*** editar ---> No puedo encontrar el archivo my.vimrc

mi carpeta de inicio

Respuestas:


11

Todos los demás tienen excelentes consejos, pensé que debería completar algunos de los conceptos básicos:

1. GVim para vim fuera de la consola y cómo instalarlo

Preguntó si vim solo se puede ejecutar desde la consola. GVim (GUI-Vim) es la versión independiente. Desde su captura de pantalla, parece que está utilizando Ubuntu, puede encontrar gvim en el Centro de software e instalarlo desde allí. Alternativamente puede sudo apt-get install gvimdesde una terminal.

2. Crear un archivo de configuración .vimrc

Parece que, por defecto, vim / gvim no crea uno .vimrcpara usted, por lo que puede crear uno usted mismo. Abra vim y escriba :e ~/.vimrcpara editar un nuevo archivo llamado .vimrcen su carpeta de inicio ( ~)

Comenzaremos agregando solo una configuración, para que podamos ver si funcionó. Agregue el siguiente texto:

" switch on line numbering
set number

El "es el personaje del comentario.

Luego, salga de vim y reinícielo; debería encontrar que ha aparecido una línea número 1 en la parte superior izquierda, y debe encontrar que cualquier archivo que edite a partir de ahora tiene la numeración de línea activada de forma predeterminada.

3. Instalar un complemento

Los complementos viven en una carpeta llamada ~/.vim/, pero, de nuevo, vim no crea esto de manera predeterminada, por lo que debe hacerlo:

mkdir ~/.vim

Con el tiempo, la .vimcarpeta crecerá varias subcarpetas como:

  • plugin para complementos
  • color para esquemas de color
  • doc para documentación
  • syntax para modos de resaltado de sintaxis

Pero por ahora está vacío. Agreguemos un complemento para probarlo.

Comience abriendo vim con vim .- que le dice a vim que abra una carpeta en modo "explorador". Instalaremos NERDtree, que es un complemento de explorador de archivos popular, que reemplazará al explorador predeterminado.

Vaya a http://www.vim.org/scripts/script.php?script_id=1658 y descargue el archivo zip de la tabla en la parte inferior de la página.

Ábralo en el administrador de archivos, elija "extraer" y luego dígale que se extraiga en su ~/.vim/carpeta. Es posible que deba presionar Ctrl+Hdentro del navegador de carpetas del administrador de archivos para mostrar carpetas ocultas.

Una vez que se extrae, creará varias subcarpetas .vimpara usted. Si ahora reinicia vim con un

vim .

¡Deberías ver que la vista del explorador ha cambiado! Ahora está usando el complemento NERDtree.

4. Más configuraciones de .vimrc

Mi .vimrc completo está disponible aquí https://bitbucket.org/hjwp/vim/src , pero aquí hay algunas configuraciones que encuentro realmente útiles:

" syntax highlighting
syntax on

" map cut & paste to what they bloody should be
vnoremap <C-c> "+y
vnoremap <C-x> "+x
map <C-v> "+gP

" sane text files
set fileformat=unix
set encoding=utf-8

" sane editing
set tabstop=4
set shiftwidth=4
set softtabstop=4

" convert all typed tabs to spaces
set expandtab

"autocompletion with ctrl+space
inoremap <c-space> <c-n>
inoremap <Nul> <c-n>

5. Ctags

Al principio no me preocuparía demasiado por los complementos, ya que conocer la potencia que le ofrece vim de inmediato debería ser lo suficientemente útil para su codificación. Pero una cosa que realmente es útil para trabajar en vim es ctags . ctags le permite hacer cosas como "saltar a definición" y completar automáticamente todas las palabras clave en su árbol de origen. Empezar con:

apt-get install exuberant-ctags

Luego, en su .vimrc, agregue

map <f12> :!ctags -R .<cr>

Ahora, cuando presiona "F12" en una sesión de vim, generará un .tagsarchivo, que vim puede usar para buscar palabras clave.

Ahora, si está activado, por ejemplo, una llamada de función en su código fuente, puede usar ctrl+]para saltar a su definición. Más información aquí: /programming/563616/vim-and-ctags-tips-and-tricks

6. que sigue

Otras personas han publicado algunas guías realmente útiles, aquí hay un par de páginas SO que he encontrado útiles:

Es todo un mundo vim allá afuera. Pero: advertencia: si te encuentras metiéndote en vim golf, probablemente hayas ido demasiado lejos: http://vimgolf.com/ ;-)


Ok, como mencioné antes, no hay .vimni .vimrcarchivos. Sé lo que .hace pero, ¿me puede guiar, por favor, cómo exactamente instalamos un solo complemento o cambiamos una configuración única? ¡Por favor, ayuda! Gracias
gabriel

ah, supongo que es posible que vim no cree un .vimrcpor defecto, y necesitaría hacerlo usted mismo ... Actualizaré la respuesta, y también incluiré algo sobre cómo instalar un complemento básico ...
hwjp

1
¿eso está mejor?
hwjp

maravillosa ayuda de tu parte, gracias, PERO, ¿cómo puedo desinstalar un complemento? ¿Estoy borrando los archivos? Gracias
gabriel

Además, instalé el patógeno y mi .vimarchivo no está organizado en absoluto. ¿Algún htmlcomplemento útil ? Gracias
gabriel

9

Te sugiero que comiences a estudiar .vimrc como el de arriba. Las necesidades y preferencias de cada persona son diferentes, por lo que definitivamente debe instalar cosas manualmente en lugar de simplemente copiar las configuraciones de otra persona.

Algunos recursos sobre el aprendizaje de VIM en sí:

  • Aprenda Vim progresivamente , una gran guía sobre el aprendizaje de Vim.
  • Tutoriales de principiantes de Vim , una serie de videos de Derek Wyatt Me divertí mucho cuando comencé mi viaje.
  • Cheat Sheet , si no está familiarizado con Vim desde antes, le recomendaría que lo haga como un examen. Escriba las combinaciones de teclas en un papel, el comando a la izquierda y la descripción a la derecha. Luego comience a memorizar ocultando el comando o la descripción e intentando recordar la respuesta. No pasa mucho tiempo antes de que los comandos le lleguen naturalmente, pero recuerde usarlos activamente también en Vim, de lo contrario, desaprenderá rápidamente.
  • http://usevim.com (evalúa los complementos de vim y también tiene una serie Vim 101)
  • http://vimcasts.org/episodes/archive (Algunos grandes elencos)

Algunos complementos realmente útiles

  • Análisis de código estático fantástico para toneladas de idiomas.
  • vim-css3-syntax Resaltado de sintaxis para CSS3. En general, también debe actualizar los archivos de sintaxis para HTML5 y Javascript, si los usa.
  • Matchit amplía la funcionalidad de%
  • Mapeos envolventes para etiquetas / paréntesis, etc., realmente potentes para desarrolladores web
  • Tcomment Alterna fácilmente los comentarios en la mayoría de los idiomas
  • Patógeno Mantenga su carpeta vim organizada para que pueda desinstalar y jugar con complementos
  • NERDtree Un explorador de árboles muy popular, personalmente, aunque prefiero simplemente: e.
  • Command-T Un administrador de búfer popular, personalmente no puedo usarlo, ya que depende de Ruby.
  • Snipmate Inserte fácilmente fragmentos de código.
  • Sparkup Extiende div # stuff.class> ul> li * 5 en HTML, obtienes la deriva.

Algún otro bien que saber

  • Para obtener la finalización de tabulación para proyectos, puede usar ctags que admite vim
  • Vuelva a vincular el bloqueo de mayúsculas a esc, después de un día no puede entender cómo tenía la energía para llegar a esc.
  • Vim ha ramificado árboles de deshacer, lo que significa que aún puede deshacer aunque haya alterado su árbol de deshacer. Gundo te ayuda a visualizar esto.
  • Vim tiene deshacer persistentes, lo que significa que guarda su historial de deshacer incluso si reinicia su computadora, definitivamente debe habilitar esto.
  • En mi propio vimrc tengo una función que comprueba si estoy trabajando en un sitio Drupal o Wordpress, dependiendo de esto se establecen diferentes convenciones de código. (Supongo que esto podría ser útil para saber, puede encontrarlo en mi repositorio vinculado a continuación).
  • Steve Losh tenía esta increíble configuración que definía un Objeto numérico en vim para que pueda eliminar / cambiar / etc. solo el número en, por ejemplo, 200 px presionando cN

Repositorios de Vimrc que vale la pena ver

  • Steve Losh Cosas impresionantes
  • Tim Pope Creador de Fugitive, Surround y toneladas de otros complementos vim
  • Oxy Mi propio repositorio, en el archivo README, tengo un ejemplo para generar ctags para proyectos de Drupal.
  • Derek Wyatt Sus screencasts me enseñaron vim, puedes encontrar muchas cosas geniales allí

Ok, incluso si me gustaría usar algunos de los complementos y cosas que mencionaste anteriormente, ¿cómo puedo usarlos? Mi carpeta vimrc, ¿dónde está? Gracias
gabriel

1
@gabriel vimrces un archivo y .denota el sistema de archivos oculto de Linux, deberá crearlo .vimrcsi no está presente y colocarlo en su directorio de inicio. .vimes la carpeta / directorio que contendrá el complemento / script. Es posible que deba crearlo también. La mayoría de estos scripts tienen instrucciones de instalación disponibles. vim.org/scripts/script_search_results.php . Vim es un editor de texto, por lo que si no se siente cómodo con los ajustes y todo askubuntu.com/questions/48299/…
sagarchalise

@sagarchalise Ok, después de crear esos archivos, ¿podemos cambiar la forma en que funciona vim?
gabriel

@gabriel básicamente vimrcdebería contener lo que debe hacer vim, es decir, resaltado de sintaxis, tabulaciones / espacio, números de línea, etc. Por defecto, vim es solo una herramienta de edición de texto. Lo haces lo que quieres. Vim es extremadamente potente y modificable. Pero necesitas entender sus modos y comandos. vim.wikia.com/wiki/Example_vimrc ver aquí para muestra vimrc
sagarchalise

¿Cómo enlazo Caps Lock a Escape (no estoy usando Ubuntu) ?
Santosh Kumar

1

puedes usar esto:

bash <<(curl -s https://raw.github.com/wongyouth/vimfiles/master/install.sh )

Esta es la configuración de mi maestro, esperando ayudarte.

Un puñado de complementos para vim, todos mantenidos en un subdirectorio de paquetes, configuración útil de vim, espacialmente para la codificación de Rails. Todos los complementos se incluyen como submódulos, por lo que puede actualizar los complementos en un comando que facilita la vida.

detalle: ingrese la descripción del enlace aquí


¿Y qué podemos hacer exactamente con esto? Agradable, pero prefiero las instalaciones manuales porque sé lo que realmente estoy instalando.
gabriel

Puede ver el uso y los complementos vim incluidos en los submódulos en este enlace: github.com/wongyouth/vimfiles
clark
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.