Sử dụng Autohotkey cho người mới bắt đầu

Autohotkey

Nhập đi nhập lại một đoạn văn bản, liên tục thực hiện một thao tác trong khoảng thời gian nhất định, một số chức năng trên hệ điều hành thì bạn mong ước có phím tắt để thao tác nhanh hơn.

Vào Start Menu nhập đi nhập lại tên của những phần mềm hoặc ứng dụng bạn thường xuyên sử dụng. Và bạn có thấy phát ngán khi phải làm đi làm lại những việc được nêu ra ở trên không?

Vâng, có một ứng dụng sẽ giúp bạn tăng tốc và giảm bớt thời gian thực hiện các việc được kể trên. Ứng dụng đó có tên là Autohotkey.

Autohotkey là gì?

Autohotkey là một ngôn ngữ kịch bản mã nguồn mở miễn phí dành cho Windows. Autohotkey cho phép bạn tạo ra các đoạn script phục vụ cho các phần việc như tự động nhấp chuột (auto-clicking), tạo macro từ đơn giản đến phức tạp.

Với Autohotkey, bạn sửa đổi lại các phím nóng dành cho chuột và bàn phím trên hệ điều hành là việc hoàn toàn dễ dàng. Nhưng đó chỉ là bề ngoài thôi, còn thực sự thì Autohotkey còn làm được nhiều việc hơn thế nữa, điều này còn tùy vào người dùng đã khai thác hết sức mạnh của Autohotkey hay chưa.

Cài đặt Autohotkey

Bạn truy cập vào trang tải xuống của Autohotkey, ở trang tải xuống có hai bản: cài đặtportable (không cần cài đặt). Muốn dùng bản nào thì bạn chỉ nhấn chuột rồi chờ tải xuống.

Bản cài đặt

Sau khi tải xuống và chạy bản cài đặt thì sẽ có 2 cách để bạn cài đặt: một là Express Installation, hai là Custom Installation. Nếu bạn nhấn vào Express Installation thì nó sẽ cài đặt bình thường, còn nếu muốn tùy chỉnh một chút phần cài đặt thì bạn nhấn vào Custom Installation.

Cài đặt Autohotkey

Cài đặt xong thì nhấn Exit để kết thúc quá trình cài đặt.

Cài đặt thành công Autohotkey

Bản portable (không cần cài đặt)

Với bản portable này, bạn tải về và giải nén là sẽ sử dụng được mà không cần cài đặt.

Làm sao sử dụng Autohotkey?

Khi bạn đã cài đặt Autohotkey thì mỗi lần bạn nhấn chuột phải vào màn hình desktop hoặc Windows Explorer, chọn New thì sẽ thấy AutoHotkey Script.

Tạo mới Autohotkey

Hoặc bạn dùng các trình soạn thảo để tạo ra tập tin có tên đuôi .ahk. Khi đã có tập tin .ahk thì bạn cần viết thêm kịch bản là xong, muốn chạy tập tin này chỉ cần nhấp chuột 2 lần. Nếu muốn sửa tập tin .ahk, bạn chỉ việc nhấn chuột phải vào biểu tượng .ahk (biểu tượng có chữ H) và chọn Edit Script.

Chỉnh sửa Autohotkey

Còn đối những bản portable, bạn cần tạo tập tin .ahk và viết thêm kịch bản vào trong tập tin đó. Viết xong dùng công cụ Ahk2Exe ở trong thư mục Compiler để chuyển đổi tập tin .ahk thành tập tin .exe.

Ahk2exe của Autohotkey

Sau khi chuyển đổi thành công bạn sẽ có tập tin .exe và chỉ cần chạy tập tin .exe là được.

Tạo kịch bản Autohotkey

Để tạo ra các kịch bản Autohotkey bạn cần có các trình soạn thảo như Notepad hoặc Notepad++ hoặc Sublime Text hoặc trình soạn thảo nào khác, sử dụng trình soạn thảo nào là tùy thuộc vào bạn. Sau đây, Passionery chia sẻ một số kịch bản Autohotkey mà bạn có thể sử dụng trong việc dùng máy tính hằng ngày.

Viết tắt

