VIM ไม่พบไวยากรณ์ของ. ssh / config


0
vi ~/.ssh/config
  :set syn?
  >syntax=conf

เมื่อฉัน:

set syn=sshconfig

จากนั้นเน้นไวยากรณ์ตามที่ควรจะเป็น

ทำไมประเภทไฟล์จึงไม่ถูกระบุโดยอัตโนมัติ และจะตั้งค่าอัตโนมัติได้อย่างไร?


มันทำงานได้อย่างถูกต้องสำหรับฉัน Vim รุ่นใดที่คุณมี (: เวอร์ชันภายใน Vim หรือ vim --version บนบรรทัดคำสั่ง)
Heptite

VIM - Vi IMproved 7.3
Erik

": ชุดไฟล์ประเภท verbose คืออะไร" (รวมเครื่องหมายคำถามเป็นส่วนหนึ่งของคำสั่ง) แสดงเมื่อคุณเปิด. ssh / config ใน Vim?
Heptite

คำตอบ:


3

สมมติว่าสิ่งที่คุณทำถูกสร้าง symlink '~ / .ssh' ไปยังโฟลเดอร์ชื่อ 'ssh' ที่อื่นในระบบของคุณตัวอย่างเช่น ~ / git / ssh คุณมี 2 ตัวเลือก:

โซลูชัน A

ภายใน '~ / .vim / ftdetect / ssh.vim' ใส่บรรทัดต่อไปนี้:

au BufNewFile,BufRead */ssh/config  setf sshconfig

โซลูชัน B

ตรวจสอบให้แน่ใจว่าโฟลเดอร์ที่ symlink แปลงเป็นชื่อ '.ssh'

ไฟล์ผู้ร้าย⇒ /usr/share/vim/vim73/filetype.vim:

au BufNewFile,BufRead ssh_config,*/.ssh/config  setf sshconfig

0

เพิ่มบรรทัดนี้ในของคุณ ~/.vimrc

filetype plugin indent on

ควรเพียงพอสำหรับ Vim ที่จะรู้จักชนิดไฟล์และใช้ไวยากรณ์ที่ถูกต้อง


บรรทัดนั้นมีอยู่ใน. vimrc ของฉันแล้วปัญหาจะเกิดขึ้นกับไวยากรณ์ของ. ssh / config เท่านั้น
Erik

0

หากคุณต้องการกำหนดสีไวยากรณ์ ssh สำหรับไฟล์ทั้งหมดใน~/.ssh/config.d/(หรือแคตตาล็อกอื่น ๆ ที่คุณต้องการ) ให้ใช้วิธีแก้ปัญหา A หรือ B โดย @Shane Mulligan แต่ใส่บรรทัดนี้แทน:

au BufNewFile,BufRead ssh_config,*/.ssh/config.d/* setf sshconfig

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.