Aktywuj Emoji i symbole oraz Przeglądarkę postaci niezależnie

1

Czasami podczas edycji tekstu chcę użyć przeglądarki Emoji i symboli, aby szybko wpisać symbol. Innym razem chcę otworzyć pełne okno Przeglądarki postaci. Niestety, wydaje się, że jest tylko jeden skrót klawiaturowy do ich otwarcia (Edycja> Emoji i symbole space), i po prostu pamięta, którego użyłeś ostatnio. Zmiana wyświetlanego interfejsu wymaga użycia myszy do kliknięcia przycisku przełączania w prawym górnym rogu okna.

Jak mogę łatwo wybrać, który z nich ma zostać wyświetlony? Idealnie byłoby skończyć z dwoma skrótami klawiaturowymi, po jednym dla każdego interfejsu. Rozwiązania innych firm są dopuszczalne, ale idealne byłoby rozwiązanie natywne.

Prawdopodobnie przydatny punkt początkowy: „Pokaż emotikony i symbole” w menu wprowadzania (włączane przez Preferencje systemowe> Klawiatura> Klawiatura> Pokaż przeglądarkę klawiatury i emoji na pasku menu) wydaje się zawsze wyświetlać pełny podgląd znaków, niezależnie od ostatniego stanu. Aktywacja tego za pomocą skrótu klawiaturowego byłaby idealna, chociaż zdecydowanie wolałbym robić to programowo, niż za pomocą graficznego interfejsu użytkownika.

Timothy Mueller-Harder
źródło
w jakiej aplikacji chcesz tego użyć?
Ruskes
Wiele miejsc, ale przede wszystkim Chrome, MailMate i Messages.
Timothy Mueller-Harder
więc chcesz Service całego systemu
Ruskes
Tak, przepraszam, jeśli nie było to jasne z mojego pytania.
Timothy Mueller-Harder

Odpowiedzi:

0

Gdybym był w podobnej sytuacji, zrobiłbym następujące rzeczy:

  • Zmień domyślny skrót klawiaturowy dla Emoji i symboli z ⌃⌘ Przestrzeń na ⌃⌥⌘ Przestrzeń, aby domyślna ⌃⌘ Przestrzeń mogła być używana jako skrót do jednego ze skryptów, podstawowego.

  • Utwórz dwa skrypty AppleScript , jeden do wyświetlania emotikonów i symboli (pierwszy dla mnie), a drugi do wyświetlania postaci . (Można to jednak zrobić w jednym skrypcie, dla uproszczenia kodowania zastosowane zostaną dwa).

  • Użyj skryptów FastScript, aby przypisać skrót klawiaturowy do każdego z nich. Pierwszy dla Mojego Emoji i symbole do ^⌘Space i dla Mojego Viewer znaków , należy ^⇧⌘Space jak pokazano na obrazku poniżej.

    Pamiętaj, że nie mam powiązań z Red Sweater Software, twórcą FastScripts, i jestem tylko zadowolonym użytkownikiem.

    • Zauważ, że w miejscu zastosowania FastScripts An Automator Serwis może być używany. Jednak wolę ten pierwszy, ponieważ działał dla mnie lepiej niż ten drugi.

Poniższe testy zostały przetestowane i działały pod kontrolą macOS High Sierra ...

Najpierw zmień globalny skrót klawiaturowy dla elementu menu Emoji i symbole :

  • Preferencje systemowe > Klawiatura > Skróty > Skróty do aplikacji

    • Kliknij [+], aby dodać nowy skrót z następującymi ustawieniami:

    • Aplikacje: wszystkie aplikacje

    • Tytuł menu: Emoji i symbole
    • Skrót klawiaturowy: ⌃⌥⌘ Przestrzeń
              Patrz obraz poniżej.

Następnie utwórz dwa pliki skryptów AppleScript (.scpt) ~/Library/Scripts/, jeden o nazwie My Emoji & Symbols i drugi o nazwie My Character Viewer , dodając do każdego z nich następujące elementy:

W przypadku moich emotikonów i symboli :

