เปิดตัว Fish 4.0.0
(github.com/fish-shell)- Fish เป็นเชลล์บรรทัดคำสั่งที่ใช้งานเป็นมิตรสำหรับ macOS, Linux และระบบปฏิบัติการตระกูล Unix อื่น ๆ
- ตั้งแต่ 4.0.0 เป็นต้นไป โค้ดแกนหลักของ Fish ถูก พอร์ตจาก C++ ไปเป็น Rust
- สิ่งนี้ทำให้เกิดการเปลี่ยนแปลงครั้งใหญ่ในด้าน dependency และวิธีการบิลด์ แต่ไม่มีผลกระทบโดยตรงต่อผู้ใช้
- การเปลี่ยนแปลงที่ไม่เข้ากันย้อนหลัง:
- เพิ่มรูปแบบการเขียนคีย์ใหม่สำหรับคำสั่ง
bind - ตอนนี้
ctrl-cจะเรียกclear-commandlineและพฤติกรรมเดิมยังใช้งานได้ผ่านcancel-commandline - ผลลัพธ์ของฟังก์ชัน
randomตามค่า seed อาจแตกต่างจากเวอร์ชันก่อนหน้า - ตัวแปรที่อยู่ในตำแหน่งคำสั่งจะไม่สามารถขยายเป็นคีย์เวิร์ดของ subcommand ได้อีกต่อไป
- ตอนนี้
functions --handlersจะแสดงรายการ handler ตามลำดับที่ถูกกำหนดไว้ - ฟีเจอร์
qmark-noglobถูกเปิดใช้งานเป็นค่าเริ่มต้น
- เพิ่มรูปแบบการเขียนคีย์ใหม่สำหรับคำสั่ง
การปรับปรุงและการแก้ไข
- โปรโตคอลคีย์บอร์ด: รองรับ
modifyOtherKeysของ XTerm และโปรโตคอลคีย์บอร์ดของ kitty - ไบนารีติดตั้งได้ในตัว: สามารถบิลด์ fish เป็นไบนารีที่ติดตั้งได้ด้วยตัวเอง
- ประวัติคำสั่ง: ใช้ฟังก์ชัน
fish_should_add_to_historyเพื่อตัดสินใจว่าคำสั่งใดควรถูกเพิ่มลงใน history - ฟีเจอร์ย้อนกลับ: history จะยังคงอยู่แม้หลังจากรันคำสั่งแล้ว
- การจำกัดตัวย่อ: สามารถขยายตัวย่อได้เฉพาะกับบางคำสั่งเท่านั้น
ฟีเจอร์ที่ไม่แนะนำและถูกถอดออก
commandline --tokenizeถูกแทนที่ด้วยcommandline --tokens-expanded- การระบุชื่อคีย์ผ่านไวยากรณ์
bind -kไม่ได้รับการแนะนำอีกต่อไป - โหมดวางถูกถอดออกแล้ว
การปรับปรุงด้านสคริปต์
- คำสั่ง history ใหม่: สามารถใช้
history appendเพื่อเพิ่มคำสั่งลงใน history โดยไม่ต้องรันคำสั่ง - การ redirect แบบใหม่: `
1 ความคิดเห็น
ความเห็นจาก Hacker News
clear-commandlineเป็นฟีเจอร์ที่น่าสนใจcancel-commandline