Bagaimana cara memasukkan baris baru dan melompat ke sana, di emacs?


12

Persis sama dengan gerhana Shift+Enter.

Misalnya saya punya beberapa teks:

Hello, *everyone.
I'm Freewind.

Baris *pertama adalah kursor. Lalu saya tekan beberapa tombol pintas, menjadi:

Hello, everyone.
*
I'm Freewind.

Perhatikan ada baris baru di baris kedua, dan kursor ada di baris baru.

Apa cara pintas kunci yang dapat saya gunakan?


3
Saya selalu menggunakan Ce dan kemudian masuk.

Jawaban:


16

C-e C-m

atau

C-e C-j

Keduanya akan pindah ke akhir baris dan menambahkan baris baru. Yang kedua juga akan membuat indentasi.


Bisakah saya memetakan kunci untuk melakukan pekerjaan ini, jadi saya hanya perlu menekan sekali?
Freewind

Itu adalah pemetaan kunci. Emacs memungkinkan perintah yang mengikat pada urutan kunci dan sebagian besar perintah adalah dua kunci. Biasanya merupakan ide yang buruk untuk mengikat ke satu kunci karena sebagian besar ikatan satu kunci diambil oleh fundamental emacs.
Ross Patterson

C-ememanggil move-end-of-linedan C-mmemanggilnewline
Dror

10

Untuk kelengkapan di sini adalah fungsi:

(defun end-of-line-and-indented-new-line ()
  (interactive)
  (end-of-line)
  (newline-and-indent))

(global-set-key (kbd "<S-return>") 'end-of-line-and-indented-new-line)

Terima kasih, tetapi bagaimana saya menggunakannya? Hanya memetakan kunci untuk fungsi ini? Bisakah saya memetakan "Shift-Enter" ke sana?
Freewind

@Freewind answer updated
Trey Jackson

3
Jika Anda menggunakan comment-indent-new-linesebagai gantinya, itu juga akan memasukkan karakter komentar yang sesuai jika Anda saat ini di dalam komentar.
phils

6

Anda dapat membuat sesuatu yang mirip dengan makro keyboard seperti ini.

(global-set-key (kbd "<S-return>") "\C-e\C-m")

atau memang:

(global-set-key (kbd "<S-return>") (kbd "C-e C-m"))

untuk menghindari penggunaan dua jenis sintaksis yang berbeda untuk kunci.

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.