Cấu hình chế độ Bash vi để mặc định thành chế độ lệnh


14

Có thể định cấu hình chế độ bash vi để ban đầu nó ở chế độ lệnh thay vì ở chế độ chèn không? Tôi thấy rằng tôi phải nhấn Escquá nhiều. Có vẻ như có khả năng chỉ định điều này trong zsh, nhưng tôi chưa tìm thấy cách nào để làm điều này trong bash / readline.

Câu trả lời:


2

Tôi không nghĩ có thể sử dụng Thư viện Đọc chuẩn GNU .

Tuy nhiên, bạn có thể sử dụng xdotool cho một hack đơn giản để đạt được hiệu quả tương tự. Việc thêm một lệnh vào .bashrcmô phỏng Escapephím của bạn sẽ đảm bảo rằng thuật ngữ của bạn được mở trong chế độ lệnh:

xdotool key Escape

Bạn có thể muốn sử dụng một chút chậm trễ, với công --delaytắc, để ngăn không cho nó tắt lời nhắc của bạn ...

Lưu ý điều này có khả năng giới thiệu nhiều sự thất vọng hơn bạn mong đợi: thiết bị đầu cuối được thiết kế để chấp nhận đầu vào; phá vỡ điều đó (dù chỉ một chút) có thể không chứng minh một ý tưởng tốt như vậy ...


1

Tôi lấy lại, cái này không hoạt động với chuyển động con trỏ. Nó hoạt động, nhưng với hành vi hài hước, nếu bạn lấy chúng ra:PS1="$PS1 ^[


Thay đổi PS1lời nhắc của bạn :

PS1="test $ \[^[[s^[^[[u\]"

Trong trường hợp ^[là một lối thoát theo nghĩa đen ( Ctrl+V Esc ).

Cuộc vượt biên trên của riêng mình trong những thay đổi giữa chế độ lệnh, ^[[s^[[uthoát lưu trữ và khôi phục lại vị trí con trỏ; không có điều đó, tôi thấy có một số hành vi hài hước.


1

Câu trả lời là không . Tệp nguồn bash có liên quan làbashline.c


-1

thử set +o vi

set -o vi sẽ đưa vào chế độ chỉnh sửa một lần nữa.

http://tldp.org/LDP/abs/html/options.html


Điều đó không hoạt động: nó tắt chế độ vi ...
jasonwryan

vâng tôi đã thử Đúng. Tôi có thể nghĩ về điều này - sử dụng vim, thay đổi cmap (tham khảo: chuyển đổi chế độ trợ giúp trong vim) cho Esckhóa. Ánh xạ tương đương mặc định cho EscCtrl + ]
Nikhil Mulley

Không hoạt động trên ksh88 của tôi.
rahmu
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.