Ist es möglich, eines der Standard-Tastaturlayouts von OS X Lion zu entfernen oder zu deaktivieren?
Ich verwende ein benutzerdefiniertes Tastaturlayout. Nachdem ich es nun als systemweites Standard-Tastaturlayout festgelegt habe , möchte ich das integrierte US-Tastaturlayout, das mit dem Betriebssystem geliefert wurde, deaktivieren oder entfernen können X. Hier ist ein Screenshot - beachten Sie, dass das Kontrollkästchen deaktiviert ist:
In OS X 10.9 wurde dieser Einstellungsbereich neu gestaltet, aber es gibt immer noch keine Möglichkeit, das integrierte US-Tastaturlayout zu entfernen:
Da ich das US-amerikanische Tastaturlayout nie verwende, würde ich es gerne entfernen, dh aus dem Menü "Eingabe" in der Menüleiste entfernen. Wie kann ich das machen?
Update: Daniels Antwort beantwortet diese Frage nicht wirklich, bietet jedoch einige wertvolle Informationen zu diesem Problem:
Für Mac OS X muss anscheinend mindestens ein Tastaturlayout ausgewählt werden, das vom System als Layout mit lateinischen Zeichen erkannt wird.
Unter der Annahme, dass dies genaue Informationen sind (danke, Daniel!), Könnte die Frage folgendermaßen umformuliert werden:
Wie wird OS X veranlasst, eine benutzerdefinierte Tastatur als Layout für lateinische Zeichen zu betrachten?
Update: Ich bin gerade auf etwas gestoßen, das helfen könnte.
Antworten:
f=~/Library/Preferences/ByHost/com.apple.HIToolbox*.plist; plutil -convert xml1 $f; open $f -e
.Bearbeiten: Die obige Methode scheint in 10.9 nicht mehr zu funktionieren. Dies funktionierte jedoch sowohl in 10.9 als auch in 10.8:
~/Library/Preferences/com.apple.HIToolbox.plist
(in 10.9) oder~/Library/Preferences/ByHost/com.apple.HIToolbox.*.plist
(in 10.8 und früher). Sie können die plist mit in XML konvertierenplutil -convert xml1
.AppleEnabledInputSources
Wörterbuch. Wenn es einenAppleDefaultAsciiInputSource
Schlüssel gibt, entfernen Sie ihn.quelle
Es sieht so aus, als könnten Sie nicht das tun, was Sie wollen, ohne das System noch unentdeckt zu hacken . Für Mac OS X muss anscheinend mindestens ein Tastaturlayout ausgewählt werden, das vom System als "lateinisches Zeichen" erkannt wird . Auf diese Weise wird verhindert, dass Sie Ihr Kennwort auf dem Anmeldebildschirm usw. nicht eingeben können. Wenn Sie Französisch oder Kanadisch oder ein anderes Tastaturlayout ausgewählt haben, das vom System als lateinische Zeichen erkannt wird, können Sie die Auswahl des US-Layouts aufheben.
Ihr Problem ist, dass Ihr benutzerdefiniertes Layout, obwohl es lateinische Zeichen enthält, vom System nicht als lateinisches Tastaturlayout erkannt wird und daher nicht das einzige ausgewählte Tastaturlayout sein kann. Weitere Informationen finden Sie in dieser Frage (leider ohne gute Antwort).
Beachten Sie, dass eine gute Antwort auf diese Frage auch Ihre Frage beantworten würde. Leider verdeutlicht meine Antwort hier nur, was das Problem ist, aber ich habe keine schrittweise Lösung für Sie. Obwohl ein solcher Hack möglich sein mag, sehe ich keine Beweise dafür, dass jemand herausgefunden hat, wie man Mac OS X davon überzeugen kann, dass eine bestimmte benutzerdefinierte Tastatur sicher als einzige auswählbare Tastatur verwendet werden kann.
quelle
Der Vollständigkeit halber habe ich dies als Bug-ID # 11137961 bei Apple hinterlegt, und dies ist die Antwort, die ich erhalten habe:
quelle
Hier ist eine andere Idee: Vor einigen Jahren waren die Bundles für Apple-Tastaturlayouts viel einfacher zu bearbeiten, und dieses Problem scheint lösbar gewesen zu sein:
http://hintsforums.macworld.com/archive/index.php/t-71629.html
Vielleicht könnte man das alte bearbeitbare Bundle im aktuellen Betriebssystem noch verwenden, wenn man eines von einem alten System bekommen könnte.
quelle
Ich bin gerade auf etwas gestoßen, das helfen könnte. Hier geht:
Dies ist auf meinem System, wo mein benutzerdefiniertes Tastaturlayout (mit dem Namen "QWERTY") die Standardeinstellung ist. Beachten Sie, dass sich die Eigenschaften
KeyboardLayout Name
undKeyboardLayout ID
auf die ID und den Namen am Anfang der.keylayout
Datei beziehen .Wie Sie sehen können, wird
defaults read /Library/Preferences/com.apple.HIToolbox.plist AppleCurrentKeyboardLayoutInputSourceID
immer noch die Zeichenfolge zurückgegeben"com.apple.keylayout.Dutch"
. Gibt es irgendwo eine Liste der verfügbarencom.apple.keylayout
Werte? Ist es möglich, einen solchen Wert für ein benutzerdefiniertes Tastaturlayout zu erhalten? In diesem Fall könnten wir die Eigenschaft einfach überschreiben.Auch die
AppleEnabledInputSources
,AppleInputSourceHistory
undAppleSelectedInputSources
Eigenschaften scheinen alle das benutzerdefinierte Tastaturlayout zu ignorieren, da ihre Werte auf das native OS X Tastaturlayout entsprechen ich ursprünglich ausgewählt , wenn Setup - Assistenten ausgeführt wird .Noch ein Update: Aha! Es scheint, als gäbe es eine andere
plist
Datei, aus der wir möglicherweise die Einstellungen kopieren können.Wie Sie sehen können (
AppleCurrentKeyboardLayoutInputSourceID
), erhalten anscheinend benutzerdefinierte Tastaturlayouts Werte wie,"org.unknown.keylayout.FOO"
woFOO
ist der Name des Tastaturlayouts (wie in der.keylayout
Datei angegeben).Versuchen wir also, alle Werte auf unser benutzerdefiniertes Tastaturlayout mit dem Namen
QWERTY
und der ID1337
(in der.keylayout
Datei angegeben) festzulegen :Leider scheint dies nicht zu funktionieren.
Update: @Lri hat eine zuverlässige Methode entdeckt - siehe seine Antwort.
quelle
Apples Antwort auf meinen Fehlerbericht, in dem ich darum gebeten habe, das Entfernen des Standard-Tastaturlayouts des Systems zu ermöglichen, wenn in den Systemeinstellungen ein anderes ausgewählt wird:
quelle
Ich hatte gerade Erfolg beim Entfernen des Standardlayouts in High Sierra mithilfe der folgenden Methode:
Library/Preferences
Ordner.com.apple.HIToolbox.plist
file, indem Sie darauf doppelklicken oderopen
in der Befehlszeile verwenden. Dadurch wird XCode eingeblendet, und möglicherweise möchten Sie zusätzliche Komponenten installieren.AppleEnabledInputSources
Knoten und klappen Sie ihn auf.Jetzt müssen Sie sich wahrscheinlich abmelden oder neu starten, um das endgültige Ergebnis zu erzielen. Ich musste trotzdem neu starten, um ein Update zu erhalten, damit das für mich den Trick machte. Jetzt tippe ich glücklich in Neo mit rasender Geschwindigkeit, aber kein einziger QWERTZ ist in Sicht!
quelle
Hier eine Idee: Nachdem Sie sichergestellt haben, dass die Tastatur-ID Ihres benutzerdefinierten Layouts auf Roman eingestellt ist, erstellen Sie ein benutzerdefiniertes AppleKeyboardLayouts.bundle, das nur dieses Layout enthält, und ersetzen Sie dieses durch das mit dem Betriebssystem gelieferte. (Ich weiß selbst nicht, worum es beim Erstellen eines .bundles geht.)
quelle
Sie können Ukelele verwenden , um Ihr verwendetes Layout als ein Layout mit lateinischer Schrift zu kennzeichnen. Exportiere es als Bundle, installiere es und dann kannst du das US-amerikanische löschen.
quelle
Das geht ganz einfach. Wechseln Sie zuerst in Ihr benutzerdefiniertes Layout (verwenden Sie die Menüleiste Eingabemenü) und deaktivieren Sie dann das US-Layout.
quelle