Emacs pindah ke spasi putih berikutnya

9

Di emacs ada fungsi forward-worddan backward-word. Apakah ada juga fungsi yang memindahkan titik ke spasi putih berikutnya / terakhir?

Julia
sumber
Bukankah ini setara dengan banyak kasus? Apa gunanya ada fungsi yang berbeda diperlukan?
H.-Dirk Schmitt
1
Misalnya jika memiliki kata umum seperti\a_command_with_special-characters
Julia

Jawaban:

7

Anda dapat memodifikasi properti sintaksis karakter menggunakan modify-syntax-entryfungsi ( C-h f modify-syntax-entrydalam emacs untuk info lebih lanjut):

Misalnya, jika Anda menulis dokumen .tex, Anda dapat menambahkan yang berikut ini ke .emacs:

(add-hook
 'TeX-mode-hook
 '(lambda ()
    (modify-syntax-entry ?_ "w")
    (modify-syntax-entry ?- "w")
))

Ini memberitahu emacs untuk memperlakukan _dan -sebagai "kata" karakter ketika Anda berada dalam mode TeX, sehingga kata maju dan kata mundur akan melakukan apa yang Anda inginkan.

Dean Serenevy
sumber
9

Gunakan forward-whitespaceuntuk maju dengan spasi, tab atau baris baru. Beberapa ruang diperlakukan sebagai satu pembatas. Dengan argumen negatif, mundur dengan jumlah spasi putih tersebut.

David R. McWilliams
sumber
1
Adakah cara untuk maju ke spasi putih setelah blok teks, tanpa melewatkannya? forward-whitespace tampaknya melompat ke akhir baris ketika saya memiliki spasi tambahan pada sebuah garis. Saya benar-benar hanya ingin menemukan ruang trailing pertama. Terima kasih atas bantuannya.
Dave
@Dave: (lambda () (forward-whitespace) (forward-whitespace -1))
Dean Serenevy