vimdiff – ¿Hay alguna manera de "tomar ambos" cuando se usa Vim como herramienta de combinación?

Pregunta:

También estoy usando Vim como una combinación de 3 vías con Git y, a veces, necesito realizar cambios tanto en las ramas locales como en las remotas. kdiff3 puede hacer esto con un par de pulsaciones de teclas, ¿hay alguna forma de hacer esto en Vim?

Respuesta:

No es exactamente lo que preguntó, pero puede resultarle útil: Complemento de empalme: un complemento de Vim para resolver conflictos durante la combinación de tres vías . Tiene un buen screencast de demostración en Vimeo .

Si va a seguir con el vimdiff predeterminado, puede crear una función para recuperar el número de búfer para las ventanas :diffget y usarlas para llamar a :diffget dos veces:

                            *:diffg* *:diffget*
:[range]diffg[et] [bufspec]
        Modify the current buffer to undo difference with another
        buffer.  If [bufspec] is given, that buffer is used.  If
        [bufspec] refers to the current buffer then nothing happens.
        Otherwise this only works if there is one other buffer in diff

(...)

The [bufspec] argument above can be a buffer number, a pattern for a buffer
name or a part of a buffer name.  Examples:

    :diffget        Use the other buffer which is in diff mode
    :diffget 3      Use buffer 3
    :diffget v2     Use the buffer which matches "v2" and is in
                diff mode (e.g., "file.c.v2")

Podrías usar un mapeo para asignar una llamada a esta función a las teclas que kdiff3 en kdiff3 .

Puede encontrar más información sobre este vimcast .

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım