Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows

วิธีใช้ AutoHotkey เพื่อทำให้ทุกอย่างเป็นอัตโนมัติใน Windows

วิธีใช้ AutoHotkey เพื่อทำให้ทุกอย่างเป็นอัตโนมัติใน Windows

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

สำหรับบทช่วยสอนนี้ เราเริ่มต้นด้วยข้อมูลพื้นฐานที่จะช่วยให้คุณเริ่มต้นในการเปลี่ยนกระบวนการหลายขั้นตอนให้เป็นการกดแป้นเพียงครั้งเดียว

การติดตั้ง

ดาวน์โหลดและติดตั้ง AutoHotkey จากเว็บไซต์ทางการ เลือกเวอร์ชันปัจจุบัน ละเว้นอีกสองตัวเลือก – “V2” เป็นเวอร์ชันใหม่ เข้ากันไม่ได้กับสคริปต์ที่มีอยู่และมีรูปแบบที่แตกต่างกันเล็กน้อย ในขณะที่ “V1.0 Deprecated” เป็นเวอร์ชันเก่าและถูกจำกัด

สร้างสคริปต์เปล่า

หลังจากการติดตั้ง AutoHotkey จะลงทะเบียนเป็นแอปเริ่มต้นสำหรับไฟล์ที่มีนามสกุล AHK นั่นเป็นเหตุผลที่พวกเขาทำงานเป็นไฟล์เรียกทำงาน - AutoHotkey แยกวิเคราะห์แบบเรียลไทม์และดำเนินการเนื้อหา จริงๆ แล้ว ไฟล์ AHK เป็นสคริปต์ที่คุณสามารถเปิดได้ในโปรแกรมแก้ไขข้อความใดๆ

วิธีใช้ AutoHotkey เพื่อทำให้ทุกอย่างเป็นอัตโนมัติใน Windows

สร้างโฟลเดอร์ใหม่สำหรับสคริปต์ AutoHotkey ตัวแรกของคุณทุกที่ที่คุณต้องการ ป้อนมัน คลิกขวาแล้วสร้าง "ใหม่ -> สคริปต์ AutoHotkey" จากตัวเลือกใหม่ในเมนูคลิกขวาของคุณ ตั้งชื่ออะไรก็ได้ตามใจคุณ

เลือกวิธีแก้ไขสคริปต์ของคุณ

แทนที่จะดับเบิลคลิกไฟล์ AHK ที่คุณสร้างขึ้นเหมือนกับที่คุณทำเพื่อเรียกใช้สคริปต์ที่สร้างไว้ล่วงหน้า ให้คลิกขวาที่ไฟล์แล้วเลือกแก้ไข คุณสามารถแก้ไขไฟล์ AHK ในโปรแกรมแก้ไขข้อความใดก็ได้ แต่เนื่องจากการเขียนสคริปต์เป็นโปรแกรมเวอร์ชันไลต์ จะดีกว่าถ้าคุณใช้โปรแกรมที่สร้างขึ้นเพื่อจุดประสงค์นั้น อะไรก็ได้ตั้งแต่ Atom ไปจนถึง Sublime Text หรือ VS Code หากคุณไม่ได้ติดตั้งเครื่องมือดังกล่าว และเนื่องจากสคริปต์แรกของคุณนั้นเรียบง่าย คุณยังสามารถใช้ Notepad ของ Windows ได้อีกด้วย

สำหรับผู้ที่สงสัย ผมเองใช้เครื่องมือเหล่านั้นเพื่อวัตถุประสงค์อื่น (เช่น HTML, CSS และ JS, PHP และ Python พื้นฐาน) แต่สำหรับการแก้ไขสคริปต์ AHK ฉันพบว่าตัวเองกำลังกลับไปที่ Notepad++ ยอดนิยม

กำหนดเป้าหมายแอปหรือหน้าต่างเฉพาะ

ก่อนที่เราจะเริ่มต้น เรามาลองดูโปรแกรมที่เราต้องการสร้างสคริปต์ก่อน

คุณสามารถสร้างสคริปต์ส่วนกลางใน AutoHotkey ที่จะทำงานได้ทุกที่ ในทุกแอปและบนเดสก์ท็อปของ Windows แต่คุณยังสามารถกำหนดเป้าหมายแอปได้อีกด้วย วิธีนี้ช่วยให้คุณมี ตัวอย่างเช่น ช็อตคัทเดียวกันทำสิ่งต่าง ๆ ในสองโปรแกรมที่แตกต่างกัน

