Trong Vimdiff, làm cách nào để chuyển đổi các bảng bên trái và bên phải?


22

Khi tôi làm vimdiff file2 file1, file2tự nhiên đi bên trái và file1bên phải.

Đôi khi tôi thấy rằng tôi đặt chúng sai vòng, vì vậy tôi muốn có thể chuyển đổi vòng mà không cần rời Vim. Điều đó có thể không?

Câu trả lời:


23

Bạn có thể sử dụng Ctrlw- x. Từ :he CTRL-W_x:

CTRL-W x                                            CTRL-W_x CTRL-W_CTRL-X
CTRL-W CTRL-X   Without count: Exchange current window with next one.  If there
                is no next window, exchange with previous window.
                With count: Exchange current window with Nth window (first
                window is 1).  The cursor is put in the other window.
                When vertical and horizontal window splits are mixed, the
                exchange is only done in the row or column of windows that the
                current window is in.

11

Như bạn sẽ chuyển bất kỳ cửa sổ khác, <c-w>xhoặc <c-w>rlà hai tùy chọn.

Chỉ có hai cửa sổ được <c-w>kthay đổi sẽ chuyển đổi chúng và để con trỏ ở cửa sổ trước công tắc (tức là nếu trước công tắc, cửa sổ tập trung ở bên trái, sau công tắc sẽ ở bên trái).

<c-w>x sẽ chuyển các cửa sổ và di chuyển con trỏ trong cửa sổ đã chuyển (tức là cửa sổ tập trung vẫn ở bên trái nếu nó ở bên trái).

Xem :help window-movingđể biết thêm lệnh để di chuyển các cửa sổ.


4

Tôi thấy các lệnh sau trực quan hơn nhiều so với Ctrlw- x.

:help CTRL-W_K

The following commands can be used to change the window layout.  For example,
when there are two vertically split windows, CTRL-W K will change that in
horizontally split windows.  CTRL-W H does it the other way around.

                        *CTRL-W_K*
CTRL-W K    Move the current window to be at the very top, using the full
        width of the screen.  This works like closing the current
        window and then creating another one with ":topleft split",
        except that the current window contents is used for the new
        window.

                        *CTRL-W_J*
CTRL-W J    Move the current window to be at the very bottom, using the
        full width of the screen.  This works like closing the current
        window and then creating another one with ":botright split",
        except that the current window contents is used for the new
        window.

                        *CTRL-W_H*
CTRL-W H    Move the current window to be at the far left, using the
        full height of the screen.  This works like closing the
        current window and then creating another one with
        ":vert topleft split", except that the current window contents
        is used for the new window.
        {not available when compiled without the |+vertsplit| feature}

                        *CTRL-W_L*
CTRL-W L    Move the current window to be at the far right, using the full
        height of the screen.  This works like closing the
        current window and then creating another one with
        ":vert botright split", except that the current window
        contents is used for the new window.
        {not available when compiled without the |+vertsplit| feature}

Các lệnh này có thể thay đổi kích thước của cửa sổ, tuy nhiên, vì vậy hãy lưu ý điều đó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.