ในตัวฉัน .vimrc
ฉันมี
filetype indent on
ตอนนี้วิธีที่จะพยายามเยื้องอัตโนมัติ yaml
ไฟล์สับสนมากสำหรับฉันดังนั้นฉันต้องการเปิด filetype indent
ปิด แต่สำหรับ yaml
ไฟล์ไม่ใช่สำหรับไฟล์อื่น
ฉันจะบอกได้อย่างไรในตัวฉัน .vimrc
?
ในตัวฉัน .vimrc
ฉันมี
filetype indent on
ตอนนี้วิธีที่จะพยายามเยื้องอัตโนมัติ yaml
ไฟล์สับสนมากสำหรับฉันดังนั้นฉันต้องการเปิด filetype indent
ปิด แต่สำหรับ yaml
ไฟล์ไม่ใช่สำหรับไฟล์อื่น
ฉันจะบอกได้อย่างไรในตัวฉัน .vimrc
?
คำตอบ:
คำตอบของ @ maiki ให้ทางออกที่ถูกต้อง ถ้าคุณต้องการเก็บสิ่งนี้ไว้ ~/.vimrc
ต่อไปนี้เทียบเท่า:
autocmd FileType yaml let b:did_indent = 1
หากวิธีนี้ไม่ได้ผลคุณสามารถลองล้างวิธีการเยื้องในภายหลัง:
autocmd FileType yaml setlocal indentexpr=
ฉันยังคงแนะนำให้คุณพิจารณาเปลี่ยนการตั้งค่าของคุณให้ดีกว่าของคุณ .vimrc
สามารถซิงค์ได้อย่างง่ายดาย พิจารณาว่าคุณอาจต้องการใช้ปลั๊กอินหรือการกำหนดค่าอื่น ๆ (เช่น ~/.gitconfig
) ในอนาคต. มีอยู่หลายวิธีในการซิงค์การกำหนดค่าผู้ใช้ข้ามระบบ ผู้ใช้หลายคนมีพวกเขาในพื้นที่เก็บข้อมูลส่วนกลาง (Git) และใช้ symlink เพื่อติดตั้ง
let b:did_indent = 1
ใน ~/.vimrc
ไม่ทำงาน. ฉันลองวางก่อนและหลัง filetype plugin indent on
ไม่ทำงาน อย่างไรก็ตาม autocmd FileType yaml setlocal indentexpr=
ทำงานได้ดี มันจะต้องเพิ่มหลังจาก filetype plugin indent on
.
.vimrc
.
setlocal indentexpr=
แทนlet b:did_indent = 1
ทำงาน