Ali iščete lahko, izjemno hitro in lahko dostopno rešitev za zapisovanje? Poiščite v spletu in našli boste nešteto predlogov za takšne aplikacije. Pa vendar so celo "najlažji" pogosto okorni in imajo lahko funkcije, ki se vam osebno morda zdijo neuporabne.
Torej, poglejmo, kako lahko ustvarite lastno ultralahko, izjemno hitro aplikacijo za beleženje po meri s pomočjo AutoHotkey. Preprosta rešitev za zapisovanje brez dodatkov, ki se bo lahko v trenutku prikazala na vašem zaslonu z enim samim pritiskom tipke.
Nastavitev načrta za beleženje s funkcijo AutoHotkey
Začnimo z jasno navedbo našega končnega cilja in pripravo preprostega načrta za dosego cilja.
Za ta projekt ne potrebujemo modnega oblikovanja besedila, podpore za predloge ali drugih "naprednih" funkcij. Naš cilj?
- Želimo ustvariti izjemno preprosto aplikacijo, ki se bo pojavila na našem zaslonu, ko pritisnemo kombinacijo bližnjičnih tipk.
- To okno nam bo omogočilo, da si zapišemo opombo in jo shranimo v datoteko z navadnim besedilom/MarkDown.
In to je vse – brez dodatnih oken, pogovornih oken, menijev ali gumbov.
K sreči je takšen projekt enostavno zgraditi s programom AutoHotkey, kot bomo videli v nadaljevanju. Vabimo vas, da sledite, tudi če AutoHotkey še niste uporabljali. Vendar bi bilo morda najbolje, če najprej preverite naše hiter vodnik po AutoHotkey za začetnike.
Kako namestiti AutoHotkey
Ker je AutoHotkey rešitev tretje osebe, jo morate namestiti, če jo želite uporabljati.
Torej, obiščite Uradna stran AutoHotkey, in kliknite na prijazno zeleno Prenesi gumb. Preskočite obe različici V1 (zastarelo) in V2 (beta) in izberite Prenesite trenutno različico. Nato ga namestite na svoj računalnik.
Pozneje ne boste mogli opaziti nobenih sprememb, saj AutoHotkey deluje samo kot razčlenjevalnik za skripte AutoHotkey. Z drugimi besedami, AutoHotkey ne "naredi ničesar" sam. Namesto tega deluje kot platforma, na kateri se bo izvajal skript, ki ga bomo izdelali naslednjič.
Kako narediti nov skript v AutoHotkey
Odprite svojega najljubšega upravitelja datotek, npr Raziskovalec datotek Windowsin ga usmerite v imenik, v katerem želite ustvariti nov skript. Izberete lahko kateri koli imenik z namizja v osebno mapo Dokumenti.
Nov skript AutoHotkey najlažje ustvarite tako, da izkoristite novo možnost, ki je na voljo v kontekstnem meniju z desnim klikom po namestitvi AutoHotkey. Z desno miškino tipko kliknite prazno mesto okna upravitelja datotek in v meniju, ki se prikaže, izberite Novo > Skript AutoHotkey.
Ker so skripti AutoHotkey pravzaprav datoteke z navadnim besedilom, lahko ustvarite novo besedilno datoteko in jo nato preimenujete ter spremenite njeno končnico iz TXT do AHK. Končni rezultat bo enak: imeli boste nov prazen skript AutoHotkey.
Zaženite svoj najljubši urejevalnik besedila ali kode in tam odprite skript, da ga uredite. Za ta članek bomo uporabljali Notepad++, vendar lahko uporabite katero koli podobno orodje, na primer VS Code ali Atom.
Seveda, če vam je ljubše, da so stvari preproste, lahko vedno uporabite dobro staro Beležnico, ki je priložena sistemu Windows.
Izdelava GUI v AutoHotkey
Da bi poenostavili prihodnje prilagajanje našega skripta, shranimo dva bistvena podatka v dveh spremenljivkah.
- Prvi, ki smo ga poimenovali NotesPath, je preslikan na celotno pot, kamor želimo, da naš skript shrani naše zapiske. Ne pozabite spremeniti poti na tisto, ki jo želite uporabiti. V nasprotnem primeru bodo vaši zapiski shranjeni na nepričakovano mesto ali pa skript ne bo uspel.
- Drugi, ki smo ga poimenovali FileNameExtra, vsebuje niz, ki ga bomo uporabili za imena datotek naših zapiskov. Datoteka vsake opombe bo poimenovana po "prečiščeni" različici naslova, ki ji bo sledil ta niz.
Videti bi moralo takole:
NotesPath = A:\00_Cloud_Storage\Dropbox\Notes\Obsidian\Duckland! Prejeto
FileNameExtra = _MUOnote.md
Običajno se AutoHotkey uporablja za vplivanje na druga okna, kot smo videli v našem članku o kako sredinsko poljubno okno na zaslonu s funkcijo AutoHotkey, ali za ustvarjanje bližnjičnih tipk, za kar si lahko ogledate naš vodnik na ustvarjanje bližnjičnih tipk za aplikacijo z AutoHotkey.
Vendar se bomo v tem scenariju veliko zanašali na zmožnosti ustvarjanja grafičnega uporabniškega vmesnika AutoHotkey, na katere mnogi pozabijo. AutoHotkey se "dotakne" lastnega "okenskega orodja" sistema Windows. To omogoča ustvarjanje GUI z vsemi običajnimi elementi, ki bi jih pričakovali v "standardnem" oknu OS, od besedilnih polj in spustnih menijev do gumbov in drsnih trakov.
K sreči, ker izdelujemo preprosto in "lahko" aplikacijo za pisanje zapiskov, projekt ne bo zapleten in ga bo zato razmeroma enostavno izdelati. Naš GUI bo sestavljen iz samo treh elementov:
- Eno besedilno polje za naslov opombe
- Še ena za vsebino zapiska
- Gumb za shranjevanje beležke.
Gumba »Prekliči« niti ne bomo dodali, saj bomo to funkcijo preslikali na tipko Escape na tipkovnici in dejanje zapiranja okna.
Dodajte spodnjo vrstico svojemu skriptu - v bistvu "pove" AutoHotkeyju, da mora biti pisava v katerem koli elementu, ki sledi, "velikost 14" in "barva 666666".
Gui, QN:Pisava, s14c666666
Nato naslednja vrstica:
Gui, QN:Dodaj, Uredi, x5y5w550h60vNaslov, Naslov-Ime datoteke
- ...doda besedilno polje, ki ga je mogoče urejati ("Uredi")...
- ...na koordinatah 5 slikovnih pik vodoravno in 5 slikovnih pik navpično od roba okna ("x5 y5")...
- ... s širino 550 slikovnih pik in višino 60 slikovnih pik ("w550 h60").
- Vse, kar je vneseno vanj, bi bilo preslikano v spremenljivko Naslov ("vTitle")...
- ...in vsebovalo bo besedilo "Naslov - Ime datoteke".
Nato spremenimo velikost pisave na 12 in njeno barvo na 4444444 za vse elemente, ki pridejo za to vrstico.
Nato dodajte večje polje z besedilom, ki ga je mogoče urejati, za dejansko vsebino opombe, jo preslikajte v spremenljivko Note in jo vnaprej napolnite s čimer koli že v odložišču.
Nazadnje dodajte gumb pod dvema besedilnima poljema in na dnu okna aplikacije, ki je preslikan na privzeto funkcijo OK skripta.
Gui, QN:Pisava, s12c444444
Gui, QN:Dodaj, Uredi, x5y70w550h600vNote, %Odložišče%
Gui, QN:Dodaj, Gumb, x5y680w550h50, v redu
Ustvarili smo GUI, vendar potrebujemo tudi okno za njegov prikaz.
Za to naslednja vrstica "pove" AutoHotkeyju, naj ustvari okno na koordinatah 0, 0 (vodoravno, navpično), s širino 560 slikovnih pik in višino 735 slikovnih pik, z imenom "MUONotes".
Gui, QN:Pokaži, x0y0w560h735, MUONotes
Celoten dosedanji skript bi moral izgledati nekako takole:
NotesPath = A:\00_Cloud_Storage\Dropbox\Notes\Obsidian\Duckland! Prejeto
FileNameExtra = _MUOnote.md Gui, QN: Pisava, s14 c666666
Gui, QN:Dodaj, Uredi, x5y5w550h60vNaslov, Naslov-Ime datoteke
Gui, QN:Pisava, s12c444444
Gui, QN:Dodaj, Uredi, x5y70w550h600vNote, %Odložišče%
Gui, QN:Dodaj, Gumb, x5y680w550h50, v redu
Gui, QN:Pokaži, x0y0w560h735, MUONotes
Kako narediti nekaj gumbov v AutoHotkey
Naš GUI je pripravljen – preverite ga lahko tako, da dvokliknete svoj skript.
Kot boste videli, bo območje glavne opombe vnaprej zapolnjeno z vsebino odložišča. Vendar pa bo sama aplikacija neuporabna, ker še nismo dodali podpore za shranjevanje ničesar.
To popravite tako, da svojemu skriptu dodate naslednje:
QNButtonOK:
Kodiranje datoteke, UTF-8-RAW
Gui, QN:Oddaj
TempClipboard = %ClipBoard%
Odložišče = %Naslov%
gosub CleanText
Ime datoteke = %ClipBoard%
Odložišče = %TempClipboard%
FinalFilename = %NotesPath%\%FileName%%FileNameExtra%
FileDelete, %FinalFileName%
FileAppend, %Note%, %FinalFileName%
vrnitev
Razstavimo to:
- "QNButtonOK:" navaja, da je tisto, kar sledi, tisto, kar AutoHotkey "mora storiti", ko se klikne privzeti gumb OK v GUI.
- Vrstica "FileEncoding" nastavi kodiranje ustvarjene besedilne datoteke.
- »Gui, GN: Submit« zajame stanje vsakega elementa GUI, kar pomeni, da »zagrabi« tudi vse, kar je vtipkano v obe besedilni polji.
- Nato začasno kopiramo dejansko vsebino odložišča v spremenljivko TempClipboard.
- Zgoraj navedeno naredimo, ker želimo kopirati naslov zapiska v odložišče, ki se uporablja kot posrednik za pošiljanje v funkcijo, ki jo bomo dodali naslednjič. Ta funkcija bo "razkužila" besedilo, odstranila nealfanumerične znake in nam omogočila uporabo besedila naslova kot imena datoteke.
- Funkcija saniranja bo vrnila "čisti" naslov v odložišče, od koder ga preslikamo v spremenljivko FileName.
- Nato vrnemo izvirno vsebino v odložišče iz spremenljivke TempClipboard.
- Da bi dobili celotno pot in ime datoteke ciljne datoteke, na novo sestavljeno spremenljivko FileName "vstavimo" med spremenljivki NotesPath in FileNameExtra. Zato smo jih definirali na začetku scenarija.
- Preventivno izbrišemo vse prejšnje datoteke z isto potjo in imenom datoteke.
- Vsebino spremenljivke Note dodamo datoteki FinalFileName.
Saniranje besedila v AutoHotkey
Funkcija "sanitarizacije", ki smo jo omenili zgoraj, je naslednja:
CleanText: CleanMePlease = %ClipBoard%
CleanMePlease := Regexreplace (CleanMePlease, "a-zA-Z0-9", "")
zanka
{
StringReplace, CleanMePlease, CleanMePlease, %A_SPACE%%A_SPACE%, %A_SPACE%, vse
če ErrorLevel <> 0
odmor
}
ClipBoard = %CleanMePlease%
Vrnitev
Če ga želite pregledati vrstico za vrstico:
- "CleanText:" je ime funkcije, ki "vsebuje" dejanja, ki sledijo.
- Najprej preslikamo vsebino odložišča v spremenljivko CleanMePlease.
- Za odstranitev vseh nealfanumeričnih znakov iz spremenljivke CleanMePlease uporabljamo pravilo RegEx.
- Ker lahko zgoraj navedeno uvede dvojne presledke, uporabimo zanko, da še enkrat prečešemo spremenljivko CleanMePlease in jih nadomestimo z enojnimi presledki. To je košček z dvema »%A_SPACE%«, ki jima sledi en sam in beseda »vse«.
- Vrstica ErrorLevel "pove" AutoHotkey, naj "prekine zanko", ko v besedilu ne najde več dvojnih presledkov.
- Na koncu vrnemo "razkuženo" različico spremenljivke CleanMePlease v odložišče.
Zadnje prilagoditve vaše aplikacije za pisanje zapiskov
Vaš skript za pisanje zapiskov je pripravljen za uporabo, a če ga preizkusite, boste morda videli, da se njegovo okno pojavi in takoj izgine. To je zato, ker morate tudi "vrniti" vsako funkcijo, ki ste jo definirali v njej.
Torej postavite besedo "vrnitev" (brez narekovajev) pod:
- Del skripta, ki ustvarja GUI, pod GUI, vrstica "QN: Pokaži ...".
- Funkcija "QNButtonOK" pod zadnjo vrstico "FileAppend...".
- Funkcija CleanText pod zadnjo vrstico "ClipBoard =...".
Vendar, če poskusite zagnati skript zdaj, boste videli, da se po uporabi še vedno zadržuje v pladnju sistema Windows. Če želite, da se aplikacija zapre in skript popolnoma zapre, dodajte naslednje na samem koncu:
QNGuiEscape:
QNGuiClose:
Izhod iz aplikacije
vrnitev
Če želite, da se aplikacija takoj zažene, kadar koli jo potrebujete, ustvarite bližnjico za svoj skript na namizju. Nato z desno tipko miške kliknite nanj, izberite Lastnosti, kliknite v Tipka za bližnjico polje in pritisnite želeno kombinacijo gumbov.
Čestitamo za izdelavo vaše prve aplikacije v AutoHotkey
Morda je na začetku zvenelo kot zapleten projekt, a kot smo videli, je bilo ustvarjanje "lahke" aplikacije za zapisovanje precej preprosto.
Vse zahvaljujoč človeku prijazni sintaksi AutoHotkey in zmožnosti izkoriščanja privzetih elementov GUI v sistemu Windows.