วิธีใช้ AutoHotkey เพื่อทำให้ทุกอย่างเป็นอัตโนมัติใน Windows

สคริปต์ของคุณจะถูกเติมข้อมูลล่วงหน้าด้วยการตั้งค่าพื้นฐานบางอย่าง อย่าแก้ไข - พิมพ์หลังจากนั้น กด Enter หนึ่งครั้งหรือสองครั้ง

ป้อนสิ่งนี้ในสคริปต์ของคุณ:

#IfWinActive ahk_class Notepad
 
#if

สิ่งนี้บอก AutoHotkey ว่าสิ่งใดก็ตามที่ตามหลัง “IfWinActive” ควรทำงานในหน้าต่างที่มีคลาส Notepad เท่านั้น (ahk_class Notepad ). #If หลังจากที่ปิดส่วนนี้เพื่อไม่ให้สิ่งใดก็ตามที่ตามมาจะไม่ถูกจำกัดอยู่ในหน้าต่างที่มีคลาส Notepad

พบกับ Window Spy

เรียกใช้สคริปต์เปล่าเพื่อให้ไอคอน AHK ปรากฏในถาด Windows คลิกขวาและเลือก Window Spy จากเมนูที่ปรากฏขึ้น ตอนนี้ เมื่อใดก็ตามที่คุณคลิกที่หน้าต่างอื่น Window Spy ของ AutoHotkey จะนำเสนอข้อมูลเกี่ยวกับหน้าต่างนั้น

วิธีใช้ AutoHotkey เพื่อทำให้ทุกอย่างเป็นอัตโนมัติใน Windows

ที่ด้านบนสุด คุณจะเห็นวิธีต่างๆ ในการกำหนดเป้าหมายตามชื่อ คลาส และไฟล์สั่งการ หากคุณเปิด Firefox และด้วย Window Spy บนหน้าจอของคุณ ให้คลิกที่หน้าต่างของมัน คุณจะเห็นว่าไฟล์ปฏิบัติการคือ "firefox.exe" แก้ไขสคริปต์ของคุณโดยสลับการอ้างอิงแผ่นจดบันทึกสำหรับ #IfWinActive ahk_exe firefox.exe . คุณสามารถกำหนดเป้าหมายหน้าต่างอื่น ๆ ในลักษณะเดียวกัน - ใช้ Window Spy เพื่อตรวจสอบชื่อ คลาส หรือไฟล์ที่เรียกใช้งานได้ และกำหนดเป้าหมายหน้าต่างใดหน้าต่างหนึ่ง อ่านเพิ่มเติมเกี่ยวกับที่นี่ เวอร์ชันสั้นคือ:

  • คุณสามารถกำหนดเป้าหมายหน้าต่างตามชื่อได้โดยใช้ #IfWinActive พร้อมกับชื่อเรื่อง
  • คุณสามารถกำหนดเป้าหมายหน้าต่างตามชั้นเรียนโดยใช้ #IfWinActive ahk_class ตามด้วยคลาส Window Spy ที่รู้จัก
  • คุณสามารถกำหนดเป้าหมายโปรแกรมด้วยไฟล์เรียกทำงานด้วย #IfWinActive ahk_exe และชื่อไฟล์ปฏิบัติการ โปรดทราบว่าด้วยวิธีนี้ คุณจะกำหนดเป้าหมายหน้าต่างของโปรแกรมทั้งหมด ไม่ใช่เฉพาะหน้าต่างใด

ตรวจสอบพิกัดเมาส์ของคุณ

เมื่อเปิดใช้งาน Window Spy ให้หันความสนใจไปที่กลุ่มตัวแปร "ตำแหน่งเมาส์" ซึ่งจะแสดงตำแหน่งที่แน่นอนของเมาส์ให้คุณทราบ

  • แอบโซลูทแสดงตำแหน่งที่สัมพันธ์กับความละเอียดของทั้งหน้าจอ
  • ญาติแสดงตำแหน่งภายในหน้าต่างที่ใช้งานอยู่โดยไม่ได้รับผลกระทบจากตำแหน่งบนหน้าจอ นี่เป็นค่าเริ่มต้น และโดยส่วนใหญ่แล้ว สิ่งที่คุณน่าจะใช้
  • ไคลเอนต์เหมือนกับญาติ แต่ไม่ได้คำนึงถึงการตกแต่งหน้าต่างใด ๆ เช่นแถบชื่อเรื่องหรือเส้นขอบ

