Gunakan Caps Lock untuk beralih ke dan dari bahasa di Sierra

9

Sierra menambahkan fitur ini yang memungkinkan Anda untuk beralih dari tata letak Latin ke tata letak non-Latin oleh Caps Lock . Ini tidak berfungsi dengan bahasa Rusia, meskipun terakhir kali saya memeriksa bahasa Rusia adalah bahasa non-Latin.

Adakah yang beruntung dengan mengatasi bug ini?

JBaruch
sumber
1
Saya menguji beberapa dari mereka dan sepertinya Rusia dan Yunani mungkin satu-satunya di mana ini tidak berhasil. Mungkin sesuatu yang harus diperbaiki Apple.
Tom Gewecke
Oh :( Masalahnya adalah seil tidak berfungsi lagi . Jadi saya terjebak :( Saatnya untuk downgrade.
JBaruch
Adakah yang mengirim laporan bug?
icem
1
Itu tidak bekerja di tata letak Bulgaria (fonetik) juga. Tidak ada kotak centang "Gunakan tombol Caps Lock untuk beralih ke dan dari Bulgaria".
0xC0DEGURU
@ TomGewecke Menurut sumber ini , bahasa Jepang juga tidak berfungsi (kemungkinan besar orang Korea juga. Saya ingin tahu apakah bahasa Mandarin berfungsi atau tidak). Saya tidak mengujinya karena saya masih menggunakan El Capitan.
Blaszard

Jawaban:

4

Pengujian saya menunjukkan bahwa fitur switching Caps Lock sekarang berfungsi dengan keyboard Cyrillic, Yunani, dan Armenia di High Sierra. (Ini tidak berfungsi di Sierra).

Tom Gewecke
sumber
Alliluya! Saya bisa pensiun Karabiner!
JBaruch
6

Untuk mengganti tata letak keyboard dengan tombol caps-lock, Anda perlu memetakan ulang caps-lock ke F18 dengan perintah (di Terminal.app):

hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x70000006D}]}'

Kemudian, buka System Preferences / Keyboard / Shortcuts / Input Sources, gunakan tombol 'caps lock' untuk beralih sumber input.

Tidak diperlukan perangkat lunak tambahan di mac os Sierra.

Agar tetap berfungsi setelah Anda keluar, lakukan hal berikut: buat file ~/bin/caps2f18.shdengan konten berikut:

hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x70000006D}]}' > /dev/null 2>&1

Jadikan itu dapat dieksekusi:

chmod +x ~/bin/caps2f18.sh

Buat file ~/Library/LaunchAgents/com.user.loginscript.plistdengan konten berikut:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
   <key>Label</key>
   <string>com.user.loginscript</string>
   <key>ProgramArguments</key>
   <array>
        <string>zsh</string>
        <string>-c</string>
        <string>~/bin/caps2f18.sh</string>
   </array>
   <key>RunAtLoad</key>
   <true/>
   <key>ThrottleInterval</key>
   <integer>86400</integer>
</dict>
</plist>

Menjalankan

launchctl load ~/Library/LaunchAgents/com.user.loginscript.plist

logout login, atau jalankan launchctl start com.user.loginscript

ra.
sumber
Setelah ini, apakah caps lock selalu berganti keyboard, terlepas dari apakah yang non-latin terlibat? Apakah itu beralih ke keyboard terakhir yang digunakan? Atau yang berikutnya dalam daftar?
Tom Gewecke
Saya memiliki layout keyboard 2 - us dan ua (non latin, cyryllic). Metode ini hanya memetakan caps-lock ke F18. Pengalih sumber input mac standar tidak dimodifikasi.
ra.
Tapi itu juga akan mengganti dua keyboard latin, kan? Apa yang akan dilakukannya dengan 3 keyboard?
Tom Gewecke
ya dan latin juga, jika Anda mengatur "Pilih sumber berikutnya di menu input" ke F18 (capslock) itu akan beralih 3 keyboard satu per satu.
ra.
4

Meskipun Seil dan Karabiner klasik tidak berfungsi lagi di bawah Sierra, Karabiner menulis ulang, "Karabiner Elements" (dalam versi beta yang sangat awal) benar-benar berfungsi.

Pemetaan kunci UI belum berfungsi, tetapi Anda dapat mengedit file config json di bawah ~/.karabiner.d/configuration/karabiner.json(lihat contoh di bawah) untuk memetakan Caps Lock ke F19. Dari sana semuanya sama seperti sebelumnya - menonaktifkan Caps Lock, memicu layout keyboard keyboard ke F19, untung.

Contoh karabiner.json:

{  "profiles": [
    {
      "name": "Default profile",
      "selected": true,
      "simple_modifications": {
        "caps_lock": "f19"
      }
    }
  ]
}

Turunkan versi ditangguhkan!

JBaruch
sumber
Bagaimana Anda memetakan tata letak yang memicu ke F19? Karena Karabiner tidak bekerja lagi, itu tidak berfungsi, kan?
Blaszard