Ini hanya sebagian besar catatan yang menyenangkan tentang bashdan readline, tetapi jika Anda mengatur EDITORvariabel lingkungan Anda vim, menekan Ctrl+ x+ eakan membuka baris saat ini vim. Selanjutnya, jika Anda mengetik Meta(Alt/Opt/Esc)+ Ctrl+ e, bash akan melakukan ekspansi di tempat pada baris perintah saat ini, yaitu:
$ echo $EDITOR # Assuming EDITOR was set
dengan Meta(Alt/Opt/Esc)+ Ctrl+ eakan menjadi
$ echo vim # Assuming EDITOR was set
dengan Ctrl+ x+ eakan menjadi
1 echo vim # Assuming EDITOR was set
~
~
/tmp/sometmpbufferfile
Perhatikan bahwa setelah berhenti vim, isi buffer vim dieksekusi pada baris perintah.
Fitur-fitur ini menjadi sangat berguna bagi saya ketika saya ingin melakukan perintah multi-line di bash seperti untuk loop atau program yang membutuhkan pernyataan di sini, dan menyediakan cara yang menarik untuk menyimpan sedikit sejarah baris perintah ke file untuk digunakan nanti.
Jadi untuk menjawab pertanyaan awal, Anda juga bisa menulis,
$ This is an example
dan kemudian tekan Ctrl+ x+ euntuk memuatnya vim. Anda juga bisa,
$ $(cat /etc/hosts)
dan lakukan Meta(Alt/Opt/Esc)+ Ctrl+ elalu Ctrl+ x+ e, yang akan menempatkan semua file host pada satu baris dan memuatnya vim(mungkin bukan penggunaan terbaik dari fitur-fitur ini - namun, kegunaan metode ini dapat diekstrapolasi dari beberapa contoh yang dibahas sini).
Perhatikan bahwa saya menganggap bahwa Anda readlinediatur ke emacsmode. Jika Anda readlinediatur ke vimmode Anda dapat dengan mudah menemukan binding yang relevan dengan menggunakan perintah:
bind -p
dan mencari edit-and-execute-commandatau shell-expand-line, yang masing-masing terkait dengan binding Ctrl+ x+ edan Meta(Alt/Opt/Esc)+ Ctrl+ e.
:help stdin... Sungguh luar biasa seberapa cepat seseorang dapat menemukan jawaban dengan mengajukan pertanyaan mereka tentang dokumentasi bawaan.