การจำลองการเคลื่อนไหวของเมาส์และการคลิก

ตอนนี้คุณรู้วิธีสร้างสคริปต์ AHK ใหม่และกำหนดเป้าหมายหน้าต่างเฉพาะแล้ว แต่พิกัดของเมาส์ที่เราพูดถึงล่ะ หากต้องการเลื่อนเมาส์ไปที่พิกัด X, Y ตามที่ Window Spy อ่าน ให้ใช้ MouseMove, X, Y ; . การดำเนินการนี้จะเลื่อนเมาส์ไปที่ตำแหน่ง X, Y อย่าลืมว่าพิกัดสัมพัทธ์เป็นค่าเริ่มต้น

นอกจากนี้ โปรดทราบว่าคุณสามารถเพิ่มความคิดเห็นในโค้ดของคุณหลัง ; อักขระ. สำหรับความคิดเห็นแบบหลายบรรทัด ให้ขึ้นต้นด้วย “/” และลงท้ายด้วย “/” – โดยไม่ต้องใส่เครื่องหมายคำพูด การเลื่อนเมาส์เป็นสิ่งหนึ่ง ในการคลิก คุณไม่จำเป็นต้องเลื่อนเมาส์ไปที่ตำแหน่งใดตำแหน่งหนึ่งล่วงหน้า เพียงใช้:

Click, X, Y ;For a left-click, or...
 
Click, right, X, Y ;For a right-click.

วิธีใช้ AutoHotkey เพื่อทำให้ทุกอย่างเป็นอัตโนมัติใน Windows

โปรดทราบว่าถ้าคุณไม่ป้อนพิกัดใดๆ การคลิกจะยังคงเกิดขึ้นตรงที่เคอร์เซอร์ของเมาส์อยู่

จำลองการกดแป้นพิมพ์

สุดท้ายเราทิ้งส่วนที่สำคัญที่สุดของสมการไว้:sendkeys . นี่คือคำสั่งที่ใช้ใน AutoHotkey เพื่อทำซ้ำการกดแป้นใดๆ เมื่อใช้มัน คุณสามารถสั่งให้ AutoHotkey ส่งสตริงการกดแป้นใดๆ ไปยังโปรแกรมใดๆ ก็ได้ เหมือนกับว่าคุณได้กดปุ่มด้วยตัวเอง ตัวอย่างเช่น:

sendkeys, Make Tech Easier

บอก AutoHotkey ให้ส่งการกดแป้นพิมพ์ที่ประกอบเป็นวลี "Make Tech Easier" คุณสามารถใช้ตัวอักษรหรือตัวเลขใดก็ได้ แป้นพิเศษมีรหัสย่อของตัวเองและล้อมรอบด้วยวงเล็บ บางส่วนได้แก่:

  • {Tab}
  • {Shift}
  • {Control} หรือ {Ctrl}
  • {Alt}
  • {F1 – F12)
  • {LWin}{RWin} ปุ่ม Windows ซ้ายและขวาตามลำดับ
  • {Enter}
  • {Space}
  • {Backspace}
  • {ลบ}
  • {Up}{Down}{Left}{Right};ปุ่มเคอร์เซอร์ขึ้น ลง ซ้ายและขวา
  • {หน้าแรก}
  • {จบ}
  • {PgUp}{PgDown};เลื่อนหน้าขึ้นและเลื่อนลง
  • {Volume_Up}{Volume_Down}{Volume_Mute};ปุ่มลัดสำหรับควบคุมสื่อสำหรับควบคุมระดับเสียง

คุณยังสามารถใช้ตัวเลขเพื่อจำลองการกดแป้นซ้ำๆ ได้อีกด้วย ต่อไปนี้จะทำให้ AutoHotkey ส่งช่องว่างห้าช่องไปยังหน้าต่างที่ใช้งานอยู่ เช่นเดียวกับที่คุณกดแป้นเว้นวรรคห้าครั้ง จากนั้นพิมพ์ "Make Tech Easier" ตามด้วยการกดปุ่ม Tab สองครั้งและกด Enter

Send, {Space 5}Make Tech Easier{Tab 2}{Enter}

