Έχετε σκεφτεί πόσες βαρετές και επαναλαμβανόμενες διαδικασίες πραγματοποιούμε καθημερινά στον υπολογιστή; Δεν θα ήταν ευκολότερο αν χρησιμοποιούσαμε κάποιο πρόγραμμα με δυνατότητες αυτοματοποίησης; Στον οδηγό αυτόν θα δούμε πώς να δημιουργήσουμε τα δικά μας script στο AutoHotkey, έτσι ώστε να κάνουμε τη ζωή μας πιο εύκολη και να γίνουμε πιο αποδοτικοί.
Προτάσεις συνεργασίας
Τα νέα άρθρα του PCsteps
Γίνε VIP μέλος στο PCSteps
Τι είναι το AutoHotkey και γιατί μου είναι χρήσιμο;
Το AutoHotkey αποτελεί μία πλατφόρμα, η οποία μας επιτρέπει να δημιουργούμε μακροεντολές για τα Windows. Πρόκειται για ένα πρόγραμμα ανοικτού κώδικα (open-source), που διανέμεται δωρεάν.
Οι δυνατότητές του είναι απεριόριστες. Μπορούμε να ρυθμίσουμε την αυτόματη εκτέλεση συγκεκριμένων ενεργειών, να προσαρμόσουμε τον υπολογιστή, να ορίσουμε συντομογραφίες που να μετατρέπονται αυτόματα σε πλήρη μορφή, και πολλά άλλα.
Το AutoHotkey διαθέτει πιο προχωρημένες δυνατότητες αυτοματοποίησης από το Pulover's Macro Creator που είδαμε σε παλαιότερο οδηγό.
Μακροεντολή στα Windows με το Pulover's Macro CreatorΈχει χρειαστεί ποτέ να κάνεις μια βαρετή και επαναλαμβανόμενη εργασία στον υπολογιστή σου? Πλέον, μπορείς να δημιουργήσεις μια μακροεντολή και να την αυτοματοποιήσεις. Με το δωρεάν Pulover’s Macro…
Επιπλέον, χρησιμοποιεί τη δικιά του γλώσσα για τον προγραμματισμό των μακροεντολών, που είναι ιδιαίτερα απλή και δεν θα δυσκολευτούμε να τη μάθουμε.
Παραπλήσιες δυνατότητες προσφέρει και το AutoIt, όμως στον οδηγό θα εστιαστούμε στο AutoHotkey, που είναι πιο δημοφιλές και έχει μεγαλύτερη διαδικτυακή κοινότητα.
Σε περίπτωση που κάποιος ενδιαφέρεται για αυτοματισμούς στο web, υπάρχει το iMacros, με δωρεάν επεκτάσεις για Chrome και Firefox.
Εγκατάσταση του AutoHotkey
Παρακάτω θα δούμε ολόκληρη τη διαδικασία για να κατεβάσουμε το AutoHotkey και να εκμεταλλευτούμε τις σπουδαίες δυνατότητές του.
Αφού μπούμε στο autohotkey.com, πατάμε “Download” και μετά “Installer”.
Επιλέγουμε την πρώτη επιλογή για να γίνει η εγκατάσταση με τις προεπιλεγμένες ρυθμίσεις. Η εγκατάσταση είναι απλή και δεν θα επιχειρήσει να μας ξεγελάσει στο να περάσουμε ανεπιθύμητα τρίτα προγράμματα.
Τώρα που εγκαταστήσαμε το πρόγραμμα, μπορούμε να ξεκινήσουμε να φτιάχνουμε τα δικά μας script στο AutoHotkey.
Πώς δημιουργούμε script στο AutoHotkey
Αρχικά, πρέπει να κάνουμε δεξί κλικ στην επιφάνεια εργασίας ή μέσα σε κάποιον φάκελο. Έπειτα επιλέγουμε Δημιουργία –> AutoHotkey Script.
Δίνουμε ένα όνομα στο αρχείο μας, όπως “Script 1”, “Script 389”, ή “Βλαδίμηρος”.
Για να το επεξεργαστούμε, αρκεί να πατήσουμε δεξί κλικ πάνω του και μετά “Edit Script”.
Θα ανοίξει ο editor που χρησιμοποιούμε ως προεπιλογή. Μπορούμε να αρκεστούμε στο Σημειωματάριο των Windows, ή να χρησιμοποιήσουμε το Notepad++ που είναι μια εξαιρετική εναλλακτική.
Περισσότερα για editor προσαρμοσμένους για το AutoHotkey θα βρούμε εδώ.
Πριν αρχίσουμε να προγραμματίζουμε, θα χρειαστεί να κατανοήσουμε ορισμένα πράγματα σχετικά με τα script στο AutoHotkey.
Hotkey
Πρώτα απ' όλα, τα script στο AutoHotkey βασίζονται στα hotkey, τα οποία δεν είναι άλλα από τα πλήκτρα που εκτελούν μια συγκεκριμένη ενέργεια όταν πατηθούν.
Είναι δηλαδή οι γνωστές συντομεύσεις πληκτρολογίου, σαν αυτές που χρησιμοποιούν οι χάκερ στις ταινίες για να μην ακουμπήσουν καθόλου το ποντίκι.
Η βασική δομή των script που θα δημιουργούμε συνήθως είναι η εξής:
συντόμευση:: ενέργειες return
Έτσι, όταν το πρόγραμμα αναγνωρίσει ότι πατήθηκαν τα πλήκτρα που έχουν οριστεί, εκτελούνται οι ενέργειες που έχουμε προγραμματίσει.
Τα hotkey έχουν συγκεκριμένο συμβολισμό. Για παράδειγμα, αν θέλουμε να γράψουμε τον συνδυασμό Control+J, θα πρέπει να γράψουμε “^j”. Αντιλαμβανόμαστε λοιπόν, ότι το “^” συμβολίζει το Control.
Στον παρακάτω πίνακα βλέπουμε τα συνηθέστερα ειδικά πλήκτρα και τους συμβολισμούς τους.
Διαβάστε περισσότερα για τα hotkey στην επίσημη σελίδα.
Ας πάμε τώρα να γράψουμε ένα δοκιμαστικό script. Αφήνουμε αυτά που είναι ήδη γραμμένα και κάνουμε επικόλληση από κάτω τον παρακάτω κώδικα.
^!z:: Send, hello world return
Με αυτό το script που δημιουργήσαμε, όταν πατηθεί ο συνδυασμός Control+Alt+Z, γράφεται αυτόματα το “hello world”.
Για να το δοκιμάσουμε, αποθηκεύουμε το αρχείο και κάνουμε διπλό κλικ πάνω του. Μόλις πατήσουμε τον συνδυασμό, θα δούμε ότι ως δια μαγείας θα πληκτρολογηθεί η συγκεκριμένη φράση.
Να σημειωθεί ότι μπορούμε να έχουμε πολλά hotkey και hotstring στο ίδιο αρχείο, με διαφορετικές ενέργειες για το καθένα. Για τα hotstring θα δούμε περισσότερες πληροφορίες παρακάτω.
Χρήσιμες εντολές
Στη θέση της εντολής Send που είδαμε πιο πάνω, ή μαζί με αυτήν, μπορούμε να βάλουμε μία από τις υποστηριζόμενες εντολές του AutoHotkey.
Παρακάτω συγκεντρώσαμε τις εντολές που είναι πιθανότερο να χρησιμοποιήσουμε στη δημιουργία script στο AutoHotkey.
- Click – όπως φανταστήκατε, κάνει κλικ
Η σύνταξη της εντολής φαίνεται παρακάτω. Οτιδήποτε υπάρχει μετά το ελληνικό ερωτηματικό, το πρόγραμμα τα εκλαμβάνει ως σχόλια και τα αγνοεί.
Click ;προσομοιώνει το κλικ στο σημείο που βρίσκεται εκείνη τη στιγμή ο δείκτης του ποντικιού Click 5 ;κάνει κλικ πέντε φορές Click 102, 255 ;κάνει κλικ στις συντεταγμένες 102, 255 στην οθόνη
Η εντολή είναι ιδιαίτερα χρήσιμη για να κάνουμε cheat σε πολλά παιχνίδια που χρειάζονται συνεχόμενα κλικ, σαν το Adventure Capitalist ή το Cookie Clicker που έχουμε αναλύσει σε παλαιότερο οδηγό.
7 Ενδιαφέρουσες Ιστοσελίδες για να Περάσει η ΏραΠολλοί από εμάς θέλουμε να είμαστε παραγωγικοί, και να μην χαζεύουμε άσκοπα στο Internet. Όμως το ανθρώπινο μυαλό μπορεί να λειτουργήσει αποδοτικά μέχρι ένα σημείο,…
Οι συντεταγμένες αναφέρονται στο τρέχον πρόγραμμα, και η μέτρηση ξεκινάει από την πάνω αριστερά γωνία του ενεργού παραθύρου. Για να το ρυθμίσουμε να αναφέρεται σε όλη την οθόνη, εισάγουμε την παρακάτω εντολή πριν από όλα τα hotkey στο script μας:
CoordMode, Mouse, Screen
Όμως, πώς μπορούμε να βρούμε τις συντεταγμένες ενός συγκεκριμένου σημείου στο οποίο θέλουμε να γίνει κλικ; Η απάντηση βρίσκεται στο Active Window Info (Window Spy), που συνοδεύει το AutoHotkey και εγκαθίσταται μαζί του.
Θα το βρούμε στον φάκελο AutoHotkey, στη λίστα με όλα τα προγράμματα.
Με αυτόν τον τρόπο μπορούμε να δούμε διάφορες πληροφορίες για το ενεργό παράθυρο και την τρέχουσα θέση του ποντικιού. Εμείς κοιτάζουμε στο πλαίσιο Mouse Position.
Αν θέλουμε τις συντεταγμένες του παραθύρου, θα τις βρούμε στο Relative. Αντίστοιχα στο Absolute βλέπουμε τις συντεταγμένες που αναφέρονται σε όλη την οθόνη.
- Run – εκκινεί ένα αρχείο, πρόγραμμα, ή ιστοσελίδα
Παρακάτω βλέπουμε μερικούς τρόπους με τους οποίους μπορούμε να χρησιμοποιήσουμε την εντολή.
Run C:\Users\Panos\Documents\file.txt ;ανοίγει το αρχείο που ορίσαμε Run chrome.exe ;ανοίγει τον Google Chrome - αρκετές εφαρμογές δεν χρειάζονται ολόκληρη τη διεύθυνση του αρχείου για να τρέξουν Run www.pcsteps.gr ;ανοίγει την ιστοσελίδα του PCsteps
- Send – εξομοιώνει το πάτημα πλήκτρων
Μερικά παραδείγματα χρήσης:
Send, Good Morning ;πληκτρολογεί το κείμενο "Good Morning" Send, ^s ;πατάει τον συνδυασμό πλήκτρων Control+S (πχ. για την αποθήκευση) Send, line 1{enter}line 2 ;το {enter} συμβολίζει το πλήκτρο Enter Send, Hi{!} ;το θαυμαστικό πρέπει να το βάλουμε μέσα σε αγκύλες γιατί αλλιώς θα αναγνωριστεί ως το πλήκτρο Alt (όπως και τα +,^,#)
- Sleep – παύση της εκτέλεσης του script
Χρησιμοποιείται με τον παρακάτω τρόπο:
Sleep, milliseconds ;όπου milliseconds τα χιλιοστά του δευτερολέπτου που θέλουμε να περιμένει ;Για παράδειγμα Sleep, 5000 ;δεν γίνεται τίποτα για 5 δευτερόλεπτα
Άλλες χρήσιμες εντολές είναι το MsgBox για την εμφάνιση μηνύματος, καθώς και τα WinActivate και WinClose για τη διαχείριση παραθύρων.
Hotstring
Εκτός από τα hotkey, μπορούμε να χρησιμοποιήσουμε και συγκεκριμένο κείμενο για να δώσει το έναυσμα για μια ενέργεια. Για παράδειγμα, μπορεί να θέλουμε κάθε φορά που γράφουμε @@ να γίνεται εισαγωγή του email μας.
::@@::[email protected]
Σε μια τέτοια περίπτωση, η συντόμευση που ορίζουμε ονομάζεται hotstring.
Με τον παραπάνω κώδικα λοιπόν, δεν θα χρειάζεται να γράφουμε κάθε φορά ολόκληρο το email, μόνο το hotstring “@@” που ορίσαμε. Ανάμεσα στα “::” μπαίνει το hotstring, και μετά το κείμενο στο οποίο θα μετατραπεί.
Επισημαίνουμε ότι η μετατροπή θα γίνει αφού πληκτρολογήσουμε “@@” και στη συνέχεια το κενό. Για να γίνει απευθείας η αντικατάσταση, θα πρέπει να προσθέσουμε στο script έναν αστερίσκο μετά την πρώτη άνω και κάτω τελεία:
:*:τεσπα::τέλος πάντων
Με τη βοήθεια των hotstring είναι εύκολο να ορίσουμε συντομογραφίες που να μετατρέπονται αυτόματα, κάνοντας τη ζωή μας πιο εύκολη.
Προσθήκη στο startup των Windows
Όταν ολοκληρώσουμε το script μας, είναι εύκολο να το προσθέσουμε στο startup για να εκκινείται αυτόματα όταν ανοίγουν τα Windows.
Απλά πατάμε Win+R για να ανοίξει το παράθυρο “Εκτέλεση”…
…γράφουμε “shell:startup” και πατάμε Enter.
Αντιγράφουμε το αρχείο μας μέσα στον φάκελο που θα ανοίξει.
Πλέον το script θα τρέχει αυτόματα όταν ανοίγουμε τον υπολογιστή, και θα είναι συνεχώς στο παρασκήνιο.
Διαβάστε περισσότερα για τις εφαρμογές που εκκινούν με τα Windows στον οδηγό μας:
Έτοιμα script που ξεχωρίσαμε
Αφού είδαμε τα βασικά για να δημιουργήσουμε μόνοι μας script στο AutoHotkey, ας ρίξουμε μια ματιά σε κάποια έτοιμα script από το διαδίκτυο.
Αυτόματη διόρθωση
Αυτό το script είναι αρκετά δημοφιλές και αναλαμβάνει να διορθώσει συχνά ορθογραφικά λάθη -δυστυχώς μόνο στα Αγγλικά – σε οποιοδήποτε πρόγραμμα κι αν γράφουμε στον υπολογιστή μας.
Περιλαμβάνει λίστες με συχνά ορθογραφικά λάθη από τη Βικιπαίδεια και άλλες πηγές. Επίσης, με το hotkey Win+H εμφανίζεται ένα παράθυρο για να προσθέσουμε κι άλλες λέξεις της αρεσκείας μας.
Για να αποθηκεύσουμε το αρχείο, μπαίνουμε σε αυτή τη σελίδα και πατάμε Control+S.
Αυτόματη διόρθωση μέσω Google
Εδώ, αντί να περιλαμβάνει το script μια λίστα με κάποιες λέξεις, αφήνει την πολύ ισχυρή αναζήτηση της Google να κάνει τη διόρθωση.
Όταν επιλέξουμε λέξη, φράση, ή ολόκληρη πρόταση και πατήσουμε Control+Alt+C, το script αναζητεί στο Google το επιλεγμένο κείμενο.
Και πάλι, δυστυχώς, λόγω προβλήματος στον κώδικα, δεν θα λειτουργήσει με Ελληνικά.
Για να το χρησιμοποιήσουμε, αντιγράφουμε τον παρακάτω κώδικα σε ένα αρχείο με κατάληξη .ahk:
^!c:: clipback := ClipboardAll clipboard= Send ^c ClipWait, 0 UrlDownloadToFile % "https://www.google.com/search?q=" . clipboard, temp FileRead, contents, temp FileDelete temp if (RegExMatch(contents, "(Showing results for|Did you mean:).*?>(.*?)", match)) { StringReplace, clipboard, match2, ,, All StringReplace, clipboard, clipboard, ,, All clipboard := RegExReplace(clipboard, "'", "'") clipboard := RegExReplace(clipboard, "&", "&") } Send ^v Sleep 500 clipboard := clipback return
Για περισσότερες πληροφορίες, μπορείτε να επισκεφτείτε αυτόν τον σύνδεσμο.
Απενεργοποίηση Caps Lock, Num Lock, Scroll Lock
Το Caps Lock χρησιμοποιείται εξαιρετικά σπάνια, εκτός αν είμαστε από αυτούς που “φωνάζουν” συνεχώς στα διάφορα forum. Το Num Lock ίσως να μας εκνευρίζει όταν το πατάμε κατά λάθος, και πιθανώς να μην ξέρουμε καν τι κάνει το Scroll Lock.
Γιατί λοιπόν να μην τα απενεργοποιήσουμε μια και καλή;
Χρησιμοποιώντας το παρακάτω script, η κατάσταση των Caps Lock, Num Lock, και Scroll Lock τίθεται μόνιμα σε off, on, και off αντίστοιχα.
SetCapsLockState, AlwaysOff SetNumlockState, AlwaysOn SetScrollLockState, AlwaysOff return
Αναζήτηση του επιλεγμένου κειμένου στο Google
Παρόμοια με το Search Key στα Chromebook, μπορούμε να αναζητήσουμε στο Google το κείμενο που έχουμε επιλέξει με ένα πάτημα στο Caps Lock.
Είναι ευκαιρία άλλωστε, εφόσον ορίσαμε σταθερή την κατάστασή του, να βρούμε μία άλλη χρησιμότητα για το πλήκτρο.
CapsLock:: { Send, ^c Sleep 50 Run, http://www.google.com/search?q=%clipboard% Return }
Απενεργοποίηση touchpad κατά την πληκτρολόγηση
Πολλές φορές τυχαίνει να πατήσουμε κάτι κατά λάθος στο touchpad όταν πληκτρολογούμε στο laptop.
Αυτό το script απενεργοποιεί το touchpad για επιπλέον μισό δευτερόλεπτο αφού πατηθεί κάποιο κουμπί στο πληκτρολόγιο.
#NoEnv SendMode Input SetWorkingDir %A_ScriptDir% ;keyboard hook code credit: http://www.autohotkey.com/forum/post-127490.html#127490 #Persistent OnExit, Unhook hHookKeybd := SetWindowsHookEx(WH_KEYBOARD_LL := 13, RegisterCallback("Keyboard", "Fast")) Return ReenableTrackpad: BlockInput, MouseMoveOff Return Unhook: UnhookWindowsHookEx(hHookKeybd) ExitApp Keyboard(nCode, wParam, lParam) { Critical If !nCode { BlockInput, MouseMove SetTimer, ReenableTrackpad, 500 } Return CallNextHookEx(nCode, wParam, lParam) } SetWindowsHookEx(idHook, pfn) { Return DllCall("SetWindowsHookEx", "int", idHook, "Uint", pfn, "Uint", DllCall("GetModuleHandle", "Uint", 0), "Uint", 0) } UnhookWindowsHookEx(hHook) { Return DllCall("UnhookWindowsHookEx", "Uint", hHook) } CallNextHookEx(nCode, wParam, lParam, hHook = 0) { Return DllCall("CallNextHookEx", "Uint", hHook, "int", nCode, "Uint", wParam, "Uint", lParam) }
Εδώ θα βρείτε την πηγή αυτού του script.
Αλλαγή έντασης από το πληκτρολόγιο
Αν το πληκτρολόγιό μας δεν διαθέτει ειδικά κουμπιά για την αύξηση και μείωση της έντασης του ήχου, είναι εύκολο με το παρακάτω απλό script στο AutoHotkey να προσθέσουμε αυτή τη λειτουργία.
Μάλιστα, θα αλλάζει κατά 10% κάθε φορά, για να μην χρειάζεται να τα πατάμε πολλές φορές.
Η ορισμένη συντόμευση είναι τα κουμπιά + και – από το αριθμητικό πληκτρολόγιο μαζί με το Shift για αύξηση/μείωση έντασης, καθώς και το Break για σίγαση.
+NumpadAdd:: Send {Volume_Up 5} +NumpadSub:: Send {Volume_Down 5} break::Send {Volume_Mute} return
Φυσικά μπορούμε να αλλάξουμε τις συντομεύσεις σε όποια πλήκτρα θέλουμε, με τον τρόπο που περιγράψαμε παραπάνω.
Εναλλαγή προγραμμάτων όταν το ποντίκι είναι στην άκρη της οθόνης
Για μια εξαιρετικά γρήγορη εναλλαγή μεταξύ των ανοικτών προγραμμάτων, αυτό το script είναι ό,τι πρέπει. Όταν πάμε το ποντίκι στην αριστερή άκρη της οθόνης, εξομοιώνεται το πάτημα του Alt+Tab.
Εδώ θα βρούμε το script.
Άλλες ιδέες
Όπως αντιλαμβανόμαστε, υπάρχουν αμέτρητες προοπτικές για ένα τέτοιο εργαλείο.
Μπορούμε για παράδειγμα να ρυθμίσουμε να ανοίγουν τα προγράμματα που χρησιμοποιούμε συχνά και οι αγαπημένες μας ιστοσελίδες όταν πατάμε κάποια πλήκτρα από τα F1 ως F12, τα οποία χρησιμοποιούνται σπάνια.
Ή θα μπορούσαμε να τα προγραμματίσουμε να κάνουν αντιγραφή και επικόλληση, για να έχουμε μόνο ένα πλήκτρο αντί για Control+C και Control+V.
Επιπλέον, έχουμε τη δυνατότητα να αξιοποιήσουμε και το πλήκτρο με την βαρεία (`) και την περισπωμένη (~), μιας και δεν προβλέπεται να γράψουμε ποτέ στα αρχαία Ελληνικά.
Πέρα απ' αυτά, θα μπορούσε κανείς να φτιάξει script στο AutoHotkey για τη λήψη βίντεο από το YouTube, δηλαδή να αντιγράφεται ο σύνδεσμος και να γίνεται αυτόματη επικόλληση σε μια σελίδα όπως το ClipConverter.
Τέλος, με τα script στο AutoHotkey μπορούμε να πραγματοποιήσουμε πιο γρήγορα διάφορες καθημερινές διαδικασίες, όπως η λήψη στιγμιότυπου οθόνης και η εξαγωγή USB stick.
Εσείς τι δημιουργήσατε με το AutoHotkey;
Σας εντυπωσίασαν οι αυτοματισμοί που μπορείτε να πετύχετε χρησιμοποιώντας το AutoHotkey; Το θεωρείτε άχρηστο; Έχετε αυτό το αίσθημα ικανοποίησης όταν γίνονται γρήγορα κάποιες ενέργειες που χειροκίνητα χρειάζονταν πολλή ώρα;
Αν δημιουργήσατε δικά σας script στο AutoHotekey, μοιραστείτε τα μαζί μας και γράψτε μας στα σχόλια αν έχετε απορίες.