Temukan jenis file apa yang dimuat dalam vim


224

Segera setelah saya memuat file apa pun dalam vim, Ini akan mencoba mendeteksi file dan menyorot warna jika memungkinkan.

Saya ingin tahu perintah vim yang akan memberi tahu saya mana ftplugin atau Filetype plugin / filetype yang mempertimbangkan untuk menyorot file.


Bukankah vim melakukan itu secara otomatis?
ereOn

Jika Anda meletakkan vimscript di ~ / .vim / ftplugin / ia akan mendapatkan vimscript itu ketika file dari tipe file yang cocok dimuat. Jadi menempatkan setlocal cursorlinedi ~/.vim/ftplugin/python.vimdan Anda akan memiliki baris saat ini menyoroti dalam file python. Lihat :help ftplugindan:help after
idbrii

Jawaban:


365

:set filetype?


39
Anda dapat menyimpan beberapa penekanan tombol dan cukup gunakan:set ft?
Matthew Rankin

35
:se ft?- Saya menang. ;)
sjas

39
:se ft? Saya menang!
Fábio Santos

SO membutuhkan panjang komentar minimum, jadi mungkin tidak jelas bahwa yang terpendek berakhir setelah t. ? adalah opsional.
reergymerej

15

Anda juga dapat menambahkan filetype ke baris status atau judul jendela menggunakan item %ydan %Y. Lihat

:help 'statusline'
:help 'titlestring'


2

Ketika saya ingin menemukan filetype itu karena saya memiliki ekstensi .ipy memodifikasi skrip ipython. T&J di atas berfungsi dengan baik untuk melihat bahwa ekstensi ipython tidak diperlakukan sebagai python (agak jelas). Jadi saya ingin memaksa mengatur filetype, dan saya menemukan ini dari situs vim pernah helfpul. http://vim.wikia.com/wiki/Forcing_Syntax_Coloring_for_files_with_odd_extensions

Menambahkan di bawah ini ke .vimrc Anda berfungsi

au BufRead,BufNewFile *.ipy set filetype=python

2

Karena Anda pertama kali menanyakan / mencari pertanyaan ini, saya menganggap Anda melakukan ini karena vim Anda entah bagaimana tidak menyoroti sintaks yang tepat untuk Anda secara otomatis, dan Anda mencoba mencari tahu mengapa, dan bagaimana cara memperbaikinya.

Perintah :set filetype?dalam jawaban yang dipilih pada dasarnya meminta vim "hei menurut Anda apa jenis file saat ini". Dan jika vim tidak menampilkan warna / sorotan yang tepat, kemungkinan besar jawabannya kepada Anda adalah menampilkan ini filetype=di bagian bawah konsol Anda, artinya vim tidak tahu jenis file. Ini hanya setengah dari pencarian Anda.

Secara logis, langkah Anda berikutnya akan mengatakan vim "cukup sorot menggunakan (misalnya) sintaks ps1". Anda melakukannya dengan mengetik :set filetype=ps1, sekarang vim akan menyorot file saat ini menggunakan gaya ps1 (asalkan Anda sudah mengunduh file sintaks powershell yang tepat dan memasukkannya ke ~ / .vim / sintaksis Anda ).

Pada titik ini, Anda mungkin ingin sorot-sintaksis mulai sekarang. Solusinya adalah dengan meletakkan skrip deteksi yang sesuai ke folder ~ / .vim / ftdetect Anda. Misalnya, jika Anda ingin menyorot semua skrip PowerShell .ps1, .psm1, dll., Anda meletakkan file ini ke ~ / .vim / ftdetect Anda

Nah, itu akhir yang bahagia.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.