2012-07-10 7 views
7

mi entorno .vimrc:i Mueva minibufexplorer, cómo detener el redimensionamiento cuando nerdtree está abierto

nmap <silent><F1> :NERDTreeToggle<CR> 
nmap <silent><F2> :TMiniBufExplorer<CR> 
let g:miniBufExplMapWindowNavVim = 1 
let g:NERDTreeWinPos = "right" 

primero que parece:

-------------------------- 
| minibufexplorer | | 
--------------------- | 
|     | | 
| top    | | 
|     | | 
---------------------NERD| 
|     | | 
| btm    | | 
|     | | 
-------------------------- 

siguiente, cuando presiono F2, minibufexplorer fue conmutado :

-------------------------- 
|     | |     
|     | | 
| top    | | 
|     | | 
---------------------NERD| 
|     | | 
| btm    | | 
|     | | 
-------------------------- 

ahora se ve como si todo está bien, pero cuando presiono F2 de nuevo una nd minibufexplorer muestran a continuación la ventana superior fue cambiada de tamaño:

-------------------------- 
| minibufexplorer | | 
--------------------- | 
| top    | | 
---------------------NERD| 
|     | | 
|     | | 
|     | | 
| btm    | | 
|     | | 
-------------------------- 

Si no hay ninguna ventana nerdtree a la derecha, no va a cambiar el tamaño. Entonces, ¿cómo detener el cambio de tamaño de la ventana cuando nerdtree está abierto? (por cierto: lo siento, no puedo subir fotos porque yo sólo tengo 8 reputación.)

+0

Eso es muy extraño que solo ocurra cuando una ventana de NERDTree está abierta; ¿Qué versiones de vim y esos complementos estás usando? –

+0

vim = 7.3 NERD_tree_version = 4.2.0 minibufexpl> 6.4.4 – lSaint

Respuesta

5

El problema está en la línea 450 de minibufexpl.vim: en la función StartExplorer, se encuentra set noequalalways. De :help equalalways:

Cuando está activado, todas las ventanas se hacen automáticamente del mismo tamaño después de dividir o cerrar una ventana. Esto también ocurre en el momento en que se activa la opción. Cuando está desactivado, dividir una ventana reducirá el tamaño de la ventana actual y dejará las otras ventanas iguales. Al cerrar una ventana, las líneas adicionales se asignan a la ventana contigua (dependiendo de 'splitbelow' y 'splitright'). Al mezclar ventanas divididas vertical y horizontalmente, se calcula un tamaño mínimo y algunas ventanas pueden ser más grandes si hay espacio. La opción 'eadirection' indica en qué dirección se ve afectado el tamaño. Se puede evitar cambiar el alto y el ancho de una ventana configurando 'winfixheight' y 'winfixwidth', respectivamente. Si se especifica un tamaño de ventana al crear una nueva ventana, los tamaños no están ecualizados actualmente (es complicado, pero puede implementarse en el futuro).

esto es parte de MiniBufExplorer y si desea que se comportan de manera diferente que o bien tienen que change it yourself o submit an issue al autor.

+0

Traté de: establecer noequalalways y: establecer qualalways, pero obtuve el mismo resultado. – lSaint

+0

Eso es correcto. MiniBufExplorer hace ': establecer noequalalways' cuando lo inicia/abre. Restablecerlo no te ayudará, porque volverá a ocurrir la próxima vez que lo abras. Como dije en la respuesta, si desea que se comporte de manera diferente, deberá cambiar el plugin usted mismo o enviar un problema para que se modifique el complemento. –

+0

Gracias, muchacho. Creo que voy a intentar tu sugerencia, ambas :) – lSaint

Cuestiones relacionadas