Pertimbangkan baris perintah bash berikut, di mana ^ menunjukkan lokasi kursor:
svn commit -m very/long/path/to/some/file "[bug 123456] Fix the pixel issue"
^
Saya ingin mengkomit file yang berbeda dengan pesan yang sama. Bagaimana saya bisa menghapus kata saat ini, dari lokasi kursor ke ruang berikutnya? Apakah ada juga cara pintas untuk penghapusan mundur, membentuk kursor ke ruang pertama mundur?
Perbarui: ctrl + whapus mundur, tetapi pintasan mana yang menghapus satu kata ke depan?
command-line
bash
shortcut-keys
Adam Matan
sumber
sumber
Ctrl u
adalah opsi untuk menghapus dari lokasi kursor ke awal ...alt + d
, itu mungkin berguna, ketika mode pengeditan emacs diatur.set -o emacs
mengaktifkannya, tetapi biasanya default; jika tidak, Anda dapat meletakkan baris itu di.bashrc
atau.bash_aliases
, lalu sumber file atau memuat ulang terminal. Namun, maka pintasan yang Anda gunakan dalam mode vi tidak akan tersedia, meskipun yang seperti ctrl + c akan karena mereka bukan pintas Bash.Jawaban:
Saya menjawab pertanyaan serupa di unix.stackexchange.com :
Satu-satunya perbedaan adalah Anda harus menggunakan perintah "shell-kill-word", karena Anda ingin menghapus maju.
Ada juga perintah "kill-word" dengan Meta+ dshortcut (coba Esc+ djika Anda tidak memiliki kunci Meta). Ini akan menghapus hanya satu bagian jalur sekaligus.
sumber
"\ew": shell-kill-word
yang akan membuat Alt-w meneruskan menghapus kata, seperti CTRL-w mundur menghapus kata (dan tidak seperti Alt-d yang akan meneruskan menghapus tetapi berhenti pada misalnya a / atau - dan karakter lainnya)Diuji kedua esc+ ddan alt/ opt+ dpada OSX Mavericks dan mereka bekerja di sana juga.
sumber
Option + d
memberi saya ∂ di OSXcontrol + d
di mac Sierra