Cách đặt vim filetype khi chỉnh sửa tập tin cấu hình nginx


16

Khi tôi mở vim cho một tệp như thế /etc/nginx/sites-available/default, tô sáng cú pháp hoạt động tốt. Nhưng sau đó nếu tôi tạo tập tin của riêng mình /etc/nginx/sites-available/myapp, vim không làm nổi bật cú pháp của nó. Tôi phải làm :setf confmọi lúc.

Có bất cứ điều gì tôi có thể đưa vào ~/.vimrcđể nói với vim "nếu bạn không biết sử dụng cú pháp nào, chỉ cần sử dụng conf"?

Một .vimrcmẫu cho vim noob cũng được chào đón. Tôi không sử dụng nó như một IDE, tôi chỉ sử dụng vim cho các tệp cấu hình.

Lưu ý: Tôi đang sử dụng Ubuntu 12, trong trường hợp có vấn đề.


Tôi đã thay đổi tiêu đề của bạn để phản ánh chính xác hơn những gì bạn đang cố gắng làm và hỏi lại câu hỏi ở đây, vì điều này có thể hữu ích trong trường hợp chung: serverfault.com/a/390801/2101
MikeyB

@MikeyB Tôi không biết hoặc quan tâm đến 'filetypes', theo như tôi biết vim có thể đã thực hiện cú pháp tô sáng chỉ bằng cách nhìn vào mã và đoán ngôn ngữ. Và phần chính của vấn đề là tôi muốn nó là 'theo mặc định'. Tôi đã biết cách 'đặt ngôn ngữ / kiểu tệp khi chỉnh sửa'. Ngoài ra, cho dù đó là cho nginx hoặc bất cứ điều gì khác, là không liên quan. Làm như bạn muốn, tôi không bao giờ hiểu tại sao người dùng serverfault quyết định đóng hoặc chỉnh sửa câu hỏi (có thể cho SEO?). Trừ khi sai ngữ pháp, tiêu đề ban đầu phản ánh vấn đề của tôi.
HappyDeveloper

3
có thể thú vị: vim.org/scripts/script.php?script_id=1886 (Tôi sử dụng nó và nó khá đẹp, thêm một # vim:syn=nginxở dưới cùng của cấu hình)
SingleNegationElimination

@HappyDeveloper: lý do tôi chỉnh sửa là câu trả lời được chấp nhận của bạn cho biết "Ồ, tôi thực sự đã cố gắng để làm điều đó." Bây giờ khách truy cập trong tương lai sẽ có thể tìm kiếm 'cú pháp vim mặc định' hoặc 'cú pháp vim mặc định' và nhận được câu trả lời chính xác cho điều đó thay vì bực bội vì câu trả lời được chấp nhận không nói cách thực hiện tiêu đề của câu hỏi. Thêm vào đó, bây giờ bạn cũng biết cách đặt kiểu tệp mặc định :)
MikeyB

@MikeyB Tiêu đề mới thậm chí không sử dụng từ 'mặc định'. Bản gốc đã làm.
HappyDeveloper

Câu trả lời:


25

Các dòng sau đây ~/.vimrcnên làm điều này.

autocmd BufRead,BufNewFile /etc/nginx/sites-*/* setfiletype conf

chỉnh sửa tự động nhẹ BufRead, BufNewFile / etc / nginx / site- / setfiletype conf

1
vim.org/scripts/script.php?script_id=1886 cung cấp tô sáng cú pháp tốt hơn so với kiểu conftệp. Nếu bạn sử dụng Vundle, hãy thử Plugin 'vim-scripts/nginx.vim'.
Adam Monsen

Đối với tất cả các tệp .conf, tôi đặt lệnh như sau:autocmd BufRead,BufNewFile *.conf setfiletype conf
Eren Yilmaz

26

Thực sự có một loại tệp Nginx được xác định trong kho Nginx chính thức trong thư mục contrib / vim . Nó cung cấp cú pháp tô sáng tốt hơn conf .

Để sử dụng nó, hãy sao chép các dòng phát hiện vào .vimrc của bạn (và điều chỉnh theo ý muốn):

au BufRead,BufNewFile *.nginx set ft=nginx
au BufRead,BufNewFile */etc/nginx/* set ft=nginx
au BufRead,BufNewFile */usr/local/nginx/conf/* set ft=nginx
au BufRead,BufNewFile nginx.conf set ft=nginx

Sau đó sao chép nginx.vim vào thư mục cú pháp ~ / .vim / của bạn .

Tất cả các tệp Nginx theo các quy tắc trên bây giờ sẽ được tô sáng.

Nếu bạn cũng thích thụt lề, bạn cũng có thể sao chép tệp từ thư mục thụt vào .vimrc của bạn .

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.