Các phím mũi tên của tôi không hoạt động trong vi ở chế độ chèn ở nhà, chúng chỉ chèn một dòng mới và một chữ cái viết hoa, như 'A'. Có cách nào để khắc phục điều đó không?
Các phím mũi tên của tôi không hoạt động trong vi ở chế độ chèn ở nhà, chúng chỉ chèn một dòng mới và một chữ cái viết hoa, như 'A'. Có cách nào để khắc phục điều đó không?
Câu trả lời:
Tôi cho rằng bạn đang sử dụng vim vì nó được gắn thẻ là Linux. Thử:
:set nocompatible
(Bạn có thể muốn định cấu hình .vimrc của mình bằng cách thêm lệnh này vào nó. Tạo tệp .vimrc mới nếu chưa có trong thư mục chính của bạn, hãy chạy echo $HOME
để kiểm tra đường dẫn thư mục chính.)
vim
và không vi
. Hầu hết các tính năng nâng cao và hữu ích của vim
đều bị tắt theo mặc định trừ khi bạn khởi động nó bằng vim
.
set nocompatible
trên một dòng riêng trong vimrc
Ubuntu được cung cấp theo mặc định vim-tiny
, không có tất cả các chuông và còi mà vim có.
Làm nhanh sudo apt-get install vim
để nhận được tất cả các tính năng hấp dẫn mà mọi người đang nói về.
:set term=builtin_ansi
đã sửa nó cho tôi. Bạn có thể dán nó vào vim khi đang ở chế độ thoát, (chế độ bleep) hoặc thêm nó vào cuối ~ / .vimrc mà không có ":" ở đầu
:set term=builtin_ansi
đã làm việc cho tôi. :set term=xterm
đã không.
export TERM=xterm
trên dòng lệnh trước khi gọi vi và sau đó :set term=xterm
trong vim 7.2 công trình đối với tôi
vi không hỗ trợ các phím mũi tên trong chế độ chèn. Sử dụng vim. Mặc dù vi của bạn có thể chỉ là một liên kết đến vim, nó có thể được cấu hình để hoạt động giống như vi "gốc" và do đó vô hiệu hóa các phím mũi tên. Chỉ cần gọi trực tiếp vim.
vi
và vim
. Nhưng trên hộp của tôi có vim
in command not found
: D
Tuy nhiên, một biến thể khác: vấn đề này xuất hiện đối với tôi sau một số thay đổi .vimrc. Một cuộc tìm kiếm phối hợp cuối cùng tiết lộ rằng việc lập lại bản đồ thông minh của tôi về ESC ở chế độ bình thường không phải là một ý kiến hay. Xóa nó đã giải quyết được vấn đề:
" this is NOT something you want in .vimrc:
" In normal mode, hitting Esc turns off search highlights:
nmap <ESC> :nohl<CR> " Do NOT add this to .vimrc
Điều duy nhất phù hợp với tôi là ": set term = ansi"
vi
bên nào trên windows hay bên ubuntu? :)
Tôi đã gặp vấn đề tương tự với các phím mũi tên, nhưng khi tôi sử dụng đã đặt nocp hoặc không tương thích thì phím xóa lùi của tôi không hoạt động chính xác
vì một số lý do khi tôi cài đặt vim với
sudo apt-get install vim
, vi không gặp bất kỳ sự cố nào với các mũi tên hoặc phím xóa lùi nữa
Tôi vừa gặp sự cố với các phím mũi tên sau khi chuyển sang sử dụng git trong .vim.
Tôi đã cài đặt repo này - https://github.com/sunaku/.vim
và sau khi tìm hiểu trong một giờ, tôi thấy rằng plugin AutoClose (mà tôi không thích) đã làm hỏng các phím mũi tên.
Tài liệu plugin gợi ý rằng người ta nên đặt set ttimeoutlen = 100, nhưng điều đó không hiệu quả với tôi! (sử dụng urxvt + screen hoặc urxvt và thậm chí cả xterm)
Vì vậy, tôi đã gỡ bỏ plugin ở cuối.
Bạn cũng có thể muốn thử 'noesckeys'
Trong dòng lệnh viết thế này:
EXINIT="set nocompatible"; export EXINIT