Terminal Friday: Thinking Vim [Một số mẹo]

Xin lỗi vì lỗi chính tả của Gif tôi đã viết rất nhanh

Bài này đã được đăng trên diễn đàn cách đây vài tháng, tôi nghĩ đã đến lúc tôi phải vào blog, nghi ngờ, góp ý, mọi thứ có thể được thực hiện trong ý kiến, xin KHÔNG BAY Nếu bạn không thích Vim, chỉ cần rút khỏi bài đăng 🙂

Tôi sẽ bỏ qua phần cơ bản vì nó sẽ trở nên rất rộng nếu bạn muốn hoặc quan tâm đến việc học nó, tôi khuyên bạn nên chạy từ thiết bị đầu cuối

$vimtutor

Bây giờ có, không cần thêm nữa, chúng ta bắt đầu 😀

Macro trong VIM

Nó có thể không phải là một trong những bí ẩn lớn của vim nhưng thật tốt khi biết vim có hỗ trợ macro, có thể lưu trữ macro từ a . z ; để bắt đầu ghi, bạn chỉ cần nhấn q+thư để dừng ghi chúng ta nhấn q và để gọi macro, nó giống như numero+@+thư.

Trường hợp:
thư: Nó là một chìa khóa của a . z.
numero: Là số lần chúng ta sẽ lặp lại hành động.

Điều này sẽ tạo điều kiện cho nhiều công việc lặp đi lặp lại. Ví dụ; Giả sử chúng ta có những dòng sau:

một ví dụ một hai ví dụ hai ba ví dụ ba bốn ví dụ bốn năm ví dụ năm

Chúng tôi muốn cung cấp cho nó định dạng sau:

'một': 'ví dụ' 'một'; 'hai': 'ví dụ' 'hai'; 'ba': 'ví dụ' 'ba'; 'bốn': 'ví dụ' 'bốn'; 'five': 'ví dụ' 'five';

Đây là nơi macro giúp mọi thứ trở nên dễ dàng hơn với chúng tôi 🙂

VIM

Trình tự được sử dụng:

qa I '[Esc] ea': [Esc] wi '[Esc] ea' [Esc] wi '[Esc] A'; [Esc] 0j q

Sau đó đặt con trỏ vào dòng để thay đổi và sử dụng numero+@+thư trong trường hợp này tôi đã sử dụng 4+@+a

Thay thế

Một công cụ rất quan trọng trong Vim là để thay thế cho điều này, chúng tôi đặt mình ở chế độ Vim Normal bằng cách nhấn Esc sau đó chúng tôi nhấn : và chúng tôi viết lệnh Tôi nói mệnh lệnh bởi vì nó không giới hạn trong việc thay thế. rất giống với RegEx
Ejemplos:

Cách phổ biến nhất để thay đổi một chuỗi ký tự trong toàn bộ tài liệu:

Nhà ga 2

Chỉ huy:

:% s / vim / Vim / g

Thay thế trong tất cả các dòng vim bằng Vim lưu ý: nếu tôi không có dấu hiệu % Tôi sẽ chỉ tìm kiếm dòng mà bạn đang ở

Thay thế giữa một phạm vi nhất định ở đây giữa các dòng 3,5:

Nhà ga 3

Chỉ huy:

: 3,5 giây / Vim / VIM / g

Từ dòng 3 đến dòng 5 thay Vim bằng VIM

Ở đây lưu ý rằng không có g ở phần cuối, nó chỉ chỉnh sửa từ đầu tiên phù hợp

Nhà ga 4

Chỉ huy:

: 3,5 giây / Vim / VIM

Với dòng này, chúng tôi loại bỏ tất cả các dòng có chứa #

Nhà ga 5

Chỉ huy:

:., $ g / # / d

của dòng hiện tại . cho đến khi kết thúc tài liệu $ tìm kiếm các chữ số # và xóa chúng d

Đây là một lệnh sắp xếp phần tệp

Nhà ga 6

Chỉ huy:

: 3, $ sort

