ตรวจสอบการสะกดคำใน vim


22

ฉันเป็นโปรแกรมเมอร์มืออาชีพ C / C ++ ที่ทำให้การสะกดคำผิดในความคิดเห็นมากมาย ฉันต้องการกำหนดค่าเป็นกลุ่มเพื่อให้เครื่องตรวจการสะกดคำค้นหาคำที่สะกดผิดภายในความคิดเห็นเท่านั้น หากจำเป็นฉันยินดีที่จะเพิ่มสัญลักษณ์พิเศษรอบความคิดเห็นที่กลุ่มสามารถมองหาที่จะตรวจสอบเช่น:

 int main(){
     /*<--C_S 
        This is comment line in main function ..
        C_S-->*/
 }

หากปลั๊กอินสามารถทำงานได้โดยไม่มีC_Sสัญลักษณ์ที่ดียิ่งขึ้น ฉันต้องการให้เครื่องตรวจตัวสะกดเพื่อเน้นการสะกดคำผิดที่พบภายในความคิดเห็น สิ่งนี้มีอยู่แล้ว? หรือมันง่ายที่จะเขียนเอง?

คำตอบ:


21

ข่าวดีนี่เป็นส่วนหนึ่งของ Vim อยู่แล้ว เปิดใช้การไฮไลต์ไวยากรณ์ ( :syntax enable) และสิ่งนี้ควรได้รับการดูแลโดยอัตโนมัติด้วยไฟล์ไวยากรณ์เริ่มต้นที่ทำแพ็กเกจด้วยการกระจาย vim ล่าสุดที่สมเหตุสมผล ดู:help spell-syntaxคำอธิบาย เวอร์ชันย่อคือไฟล์ไวยากรณ์สามารถใช้@Spellและ@NoSpellเพื่อระบุตำแหน่งที่การตรวจสอบการสะกดควรหรือไม่ควรเกิดขึ้น


2
ใช้กับบัฟเฟอร์ที่ไฟล์ไวยากรณ์เปิดใช้งานการตรวจสอบการสะกดอย่างชัดเจนเท่านั้น ส่วนใหญ่ในประสบการณ์ของผมทำไม่ได้ เนื่องจากการเปิดใช้งานการตรวจสอบการสะกดทั่วโลกไม่จำเป็นต้องเป็นตัวเลือกที่ปลอดภัยฉันจึงมักขยายคำตอบที่เป็นประโยชน์ของPsirus ให้กับร่างกายที่มีรูปร่างคล้ายกัน เห็นแล้วยังสะกดคำย่อยของนี้ augroupautocmd FileType md,rst,text,yaml setlocal spell spelllang=en_ca
เซซิลแกงกะหรี่

15

มันมีอยู่แล้ว เพียงพิมพ์:set spell spelllang=en_usและขีดเส้นใต้ข้อผิดพลาดการสะกด ปรับภาษาตามความต้องการของคุณ ภาษาเพิ่มเติมสามารถพบได้ที่นี่


1

อย่างที่คนอื่นพูดมันมีอยู่แล้ว อย่างไรก็ตามปลั๊กอินสายรุ้ง (ค่าเริ่มต้นในspf13) จะทำให้การตรวจสอบการสะกดผิด ฉันใช้เวลาซักพักนึง

ปัญหามาจากบรรทัดต่อไปนี้:

let def_rg = 'syn region %s matchgroup=%s containedin=%s contains=%s,@NoSpell %s'

รุ้งอย่างไม่ถูกต้องเพิ่ม@NoSpellไปยังทุกภูมิภาครุ้ง

ดูhttps://github.com/luochen1990/rainbow/issues/30สำหรับรายละเอียด


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