khi chạy màn hình trên OSX, lệnh + r làm rối các phím mũi tên trong vim trên tất cả các màn hình


15

Làm thế nào để bạn thư giãn này? bởi vì bạn luôn nhấn nút r để tải lại trình duyệt của mình và thường thì bạn đang ở trong thiết bị đầu cuối.

Vì tôi chưa tìm ra cách kích hoạt lại các phím mũi tên, tôi hiện đang giết tất cả các màn hình của mình và khởi động lại màn hình, đó là một điều khó khăn.

Câu trả lời:


28

Là một người ủng hộ Vim nhỏ, tôi cảm thấy bị ràng buộc để bảo bạn học cách sử dụng hjkl làm phím con trỏ. Nửa chừng khi khám phá vấn đề, tôi nghĩ rằng nó đã tự khắc phục một cách bí ẩn, cho đến khi tôi nhận ra mình đang thử nghiệm bằng cách sử dụng hjkl thay vì các phím mũi tên thực tế.

Dù sao, bây giờ cho một câu trả lời thực sự.

Thay vì tắt tất cả các màn hình của bạn và khởi động lại, bạn có thể tận dụng khả năng của màn hình để di chuyển giữa các thiết bị đầu cuối. Nhấn CTRL+A CTRL+Dđể tách màn hình khỏi thiết bị đầu cuối của bạn, sau đó chạy screen -D -Rđến reattach. Điều này sẽ làm cho các phím mũi tên của bạn hoạt động trở lại.

Nếu bạn không ở trong màn hình, nhưng chỉ trong Vim, thì bạn có thể CTRL+Zvà gõ fgcho cùng một hiệu ứng.

Bạn cũng có thể giải quyết vấn đề về phím con trỏ trong Vim, nhưng thiết lập lại có thể đã thay đổi các tùy chọn đầu cuối khác, vì vậy sẽ an toàn hơn khi được mô tả ở trên vì bạn sẽ thấy các sự cố hiển thị / bàn phím ngẫu nhiên khác. Nếu bạn muốn các bản sửa lỗi nào, thì đây là:

map <Esc>[A <Up>
map <Esc>[B <Down>
map <Esc>[C <Right>
map <Esc>[D <Left>

Chi tiết về Grubby:

Cả Vim và màn hình đều sử dụng thư viện ncurses để quản lý thiết bị đầu cuối. Một trong những điều mà ncurses đang làm khi nó kiểm soát thiết bị đầu cuối tương thích VT100 là chuyển các phím mũi tên thành "chế độ ứng dụng", thay đổi mã mà chúng phát ra. Phím mũi tên lên, ví dụ, thay đổi từ Esc [ Athành Esc O A. Mã điều khiển VT100 mà nó phát ra để làm điều này là Esc [ ? 1 h. Lệnh đặt lại thiết bị đầu cuối được gửi bởi Command + R đặt lại các phím con trỏ về mặc định.

Màn hình tách rời và gắn lại khiến cho các nhân viên kiểm soát lại thiết bị đầu cuối, điều này áp dụng lại tất cả các cài đặt mà nó thích, vì vậy đó có lẽ là cách di động và đáng tin cậy nhất để khôi phục mọi thứ trở lại bình thường.

Mã kiểm soát VT100: http://www.handshake.de/infobase/dfue/prgrmmer/t322.htm


Một vấn đề khác có thể là loại thiết bị đầu cuối khó hiểu vim, hãy xem các phím
kynan

cảm ơn vì giải pháp này điều này đã làm tôi thất vọng khi trở thành một nhà phát triển web. trong trình duyệt, bạn nhấn cmd-r rất nhiều để làm mới màn hình và đôi khi tôi phải vô tình nhấn cmd-r trong vim. tôi không thể hiểu tại sao các phím mũi tên của tôi bị xóa cho đến bây giờ. và đối với bạn, những người theo chủ nghĩa hjkl ngoài kia, lý do chính khiến tôi không sử dụng hjkl là vì chúng không có sẵn cho chuyển động con trỏ trong chế độ chèn. giải quyết vấn đề đó cho tôi và tôi sẽ xem xét lại.
rev

6

Bạn có thể khắc phục điều này một cách nhanh chóng và dễ dàng với :!reset


1

Nếu bạn đang sử dụng iTerm, bạn có thể lấy lại phiên vim của mình bằng cách nhấn command+dcommand+w

Tại sao?

command+d sẽ phân chia khung thiết bị đầu cuối, khôi phục một cách kỳ diệu cái mà bạn đến từ.

command+w Bây giờ sẽ đóng ngăn chia mà bạn vừa mở.


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.