Dalam Bash (shell terminal Mac / Linux), dapatkah tombol panah atas dan bawah dibuat berfungsi seperti halnya editor teks?


8

Di editor teks, jika saya menekan tombol panah atas dan bawah, itu akan memindahkan kursor di antara baris teks.

Di Bash, jika saya mengetikkan perintah panjang yang membentang beberapa baris dan saya menekan tombol panah atas dan bawah, itu akan menelusuri sejarah perintah.

Saya ingin perilaku sebelumnya di Bash. Apakah ini mungkin? Jika tidak, apakah ada setiap cara untuk memindahkan kursor langsung naik atau turun dalam perintah multi-baris?


Mereka bergerak di antara garis ... hanya saja garisnya sangat panjang.
vonbrand

Jawaban:


11

Tidak, itu tidak mungkin. Bash menggunakan GNU Readline untuk menangani input jalur interaktif. Tidak ada perintah di Readline yang bergerak di antara garis tampilan seperti yang Anda inginkan, juga tidak ada variabel konfigurasi yang sebanding dengan variabel garis-bergerak-visual dari GNU Emacs yang menyebabkan baris berikutnya dan baris sebelumnya bergerak oleh garis tampilan.


Mengecewakan, tapi terima kasih! Dan saya pikir jawaban untuk pertanyaan lain akan bermanfaat bagi orang-orang dengan pertanyaan yang sama: stackoverflow.com/questions/657130/…
Frungi


3

Mungkin Anda sedang mencari sesuatu seperti xiki. Ini seperti shell / editor teks.

Ini demo video: http://youtu.be/bUR_eUVcABg


Xiki terlihat luar biasa! Saya ingin sesuatu seperti itu dapat berjalan di windows ...
Maks

2
@ Max menurut halaman proyek github, "Kami baru saja menambal el4r, jadi ada kemungkinan Xiki bisa bekerja di windows." Anda dapat memeriksanya di sini: github.com/trogdoro/xiki
jason

Ini mengejutkan rapi dan kutu buku, tetapi sebenarnya bukan apa yang ingin saya lakukan. Saya hanya ingin menggunakan Bash atau shell umum lainnya. Terimakasih Meskipun!
Frungi

3

Anda bisa menggunakan Ctrl+ Leftdan Ctrl+ Rightuntuk menavigasi kata-kata daripada karakter, dan Homedan Enduntuk pergi ke awal dan akhir perintah yang diketik.


2
Juga, Ctrl + A untuk pergi ke awal dan Ctrl + E untuk pergi ke akhir
ignis

1
@ign Anda harus memasukkannya ke dalam jawaban.
evilsoup

2

Lihat juga halaman bash(1)manual di bawah bagian heading Commands for Movinguntuk pintasan navigasi lainnya.


1

Ctrl + A untuk pergi ke awal dan Ctrl + E untuk pergi ke akhir perintah.

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.