Domanda

In particolare, sto modificando il file AutoCompletion.plist per CSSEdit (se questo è importante).

La mia domanda è: ci sono personaggi con gli elementi STRING che devono essere salvati? spazi? citazioni?

EDIT: Per essere chiari, non sto usando CSSEdit per modificare il file, piuttosto il file fa parte del pacchetto CSSEdit. Sto usando TextMate per modificare il file (anche se & Quot; Property List Editor.app & Quot; è un'altra opzione) ed è in formato XML. Ecco uno snippet dal file AutoCompletion.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>font-family</key>
<array>
    <string>Arial</string>
    <string>Helvetica</string>
    <string>Georgia</string>
    <string>serif</string>
    <string>sans-serif</string>
    <string>cursive</string>
    etc...

Vorrei aggiungere STRING con spazi e virgolette singole come:

<string>Georgia, Times, 'Times New Roman', serif</string>

Ma CSSEdit va in tilt quando modifico il file in quanto tale

È stato utile?

Soluzione

Se stai modificando un plist XML usando un editor di testo di qualche tipo, dovrai sfuggire ai caratteri come in qualsiasi XML. I personaggi di base a cui prestare attenzione sono:

lt &; (minore di), sfuggito a & amp; lt;

gt &; (maggiore di), sfuggito a & amp; gt;

&

amp; (e commerciale), sfuggito a & amp; amp;

'(apostraphe), scappato come & amp; apos;

&

quot; (virgolette), sfuggito a & amp; quot;

Quindi nel tuo esempio, vorresti

<string>Georgia, Times, &apos;Times New Roman&apos;, serif</string>

Puoi anche utilizzare uno strumento come l'Editor elenco proprietà di Apple, incluso con il loro Xcode gratuito strumenti per sviluppatori o un prodotto di terze parti come PlistEdit Pro , che si occuperanno entrambi di tutto il personaggio in fuga per te.

Altri suggerimenti

Puoi usare plutil per verificare la sintassi delle tue pianificazioni. (Nota che questo non convaliderà se l'applicazione capirà cosa hai fatto al suo plist ...)

Esistono 3 tipi di piani e le regole di escape dipendono dal tipo con cui stai lavorando. La forma più comune sono i plist XML, che richiedono la fuga di alcune cose. In generale è possibile utilizzare le regole di escape XML all'interno degli elementi stringa. Se stai lavorando con precedenti pianificatori di stile NextStep, credo che molto meno debba essere evitato, ma avrei bisogno di cercare i dettagli per essere sicuro di quali siano le regole. Il terzo tipo è binario, sono abbastanza sicuro che non stai modificando quelli con CSSEdit.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top