Nếu thường xuyên nhập đi nhập lại một đoạn văn bản, một cụm từ nào đó thì bạn nên tìm cách tạo chữ viết tắt cho đoạn văn bản hoặc cụm từ đó. Ví dụ, bạn thường xuyên gõ đi gõ lại chữ Autohotkey và bạn muốn tạo ra cách viết tắt nhanh cho chữ này thì bạn có thể dùng kịch bản sau:

[code]::ahk::Autohotkey[/code]
Autohotkey hotstring

Chữ viết tắt được bắt đầu bằng một cặp dấu hai chấm (::), ở giữa là chữ viết tắt. Tiếp theo là một cặp dấu hai chấm kèm theo chữ được thay thế. Với kịch bản trên, bạn phải gõ chữ ahk từ bàn phím và dùng ký tự kết thúc (ending characters) như -()[]{}':;"/\,.?!, phím Enter, phím Tab thì mới áp dụng được chữ viết tắt này.

Còn muốn loại bỏ các ký tự kết thúc thì sao? Giả sử bạn ghét các ký tự kết thúc này và muốn rằng khi gõ xong chữ ahk thì lập tức xuất hiện Autohotkey. Bạn sẽ đặt dấu * ở giữa cặp dấu hai chấm đầu tiên để loại bỏ ký tự kết thúc, ví dụ như:

[code]:*:ahk::Autohotkey[/code]
Autohotkey hotstring asterisk

Xóa sạch dữ liệu trong thùng rác

Autohotkey gần như làm được mọi thứ trên máy tính bao gồm cả việc xóa sạch tập tin/thư mục trong thùng rác (recycle bin). Chỉ cần dùng một tổ hợp phím là bạn sẽ tiết kiệm được thời gian nhấn chuột vào thùng rác.

[code]; Xóa sạch thùng rác #Del::FileRecycleEmpty[/code]

Giải thích sơ lược lệnh FileRecycleEmpty:

  • FileRecycleEmpty, lệnh này làm sạch thùng rác, nếu không chỉ định bất kỳ ổ đĩa nào thì mặc định sẽ làm sạch thùng rác. Nếu bạn chỉ muốn xóa những tập tin/thư mục của ổ C: trong thùng rác thì dùng kịch bản FileRecycleEmpty, C:\

Với kịch bản trên, # là phím WindowsDel là phím Delete. Tiếp theo phía sau cặp dấu hai chấm là một câu lệnh và câu lệnh được dùng là FileRecycleEmpty. Và khi bạn nhấn tổ hợp phím Windows + Del thì Autohotkey sẽ xóa hết dữ liệu trong thùng rác.

Vô hiệu hóa phím Windows

Khi bạn nhấn phím Windows trên bàn phím thì Windows sẽ gọi Start Menu. Phím Windows hữu ích trong các việc sử dụng máy tính vì có nhiều phím tắt trong Windows đều dùng phím này.

Nhưng nếu đối với những ai thường xuyên chơi các game toàn màn hình thì thật đáng ghét, vì khi nhấn phím Windows trong lúc đang chơi các game toàn màn hình thì một là sẽ thoát ra, hai là game vẫn tiếp tục diễn ra trong khi bạn đang ở ngoài màn hình desktop.

Phương pháp để giải quyết phím Windows này chính vô hiệu hóa nó trong lúc bạn đang chơi game. Bạn dùng kịch bản dưới đây thì sẽ vô hiệu hóa được phím Windows.

[code]LWin::Return[/code]

LWin là phím Windows bên trái bàn phím. Với kịch bản trên, khi bạn nhấn phím Windows thì nó sẽ không làm gì cả.

Cửa sổ Window luôn ở trên cùng

Windows không hề có chức năng cho phép cửa sổ Window luôn hiện ở trên cùng (always on top). Chức năng luôn hiện ở trên cùng sẽ làm cho một cửa số Window nào đó luôn đứng ở trên cùng màn hình cho dù có nhiều cửa sổ Window khác cùng hiện thị trên màn hình.

Nếu bạn thấy khó hiểu thì bạn có thể mở Task Manager, Task Manager luôn ở trạng thái luôn hiện ở trên cùng. Cho dù bạn có mở nhiều cửa sổ của các ứng dụng hoặc phần mềm khác thì nó vẫn luôn ở trên cùng.

