Obwohl Sie eine Befehlszeilenlösung für Ihr Problem wollten, ist AppleScript in diesem Fall bei weitem die bessere Wahl, da das Generieren neuer Plist-Daten viel einfacher ist.
Mein untenstehendes Skript übernimmt den Inhalt einer angegebenen CSV-Textdatei, die Ihre alten Windows-Textsubstitutionen enthält, und generiert daraus eine .plist
Datei, die Sie direkt per Drag-n-Drop in die Systemeinstellungen importieren können .
Um das Skript auszuführen, müssen Sie den Skript-Editor öffnen und die folgenden geringfügigen Anpassungen vornehmen, um sie an Ihre spezifischen Optionen anzupassen:
- Ändern Sie den Wert der Eigenschaft
csvf
(Zeile 1) in den Pfad, in dem sich Ihre CSV-Datei befinden kann. Ich hatte meine auf dem Desktop, und es wurde genanntsubstitutions.txt
; - Wenn Sie sich wirklich stark fühlen, können Sie den Wert der Eigenschaft
plistf
(Zeile 2) in einen neuen Pfad ändern . Diese Datei ist jedoch temporär und wird später gelöscht, wenn Sie fertig sind. - Ändern Sie zuletzt die Eigenschaft
text item delimiters
in das Zeichen, das als Feldtrennzeichen für Ihre CSV-Daten dient. Ich habe es derzeit auf festgelegt|
, und meine CSV-Beispieldatei sah folgendermaßen aus:ABCDEFG | äbçdêfg 1234567 | 0000000
Dies entspricht zwei Textsubstitutionen, von denen der ersteABCDEFG
internationalen Kleinbuchstaben entspricht und der zweite1234567
sieben Nullen entspricht.
Das Skript enthält viele Kommentare, um zu beschreiben, was jeder Teil tut. Es ist aber auch sehr kurz und braucht nicht allzu viel Aufmerksamkeit. Nach dem Ausführen sollte die Datei substitutions.plist
auf Ihrem Desktop angezeigt werden. Öffnen Sie Systemeinstellungen> Tastatur> Text, und ziehen Sie die .plist
Datei in das große Listenfeld, um sie sofort zu importieren.
property csvf : "~/Desktop/substitutions.txt" -- CSV file containing substitions to import property plistf : "~/Desktop/substitutions.plist" -- Plist file to which data is outputted property text item delimiters : "|" -- The CSV field separator used in the csvf file property ReplacementItem : global ReplacementItems on run set ReplacementItems to {} -- a list to store text replacement record data -- Read CSV values from text file and use -- them to create new text replacement items readFromCSVFile at csvf -- Create plist file tell application "System Events" to set the value ¬ of (make new property list file ¬ with properties ) ¬ to the ReplacementItems end run -- This handler receives arguments A and B, and creates -- a new text replacement record that will be used to -- map (substitute) text A to text B. on textReplacementToMap from A as text to B as text local A, B tell the ReplacementItem set its shortcut to A set its phrase to B end tell copy the ReplacementItem to the end of the ReplacementItems end textReplacementToMap -- This handler receives a file path to a CSV file -- that contains a CSV-formatted list of text -- substitutions that will be read and used to create -- the new text replacement mappings to readFromCSVFile at f as text local f tell application "System Events" if not (file f exists) then return set POSIXfile to the POSIX path of file f end tell read the POSIXfile as «class utf8» repeat with CSVitem in paragraphs of result try set [A, B] to CSVitem's text items textReplacementToMap from A to B end try end repeat end readFromCSVFile