Làm cách nào để chuyển giữa các thẻ khớp (chẳng hạn như <div>
, <span>
v.v.) khi chỉnh sửa các tài liệu HTML / XHTML / XML tương tự như %được sử dụng để chuyển giữa các dấu ngoặc phù hợp?
Làm cách nào để chuyển giữa các thẻ khớp (chẳng hạn như <div>
, <span>
v.v.) khi chỉnh sửa các tài liệu HTML / XHTML / XML tương tự như %được sử dụng để chuyển giữa các dấu ngoặc phù hợp?
Câu trả lời:
Vim vận chuyển với một macro được gọi là matchit thực hiện điều này cho bạn; tất cả những gì bạn cần làm là kích hoạt nó runtime macros/matchit.vim
trong vimrc của bạn. Điều này sẽ cho phép bạn nhảy từ, ví dụ, a <div>
sang nó </div>
. Lưu ý rằng con trỏ của bạn sẽ phải nằm trong dấu ngoặc nhọn; nếu bạn đang ở trong ngoặc vuông, %sẽ nhảy từ khung này sang khung khác như bình thường.
Bạn có thể chuyển giữa các thẻ bằng các toán tử trực quan, ví dụ:
Con trỏ của bạn sẽ nhảy về phía trước để đóng thẻ html / xml phù hợp. Để nhảy lùi từ thẻ đóng, nhấn ohoặc Ođể nhảy sang thẻ đối diện.
Bây giờ bạn có thể thoát trực quan bằng cách nhấn Esc, thay đổi nó bằng choặc sao chép bằng y.
Để ghi lại hành động đó vào đăng ký, nhấn qqđể bắt đầu ghi, thực hiện nhảy thẻ như trên (bao gồm Esc), nhấn qđể hoàn tất. Sau đó để gọi nhảy, nhấn @q.
Xem thêm trợ giúp tại :help visual-operators
hoặc :help v_it
:
at một
<tag> </tag>
khối (có thẻ)it
<tag> </tag>
khối bên trong
Hoặc sử dụng plugin như matchit.vim hoặc Surround.vim .
Xem thêm:
Các xmledit
( http://vimawesome.com/plugin/xmledit ) Plugin cho phép để nhảy giữa các thẻ mở và đóng bằng
Thường thì <locallhead> sẽ có \, vì vậy bạn có thể nhảy với
LƯU Ý: Không giống như matchit
, bạn không phải đặt con trỏ vào trong thẻ. Đặt nó ngay trên <
hoặc >
hoàn toàn tốt cho xmledit
plugin. :)
CHÚ THÍCH 2: Một nhược điểm ở đây là, bạn không thể sử dụng nó trong chế độ trực quan. Nhưng đây không phải là vấn đề lớn, vì bạn luôn có thể chọn toàn bộ thẻ at.
>
nó sẽ hoạt động như trước, nếu bạn sử dụngdiv
nó sẽ hoạt động như bạn muốn).