Baru-baru ini, saya perlu menggunakan vim untuk mengedit fail teks dengan akhiran .cl, tetapi vim sentiasa menyerlahkan fail .cl secara automatik sebagai sintaks .lisp. Untuk melumpuhkan penyerlahan fail, tambahkan pernyataan berikut pada .vimrc:
autocmd BufNewFile,BufRead *.cl set filetype=
Ini berjaya membatalkan penyerlahan sintaks. Tetapi pada masa yang sama, saya mendapati bahawa fail .cl masih mengekalkan tabiat lekukan automatik fail lisp. Saya mahu tabiat lekukannya kekal seperti java atau python, jadi saya menukarnya kepada
autocmd BufNewFile,BufRead *.cl set filetype=python
Tetapi ia tidak berjaya. Fail .vim saya telah menetapkan set autoindent. Bagaimana saya harus menyelesaikannya?
Saya secara tidak sengaja melihat siaran hari ini, dan ia mengatakan bahawa nolisp tersedia. Kemudian saya mencuba sendiri dan ia berkesan. Saya rasa mungkin vim secara automatik mengenali fail *.cl sebagai fail lisp dan kemudian menetapkan lisp Selagi anda membatalkan tetapan, lekukan baris baharu akan sama dengan baris sebelumnya. Di samping itu, saya mendapati bahawa jenis fail tidak perlu ditetapkan kepada Python Saya hanya memerlukan lekukan yang serupa dengan Python dan tidak memerlukan penyerlahan sintaks. Dilampirkan tetapan berkaitan .vimrc saya:
Anda boleh rujuk kandungan di pautan di bawah. Sebabnya mungkin kerana anda telah menyediakan
BufNewFile
,而*.cl
failSudah wujud sebelum ini.
Rujukan:
1. http://vimcdoc.sourceforge.net/doc/autocmd.html#autocmd-events