Konfigurasi mode Bash vi ke default ke mode perintah


14

Apakah mungkin untuk mengkonfigurasi mode bash vi sehingga pada awalnya berada dalam mode perintah dan bukan pada mode insert ? Saya menemukan bahwa saya harus menekan Escterlalu banyak. Tampaknya ada kemungkinan untuk menentukan ini di zsh, tapi saya belum menemukan cara untuk melakukan ini di bash / readline.

Jawaban:


2

Saya tidak berpikir itu mungkin dengan menggunakan GNU Readline Library standar .

Namun, Anda mungkin dapat menggunakan xdotool untuk peretasan sederhana untuk mencapai efek yang sama. Menambahkan perintah ke Anda .bashrcyang mensimulasikan Escapepenekanan tombol akan memastikan bahwa istilah Anda dibuka dalam mode perintah:

xdotool key Escape

Anda mungkin ingin menggunakan sedikit penundaan, dengan --delaysakelar, untuk mencegahnya agar tidak muncul segera ...

Perhatikan bahwa ini cenderung menimbulkan lebih banyak frustrasi daripada yang Anda harapkan: terminal dirancang untuk menerima input; melanggar itu (meskipun hanya sedikit) mungkin tidak membuktikan ide yang bagus ...


1

Saya ambil kembali, ini tidak berfungsi dengan gerakan kursor. Ini bekerja, tetapi dengan perilaku lucu, jika Anda mengeluarkannya:PS1="$PS1 ^[


Ubah PS1prompt Anda :

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

Di mana ^[pelarian literal ( Ctrl+ V Esc).

Pelarian sendiri di tengah perubahan ke mode perintah, ^[[sdan ^[[ulolos menyimpan dan mengembalikan posisi kursor; tanpa itu, saya menemukan ada perilaku lucu.


1

Jawabannya adalah tidak . File sumber bash yang relevan adalahbashline.c


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.