Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. General
Code

10 khó khăn hàng đầu khi chuyển sang Vim

by
Length:LongLanguages:

Vietnamese (Tiếng Việt) translation by Andrea Ho (you can also view the original English article)

Hãy thừa nhận: mỗi khi bạn nhìn thấy ai đó sử dụng Vim, bạn sẽ cân nhắc khả năng họ biết điều gì đó mà bạn không biết. Tại sao họ lại sử dụng một editor mà trong suy nghĩ của bạn là thứ rác mã nguồn mở lỗi thời? Hãy nghĩ đến điều bạn muốn, nhưng có một lý do tại sao các nhà phát triển hàng đầu tự tin vào Vim.

Hướng dẫn đã tái xuất bản

Cứ sau vài tuần, chúng tôi sẽ xem lại một số bài đăng yêu thích từ độc giả trong suốt lịch sử của website. Hướng dẫn này được xuất bản lần đầu tiên vào tháng 2 năm 2011.

Trừ khi khi bạn dành ít nhất một tháng hằng ngày làm việc với editor, chắc chắn bạn sẽ ghét nó! Đây là lý do tại sao phần lớn những người mới sẽ làm việc với Vim trong một ngày, trở nên chán ghét và không bao giờ dùng lại nó nữa. Điều không may là nếu những nhà phát triển này có thể vượt qua những cạm bẫy, họ sẽ được biết đến tốc độ và tính linh hoạt đáng kinh ngạc.


1. Có quá nhiều chế độ

Đó là sự thật: Vim không phải là code editor tiêu chuẩn của bạn (nó tốt đấy). Giả sử chuyển đổi từ TextMate sang Vim sẽ là một quá trình hoàn toàn khác so với việc chuyển từ TextMate sang Espresso. Hãy luôn ghi nhớ điều đó khi bạn vò đầu của mình vì dường như Vim từ chối việc bạn nhập văn bản vào.

Mặc dù có nhiều chế độ trong Vim, chúng tôi sẽ tập trung vào ba chế độ quan trọng nhất. Nhưng trước khi chúng tôi tiếp tục, hãy lưu ý rằng mỗi khóa phục vụ một chức năng khác nhau, tùy thuộc vào chế độ bạn đang sử dụng. Ban đầu thậm chí khó hiểu hơn - một chữ in hoa kích hoạt một hành động khác so với chữ thường.

Trong chế độ lệnh, nhấn chữ thường "i" sẽ kích hoạt "Insert Mode". Tuy nhiên, chữ hoa "I" sẽ di chuyển con trỏ đến đầu dòng. Nghe có vẻ khó hiểu, nhưng nó mang đến cho bạn sức mạnh đáng kinh ngạc!

  • Command (câu lệnh): Theo mặc định, Vim nên nghỉ trong chế độ lệnh. Hãy xem chế độ này là chế độ "đi loanh quanh". Mặc dù, trong editor truyền thống, bạn có thể quen với việc sử dụng chuột hoặc các phím mũi tên để duyệt tài liệu của mình, chế độ lệnh của Vim giúp quá trình nhanh hơn và "ít dùng chuột hơn".
  • Insert: Nhấn chữ thường "i" trong chế độ lệnh sẽ chuyển bạn thành "Insert Mode". Những người mới sử dụng Vim sẽ thấy chế độ này quen thuộc. Tuy nhiên, kết quả là, họ thường ở trong chế độ này lâu hơn mức cần thiết (tôi biết tôi đã như thế). Theo nguyên tắc thông thường, insert mode nên hoàn toàn được sử dụng cho mục đích duy nhất là chèn văn bản. Khi kết thúc, hãy tức thì trở lại chế độ lệnh.
  • Visual: Hãy xem visual mode là chế độ "selection" (chọn lựa). Cần chọn 5 dòng tiếp theo và xóa chúng? Với code editor thông thường, bạn có thể sử dụng chuột để 5 dòng theo cách trực quan, sau đó nhấn phím backspace. Mặt khác với Vim, bạn sẽ nhấn chữ V hoa để chuyển sang chế độ Visual và sau đó nhập 5j để chọn xuống 5 dòng. Cuối cùng, bạn nhấn d, để xóa.

Tôi biết điều này nghe có vẻ khó hiểu lúc đầu. Bạn có thể tự nghĩ: "Tất cả chỉ dùng để xóa 5 dòng?" Mặc dù vậy, sự thật là phương pháp này nhanh hơn đáng kể.


2. Editor xưa cũ

Tại sao bạn lại phủ nhận sau hơn ba thập kỷ phát triển?