Bạn phải nhấn vào Minimize thì nó mới thu gọn dưới thanh taskbar. Chỉ với Autohotkey, bạn có thể chỉ định một cửa sổ phần mềm/ứng dụng nào đó luôn ở trên cùng bằng một phím tắt.

[code]F4::WinSet, AlwaysOnTop, , A[/code]

Lệnh WinSet dùng để thay đổi cửa sổ Window được chỉ định. Thuộc tính AlwaysOnTop sẽ làm cho cửa sổ Window được chỉ định luôn ở trên cùng.

Ký tự A dùng để chỉ cửa sổ Window đang hoạt động. Vậy với kịch bản trên, F4 sẽ là phím để cho cửa sổ Window luôn ở trên cùng.

Cách sử dụng rất đơn giản, với cửa sổ đang hoạt động thì bạn nhấn phím F4 thì nó lúc nào cũng luôn ở trên cùng. Để hủy bỏ trạng thái này thì bạn cần nhấn lại một lần phím F4 là được.

Khởi động phần mềm/ứng dụng

Bạn có thể khởi động nhanh một phần mềm hoặc ứng dụng ưa thích của bạn trong Windows thông qua việc tạo lối tắt (shortcut) ở ngoài màn hình Desktop. Nhưng bạn sẽ mất chút ít thời gian rê chuột đến và nhấp đúp 2 lần để mở phần mềm hoặc ứng dụng đó.

Với Autohotkey, bạn sẽ tiết kiệm được thời gian để khởi động các phần mềm/ứng dụng nhanh hơn thông qua lệnh Run và lệnh RunWait.

Ví dụ kịch bản dưới đây bạn dùng tổ hợp phím Windows + T sẽ khởi động ứng dụng Skype:

[code]#T::Run "C:\Program Files\Skype\Phone\Skype.exe"[/code]

Với lệnh Run, bạn còn mở được hơn nhiều phần mềm/ứng dụng chứ không phải chỉ là một.

[code]#T:: Run D:\SoftWare\notepadplus.6.7.4.bin\notepad++.exe, Min Run calc.exe Run notepad.exe, Max Return[/code]

Kịch bản trên sẽ khởi động các phần mềm/ứng dụng như Notepad++, Calculator và Notepad cùng một lúc.

Còn lệnh RunWait thì khác một chút so với lệnh Run, điểm khác nhau ở chỗ lệnh Run thì khởi động các phần mềm/ứng dụng cùng một khoảng thời gian, còn lệnh RunWait thì sẽ đợi cho phần mềm/ứng dụng trước đó đóng mới tiếp tục khởi động phần mềm/ứng dụng tiếp theo. Cũng giống kịch bản trên nhưng giờ đổi Run thành RunWait.

[code]#T:: RunWait D:\SoftWare\notepadplus.6.7.4.bin\notepad++.exe, Min RunWait calc.exe RunWait notepad.exe, Max Return[/code]

Khi bạn biên dịch kịch bản trên và nhấn tổ hợp phím Windows + T, Autohotkey sẽ mở Notepad++, tiếp theo bạn đóng Notepad++ thì Autohotkey sẽ tiếp tục khởi động Calculator, và bạn đóng Calculator thì Autohotkey sẽ tiếp tục khởi động Notepad.

Thiết lập trạng thái của Capslock, NumLock và ScrollLock

Capslock, NumLock và ScrollLock là các phím ít dùng nhất trên bàn phím, nhất là phím ScrollLock. Bật Capslock thì các ký tự bạn gõ trên bàn phím sẽ được viết in hoa hết hoặc bạn cũng có thể làm việc này bằng cách giữ phím Shift.

Vì thế phím Capslock này chẳng có hữu dụng với những ai không thường xuyên soạn thảo văn bản. Còn phím Numlock thì dùng để bật hoặc tắt phím số bên phải bàn phím và chẳng bao giờ bao giờ bạn lại tắt phím Numlock cả.

