Apakah mungkin untuk menghapus atau menonaktifkan salah satu tata letak keyboard standar OS X Lion?
Saya menggunakan tata letak papan ketik khusus, dan sekarang saya berhasil mengaturnya sebagai tata letak papan ketik standar sistem , saya ingin dapat menghapus centang atau menghapus tata letak papan ketik “AS” bawaan yang menyertai OS X. Ini tangkapan layar - perhatikan bahwa kotak centang dinonaktifkan:
Di OS X 10.9, panel preferensi ini telah dirancang ulang, tetapi masih tidak ada cara untuk "menghapus" tata letak keyboard "AS" bawaan:
Karena saya tidak pernah menggunakan tata letak keyboard AS, saya ingin menyingkirkannya, yaitu menghapusnya dari menu Input di bilah menu. Bagaimana saya bisa melakukan ini?
Pembaruan: Jawaban Daniel tidak benar-benar menjawab pertanyaan ini, tetapi menawarkan beberapa informasi berharga mengenai masalah ini:
Mac OS X tampaknya memerlukan setidaknya satu tata letak papan ketik yang diakui sistem sebagai tata letak “karakter Latin” untuk dipilih.
Dengan asumsi ini adalah informasi yang akurat (terima kasih, Daniel!), Pertanyaannya dapat diulangi sebagai berikut:
Bagaimana membuat OS X menganggap keyboard khusus sebagai tata letak karakter Latin?
Pembaruan: Saya baru saja menemukan sesuatu yang mungkin bisa membantu.
Jawaban:
f=~/Library/Preferences/ByHost/com.apple.HIToolbox*.plist; plutil -convert xml1 $f; open $f -e
.Sunting: metode di atas tampaknya telah berhenti bekerja di 10.9. Ini bekerja di kedua 10,9 atau 10,8 meskipun:
~/Library/Preferences/com.apple.HIToolbox.plist
(pada 10.9) atau~/Library/Preferences/ByHost/com.apple.HIToolbox.*.plist
(pada 10.8 dan sebelumnya). Anda dapat mengonversi plist ke XML denganplutil -convert xml1
.AppleEnabledInputSources
kamus. Jika adaAppleDefaultAsciiInputSource
kunci, hapus.sumber
Tampaknya Anda tidak dapat melakukan apa yang Anda inginkan tanpa ada retasan yang belum ditemukan ke sistem . Mac OS X tampaknya memerlukan setidaknya satu tata letak papan ketik yang diakui sistem sebagai tata letak "karakter Latin" untuk dipilih. Ini mencegah Anda dari tidak dapat memasukkan kata sandi di layar login, dll. Jika Anda memilih tata letak keyboard Prancis, atau Kanada, atau yang lain yang dikenali oleh sistem sebagai karakter Latin, Anda dapat membatalkan pilihan tata letak AS.
Masalah Anda adalah bahwa tata letak khusus Anda, walaupun mengandung karakter Latin, tidak dikenali oleh sistem sebagai tata letak keyboard Latin, dan karenanya tidak bisa menjadi satu-satunya tata letak keyboard yang dipilih. Lihat pertanyaan ini (sayangnya kurang jawaban yang bagus) untuk informasi lebih lanjut.
Perhatikan bahwa jawaban yang bagus untuk pertanyaan ini juga akan menjawab pertanyaan Anda. Sayangnya, jawaban saya di sini hanya menjelaskan apa masalahnya, tapi saya tidak punya solusi langkah demi langkah untuk Anda. Meskipun peretasan semacam itu mungkin dilakukan, saya tidak melihat bukti bahwa ada yang tahu cara meyakinkan Mac OS X bahwa keyboard khusus tertentu aman untuk digunakan sebagai satu-satunya keyboard yang dapat dipilih.
sumber
Demi kelengkapan, saya mengajukan ini sebagai bug ID # 11137961 dengan Apple, dan ini adalah respons yang saya dapatkan:
sumber
Inilah ide lain: Beberapa tahun yang lalu bundel untuk Layout Keyboard Apple jauh lebih mudah untuk diedit, dan masalah ini tampaknya telah dipecahkan:
http://hintsforums.macworld.com/archive/index.php/t-71629.html
Mungkin seseorang masih bisa menggunakan bundel yang dapat diedit yang lama, jika Anda bisa mendapatkannya dari sistem lama, di OS saat ini.
sumber
Saya baru saja menemukan sesuatu yang mungkin bisa membantu. Ini dia:
Ini ada di sistem saya, di mana tata letak keyboard khusus saya (bernama "QWERTY") adalah default. Perhatikan bahwa
KeyboardLayout Name
danKeyboardLayout ID
properti merujuk ke ID dan nama di awal.keylayout
file.Seperti yang Anda lihat,
defaults read /Library/Preferences/com.apple.HIToolbox.plist AppleCurrentKeyboardLayoutInputSourceID
masih mengembalikan string"com.apple.keylayout.Dutch"
. Apakah ada daftar di suatu tempat yang tersediacom.apple.keylayout
nilai yang ? Apakah mungkin untuk mendapatkan nilai seperti itu untuk tata letak keyboard khusus? Karena dalam kasus itu, kita bisa dengan mudah mengganti properti.Juga,
AppleEnabledInputSources
,AppleInputSourceHistory
, danAppleSelectedInputSources
sifat semua tampaknya mengabaikan layout keyboard kustom, sebagai nilai-nilai mereka sesuai dengan layout keyboard OS X asli awalnya saya pilih saat menjalankan Setup Assistant.Pembaruan lain: Aha! Sepertinya ada
plist
file lain dari mana kita mungkin bisa menyalin pengaturan.Seperti yang dapat Anda lihat (
AppleCurrentKeyboardLayoutInputSourceID
), tata letak keyboard tampaknya mendapatkan nilai seperti di"org.unknown.keylayout.FOO"
manaFOO
nama tata letak keyboard (seperti yang ditentukan dalam.keylayout
file).Jadi, mari kita coba mengatur semua nilai ke tata letak keyboard khusus kami, bernama
QWERTY
dan dengan ID1337
(ditentukan dalam.keylayout
file):Sayangnya, ini sepertinya tidak berhasil.
Pembaruan: @ri menemukan metode yang dapat diandalkan - lihat jawabannya.
sumber
Tanggapan Apple terhadap laporan bug saya, di mana saya diminta untuk memungkinkan untuk menghapus tata letak keyboard default sistem jika yang lain dipilih melalui System Preferences:
sumber
Saya baru saja berhasil menghapus tata letak default di High Sierra menggunakan metode berikut:
Library/Preferences
folder Anda .com.apple.HIToolbox.plist
file, baik dengan mengklik dua kali atau dengan menggunakanopen
pada baris perintah. Ini akan membuat XCode muncul dan mungkin ingin menginstal komponen tambahan.AppleEnabledInputSources
node dan buka lipatannya.Sekarang Anda mungkin harus logout atau reboot untuk membuat ini final. Saya tetap harus reboot untuk beberapa pembaruan sehingga melakukan trik untuk saya. Sekarang saya dengan senang hati mengetik Neo dengan kecepatan glasial yang menyakitkan tetapi tidak ada satu pun QWERTZ yang terlihat!
sumber
Berikut ini sebuah ide: Setelah memastikan id keyboard dari tata letak kustom Anda diatur ke Roman, buat AppleKeyboardLayouts.bundle khusus yang hanya berisi tata letak itu dan gantikan ini dengan yang ada pada OS. (Saya tidak tahu apa yang terlibat dalam membuat .bundle)
sumber
Anda dapat menggunakan Ukelele untuk menandai tata letak yang digunakan sebagai tata bahasa Latin. Ekspor sebagai bundel, instal dan kemudian Anda akan dapat menghapus AS.
sumber
Itu bisa dilakukan dengan mudah. Pertama-tama ubah tata letak khusus Anda (gunakan bilah menu menu Input), lalu hapus centang tata letak AS.
sumber