Cách nhảy đến đầu hoặc cuối dòng trong vim + OS X


16

Trong terminal tôi có thể làm điều này bằng cách nhấn shift + home và shift + end, nhưng dường như nó không hoạt động trong vim. Phím Home và end chỉ cuộn cửa sổ terminal. Tôi muốn nhảy trong chế độ chỉnh sửa.


4
Trong chế độ lệnh, bạn có thể tìm thấy trên Vim Cheat Sheet (0 và $): fprintf.net/vimCheatSheet.html . Tôi không biết về chế độ chỉnh sửa, mặc dù.
Gnoupi

Câu trả lời:


12

Câu trả lời này giả định rằng bạn đang sử dụng vim trong cửa sổ Terminal .

Các ràng buộc mặc định cho HomeEnd khác một chút so với những gì chương trình mong đợi dựa trên cài đặt TERM thông thường (tức là một biến thể xterm). Nếu bạn muốn gắn bó với các ràng buộc mặc định (và phải sử dụng các biến thể đã thay đổi trong Terminal ), bạn có thể thử đặt một cái gì đó như thế này vào .vimrc:

:" map Mac OS X Terminal.app default Home and End
:map <ESC>[H <Home>
:map <ESC>[F <End>
:imap <ESC>[H <C-O><Home>
:imap <ESC>[F <C-O><End>
:cmap <ESC>[H <Home>
:cmap <ESC>[F <End>

Nếu không, bạn có thể thử điều chỉnh mã mà Terminal gửi khi bạn sử dụng Home and End (thậm chí không được chuyển, nếu bạn muốn). Một tìm kiếm có thể sẽ xuất hiện một số nơi mô tả cách thực hiện ( đây là một nơi ). Ý tưởng cơ bản là bạn muốn Terminal gửi ESC [1 ~ thay vì ESC [H cho HomeESC [4 ~ thay vì ESC [F cho End (hoặc Shift-Home / Shift-End nếu bạn muốn giữ Home / Kết thúc để truy cập cuộn lại). Tôi sẽ mô tả quá trình chi tiết hơn, nhưng tôi chỉ có 10,4 và tôi biết Terminal đã được thay đổi rất nhiều trong 10.5 và sau đó.


8

Với iTerm và Vim, bạn có thể sử dụng fn + mũi tên phải và trái trong chế độ chèn để nhảy đến đầu hoặc cuối dòng. Với Terminal.app bạn sử dụng shift + mũi tên .



1

Ngoài câu trả lời của Chris , bạn cũng có thể đạt được điều hướng từ (vớiOption+arrow các phím), chỉ bằng cách thêm bốn dòng đó:

:map <ESC>f el
:imap <ESC>b <C-o>b
:imap <ESC>f <C-o>el
:cmap <ESC>f el

Lưu ý olà chữ thường, để nó không thoát insertchế độ cho hoạt động. Bạn cũng có thể thay đổi chữ hoa Otrong câu trả lời ban đầu để có hiệu ứng tương tự.


0

Trong MacVim, bạn có thể sử dụng Lệnh 'Mũi tên trái' và Lệnh 'Mũi tên phải' để đi đến đầu và cuối dòng trong khi ở chế độ chỉnh sửa.


Âm thanh như JtR đang sử dụng vim bên trong Terminal.app thay vì sử dụng MacVim (tôi cũng rất muốn giới thiệu và sử dụng cá nhân).
Ma trận nốt ruồi

0

Chuyển đến Terminal -> Tùy chọn -> Cấu hình -> Bàn phím và thêm:

Phím: Hành động: \ 033OH

Phím: ↗ Hành động: \ 033OF

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.