Với Autohotkey, bạn dễ dàng điều chỉnh trạng thái bật hoặc tắt của các phím trên. Phím Numlock lúc nào cũng sẽ được bật, phím Capslock và ScrollLock thì sẽ được tắt.

[code]; Điều chỉnh trạng thái của Capslock, NumLock và ScrollLock SetNumlockState, AlwaysOn SetCapsLockState, AlwaysOff SetScrollLockState, AlwaysOff[/code]

Giải thích sơ lược ý nghĩa các dòng trên:

  • SetNumlockState, SetCapsLockStateSetScrollLockState, 3 lệnh này điều chỉnh trạng thái của 3 phím trên. Với tham số AlwaysOn hoặc AlwaysOff thì các phím này lúc nào cũng được luôn luôn bật hoặc tắt.

Tạm ngưng Autohotkey

Đôi lúc các đoạn kịch bản của Autohotkey sẽ gặp một vài vấn đề không như ý bạn muốn. Trong trường hợp này thì bạn nên tạm ngưng Autohotkey, bạn có thể làm được việc thông qua nhấn chuột phải biểu tượng Autohotkey dưới khay hệ thống và nhấn Suspend Hotkeys.

Tạm dừng Autohotkey

Hoặc bạn cũng có thể viết kịch bản để tạm ngưng Autohotkey. Và kịch bản có nội dung như sau:

[code]; Tạm ngưng Autohotkey #S::Suspend[/code]

Giải thích sơ lược lệnh Suspend:

  • Suspend, lệnh này vô hiệu hóa hoặc không vô hiệu hóa Autohotkey. Với đoạn kịch bản trên thì bạn cần dùng tổ hợp phím Windows + S để vô hiệu hóa Autohotkey. Muốn phục hồi lại Autohotkey thì bạn dùng lại tổ hợp phím Windows + S.

Tắt Autohotkey

Muốn tắt Autohotkey thì bạn chỉ nhấn chuột phải vào biểu tượng Autohotkey dưới khay hệ thống và nhấn vào Exit thì Autohotkey sẽ tự động thoát.

Thoát Autohotkey

Nếu bạn muốn tiết kiệm thời gian của mình và không thích thao tác bằng chuột, bạn chỉ cần một dòng kịch bản ngắn gọn dưới đây là bạn sẽ tắt được Autohotkey mà không cần phải thao tác bằng chuột. Bằng cách dùng lệnh ExitApp thì bạn sẽ tắt được Autohotkey.

[code]; Đóng/Tắt Autohotkey #X::ExitApp[/code]

Với kịch bản trên, chỉ dùng tổ hơp phím Windows + X là bạn sẽ tắt được Autohotkey.

Tắt, khởi động lại, đăng xuất máy tính

Cũng giống như trên, bạn có thể tắt (shutdown) máy tính, khởi động lại (restart) máy tính, đăng xuất (logoff) tài khoản đang dùng của máy tính bằng cách dùng Autohotkey.

Bạn dùng lệnh Shutdown với các tham số như sau: 0 là đăng xuất, 1 là tắt máy tính, 2 là khởi động lại. Giả sử rằng bạn muốn tắt máy tính bằng tổ hợp phím Ctrl + Alt + S thì dùng kịch bản sau:

[code]; Tắt máy tính ^!S::Shutdown, 0[/code]

Sử dụng Ctrl+V trong Command Prompt

Nếu bạn đã từng dùng qua Command Prompt thì hẳn bạn sẽ thấy phiền vì nó không cho bạn dùng tổ hợp phím Ctrl + V mặc định của Windows. Vì vậy, bạn sẽ gặp khó khăn trong việc sao chép (copy) và dán (paste) một dòng lệnh mà bạn đã sao chép trên Internet.

Bạn xử lý việc này bằng cách nhấn chuột phải chọn Paste nhưng nó sẽ không thoải mái hơn bằng việc dùng tổ hợp phím Ctrl + V quen thuộc của Windows. Bạn sẽ khôi phục được tổ hợp phím Ctrl + V trên Command Prompt với Autohotkey.

Bạn tạo một kịch bản Autohotkey có nội dung như sau:

[code]#IfWinActive ahk_class ConsoleWindowClass ^V::SendInput {Raw}%clipboard% #IfWinActive[/code]