Bạn có thể nghe bạn bè của bạn nói, "Không phải Vim là một code editor xưa cũ sao?" Vâng, bạn có thể nói rằng; nó đã tồn tại hơn ba mươi năm. Mặc dù thành thật mà nói, tại sao bạn lại phủ nhận qua hơn ba thập kỷ phát triển? Nó còn lâu hơn cả thời gian tôi sống! Hơn nữa ngay cả đến ngày nay, Vim vẫn đang được tích cực phát triển. Bản phát hành gần đây nhất - 7.3, đã xuất bản vào tháng 8 năm 2010.

Thứ hai, điều quan trọng cần nhớ là Vim không phải là Vi. Nếu trải nghiệm duy nhất của bạn là với cái sau, hãy dành chút thời gian để tải xuống bản phát hành và đồ chơi mới nhất gồm có các tính năng mới. Bạn sẽ có ngạc nhiên thú vị!


3. Tôi yêu các snippet của TextMate

Nếu Vim nguyên bản thực sự không thể làm điều đó, bạn có thể đặt cược rằng sẽ có sẵn một plugin cho nó!

Bạn sẽ nhanh chóng thấy rằng, nếu Vim không thể thực hiện một tác vụ cụ thể, thì có khả năng là một plugin đã được phát triển để cung cấp chức năng đó. Ví dụ, hãy xem xét tính năng snippet tuyệt vời của TextMate. Mặc dù Vim không hỗ trợ chức năng này một từ nguyên bản nhưng bạn có thể tải xuống plugin snipMate, nó sẽ mang đến trải nghiệm gần như giống hệt với cái bạn đã từng sử dụng.

Tìm hiểu thêm về việc chuyển sang Vim từ TextMate


4. Tôi không thể sử dụng các phím mũi tên

Di chuyển càng ít càng tốt.

Thứ nhất, điều này không đúng. Nó có thể là trường hợp của Vi, nhưng bạn có thể sử dụng Vim theo cách mà bạn cảm thấy thoải mái nhất. Vì vậy, hãy sử dụng các phím mũi tên cho nội dung yêu thích của bạn - dù vậy hãy nhớ rằng có lý do để hầu hết người dùng Vim không làm vậy.