Từ dòng 3 đến cuối tài liệu sắp xếp thứ tự

Các lệnh khác

Đây là thủ thuật trong lệnh :r đọc Điều này có tác dụng gì như tên của nó đã nói hahaha đọc, bạn có thể thêm văn bản của tài liệu khác, nhưng trong ví dụ này, chúng tôi thêm chỉ báo ! rằng điều này riêng biệt là để thực thi, có thể thực thi một tập lệnh từ cùng một vim để gỡ lỗi hoặc bất cứ điều gì bạn có thể nghĩ ra ở đây, ví dụ:

Nhà ga 7


Lệnh theo thứ tự xuất hiện:

#Date :: r! Date #Date với định dạng :: r! Date + \% D #List thư mục :: r! Ls Documents

Tôi đang sử dụng các lệnh phổ biến nhưng vim lấy đầu ra của bất kỳ lệnh nào và chèn nó dưới dạng văn bản trong tài liệu.

Và đây chỉ là một phần nhỏ, vẫn còn nhiều điều nữa ... Và những điều mà tôi chưa biết nữa hahahaha.

Lựa chọn

Cuối cùng nhưng không kém phần quan trọng là trạng thái Visual, nơi chúng ta có thể chọn các dòng để thao tác chúng một cách dễ dàng. Có ba loại lựa chọn trực quan.

v Trực quan bằng ký tự
V Trực quan theo dòng
điều khiển+v Trực quan theo khối

Chọn nội dung bên trong dấu ngoặc đơn:
v% Nếu bạn ở đầu / cuối dấu ngoặc
vib Nếu bạn ở trong dấu ngoặc đơn

Nhà ga 8

Chọn nội dung bên trong dấu ngoặc kép hoặc đơn:
vi' Chọn các dấu ngoặc kép
vi" Chọn dấu ngoặc kép

Nhà ga 9

viB Chọn mọi thứ bên trong các phím

Nhà ga 10

Lựa chọn theo dòng

ggVG Chọn toàn bộ tài liệu

Nhà ga 11

Đây là cơ bản gg bắt đầu; nhập bộ chọn trực quan V; và đi đến cuối G.

Lựa chọn theo khối

điều khiển+v

Nhà ga 12

[kiểm soát] v e5j C [viết văn bản] [esc] [esc]

Và trong phần này, bạn nhập bộ chọn trực quan theo khối điều khiểnv, Tôi tiến đến cuối từ, và 5 dòng xuống 5j, tôi xóa từ bằng C, tôi viết văn bản thay thế và nhấn Esc Esc.

Khác giống nhau nhưng thay vì c nó giống như xóa và chuyển sang chế độ chèn tôi sử dụng i vào chế độ chèn I nơi đặt con trỏ.

Tất cả những điều này mà tôi giải thích có vẻ bí ẩn hoặc đại loại như vim ninja hahaha nhưng nó không có gì là không có trong sách hướng dẫn vim Vim có một trong những tài liệu hay nhất mà tôi biết để nhập tài liệu chỉ cần nhập

: Cứu giúp

nếu bạn cần một cái gì đó cụ thể

: help: w

Điều này sẽ đưa bạn trực tiếp đến phần nói về: w bảo vệ.

