2009-12-18 5 views
16

Ho un documento A nella codifica A visualizzato nello strumento A e un documento B nella codifica B visualizzato nello strumento B. Se si taglia e incolla (parte di) B in A quale potrebbe essere la codifica dei caratteri risultante? Mi rendo conto che ciò dipende dallo strumento A e dallo strumento B e dalle informazioni contenute nel buffer di pasta (che presumibilmente può contenere una codifica?) E dal sistema operativo.In che modo "taglia e incolla" influisce sulla codifica dei caratteri e cosa può andare storto?

Cosa devono fare gli strumenti di alta qualità? e in pratica quanti degli strumenti comuni (ad esempio Word, TextPad, vari IDE, ecc.) fanno un buon lavoro?

+0

Si tratta di Windows, Unix, ToasterOS? –

+1

Word è un'app per Windows e googling per "TextPad" diventa "TextPad - l'editor di testo per Windows", quindi suppongo che intenda Windows. – Ken

+1

Abbiamo entrambe le piattaforme Unix e Windows, quindi qualsiasi differenza fondamentale tra i due sarebbe utile. La mia macchina è Windows, quindi sarò felice con una risposta di Windows. –

risposta

16

Prima di tutto, la rappresentazione interna del testo di un editor di testo non ha alcuna influenza sul modo in cui il testo viene codificato (serializzato) quando si salva il file. Quindi un documento non è "in" una codifica; è una sequenza di personaggi astratti. Quando il documento viene salvato su un file (o trasmesso sulla rete) quindi viene codificato.

Spetta a ciascuna applicazione decidere cosa mettere negli appunti. In genere, un'app di Windows che sa cosa sta facendo metterà una serie di diverse rappresentazioni negli appunti. Quando si incolla l'altra app, l'app cercherà la rappresentazione più adatta alle proprie esigenze.

Nel tuo caso, un editor di testo (che sa cosa sta facendo) metterà una rappresentazione Unicode di una stringa selezionata negli appunti (dove Unicode, in Windows, viene tipicamente spostato come UTF-16, ma ciò non è importante). Quando si incolla l'altra app, essa inserirà quella sequenza di caratteri Unicode nel documento nel punto di selezione.

C'è un'app mobile chiamata "ClipSpy" che ti aiuterà a vedere di cosa sto parlando, in modo interattivo.

+1

+1 Quindi un buon clip cercherà di normalizzare una versione dei caratteri in UTF-16/Unicode. –

+2

Non sono sicuro di cosa intendi con questo. Gli appunti non * fanno * nulla, tranne tenere su alcuni byte che l'applicazione ha messo lì. Gli appunti agiscono come un archivio di valori-chiave, in cui la chiave è qualcosa simile a un mimetype e il valore è un blob (che viene quindi interpretato in base al tipo). –

+0

@ peter.murray.rust è in qualche modo specifico di Windows. Ma non sono esperto. –