พอดีสคริปต์ที่ Karabiner มีอยู่นั้นมันไม่ค่อยตอบโจทก์(อีกแล้ว) ก็เลยอยากทำด้วยตัวเองบ้าง ป่ะ ไปดูขั้นตอนการทำดีกว่า จริงๆ คือไม่ยาก แต่หาไฟล์ไม่เจอมากกว่า
ตอนนี้ตัวอย่างที่อยากทำคือ อยาก Map ปุ่ม Prtsc ไปเป็นการ Screentshort หน้าจอ แบบ Clipboard บน Mac
โฟลเดอร์ที่เก็บสคริปต์
เปิด Terminal แล้วไปที่ ~/.config/karabiner/assets/complex_modifications หลังจากนั้นเปิดด้วย VS Code ขึ้นมาเพื่อแก้ไข
เพิ่มไฟล์ที่ต้องการ
สร้างไฟล์ที่ต้องการเป็นนามสกุล .json เช่น prtsc-screenshot-clipboard.json แล้วใช้โค้ดตามด้านล่าง

{
// Title จะเป็นชื่อหัวข้อหลักโดย 1 title สามารถมีได้หลาย rule
"title": "Prtscr to Screenshot clipboard Mac",
"rules": [
{
// คำอธิบายว่า rule นี้ทำอะไร
"description": "Prtscr to Screenshot clipboard Mac",
"manipulators": [
{
// จะกดปุ่มอะไร
"from": {
"key_code": "print_screen"
},
// และสั่งให้ทำอะไรกับปุ่มไหน หรือกดปุ่มไหน
"to": [
{
"key_code": "4",
"modifiers": ["left_command", "left_shift", "left_control"]
}
],
"type": "basic"
}
]
}
]
}
ไปเพิ่มใน Karabiner
หลังจากบันทึกไฟล์ที่เราสร้างเสร็จแล้ว กลับไปที่โปรแกรม Karabiner ไปที่เมนู Complex Modifications แล้วกด Add rules

เลื่อนลงมา หรือลองดูจะเจอหัวข้อ Title ที่เราสร้างไว้

ให้กด Enable ตัวนี้ก็จะนำไปใช้งานได้แล้ว
