วิธีการส่งออกเน้นรหัสแหล่งที่มาเป็นไฟล์ที่จะใช้เป็นกลุ่มนอก


9

ที่ทำงานของฉันฉันต้องการนำเสนอภาษาที่กำหนดเองที่ฉันพัฒนาขึ้นเพื่อแก้ปัญหาบางอย่างที่เรามี เพื่อการพัฒนาที่ง่ายขึ้นฉันสร้างไฟล์ไวยากรณ์ของตัวเองสำหรับภาษานี้โดยเฉพาะ

ตอนนี้ฉันต้องนำเสนอบนคอมพิวเตอร์เครื่องอื่นที่จะไม่มีไฟล์ไวยากรณ์ สำหรับทุกอย่างที่ฉันรู้มันอาจไม่ได้ติดตั้งเป็นกลุ่ม (แต่ฉันก็สงสัย)

มันจะสมบูรณ์ถ้าฉันสามารถless -rใช้ไฟล์เพื่อให้ได้ไวยากรณ์เดียวกันโดยเน้นที่ฉันทำบนคอมพิวเตอร์ของฉันเอง

อย่างไรก็ตามฉันไม่ทราบวิธีคัดลอกและวางในขณะที่รักษาสี (ในเทอร์มินัลจากคำพังเพยบนเดเบียน) หรือวิธีการส่งออกไฟล์ด้วยไวยากรณ์ที่เน้นเป็นตัวควบคุม raw จากกลุ่ม ฉันมีความมั่นใจมากขึ้นในการหาวิธีแก้ปัญหาจากเสียงเรียกเข้า แต่ฉันไม่รู้ว่าจะทำอย่างไร

คุณรู้วิธีที่จะส่งออกไฟล์ที่คุณเปิดด้วยการเน้นไวยากรณ์ของมันเป็น ANSI raw-control-chars ในไฟล์อื่นหรือไม่?

คำตอบ:


13

คุณสามารถใช้:TOhtmlคำสั่งที่มาพร้อมกับ Vim เพื่อสร้างการแสดง HTML ของบัฟเฟอร์ (เน้นไวยากรณ์) (หรือบางส่วนของมัน) จากนั้นความต้องการเฉพาะของคุณในระบบเป้าหมายจะเป็นเบราว์เซอร์เพื่อแสดงไฟล์ที่ถูกจับ ดู:help :TOhtmlรายละเอียดที่

หากคุณยืนยันที่จะให้เอาท์พุต ANSI ออกมาคุณอาจแก้ไขปลั๊กอินเพื่อทำเช่นนั้นได้ แต่ฉันคิดว่ามันน่าจะเป็นเรื่องไม่สำคัญ


3
โอ้พระเจ้า! นั่นเป็นเพียงที่สมบูรณ์แบบฉันหวังว่าฉันจะได้คำตอบของคุณมากกว่าหนึ่งครั้ง
DainDwarf

2

โปรแกรมvimpagerมีสคริปต์ชื่อ "vimcat" มันสามารถส่งออกไฟล์ที่มีไวยากรณ์ของเสียงเรียกเข้าสูงแปลงเป็นรหัสหลบหนี ansi

(การส่งเสริมตนเองเพิ่มเติม: ฉันเขียนทางแยกสำหรับ neovim: nvimpager )


1

[แก้ไข]: เพิ่งสังเกตเห็นว่าแมวไม่ได้ทำเคล็ดลับเมื่อใช้เป็นกลุ่มและสคริปต์คุณสามารถใช้ 'หัว'

guest@demomachine$ head -c [terminalsize] demo.typescript

EXAMPLE: guest@demomachine$ head -c 3710 demo.typescript

หากเครื่องนำเสนอมีเทอร์มินัลสีพร้อมใช้งานและใช้ * nix คุณสามารถบันทึกสคริปต์ด้วย

you@yourmachine$ script -c "vim [sourcefile]" demo.typescript

และจากนั้นเพียงแค่

guest@demomachine$ cat demo.typescript

cat อาจไม่ทำงานกับกลุ่มและสคริปต์สำหรับปัญหานี้มากดูแก้ไขข้างต้น

บนเครื่องนำเสนอ คำแนะนำ: คำนึงถึงขนาดเทอร์มินัลในระหว่างการบันทึกควรมีขนาดเล็กกว่าหรือเท่ากับเครื่องสาธิต

สคริปต์ยังช่วยให้คุณบันทึกเซสชันเทอร์มินัลทั้งหมดเพื่อให้คุณสามารถบันทึกและเล่นการสาธิตโดยใช้สคริปต์การเล่น

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