AutoHotkey ยังตั้งค่าสี่สัญลักษณ์เป็นตัวแก้ไขที่ช่วยในการส่งคีย์ลัดผสมไปยังโปรแกรมที่ใช้งานอยู่ สิ่งเหล่านี้มีผลเฉพาะกับตัวละครตัวต่อไปที่ติดตามพวกเขาและคือ:

  • ! สำหรับ Alt
  • + สำหรับกะ
  • ^ สำหรับการควบคุม
  • # สำหรับคีย์ Windows

ต่อไปนี้จะส่งชุดค่าผสม Ctrl . ไปยังหน้าต่างที่ใช้งานอยู่ + A เพื่อ พูด เลือกข้อความทั้งหมด แล้ว Ctrl + C เพื่อคัดลอกไปยังคลิปบอร์ด:

Send, ^A^C

สร้างสคริปต์แรกของคุณ

เรามาดูกันว่าทุกสิ่งที่เราเห็นตอนนี้แปลเป็นตัวอย่างในโลกแห่งความเป็นจริงได้อย่างไรโดยการสร้างสคริปต์ที่จะเพิ่มทางลัดไปยังฟังก์ชันการค้นหาของ Make Tech Easier เมื่อกดปุ่มลัด เมาส์จะเคลื่อนที่และคลิกไอคอนค้นหาบนเว็บไซต์ของเรา จากนั้นป้อนสิ่งที่อยู่ในคลิปบอร์ดในช่องค้นหาแล้วส่ง "Enter" เพื่อเริ่มการค้นหา

วิธีใช้ AutoHotkey เพื่อทำให้ทุกอย่างเป็นอัตโนมัติใน Windows

เราเริ่มต้นด้วยการตรวจสอบด้วย Window Spy และพบว่าพิกัดสำหรับไอคอนค้นหา เมื่อหน้าต่างของ Firefox ถูกขยายให้ใหญ่สุดในหน้าจอ 1920 x 1080 นั้นอยู่ใกล้กับ X=1835 และ Y=135 ตัวเลขเหล่านี้แตกต่างกันไปเนื่องจากไอคอนค้นหามีขนาดใหญ่กว่าพิกเซลเดียว ดังนั้น X =1830 และ Y =140 จะทำงานเช่นกันเนื่องจากเคอร์เซอร์ยังคงชี้ไปที่ไอคอนเมื่ออยู่ที่พิกัดเหล่านั้น เมื่อรู้อย่างนี้แล้ว เราก็เขียนได้ว่า:

#IfWinActive, ahk_exe firefox.exe ;Only activate if the window belongs to the firefox.exe application.
 
!+M:: ;The script will activate whenever we press the combination Alt+Shift+M.
 
Click, 1830, 140
 
Sleep, 50 ;Small delay, to make sure the search field has appeared on the screen.
 
Send, {Clipboard}{Enter} ;Send the contents of the Clipboard to the search field and then press enter to initiate a search.
 
return ;End the specific part of the script that, in this case, sets up a hotkey.
 
#If ;Stop targeting the specific app\window.

ใช่ มันง่ายมาก เกือบจะเหมือนกับการเขียนเป็นภาษาอังกฤษธรรมดา และถ้าคุณลองคิดดู การทำเช่นนี้จะทำให้ทุกอย่างที่คุณทำบนคอมพิวเตอร์เป็นไปโดยอัตโนมัติ

  • คุณต้องการทำแผนที่โดยเปิดใช้ห้าแอปพลิเคชันหรือ "Hadouken" ของ Ryu ใน Street Fighter เป็นการกดแป้นเพียงครั้งเดียว
  • หากต้องการเลื่อนเคอร์เซอร์ของเมาส์ไปยังจุดใดจุดหนึ่งในหน้าต่างและคลิก 50 ครั้งติดต่อกันอย่างรวดเร็วอย่างไร้มนุษยธรรม
  • หากต้องการให้ Caps Lock มีประโยชน์มากขึ้นโดยเปลี่ยนให้เป็นคลิกกลางที่เมาส์ของคุณขาดไป

ทั้งหมดนี้สามารถทำได้ในลักษณะเดียวกันอย่างแม่นยำ! ลองนึกถึงขั้นตอนทั้งหมดที่คุณทำซ้ำทุกวัน แยกย่อยเป็นส่วน ๆ ของผลรวมและทำซ้ำแต่ละส่วนด้วย AutoHotkey เพื่อลดความซับซ้อนของวิธีการใช้คอมพิวเตอร์ของคุณและเพิ่มประสิทธิภาพการทำงานของคุณ ออกไปและทำให้เป็นอัตโนมัติ!