ฉันจะกำหนดแป้นพิมพ์ลัดให้กับแมโครที่บันทึกใน Sublime Text ได้อย่างไร


43

ฉันมีมาโครจำนวนมากที่ฉันบันทึกและบันทึกไว้ใน Sublime Text 2 ฉันกำลังพยายามกำหนดแป้นพิมพ์ลัดให้กับแต่ละคน แต่ฉันก็หลงทางว่าจะทำสิ่งนี้อย่างไร

ฉันได้ดู

แต่นั่นอธิบายวิธีตั้งค่าการเชื่อมโยงคีย์สำหรับคำสั่งที่มีอยู่

สิ่งที่ฉันควรตั้งให้มันเรียกใช้แมโครหรือไม่


2
สิ่งนี้ใช้ได้กับ ST3 อย่างเท่าเทียมกัน - ขอบคุณ!
ptim

คำตอบ:


61

ในการสั่งให้ Sublime Text เรียกใช้แมโครคุณต้องผ่าน "run_macro_file" เป็นพารามิเตอร์ไปที่ "command" โดยมีอาร์กิวเมนต์เป็นชื่อไฟล์ของแมโคร

ขั้นแรกเพียงบันทึกแมโครไม่ได้บันทึกลงในไฟล์คุณจะต้องบันทึกแมโครเป็นไฟล์ สามารถทำได้โดยคลิกที่เครื่องมือ→บันทึกมาโครแล้วให้ชื่อไฟล์ โดยทั่วไปแล้วแมโครจะถูกบันทึกไว้ใน %appdata%\Sublime Text 2\Packages\Userโฟลเดอร์

ถัดไปในการกำหนดแป้นพิมพ์ลัดให้เปิดไฟล์ Keybindings จาก Preferences → Key Bindings - User

ตอนนี้รูปแบบทั่วไปสำหรับการผูกกุญแจมีดังนี้:

{ "keys": [<key sequence>], "command": "run_macro_file", "args": {"file": "Packages/User/<file name>.sublime-macro"} }

ดังนั้นหากคุณต้องการกำหนดCtrl+ Shift+ Xให้กับแมโครที่ได้รับการบันทึกเป็น "เพิ่มเครื่องหมายจุลภาคเพื่อสิ้นสุด" บรรทัดการผูกสายจะมีลักษณะดังนี้:

[
    { "keys": ["ctrl+shift+x"], "command": "run_macro_file", "args": {"file": "Packages/User/add comma to end.sublime-macro"} }
]

2
คุณ จำกัด ขอบเขตการใช้งานทางลัดด้วยcontext.. นี่เป็นตัวอย่างจาก Emmet: github.com/sergeche/emmet-sublime/blob/master/…
ptim

@ptim นี่หมายความว่าคุณสามารถ จำกัด แมโครบางตัวให้ใช้งานได้เท่านั้นเช่นสคริปต์ Python หรือไม่
gustafbstrom

1
@ gustafbstrom - ครับ! ใช่ แต่ข้อ จำกัด อยู่บนการเชื่อมโยงคีย์ไม่ใช่มาโคร :) docs.sublimetext.info/th/latest/reference/…
ptim

1
ยังคงทำงานกับ sublime v3 เส้นทางสัมพัทธ์ดังนั้น"Packages/User/my_commands.sublime-macro"กำลังทำงานอยู่ ทดสอบบน mac
marlo

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