Làm cách nào để tôi “ghi nguồn” nội dung nào đó trong tệp .vimrc của mình?


98

Gần đây, tôi đang làm việc để mở rộng vim-foo của mình và tôi đã chạy qua một số plugin ( ví dụ: autotag.vim ) yêu cầu chúng phải được "lấy nguồn" trong tệp .vimrc của tôi. Chính xác thì điều này có nghĩa là gì và tôi phải làm như thế nào?

Câu trả lời:


117

Tìm nguồn cung ứng một tệp là 'thực thi' nó. Về cơ bản, mỗi dòng của tệp được coi là một lệnh. Tìm nguồn cũng giống như gõ từng lệnh theo thứ tự. Bạn mã nguồn bằng lệnh :source(thường được rút ngắn thành :so).

Vì vậy, nếu bạn nguồn myStuff.vim

:so myStuff.vim

và nếu myStuff.vimchứa những dòng này

set xx iI just intersted this<C-]>
set yy bbbb4dw

Giống như khi bạn gõ các lệnh đó vào Vim

:set xx iI just intersted this<C-]>
:set yy bbbb4dw

Tệp duy nhất có nguồn gốc theo mặc định là .vimrc( _vimrctrên windows) nên đó là nơi bạn có thể giữ tất cả các lệnh bạn sử dụng để thiết lập Vim mọi lúc.

Điều thú vị ở đây là thực tế là vì một tệp có nguồn chỉ là một chuỗi các lệnh và tìm nguồn là một lệnh, bạn có thể lấy nguồn từ tệp nguồn của mình. Vì vậy, các plugin bạn sử dụng mọi lúc có thể được lấy ra khi bạn khởi động Vim bằng cách thêm một dòng vào .vimrcnhư thế này

 so myPlugin.vim

2
Làm gì so!? Tôi chạy nó bởi vì tôi nghĩ rằng nó sẽ cưỡng bức tài nguyên của tôi .vimrcvà nó bắt đầu duyệt qua tệp tôi đang chỉnh sửa (của tôi .vimrc) và thụt lề theo những cách kỳ lạ và tất cả những thứ kỳ lạ đang xảy ra.
Alexej Magura

2
Nó thực thi các tệp ở chế độ "bình thường" (tức là, điều gì sẽ xảy ra nếu bạn không thêm ":" vào phía trước).
Andrew Miner

43

Các tệp trong thư mục .vim / plugin của bạn được tạo nguồn (tải) tự động.


7
Ngoài ra, tên tập tin của họ phải kết thúc bởi .vim
flawyte

vâng nhưng chỉ một lần cho mỗi lần khởi động, phải không? Đó là khi bạn khởi chạy terminal / powershell hay khi bạn sử dụng lệnh vim để chỉnh sửa một số tệp?
3pitt

@ 3pitt AFAIK, đó là mỗi khi lệnh vim được chạy.
Thaddaeus Markle

12

Luôn có lệnh : source file . Tôi thường viết .vimrccó chứa các lệnh tùy chỉnh và những gì không dành cho ứng dụng bảng điều khiển và sau đó là .gvimrcchứa các tính năng bổ sung phù hợp với phiên bản cửa sổ. .gvimrcBắt đầu của tôi với source $HOME/.vimrcviệc chọn mọi thứ từ phiên bản console trước khi thêm vào những thứ mới.


Các phiên bản vim của tôi, ít nhất, tất cả đều lấy nguồn .vimrc. Bạn có chắc chắn cần nguồn .vimrc không?
Dav Clark

@DavClark: có vẻ như bạn có thể đúng về điều đó. Tôi đã làm điều này trong một thời gian dài và chưa bao giờ nghĩ lại về nó. Tệp trợ giúp chắc chắn nói rằng điều này là không cần thiết ... hmmm.
D.Shawley

6

Thông thường có hai tệp vimrc, một tệp là _vimrc và tệp kia _gvimrc (tệp đầu tiên là những thứ dành cho vim và tệp thứ hai dành cho gvim - những thứ đồ họa) - mặc dù hầu hết những người tôi biết chỉ đặt mọi thứ vào _vimrc.

Một phương pháp hay là giữ tất cả các tệp bổ sung của bạn (plugin, colorchemes, đoạn trích ...) trong một thư mục vimfiles riêng biệt (của riêng bạn) (bạn có thể mang theo bên mình).

Nếu bạn làm

:help vimfiles

vim sẽ cho biết thư mục vimfiles của bạn nên được đặt ở đâu. Nó phụ thuộc phần nào vào nền tảng (win, unix). Trên windows, thông thường là trong thư mục người dùng của bạn (tài liệu và cài đặt, sau đó là người dùng ...). Trong thư mục vimfiles có một vài thư mục con. Trong số đó có thư mục con "plugin". Các plugin được đặt trong dir đó sẽ được tải tự động (cũng có các plugin được đặt trong thư mục con của "plugin"). Nếu bạn không muốn tải nó tự động, chỉ cần đặt nó vào "vimfiles" của bạn hoặc một số thư mục khác, và

:so plugin_name.vim (with the appropriate path)
(you can use the $vim, $vimfiles, and $home as shortcuts when defining path to plugin)
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.