Thực hiện một lệnh trên các dòng phân cách


7

Làm thế nào tôi có thể chạy một lệnh trên tất cả các dòng được phân định, nói bởi \begin{otherlanguage}\end{otherlanguage}?

Ví dụ,

1 This line should not be affected,
2 \begin{otherlanguage}
3 but this should;
4 \end{otherlanguage}
5 this should not.

(Các cmd có thể norm A test.)


Bạn có thể cho chúng tôi một ví dụ khả thi?
romainl

@romainl, vâng, xin lỗi nếu tôi không rõ ràng.
Kem đánh răng

Câu trả lời:


9

Bạn có thể sử dụng dấu phân cách mẫu cho việc này:

:/first/,/second/norm dd

Bạn có thể sử dụng bất kỳ mẫu tìm kiếm xung quanh ,.

Nếu bạn chỉ muốn sử dụng bên trong các mẫu phù hợp, hãy sử dụng + và - như vậy:

:/first/+1,/second/-1 norm dd

1
Rất đẹp. Tôi thấy việc thêm gvào lúc đầu sẽ giúp nếu có nhiều hơn một bộ dấu phân cách.
Kem đánh răng

Tôi tự hỏi liệu một cái gì đó tương tự có thể được sử dụng để thực hiện một lựa chọn trực quan?
Kem đánh răng

Thật thú vị, bạn sẽ có thể bằng cách sửa đổi các nhãn hiệu <>, tôi nghĩ rằng nó đáng giá một câu hỏi khác;)
nobe4

5

Một câu trả lời cụ thể hơn (vì dường như bạn đang chỉnh sửa tệp TeX): nếu bạn sử dụng vimtexplugin (mặc dù LaTeX-Boxcũng có IIRC này), bạn có thể dễ dàng chọn toàn bộ môi trường (không có dòng \begin\endđiểm đánh dấu) bằng cách sử dụng đối tượng văn bản môi trường bên trong ( ie). Vì vậy, giả sử con trỏ là ở đâu đó bên trong các otherlanguagemôi trường, ví dụ bạn có thể được "giải quyết" với một cái gì đó như:

vie:norm A test

Để biết thêm ánh xạ vimtex, xem :h vimtex-default-mappings.

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.