do shell script "defaults write com.apple.CharacterPaletteIM CVStartAsLargeWindow -bool false"
delay 0.5
tell application "System Events" to keystroke space using {control down, option down, command down}

W przeglądarce My Character Viewer :

do shell script "defaults write com.apple.CharacterPaletteIM CVStartAsLargeWindow -bool true"
delay 0.5
tell application "System Events" to keystroke space using {control down, option down, command down}
  • Zauważ, że jedyną różnicą pomiędzy nimi jest to wartość stanowi -bool, będąc truelub falsena CVStartAsLargeWindow klucz . Również wartość tego delay polecenia jest, aby dać czas na defaults komendzie , aby pisać przed Zdarzenia systemowe wyzwala nowy skrót klawiaturowy globalnego dla Emoji i symbole pozycji menu . Wartość tego delay polecenia może muszą być regulowane, więc zrobić tak potrzebne.

Następnie w FastScripts > Preferencje ... > Skróty skryptowe , przypisz ⌃⌘Space (lub ⌃⌘␣ ) do My Emoji & Symbols i przypisz ⌃⇧⌘Space (lub ⌃⇧⌘␣ ) do My Character Viewer .   Zobacz zdjęcie poniżej.

  • Należy pamiętać, że należy dodać skrypty FastScript do: Preferencji systemowych > Bezpieczeństwo i prywatność > Prywatność > Dostępność   Zobacz obraz poniżej.

W przypadku korzystania z Automator Services , należy użyć Run Jabłko Script działania na przykładzie AppleScript kod , pokaż powyżej, zastępując kod domyślny w każdym i przypisać skróty klawiaturowe poprzez: Preferencje systemowe > Klawiatura > Skróty > Usługi

  • Pamiętaj, że wspomniane konwencje nazewnictwa i ścieżki itp. Zmieniły się dla niektórych elementów w macOS Mojave i będą musiały zostać odpowiednio dostosowane. Nie korzystam jeszcze z systemu macOS Mojave , ale widziałem posty dotyczące niektórych różnic. W razie potrzeby macOS Mojave musisz odpowiednio dostosować .

Legenda kluczowego symbolu:

  • Shift:
  • Kontrola:
  • Opcja:
  • Polecenie:
  • Space: Space

Preferencje systemowe > Klawiatura > Skróty > Skróty do aplikacji

Skróty do aplikacji


FastScripts > Preferencje ... > Skróty skryptu
     • Zwróć uwagę, że znak pokazany w poniższym skrócie dotyczy znaku spacji .

Skróty Skryptu


Preferencje systemowe > Bezpieczeństwo i prywatność > Prywatność > Dostępność

Dostępność

użytkownik3439894
źródło
Ach, CVStartAsLargeWindowproszę bardzo, tego właśnie szukałem! Gdzie to znalazłeś?
Timothy Mueller-Harder
@Timothy Mueller-Harder, wiedziałem o CVStartAsLargeWindow kluczu w com.apple.CharacterPaletteIMod niektórych innych skryptów Kiedyś manipulować nim w przeszłości. IIRC Z powrotem w np. OS X Mountain Lion, gdzie napisałem niektóre z tych skryptów, można również programowo otworzyć Przeglądarkę znaków za pomocą open -a ... polecenia , które się zmieniło. Zazwyczaj monitoruję, np. ~/Library/PreferencesDokonuję zmiany, sprawdzam, co zmienił plik .plist, czytam plik .plist, przywracam zmianę, czytam ponownie plik .plist, a następnie porównuję wyniki obu odczytów, aby zobaczyć różnice itp.
user3439894,
@Buscar 웃, zakładam, że to ty głosowałeś za moją odpowiedzią, ponieważ ktoś głosował za odrzuceniem twojej odpowiedzi, którą następnie usunąłeś. Jeśli to ty, jakie jest uzasadnienie, ponieważ odpowiedziała na pytanie zadane przez OP, a on był tym, który podniósł głos i zaakceptował odpowiedź, ponieważ tego właśnie szukał. W przeciwieństwie do twojej, która dotyczyła Przeglądarki Klawiatury, która nie miała nic wspólnego z tym, o co pytano, i widzę, dlaczego została odrzucona!
user3439894