Synchronizuj skróty klawiaturowe między komputerami z systemem macOS

12

Mam kilka niestandardowych skrótów zdefiniowanych za pomocą Preferencji systemowych> Klawiatura> Skróty i chcę zsynchronizować je między moimi dwoma komputerami Mac.

Wydaje się, że nadal nie jest to możliwe przy użyciu iCloud . Czy są jakieś inne sposoby? Myślałem o włączeniu ich do moich plików dot, ale nie mogę znaleźć skrótów za pomocą defaultspolecenia.

nik
źródło
1
Dodam nagrodę za to pytanie. Czy jest jakieś alternatywne rozwiązanie? Czy skróty klawiaturowe można symlinizować i synchronizować za pośrednictwem Dropbox? Myślę, że problem polegałby na tym, że jeden komputer Mac może mieć niestandardowe skróty klawiaturowe do aplikacji, która nie jest zainstalowana na drugim komputerze Mac ...?
Winterflags
4
Nie mogę dodać tego jako odpowiedzi, ponieważ można je usunąć. Jeśli masz problemy z urządzeniami Apple, nie jestem pewien, dlaczego to działa, ale działa dla mnie między komputerami Mac, a nawet urządzeniami iOS, czy zastanawiałeś się nad przejściem na rozwiązanie zewnętrzne, takie jak Keyboard Maestro , które można skonfigurować do korzystania z Dropbox synchronizować między komputerami? wiki.keyboardmaestro.com/Syncing_Macros_Between_Macs
jasonology
2
@Jasonology Nie widzę żadnego powodu, dla którego zaoferowanie takiej odpowiedzi stanowiłoby problem. W rzeczywistości zachęcam do tego! :)
Monomeeth
1
@jasonology Czy KeyboardMaestro może powiązać niestandardowe skróty dla wcześniej nieskróconych elementów na pasku menu aplikacji? Tj. Jako Preferencje systemowe> Klawiatura> Skróty> Skróty do aplikacji ? Byłby to święty graal dla aplikacji innych firm, która replikowałaby opcje Preferencji systemowych imo. Nie wiem, czy jest to możliwe dzięki BetterTouchTool (może tak jest?).
Winterflags
1
@Jasonology, dziękuję za sugestię. Nacisnąłem spust przy zakupie Keyba. Maestro i robi dokładnie to, co chcę, w tym synchronizację DB. Zastanawiam się, dlaczego Twoja odpowiedź została usunięta, ponieważ jest dla mnie najlepsza. Winterflags, migrowałem moje SysPref do Maestro jeden po drugim, nie jest to takie trudne i warte tego.
SilverSideDown,

Odpowiedzi:

5

Ponieważ używasz plików kropek, jeśli wiesz, jakie skróty chcesz utworzyć z wyprzedzeniem, możesz dodać je do wszystkich komputerów, dodając następujące defaults writepolecenia do skryptu instalacyjnego:

Na skróty do aplikacji : domyślnie pisz com.developer.appNSUserKeyEquivalents -dict-add „ Menu Item” -string ” keyboardShortcut

Globalne skróty : domyślnie pisz -g NSUserKeyEquivalents -dict-add " Menu Item" -string " keyboardShortcut"

... gdzie com.developer.appto aplikacja za pakiet ID, i keyboardShortcutto litery kluczy, które chcesz dołączyć, a także symbole @, $, ~oraz ^reprezentujących polecenia, Shift, Alt oraz klawisze sterujące, odpowiednio. Na przykład -string "@~K"reprezentuje skrót klawiaturowy K.


Jeśli chcesz zsynchronizować istniejące skróty, będziesz musiał stworzyć bardziej skomplikowany skrypt. Wyobrażam sobie, że wiązałoby się to z czytaniem lub porównywaniem skrótów na maszynie źródłowej poprzez:

Skróty do aplikacji : domyślnie czytaj com.developer.appNSUserKeyEquivalents

Globalne skróty : domyślnie czytaj -g NSUserKeyEquivalents

... i zapisując je na maszynie docelowej za pomocą:

Skróty według aplikacji : domyślnie pisz com.developer.appNSUserKeyEquivalents outputOfSourceMachine'

Globalne skróty : domyślnie pisz -g NSUserKeyEquivalents outputOfSourceMachine'

Wowfunhappy
źródło
Te polecenia działały dla mnie dziwnie w nowszych wersjach systemu macOS, w szczególności High Sierra i Mojave. Co dziwne, mam na myśli to, że czasami muszę uruchomić polecenie wiele razy w nowym systemie, zanim zaczną działać. Trudno jest wyizolować problem, ponieważ testowanie oznacza ponowną instalację systemu ...
Wowfunhappy,