Szukasz lekkiego, ultraszybkiego i łatwo dostępnego rozwiązania do robienia notatek? Poszukaj w Internecie, a znajdziesz niezliczone sugestie dotyczące takich aplikacji. A jednak nawet te „najlżejsze” są często nieporęczne i mogą zawierać funkcje, które osobiście możesz uznać za bezużyteczne.
Zobaczmy więc, jak możesz stworzyć własną ultralekką, niesamowicie szybką, niestandardową aplikację do robienia notatek za pomocą AutoHotkey. Proste, bezproblemowe rozwiązanie do robienia notatek, które będzie mogło natychmiast pojawić się na ekranie za jednym naciśnięciem klawisza.
Konfigurowanie planu robienia notatek za pomocą AutoHotkey
Zacznijmy od jasnego określenia naszego ostatecznego celu i opracowania prostego planu dotarcia do niego.
Do tego projektu nie potrzebujemy wymyślnego formatowania tekstu, obsługi szablonów ani innych „zaawansowanych” funkcji. Nasz cel?
- Chcemy stworzyć ultraprostą aplikację, która pojawi się na naszym ekranie, gdy naciśniemy kombinację klawiszy skrótu.
- To okno pozwoli nam zanotować notatkę i zapisać ją w pliku zwykłego tekstu / MarkDown.
I to wszystko — żadnych dodatkowych okien, okien dialogowych, menu ani przycisków.
Na szczęście taki projekt jest łatwy do zbudowania za pomocą AutoHotkey, jak zobaczymy dalej. Zapraszam do obserwowania, nawet jeśli wcześniej nie korzystałeś z AutoHotkey. Jednak najlepiej byłoby, gdybyś najpierw sprawdził nasze szybki przewodnik AutoHotkey dla początkujących.
Jak zainstalować AutoHotkey
Ponieważ AutoHotkey jest rozwiązaniem innej firmy, aby z niego korzystać, musisz go zainstalować.
Więc odwiedź Oficjalna strona AutoHotkeyi kliknij przyjazny zielony Pobierać przycisk. Pomiń wersje V1 (przestarzałe) i V2 (beta) i wybierz Pobierz aktualną wersję. Następnie zainstaluj go na swoim komputerze.
Później nie będziesz w stanie zauważyć żadnych zmian, ponieważ AutoHotkey działa tylko jako parser dla skryptów AutoHotkey. Innymi słowy, AutoHotkey nie „nic nie robi” samodzielnie. Zamiast tego działa jako platforma, na której będzie działał skrypt, który stworzymy w następnej kolejności.
Jak zrobić nowy skrypt w AutoHotkey
Otwórz swój ulubiony menedżer plików, np Eksplorator plików systemu Windowsi wskaż katalog, w którym chcesz utworzyć nowy skrypt. Możesz wybrać dowolny katalog z pulpitu do osobistego folderu Dokumenty.
Najłatwiejszym sposobem utworzenia nowego skryptu AutoHotkey jest skorzystanie z nowej opcji dostępnej w menu kontekstowym prawym przyciskiem myszy po zainstalowaniu AutoHotkey. Kliknij prawym przyciskiem myszy puste miejsce w oknie menedżera plików iz wyświetlonego menu wybierz Nowy > Skrypt AutoHotkey.
Ponieważ skrypty AutoHotkey są w rzeczywistości zwykłymi plikami tekstowymi, możesz alternatywnie utworzyć nowy plik tekstowy, a następnie zmienić jego nazwę, zmieniając jego rozszerzenie z tekst Do AHK. Ostateczny wynik będzie taki sam: będziesz mieć nowy pusty skrypt AutoHotkey.
Uruchom swój ulubiony edytor tekstu lub kodu i otwórz tam skrypt, aby go edytować. W tym artykule będziemy używać Notepad++, ale możesz użyć dowolnego podobnego narzędzia, takiego jak VS Code lub Atom.
Oczywiście, jeśli wolisz zachować prostotę, zawsze możesz użyć starego, dobrego Notatnika, który towarzyszy systemowi Windows.
Tworzenie GUI w AutoHotkey
Aby uprościć przyszłe dostosowywanie naszego skryptu, przechowujmy dwie podstawowe informacje w dwóch zmiennych.
- Pierwsza, którą nazwaliśmy NotesPath, jest mapowana na pełną ścieżkę, w której nasz skrypt ma zapisywać nasze notatki. Pamiętaj, aby zmienić ścieżkę na tę, której chcesz użyć. W przeciwnym razie notatki zostaną zapisane w nieoczekiwanym miejscu lub skrypt się nie powiedzie.
- Drugi, który nazwaliśmy FileNameExtra, zawiera ciąg, którego będziemy używać jako nazwy plików naszych notatek. Plik każdej notatki zostanie nazwany na podstawie „oczyszczonej” wersji tytułu, po której następuje ten ciąg.
To powinno wyglądać tak:
NotesPath = A:\00_Cloud_Storage\Dropbox\Notes\Obsidian\Duckland! W pudełku
FileNameExtra = _MUOnote.md
Zwykle AutoHotkey służy do wpływania na inne okna, jak widzieliśmy w naszym artykule na temat jak wyśrodkować dowolne okno na ekranie za pomocą AutoHotkeylub do tworzenia skrótów klawiszowych, o których możesz przeczytać w naszym przewodniku tworzenie skrótów klawiszowych specyficznych dla aplikacji za pomocą AutoHotkey.
Jednak w tym scenariuszu będziemy bardzo polegać na możliwościach tworzenia GUI AutoHotkey, o których wiele osób zapomina. AutoHotkey „dopasowuje się do” własnego „zestawu narzędzi okiennych” systemu Windows. Umożliwia to tworzenie graficznych interfejsów użytkownika ze wszystkimi typowymi elementami, które można znaleźć w „standardowym” oknie systemu operacyjnego, od pól tekstowych i rozwijanych menu po przyciski i paski przewijania.
Na szczęście, ponieważ tworzymy prostą i „lekką” aplikację do robienia notatek, projekt nie będzie skomplikowany, a zatem stosunkowo łatwy do wykonania. Nasz GUI będzie się składał tylko z trzech elementów:
- Jedno pole tekstowe na tytuł notatki
- Inny za treść notatki
- Przycisk zapisywania notatki.
Nie dodamy nawet przycisku „Anuluj”, ponieważ zmapujemy tę funkcję do klawisza Escape na klawiaturze i akcji zamykania okna.
Dodaj poniższą linię do swojego skryptu - w zasadzie „mówi” AutoHotkey, że czcionka w każdym następnym elemencie powinna mieć „rozmiar 14” i „kolor 666666”.
Gui, QN:Czcionka, s14c666666
Dalej następujący wiersz:
Gui, QN:Dodać, Edytować, x5y5w550h60vTytuł, Tytuł-Nazwa pliku
- ...dodaje edytowalne pole tekstowe ("Edytuj")...
- ...na współrzędnych 5 pikseli w poziomie i 5 pikseli w pionie od krawędzi okna ("x5 y5")...
- ...o szerokości 550 pikseli i wysokości 60 pikseli („w550 h60”).
- Wszystko wpisane w nim zostanie zmapowane do zmiennej Tytuł („vTitle”)…
- ...i będzie zawierał tekst "Tytuł - Nazwa pliku".
Następnie zmieńmy rozmiar czcionki na 12 i jej kolor na 4444444 dla wszystkich elementów, które następują po tej linii.
Następnie dodaj większe edytowalne pole tekstowe dla rzeczywistej zawartości notatki, zmapuj je do zmiennej Note i wypełnij wstępnie wszystkim, co już znajduje się w schowku.
Na koniec dodaj przycisk pod dwoma polami tekstowymi i u dołu okna aplikacji, zmapowany na domyślną funkcję OK skryptu.
Gui, QN:Czcionka, s12c444444
Gui, QN:Dodać, Edytować, x5y70w550h600vUwaga, %Schowek%
Gui, QN:Dodać, Przycisk, x5y680w550h50, OK
Stworzyliśmy GUI, ale potrzebujemy też okna do jego wyświetlenia.
W tym celu poniższy wiersz „mówi” AutoHotkey, aby utworzył okno o współrzędnych 0, 0 (poziomo, pionowo), o szerokości 560 pikseli i wysokości 735 pikseli, o nazwie „MUONotes”.
Gui, QN:Pokazywać, x0y0w560h735, MUONatki
Pełny skrypt do tej pory powinien wyglądać mniej więcej tak:
NotesPath = A:\00_Cloud_Storage\Dropbox\Notes\Obsidian\Duckland! W pudełku
FileNameExtra = _MUOnote.md Gui, QN: czcionka, s14 c666666
Gui, QN:Dodać, Edytować, x5y5w550h60vTytuł, Tytuł-Nazwa pliku
Gui, QN:Czcionka, s12c444444
Gui, QN:Dodać, Edytować, x5y70w550h600vUwaga, %Schowek%
Gui, QN:Dodać, Przycisk, x5y680w550h50, OK
Gui, QN:Pokazywać, x0y0w560h735, MUONatki
Sprawienie, by przyciski robiły coś w AutoHotkey
Nasz graficzny interfejs użytkownika jest gotowy — możesz to sprawdzić, klikając dwukrotnie swój skrypt.
Jak zobaczysz, obszar głównej notatki zostanie wstępnie wypełniony zawartością schowka. Jednak sama aplikacja będzie bezużyteczna, ponieważ nie dodaliśmy jeszcze obsługi zapisywania czegokolwiek.
Napraw to, dodając następujące elementy do swojego skryptu:
Przycisk QNOK:
Kodowanie plików, UTF-8-RAW
Gui, QN:Składać
TempClipboard = %Schowek%
Schowek = %Tytuł%
gosub CleanText
NazwaPliku = %Schowka%
Schowek = %TymczasowySchowek%
FinalFilename = %NotesPath%\%FileName%%FileNameExtra%
FileDelete, %FinalFileName%
FileAppend, %Note%, %FinalFileName%
powrót
Rozbierzmy to:
- „QNButtonOK:” stwierdza, że to, co następuje później, to to, co AutoHotkey „powinien zrobić” po kliknięciu domyślnego przycisku OK w GUI.
- Wiersz „FileEncoding” ustawia kodowanie utworzonego pliku tekstowego.
- „Gui, GN: Submit” pobiera stan każdego elementu GUI, co oznacza, że „przechwytuje” wszystko, co wpisano w dwóch polach tekstowych.
- Następnie tymczasowo kopiujemy rzeczywistą zawartość schowka do zmiennej TempClipboard.
- Robimy tak, ponieważ chcemy skopiować tytuł notatki do schowka, który służy jako pośrednik do wysłania go do funkcji, którą dodamy w następnej kolejności. Ta funkcja „oczyści” tekst, usuwając znaki niealfanumeryczne i umożliwiając nam użycie tekstu tytułu jako nazwy pliku.
- Funkcja sanityzacji zwróci „czysty” tytuł do schowka, skąd odwzorowujemy go na zmienną FileName.
- Następnie zwracamy jego oryginalną zawartość do schowka ze zmiennej TempClipboard.
- Aby uzyskać pełną ścieżkę i nazwę pliku docelowego, „wkładamy” nowo złożoną zmienną FileName między zmienne NotesPath i FileNameExtra. Dlatego zdefiniowaliśmy je na początku skryptu.
- Zapobiegawczo usuwamy każdy poprzedni plik z tą samą ścieżką i nazwą pliku.
- Dołączamy zawartość zmiennej Note do pliku FinalFileName.
Oczyszczanie tekstu w AutoHotkey
Wspomniana powyżej funkcja „sanizacji” jest następująca:
CleanText: CleanMePlease = %ClipBoard%
CleanMePlease := Regexreplace (CleanMePlease, "a-zA-Z0-9", "")
pętla
{
StringReplace, CleanMe Please, CleanMe Please, %A_SPACE%%A_SPACE%, %A_SPACE%, wszystkie
jeśli poziom błędu <> 0
przerwa
}
Schowek = %Wyczyść mnie%
Powrót
Aby przejść przez to linia po linii:
- „CleanText:” to nazwa funkcji, która „zawiera” następujące działania.
- Najpierw odwzorowujemy zawartość schowka na zmienną CleanMePlease.
- Używamy reguły RegEx, aby usunąć wszystkie znaki inne niż alfanumeryczne ze zmiennej CleanMePlease.
- Ponieważ powyższe może wprowadzić podwójne spacje, używamy pętli, aby ponownie przeczesać zmienną CleanMePlease, zastępując je pojedynczymi spacjami. To bit z dwoma „%A_SPACE%”, po którym następuje jeden i słowo „wszystko”.
- Linia ErrorLevel „mówi” AutoHotkey, aby „przerwał pętlę”, gdy nie może znaleźć więcej podwójnych spacji w tekście.
- Na koniec zwracamy „oczyszczoną” wersję zmiennej CleanMePlease do schowka.
Dokonywanie ostatnich poprawek w aplikacji do robienia notatek
Twój skrypt do robienia notatek jest gotowy do użycia, ale jeśli go wypróbujesz, możesz zobaczyć, że jego okno wyskakuje i natychmiast znika. To dlatego, że musisz również „zwrócić” każdą zdefiniowaną w nim funkcję.
Umieść więc słowo „powrót” (bez cudzysłowów) pod:
- Część skryptu tworząca GUI, pod linią GUI, „QN: Show…”.
- Funkcja „QNButtonOK” pod ostatnim wierszem „FileAppend…”.
- Funkcja CleanText pod ostatnim wierszem „ClipBoard =…”.
Jeśli jednak spróbujesz teraz uruchomić skrypt, zobaczysz, że nadal pozostaje on w zasobniku systemu Windows po jego użyciu. Aby aplikacja została zamknięta, a skrypt całkowicie zamknięty, dodaj na samym końcu:
QNGuiEscape:
QNGuiZamknij:
Wyjdź z aplikacji
powrót
Wreszcie, aby aplikacja działała natychmiast, gdy jej potrzebujesz, utwórz skrót do swojego skryptu na pulpicie. Następnie kliknij prawym przyciskiem myszy, wybierz Nieruchomości, kliknij w Skrót klawiszowy pole i naciśnij żądaną kombinację przycisków.
Gratulujemy stworzenia pierwszej aplikacji w AutoHotkey
Początkowo mogło to brzmieć jak skomplikowany projekt, ale jak widzieliśmy, stworzenie „lekkiej” aplikacji do robienia notatek było całkiem proste.
Wszystko dzięki przyjaznej dla człowieka składni AutoHotkey i możliwości wykorzystania domyślnych elementów związanych z graficznym interfejsem użytkownika systemu Windows.