Skocz do zawartości

Open Macro Keyboard


spook

Pomocna odpowiedź

Podoba Ci się ten projekt? Zostaw pozytywny komentarz i daj znać autorowi, że zbudował coś fajnego!

Masz uwagi? Napisz kulturalnie co warto zmienić. Doceń pracę autora nad konstrukcją oraz opisem.

(edytowany)

Ja nic nie mówię, ale są małe wyświetlacze (choć pewnie luzem łatwiej kupić i z taśmą do lutowania niż FPC). Kurcze, gdzieś w ciekawych filmach jest odlewanie własnego przycisku z wyświetlaczem. Nic odkrywczego nie wymyślam oczywiście, ale wynik może być ciekawy.

Co do HID i skrótów klawiszowych, to Windowsowe skróty (*.lnk) umożliwiają przypisanie skrótów klawiszowych, a tutaj to już wszystko można odpalić skryptem (przynajmniej PowerShell zrobi wszystko co da się w systemie zrobić), którego wykonanie nie będzie widoczne: skrypt *.vbs plus ewentualnie *.bat, czy *.ps1. Ja tam nie jestem wielkim programistą, ale podglądam i np. tą "sztuczkę" podejrzałem w Scrcpy.

Edytowano przez matsobdev
Link do komentarza
Share on other sites

(edytowany)

Małe wyświetlacze pod przyciskami to jest katorga - masa roboty, żeby wszystkie podłączyć, zamocować i jeszcze przygotować przycisk, który będzie nad nimi działał (możemy zapomnieć o standardowych Cherry MXach lub im podobnych). Stream Deck rozwiązuje ten problem znacznie sprytniej: stosuje tylko jeden duży wyświetlacz, nad którym umieszczona jest płytka z otworami i krawędziami dookoła otworów wrażliwymi na dotyk (zgaduję, że działa to podobnie do pojemnościowego ekranu dotykowego). Nad nią z kolei znajdują się przyciski, które po wciśnięciu dotykają tych wrażliwych obszarów (wszystko widać dosyć dobrze na przykład tu).

Jeżeli chodzi o Windowsowe skróty, to wydaje mi się, że ten pomysł kwalifikuje się idealnie do tego, o czym wspominałem wcześniej, czyli do obchodzenia ograniczeń. Takie rozwiązanie ma bowiem cały szereg wad:

  • Pliki skrótów muszą być umieszczone w odpowiednich katalogach
  • Różne wersje Windows w różny sposób podchodza do skrótów klawiaturowych - zmienia się to z wersji na wersję, co potencjalnie wymaga ciągłego dostosowywania skrótów. Na przykład w Windows 7 można było rejestrować globalne skróty z użyciem klawisza Windows. W Windows 10 (chyba nawet 8 ) jest to już niemożliwe.
  • Skrótów jest ograniczona liczba - mogą one również kolidować ze skrótami używanych aplikacji
  • PowerShell teoretycznie daje możliwość "pisania" w .NET, ale implementowanie jakichkolwiek bardziej złożonych rozwiąząń to droga przez mękę. Dla przykładu, jeden z domyślnie dostępnych pluginów w Open Macro Keyboard pozwala na szybkie przełączenie się do głównego okna procesu o zadanej nazwie pliku wykonywalnego (np. devenv.exe dla Visual Studio, spotify.exe dla Spotify i tak dalej). Zaimplementowałem to w C++ (bo korzystam z WinAPI oraz z COM w celu aktywowania okna - inaczej praktycznie się nie da). Powodzenia z pisaniem tego w PowerShellu.
  • PowerShell jest wolny, bo jest językiem interpretowanym. Możemy więc zapomnieć np. o szybkim wykonaniu kilku operacji jedna po drugiej.
  • Aby móc uruchamiać pliki ze skryptami, trzeba albo je cyfrowo podpisać albo wymusić na systemie operacyjnym możliwość uruchamiania potencjalnie niebezpiecznych skryptów. To samo jest z .vbs - szczególnie w tym przypadku wyłączanie zabezpieczeń systemowych jest ryzykowne, bo masa złośliwego oprogramowania jest zaimplementowana właśnie jako skrypty .vbs
  • Pliki PowerShell + LNK stanowią efektywny "profil". Można się nim dzielić z innymi, ale jest to dosyć niebezpieczne, bo w takich skryptach można zawrzeć zupełnie dowolny kod - w tym złośliwy. OpenMacroKeyboard eksportuje profile do pliku .xml niezawierającego niczego, co dałoby się bezpośrednio uruchomić (choć oczywiście można np. przybindować do przycisku link do złośliwej strony, tego nie da się uniknąć).
  • Bez dodatkowego oprogramowania niemożliwe jest przygotowanie profili pod uruchomioną aplikację (w sensie, klawiatura makro przełącza się na określony ekran w zależności od tego, która aplikacja w danym momencie jest aktywna). OpenMacroKeyboard w tej chwili nie ma jeszcze takiej funkcjonalności, ale jeśli projektem zainteresuje się więcej osób, to planuję coś takiego dopisać.
  • Bez dodatkowego oprogramowania niemożliwe jest zastosowanie odrębnych "ekranów", czyli przyporządkowań akcji do klawiszy. Jedną z największych zalet Open Macro Keyboard jest to, że umożliwia podgląd bieżącego "ekranu" na wyświetlaczu komputera nawet w przypadku klawiatur, które nie mają żadnej metody przekazania feedbacku dla użytkownika (np. diody czy wyświetlacz).
  • Bez dedykowanej aplikacji na PC, skróty klawiaturowe muszą być zaszyte w firmware klawiatury - ich modyfikacja wymaga przeprogramowania mikrokontrolera

Ogólnie wszystko zależy od potrzeb. Jeżeli ktoś potrzebuje tylko uruchomić kilka aplikacji i ewentualnie zautomatyzować kilka skrótów klawiaturowych, to rozwiązanie z plikami .ps1 może się sprawdzić. Chociaż gdyby się nad tym chwilę zastanowić, to to wszystko jest już dostępne za darmo w Open Macro Keyboard, zadziała szybciej, implementacja firmware dla klawiatury jest łatwiejsza (przesłanie kilku komunikatów tekstowych za pomocą klasy Serial) i jednorazowa, no i wreszcie Open Macro Keyboard pozwala potem rozbudowywać możliwości klawiatury bez konieczności przeprogramowywania jej - osobiście nawet w takim prostym przypadku chyba też skorzystałbym z zaprezentowanego frameworka 🙂

Pozdrawiam -- Spook.

Edytowano przez spook
Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.