2011-02-13 46 views
9

He buscado mucho en internet y la ayuda de Vim, así que espero que esto no es una cuestión duplicado ... En fin:la caja de autocompletar

¿Hay alguna manera de convertir en caso de falta de sensibilidad en función de autocompletar de Vim? No voy a usar esto para codificar obviamente, pero sí escribo mucho texto en Vim y extraño esto para palabras complejas y/o largas.

Por ejemplo, supongamos que he escrito:

Pneumonoultramicroscopicsilicovolcanoconiosis es una enfermedad que ...

Y ahora voy a escribir:

Los pacientes con neumo

Entonces <C-n> y Bang :-P

Respuesta

13

Según la documentación, parece que podría utilizar las dos opciones siguientes: ignorecase y infercase

'infercase' 'inf'  boolean (default off) 
      local to buffer 
      {not in Vi} 
When doing keyword completion in insert mode |ins-completion|, and 
'ignorecase' is also on, the case of the match is adjusted depending 
on the typed text. If the typed text contains a lowercase letter 
where the match has an upper case letter, the completed part is made 
lowercase. If the typed text has no lowercase letters and the match 
has a lowercase letter where the typed text has an uppercase letter, 
and there is a letter before it, the completed part is made uppercase. 
With 'noinfercase' the match is used as-is. 

De acuerdo con el documento que está trabajando para ins-completion, es decir, la terminación automática en el modo de inserción.

se debe añadir las siguientes opciones en su .vimrc:
set ignorecase
set infercase

+0

Eso es, gracias Xavier T. – sidyll

+0

También agregué 'set smartcase' a mi _.vimrc_ para que las búsquedas de texto retuvieran el comportamiento esperado, incluso con' ignorecase' en su lugar. – jefe2000

+0

Intenté esto y sigo obteniendo la finalización de la etiqueta HTML en mayúsculas. – Tanath

5

No es útil para el caso de uso se describe en la pregunta, pero posiblemente interesante, sin embargo:

:set wildignorecase " Ignore case when completing file names and directories. 
        " Has no effect when 'fileignorecase' is set, which is the case (no pun intended) 
        " by default for systems where case in file names is normally ignored, 
        " notably Windows. 

es el lugar adecuado en el SO: D Es una característica muy novedosa , solo desde 7.3.072 está disponible.

+1

Parece que tengo que revisar mi proceso de búsqueda. De todos modos, ejecutándose: ve impresiones 7.3 para mí, así que no sé exactamente cómo encontrar mi versión Vim con esa precisión. Esta característica no está en mis archivos de ayuda. Pero, después de buscar en Internet parece que esta opción se hizo para activar la insensibilidad de mayúsculas y minúsculas en la finalización de nombres de archivo. ¿Es esto correcto? Si es así, no es lo que necesito ... – sidyll

+0

no sé cómo lo leí mal. Parece que esto no es lo que estás buscando. –

1

No sé sobre wildignorecase, pero

:set ignorecase 

hace el truco para mí (con vim 7.2).

+0

que está destinado a buscar patrones, ¿verdad? – sidyll

+0

@sidyll - a la derecha. Supongo que ignorar el caso afecta las coincidencias encontradas al autocompletar, pero es esa combinación con el infierno la que lo lleva a donde quiere, como se explicó anteriormente. Eso es genial, infercase = nuevo para mí, ¡así que definitivamente aprendí algo! – tjmw