Langsung ke karakter non-spasi pertama sejalan dengan emacs

59

Saya mencari setara emacs vi ^.

Bagaimana saya bisa memindahkan kursor ke karakter non-spasi pertama dalam satu baris?

Alexander Bird
sumber

Jawaban:

93

Perintahnya adalah back-to-indentation, terikat secara default ke M-m.

Sean
sumber
12

Inilah yang saya ambil dari pertanyaan Stack Overflow sebelumnya :

(defun smart-beginning-of-line ()
  "Move point to first non-whitespace character or beginning-of-line.

Move point to the first non-whitespace character on this line.
If point was already at that position, move point to beginning of line."
  (interactive)
  (let ((oldpos (point)))
    (back-to-indentation)
    (and (= oldpos (point))
         (beginning-of-line))))
(global-set-key [home] 'smart-beginning-of-line)
(global-set-key "\C-a" 'smart-beginning-of-line)
George
sumber
ini bukan yang diminta pengguna; ^ dalam vim tidak melakukan ini; M-mpersis analog ^dalam vim dan karenanya jawaban yang tepat.
xdavidliu
1

Anda dapat menginstal crux

ketik C-auntuk mengalihkan kursor antara awal baris dan karakter non-spasi pertama

Jerry Zhang
sumber
pertanyaannya tidak meminta untuk beralih antara karakter non-spasi pertama dan kolom pertama, itu hanya meminta analog ^in vim, yang tepatnya M-m.
xdavidliu