Ada saat-saat ketika saya mengedit file (manifestasi Wayang, misalnya) di mana saya ingin menyelaraskan konten buffer dengan cepat. Sebagai contoh, saya tahu saya bisa menggunakannyaalign-regexp
atau align
untuk menyelaraskan kode seperti ini, selama saya memilihnya:
# M-x align-regexp "=>" will line everything up nicely
file { "/etc/foo":
ensure => present,
mode => "0666",
source => "puppet:///modules/example/foo",
}
Tapi yang saya inginkan adalah agar ini terjadi dengan cepat - tanpa harus memilih wilayah atau seluruh buffer. Apakah ada paket atau mode yang akan melakukan ini, atau apakah ini sesuatu yang harus dibangun ke mode yang saya minati?
Sunting: Saya bertanya tentang Wayang dan CFEngine, karena itulah yang saya kode di sebagian besar hari ini dan saya memiliki preferensi yang kuat untuk teks selaras. Namun, saya juga penasaran (dan tidak mengungkapkan ini dengan baik) untuk mengetahui apakah on-the-fly alignment adalah fitur yang umum dalam mode Emacs (terutama dalam mode untuk bahasa pemrograman), atau jika kebanyakan orang menyelaraskan saat menyimpan atau di beberapa titik lain.
indent-region
dengan align-to-equals
dan definisikan fungsi ini sebagai (defun align-to-equals (begin end) (interactive "r") (align-regexp begin end "\\(\\s-*\\)=" 1 1 nil))
; dan emacs-lisp-mode-hook
dengan puppet-mode-hook
.