Các phím h, j, k,l ý chỉ tương ứng sang trái, xuống, lên và phải`, có hai mục đích:

  • Không có lựa chọn: Trước đây, máy móc không có các phím mũi tên hữu ích đó. Như vậy, họ có ít lựa chọn nhưng phải chọn phương án thay thế tốt nhất.
  • Ít di chuyển: Nếu bàn tay của bạn thường nằm dọc theo hàng thứ hai của bàn phím, sẽ không hợp lý khi liên tục di chuyển bàn tay của bạn sang phần dưới bên phải của bàn phím mỗi khi bạn muốn di chuyển con trỏ. Càng ít chuyển động, càng tốt. Với sự sắp dặt này, bạn có thể duyệt qua các tài liệu của mình mà không cần di chuyển một inch.

Khi tất cả được hoàn thành, bạn là người sử dụng editor. Nếu, lúc đầu, bạn cảm thấy thoải mái hơn khi sử dụng các phím mũi tên, thì hãy thực hiện bằng mọi cách!


5. Tôi là một nhà thiết kế, anh bạn

Ổn thôi! Vim không dành cho tất cả mọi người. Một người ít nhất cố gắng làm công việc thiết kế thời gian dài, tôi hoàn toàn có thể chứng thực rằng Vim có thể không phù hợp, nhất là cho các nhà thiết kế.

Nhà phát triển không phải là nhà thiết kế; đây là sự thật tự nhiên được phản ánh theo chọn lựa editor của họ.

Nếu bạn thấy rằng phần lớn số ngày của bạn được dành để làm việc với HTML và CSS, thì có lẽ Vim không dành cho bạn. Bây giờ, điều đó không có nghĩa là bạn không nên cho nó một shot; nhưng điều đó chắc chắn dễ hiểu, nếu bạn quyết định gắn bó với một editor thân thiện hơn với nhà thiết kế, chẳng hạn như Coda.


6. Vim mang đến những điều mà editor hiện tại của tôi đã có rồi

Đơn điệu và đơn giản, đó là điều vô giá trị. Dĩ nhiên, mọi editor đều có những điểm mạnh, nhưng bạn sẽ nhận ra rằng Vim cực kỳ mạnh mẽ và quan trọng hơn là rất linh hoạt. Có hàng trăm plugin sẵn có (miễn phí) sẽ cung cấp hỗ trợ cho hầu hết mọi kiểu chức năng mà bạn yêu cầu.

Nhiều người mới thường dẫn chứng lệnh có sẵn "Change Inner" tích hợp như một tính năng siêu hấp dẫn. Nó chắc chắn là dành cho tôi! Bạn có code sau:

Giả sử rằng con trỏ ở đầu dòng đó và bạn muốn thay đổi giá trị "plumber" thành "black", theo truyền thống, bạn có thể sử dụng các phím mũi tên hoặc chuột để chọn và thay đổi văn bản. Với Vim, quá trình này được đơn giản hóa rất nhiều. Đơn giản chỉ cần gõ: ci'. Chữ này là viết tắt của "Change Inner Quotes" hoặc, tìm tập hợp dấu ngoặc đơn tiếp theo và thay đổi giá trị bên trong.

Plugin Kick-Ass

  • snipMate: Ví dụ, cho phép bạn nhập
    + tab và có phần tử div đầy đủ được mở rộng. Rất hữu ích.
  • Surround: bao quanh các phần văn bản bằng parens, tag, brace, v.v.
  • NerdTree: Khám phá hệ thống file của bạn và để mở các file và thư mục. Nó trình bày hệ thống tập tin cho bạn dưới dạng cây mà bạn thao tác bằng bàn phím và / hoặc chuột. Nó cũng cho phép bạn thực hiện các hoạt động đơn giản của file hệ thống.
  • TComment: Dễ dàng và nhanh chóng nhận xét một số dòng code của bạn.
  • Sparkup: Tương tự như ZenCoding, nhưng cũng cung cấp nhiều hỗ trợ hơn để áp dụng các giá trị cho các phần tử, chẳng hạn như: ul > li {Mục tiếp theo trong danh sách. }.

  • 7. File Vimrc của tôi trống

    Đây cũng là một bó buộc ban đầu mà tôi gặp phải với Vim. Khi lần đầu tiên ra mắt, MacVim bạn bị ném vào bầy sói! Không có highlighting (nổi bật mã), không định dạng, không thụt lề thông minh ... không có gì! Đặc biệt nếu bạn đang sử dụng editor Vim tùy biến, ít nhất nên có một file vimrc nền tảng để bạn bắt đầu. Nó có thể là một kinh nghiệm đáng sợ khi cố gắng tìm ra cách áp dụng các chọn lựa tùy chỉnh của bạn.

    Đối với những người không quen thuộc với file vimrc, về cơ bản đây là file cho phép bạn xác định các tùy chọn editor của mình.

    Hãy sử dụng cái này làm khởi điểm (nhấp vào nút Expand bên dưới):


8. Tôi không muốn sử dụng terminal

Tôi cũng vậy không muốn - có nhiều editor cho chuyên dụng cho Vim cung cấp trải nghiệm giống như Windows/Mac GUI hơn.

Các editor này sẽ cung cấp hỗ trợ cho các loại tổ hợp phím đã ăn sâu vào bạn, chẳng hạn như "Command + F" để tìm kiếm hoặc "Command + W" để đóng cửa sổ hiện tại.


Hãy nhớ rằng, ở trường, đôi khi, bạn học ngồi cạnh có thể giải thích và giúp bạn hiểu một số khái niệm dễ hơn giáo viên? Lý do là bởi vì một khi bạn đã thành thạo một kỹ năng, thì rất khó để nhắc lại điều mang đến cho bạn nhiều rắc rối nhất. Từ tháng 9 đến tháng 10, tôi bắt đầu thử thách diễn ra trong bốn tuần, mà tôi gọi là "Thám hiểm Vim". Sau khi nghe vô số nhà phát triển cực kỳ tài năng ca ngợi code editor kéo dài hàng thập kỷ này, tôi đã quyết định rằng nó đáng giá một tháng thời gian của tôi để tìm hiểu tại sao rất nhiều người coi Vim là editor tốt nhất hành tinh.


10. Tôi không thể chỉnh sửa file trên máy chủ của mình

Tất nhiên, bạn có thể, mặc dù, phải thừa nhận là không hoàn toàn thân thiện với người dùng như, tính năng máy chủ từ xa (remote server) của Coda. Nói về Panic, nếu bạn là người dùng Transmit, bạn có thể cân nhắc cài đặt plugin Transmit FTP.

"Script này cho phép bạn tải lên file hiện tại trực tiếp từ Vim thông qua Transmit. Để nó hoạt động, bạn cần phải làm việc với file được gắn với kết nối Transmit và kết nối này phải kích hoạt "DockSend`".

Với plugin này, khi chỉnh sửa file có kết nối Transmit (mở file qua Transmit), bạn chỉ cần nhấn Control + U để đẩy các cập nhật đó trở lại máy chủ từ xa. Đó là một công việc dễ dàng!

Mặc dù vậy, thật ra, bạn nên cố gắng áp dụng quy trình xây dựng/triển khai tốt hơn. Bằng cách này, thay vì sử dụng FTP, bạn chỉ cần git push.


Dĩ nhiên có một số lý do để không sử dụng Vim. Nó yêu cầu quá trịnh học quá cao và đòi hỏi phải xem xét lại hoàn toàn về cách một mà một editor hoạt động. Thậm chí như vậy vẫn có hàng trăm lý do để bạn nên sử dụng Vim. Câu hỏi duy nhất là: tại sao không phải bạn?

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.