Trong trình chỉnh sửa dòng ZSH, làm thế nào để chèn một dòng mới?


13

Giả sử tôi đang chỉnh sửa một dòng duy nhất, với con trỏ của tôi ở vị trí được chỉ định:

$ abc  def ghi

Bây giờ tôi muốn chia thành hai dòng và tiếp tục chỉnh sửa (như nhấn ENTER sẽ làm trong trình chỉnh sửa văn bản):

$ abc
$  def ghi

Có cách nào để làm điều này trong ZSH không?


Nên abcđược thực thi hoặc bạn muốn chèn một \nký tự ở vị trí con trỏ?
mpy

Câu trả lời:


14

Trong emacschế độ của ZLE :

... các Control+ Vký tự (ASCII SYN) là ràng buộc để các quoted-insertwidget. Vì vậy, chỉ cần nhập Control+ Vsau đó Control+ J(ASCII LF).

Trong vichế độ của ZLE :

Các ký tự Control+ Q(ASCII DC1) và Control+ Vđược liên kết với vi-quoted-insertwidget. Vì vậy, một lần nữa chỉ cần nhập Control+ V, sau đó Control+ J.

Nhớ lại:

Dòng mới ở giữa dòng lệnh tách lệnh. (Theo thuật ngữ của zshhướng dẫn sử dụng: cả dòng mới và ;chấm dứt danh sách .) Trích dẫn dòng mới nếu bạn không muốn điều đó.


Tôi đã có thể liên kết chế độ emacs với Shift + Enter để tự động chèn một trích dẫn được trích dẫn. Tuy nhiên vì tôi đã chuyển sang chế độ vim, nó không hoạt động. Có cách nào để làm cho nó hoạt động trong chế độ vim?
CMCDragonkai

Trong chế độ emacs, bạn cũng có thể chèn một dòng mới với M-Return.
SilverWolf - Phục hồi Monica

1

Đây là cách "vimmer" trong chế độ vi ZLE không liên quan đến ctrlhợp âm.

nếu dòng của bạn trông như sau và bạn đang ở chế độ bình thường : $ abc ꕯ def ghi

gõ này: DoESCp

tổng số lần nhấn phím: 4.

giải trình:

`D` cuts from cursor to the end of the line and places cut string in register
`o`opens a new line places the cursor in it, and switches to insert mode
`<esc>` switches to normal pode
`p` paste register content.

1

Sử dụng ⌥↩︎ ( Option / Alt+ Return) hoặc ⎋, ( Escsau đó Return).

Điều này sẽ chỉ hoạt động nếu bạn đã gọi bindkey -etrước đó hoặc ở đâu đó trong .zshrc của bạn.


PS: Cái này cũng hoạt động trong OS X ! Nếu bạn nhấn ⌥↩︎ in, giả sử, hộp Tin nhắn, bạn sẽ nhận được một dòng mới. Mặc dù vậy, không hoạt động trong các hộp bình luận SE. (:
SilverWolf - Phục hồi Monica
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.