Contate แยกวิเคราะห์ไฟล์สำหรับ shebang!s ( #! ) ที่วางโดยพลการ และแทนที่เอาต์พุตสคริปต์ลงในเอกสาร
อย่าลืมเพิ่ม hook สคริปต์ pre-push ไปที่ .git/hooks หากคุณต้องการพัฒนา
มันมองหา
...Static content...
#!/bin/bash
echo "Some script output"
!#
...More static content...
และให้คุณ:
...Static content...
Some script output
...More static content...
make all จะส่งออกสคริปต์ไปที่ build/ ดังนั้น build/contate จึงเป็นเวอร์ชันล่าสุด เมื่อทำงาน มันจะส่งออกฟังก์ชันที่เรียกว่า "contate" เพื่อเรียกตัวเอง ดังนั้นจึงไม่จำเป็นต้องอยู่ใน $PATH
เป้าหมาย Contate ตามค่าเริ่มต้นต้องมีส่วนท้าย .contate และจะถูกส่งออกโดยไม่มีส่วนท้าย
contate [OPTIONS] targets...
-r-o เพื่อระบุ โฟลเดอร์ เอาต์พุตหรือ -o - สำหรับ stdout (ค่าเริ่มต้น) (ดูหมายเหตุ)-d สำหรับการทดลองเรียกใช้ซึ่งจะข้ามการแยกวิเคราะห์ไฟล์จริง-q มีวัตถุประสงค์เพื่อปิดเสียงเอาต์พุตทั้งหมด-p จะแทนที่รูปแบบ POSIX regex ที่เลือก ค่าเริ่มต้นคือ: (.*).contate$ โดยที่กลุ่มการดักจับเป็นเส้นทางเอาต์พุต (วางไว้บนสุดของที่ระบุโดย -o ) หมายเหตุ: Contate ส่งออกตัวเลือกเป็น env vars เพื่อให้ contate-subprocesses สามารถใช้งานได้ ดังนั้นการตั้งค่าเอาต์พุตอย่างชัดเจนเป็น stdout เมื่อใช้ contate ในไฟล์ *.contate จึงเป็นการฉลาด
คุณ ไม่ได้ ถูกจำกัดอยู่เพียงสคริปต์ทุบตี
คุณมีสคริปต์ทุบตีแบบอินไลน์: #!$(command)!#
คุณสามารถหลีกเลี่ยง shebangs ได้: ##!/this/is/static
bash จัดเตรียม env var ซึ่งเป็นรายการคีย์ -> ค่า จาก bash คุณสามารถใช้:
d_set key val ตั้งค่าคีย์เป็น vald_get key สะท้อนค่า vald_exists key จะออกตามปกติหากมีอยู่ ไม่เช่นนั้นจะออกจากสถานะ 1d_del key สำเร็จเสมอการเข้าถึงในภาษาต่างๆ เพิ่มมากขึ้นกำลังจะมา