Bây giờ nếu ... Happy Vim mọi người. 😀


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Nodetin dijo

    Tôi nghĩ tôi sẽ bắt đầu sử dụng Vim 🙂

  2.   Rodrigo bravo dijo

    Bài viết xuất sắc cảm ơn vì đã chia sẻ. Tôi không biết về việc chọn theo khối. Chúc mừng!

  3.   Đầu lâu xanh dijo

    Emacs ..., chắc ai đó đã nói ra thì còn chần chừ gì nữa: D, không, nó không phải là đầu của Flame, giữa Emacs và Vim thì không thể bàn cãi: D, rõ ràng là cái nào trội hơn , và không, không e Vim;).

    1.    blablabla dijo

      Vâng, nó là sự khởi đầu của một ngọn lửa. Hãy cẩn thận với những loại bình luận vì chúng không khách quan. Ngoài ra, nó không đóng góp gì cho những gì bài báo nói. Trân trọng.

    2.    Zironua dijo

      emac! emac! emac! 😀

    3.    một giống én dijo

      Emacs cho quần chúng!
      «[…] Tôi nghĩ ai đó đã phải nói điều đó […]» Hahaha, +1!

      Ăn mặc như vậy, ai đó đi cùng chơi trò kỳ lạ và nói «con trỏ có mũi tên? WASD? Không không, mình sẽ chỉ đường cho bạn, đó là hjkl »và có rất nhiều ánh sáng phía sau>: D

      @Blablabla: thôi rồi, nick của bạn sống động lắm!

    4.    giskard dijo

      Một cuộc khảo sát để xem người đọc nào thích sẽ không bị tổn thương.

  4.   ahdezzz dijo

    Tuyệt quá! Vim cho đến nay là trình soạn thảo văn bản tốt nhất. Hy vọng xuất bản thường xuyên hơn trên trang web này về nhà xuất bản đã nói. Trân trọng.

  5.   Jorge dijo

    Tôi luôn gặp vấn đề khi hiểu macro trong Vim, có một chút thời gian rảnh, tôi sẽ quay thử một chút 😛

    Lưu ý: Đối với người dùng KDE, hãy sử dụng Vim-QT 😀

    Cảm ơn 😀

  6.   eliotime3000 dijo

    Cuối cùng thì chiếc Galaxy Mini của tôi sẽ có thêm một lý do để sống: Tôi không có EMACS, nhưng tôi có VIM.

    Tôi sẽ tính đến các mẹo của bạn.

  7.   kuk dijo

    thông tin tốt cảm ơn 🙂

  8.   Lito dijo

    chia sẻ vimrc của bạn là rất dễ hiểu trực quan dễ chịu :) !!! Mong các bạn chia sẻ giùm mình :)!

    1.    Wada dijo

      Tất nhiên tôi sẽ me để tôi chuẩn bị một bài đăng

  9.   rag91m dijo

    Wow nó trông rất tốt :)! haha Tôi sẽ bắt đầu luyện tập nhiều hơn, và vimrc của bạn trông rất đẹp Oo! Mong các bạn chia sẻ giúp mình với;)!

    1.    Wada dijo

      Thực tế là không nhiều vimrc lắm, nhưng tôi sẽ giải thích rằng tôi đã làm được haha

      1.    rag91m dijo

        haha tốt hơn nhiều :)! vì vậy tất cả chúng ta đều học haha ​​cảm ơn bạn :)! 😉

  10.   Tesla dijo

    Lời khuyên rất tốt Wada. Sự thật là nhu cầu lập trình của tôi rất cơ bản và có lẽ đó là lý do tại sao tôi chưa bao giờ nhìn thấy tiềm năng của Vim. Tuy nhiên, những gì bạn nói có vẻ thú vị với tôi. Tôi sẽ cố gắng áp dụng nó vào thực tế khi tôi phải làm điều gì đó.

    Cảm ơn bạn rất nhiều!

  11.   Jonathan Leonel Gasparini dijo

    Bài xuất sắc! Mặc dù tôi đã biết những lời khuyên này được giải thích rất tốt cho những người không biết chúng!
    Một chút trợ giúp cho người dùng mới, «vimtutor» bằng tiếng Anh, đối với những người muốn hướng dẫn bằng tiếng Tây Ban Nha, chỉ cần gõ «vimtutor es».

    Tôi yêu vim, cuộc sống của tôi sẽ hoàn toàn khác nếu không có anh ấy!
    Tôi đã sử dụng nó được 2 năm và mỗi ngày tôi càng ngạc nhiên hơn =)

    Liên quan

    P / D: Ai muốn xem ví dụ về cấu hình .vimrc thì mình mời xem của mình nhé! =) https://github.com/jlgasparrini/dotvimrc