Tìm những gì filetype được tải trong vim


224

Ngay khi tôi tải bất kỳ tệp nào trong vim, nó sẽ cố gắng phát hiện tệp và tô sáng màu nếu có thể.

Tôi muốn biết một lệnh vim sẽ cho tôi biết plugin / filetype ftplugin hoặc Filetype nào được vim xem xét để làm nổi bật tệp.


Không vim làm điều đó tự động?
vào

Nếu bạn đặt một vimscript trong ~ / .vim / ftplugin / nó sẽ lấy nguồn vimscript đó khi một tệp của kiểu tệp phù hợp được tải. Vì vậy, đặt setlocal cursorlinevào ~/.vim/ftplugin/python.vimvà bạn sẽ có dòng tô sáng hiện tại trong các tệp python. Xem :help ftplugin:help after
idbrii

Câu trả lời:


365

:set filetype?


39
Bạn có thể lưu một vài tổ hợp phím và chỉ cần sử dụng:set ft?
Matthew Rankin

35
:se ft?- Tôi thắng. ;)
sjas

39
:se ft? Tôi đã thắng!
Fábio Santos

SO yêu cầu độ dài bình luận tối thiểu, vì vậy có thể không rõ ràng rằng kết thúc ngắn nhất sau t. ? Là tùy chọn.
reergymerej

15

Bạn cũng có thể thêm kiểu tệp vào dòng trạng thái hoặc tiêu đề cửa sổ bằng cách sử dụng %y%Ycác mục. Xem

:help 'statusline'
:help 'titlestring'


2

Khi tôi muốn tìm kiểu tệp đó là vì tôi có phần mở rộng .ipy sửa đổi tập lệnh ipython. Câu hỏi và trả lời trên đã hoạt động rất tốt khi thấy rằng phần mở rộng ipython không được coi là python (hơi rõ ràng). Vì vậy, tôi muốn buộc thiết lập filetype, và tôi đã tìm thấy điều này từ trang web helfpul vim. http://vim.wikia.com/wiki/Forcing_Syntax_Coloring_for_files_with_odd_extensions

Thêm phần dưới đây vào .vimrc của bạn hoạt động

au BufRead,BufNewFile *.ipy set filetype=python

2

Vì bạn đang hỏi / tìm kiếm câu hỏi này ngay từ đầu, tôi giả sử bạn làm điều này bởi vì vim của bạn bằng cách nào đó không tự động làm nổi bật cú pháp thích hợp cho bạn và bạn đang cố gắng tìm hiểu tại sao và cách khắc phục nó.

Lệnh :set filetype?trong câu trả lời được chọn về cơ bản sẽ hỏi vim "hey bạn nghĩ tập tin hiện tại là gì". Và nếu vim không hiển thị màu sắc / tô sáng thích hợp, rất có thể câu trả lời của nó cho bạn là hiển thị điều này filetype=ở dưới cùng của bảng điều khiển, có nghĩa là vim không biết loại tệp. Đây chỉ là một nửa nhiệm vụ của bạn.

Theo logic, bước tiếp theo của bạn sẽ nói với vim "chỉ cần làm nổi bật nó bằng cách sử dụng (ví dụ) cú pháp ps1". Bạn làm như vậy bằng cách gõ :set filetype=ps1, bây giờ vim sẽ làm nổi bật tệp hiện tại bằng cách sử dụng kiểu ps1 (miễn là bạn đã tải xuống tệp cú pháp powershell phù hợp và đặt nó vào cú pháp ~ / .vim / của bạn ).

Tại thời điểm này, bạn có thể sẽ muốn tự động đánh dấu cú pháp từ bây giờ. Giải pháp là đặt một tập lệnh phát hiện tương ứng vào thư mục ~ / .vim / ftdetect của bạn. Ví dụ: nếu bạn muốn làm nổi bật tất cả các tập lệnh PowerShell .ps1, .psm1, v.v., bạn đặt tệp này vào ~ / .vim / ftdetect của bạn

Bây giờ đó là một kết thúc có hậu.

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.