#IfWinActive là một chỉ thị (directive) để kiểm tra cửa sổ Window có tồn tại và đang hoạt động không? ahk_class dùng để khai báo tên lớp (class name) của cửa sổ Window đang hoạt động và ConsoleWindowClass là cửa sổ Command Prompt.

Bắt đầu bằng #IfWinActive thì cũng phải kết thúc bằng #IfWinActive. Và phía trong #IfWinActive là kịch bản mà bạn muốn thực thi trong Command Prompt. Làm sao lấy được tên lớp của phần mềm/ứng dụng mà bạn muốn?

Autohotkey có cung cấp sẵn tập tin AU3_Spy.exe ngay tại thư mục cài đặt. Bạn chạy tập tin này thì sẽ thấy tên lớp ngay phần ahk_class và nhiều thông tin hữu ích liên quan đến phần mềm/ứng dụng hiện tại.

Autohotkey - Active Window Info

Giải thích sơ lược ý nghĩa các dòng lệnh khác:

  • SendInput, lệnh này gửi những nội dung từ của biến clipboard đến Command Prompt khi bạn dùng tổ hợp phím Ctrl + V.
  • {Raw}, khởi động chế độ văn bản thuần chủng.
  • Return, kết thúc các câu lệnh phía trên.

Mở Command Prompt từ Windows Explorer

Chỉ với vài dòng kịch bản Autohotkey thì bạn có thể mở được Command Prompt từ Windows Explorer. Nếu bạn đang ở thư mục C:\Windows thì trong dấu nhắc lệnh của Command Prompt sắp được mở sẽ là C:\Windows.

Điều này rất tiện dụng nếu bạn thường xuyên sử dụng các công cụ dòng lệnh trên Windows. Giả sử sau khi tải xuống một công cụ dòng lệnh và muốn chạy ngay công cụ tại thư mục hiện tại, bạn gọi được Command Prompt lập tức với dấu nhắc lệnh của đường dẫn thư mục hiện tại mà không cần phải dùng lệnh cd để nhảy tới thư mục đó.

Với kịch bản phía dưới, Ctrl + Alt + H là tổ hợp phím để bạn gọi Command Prompt từ Windows Explorer.

[code]#IfWinActive ahk_class CabinetWClass ^!H:: Clipboard= SendInput !d^c ClipWait Run, cmd /K "cd /d `"%clipboard%`"" Clipboard= return #IfWinActive[/code]

Cách hoạt động của kịch bản trên khá dễ hiểu, trước tiên là dùng tổ hợp phím Alt + DCtrl + C. Alt + D chọn đường dẫn địa chỉ của Windows Explorer và Ctrl + C thì sao chép đường dẫn từ Windows Explorer.

Sau đó dùng lệnh Run để thực thi lệnh cmd của Command Prompt với tham số là k. Lệnh cmd thực ra chỉ là gọi một Command Prompt mà thôi. Sau khi đã gọi Command Prompt thì truyền lệnh cd với tham số d và kèm theo đường dẫn đã sao chép từ lúc đầu.

Tổng kết

Những kịch bản ở trên chỉ là những kịch bản ngắn gọn, dễ hiểu dành cho những ai mới bắt đầu tìm hiểu và làm quen với Autohotkey. Những kịch bản trên giúp bạn một phần nào đó hiểu rõ được những gì Autohotkey làm được.

Autohotkey thực sự là một ngôn ngữ kịch bản tức là bạn cũng cần có một chút am hiểu về lập trình mới khai thác được sức mạnh của nó. Vì có một số kịch bản phức tạp chẳng hạn như cần phải khai báo biến và đối tượng, sử dụng hàm nào đó.

Nếu bạn không hiểu về khái niệm khai báo biến và khai báo đối tượng, viết hàm thì bạn không thể viết được những kịch bản phức tạp để giảm bớt thời gian thực hiện công việc của bạn. Để hiểu rõ hơn về cách viết kịch bản Autohotkey bạn nên đọc kỹ tài liệu hướng dẫn của Autohotkey.

1 comment:

  1. This comment has been removed by a blog administrator.

    ReplyDelete

Powered by Blogger.