Alle 09:41, giovedà 7 aprile 2005, Carmelo Carchedi ha scritto:
> Buongiorno a tutti,
> Ã la prima volta che posto su questa lista.
>
> Ho l'esigenza di convertire dei file da vari formati di testo ad UTF-8.
[....]
> Ma se la chiamo dall'esterno con il comando :
> soffice
> "macro:///Standard.Module1.ConvertToUTF8(/home/questadir/file_da_convertire
>.txt,/home/questadir/fileconvertito.txt)"
>
> La cosa non funziona come dovrebbe.
Questo perchà la macro si aspetta che i parametri siano o delle variabili o
dei valori espliciti.
Ovviamente il primo caso à possibile solo all'interno dell'ambiente basic,
dove ad esempio puoi chiamare una macro da un'altra macro passando delle
variabili per fornire gli eventuali parametri.
Nel caso di chiamata da shell, i parametri devono essere espliciti
Nel caso in oggetto si tratta di parametri stringa.
Perchà il basic riconosca una stringa come tale, essa deve essere compresa tra
doppi apici. es:
"questa à una stringa"
pertanto, per risolvere il problema devi trovare il modo di scrivere il
comando shell in modo da includere anche i doppi apici.
usando la shell Bash, sotto Linux, ci sono molti modi di fare questo, es:
$ soffice
'macro:///Standard.Module1.ConvertToUTF("/home/questadir/file_da_convertire.txt","/home/questadir/fileconvertito.txt")'
oppure
$ soffice
macro:///Standard.Module1.ConvertToUTF\(\"/home/questadir/file_da_convertire.txt\"\,
\"/home/questadir/fileconvertito.txt\"\)
Pensando al fatto che si tratta di un URL si potrebbero usare ulteriori
varianti.
Un buon uso delle variabili della shell puà semplificare di molto le cose
Per l'ambiente DOS/Windows invece non saprei, dato che non ricordo bene la
sintassi e i vari caratteri indigesti, ma sono certo che con qualche
tentativo e qualche ricerchina ci si possa arrivare senza troppi problemi.
> Inoltre, accade una cosa strana:
> Quando converto un file, nel nuovo file mi viene aggiunto all'inizio del
> testo uno strano carattere, che sotto linux con l'editor vi viene
> visualizzato cosÃ:
> <feff>
>
> Come mai? E' un baco di OO ? Ã possibile toglierlo durante la conversione?
Si tratta di un carattere di controllo (percià dovrebbe eseere invisibile).
Non mi pare si possa trattare di un bug di OOo.
E se fosse un limite dell'editor?
Ecco un po di informazioni relative a quel codice:
------------------8<------------------
[carattere non stampabile]
U+FEFF ZERO WIDTH NO-BREAK SPACE
Proprietà generali del carattere
Categoria Unicode: Altro, formato
Varie rappresentazioni utili
UTF-8: 0xEF 0xBB 0xBF
UTF-8 escaped ottale: \357\273\277
Riferimento entità decimale: 
Annotazioni e riferimenti incrociati
Pseudonimi:
â BYTE ORDER MARK (BOM), ZWNBSP
Note:
â may be used to detect byte order by contrast with the noncharacter code
point U+FFFE <non assegnato>
â use as an indication of non-breaking is deprecated; see U+2060 WORD JOINER
instead
Vedi anche:
â U+200B ZERO WIDTH SPACE
â U+2060 WORD JOINER
â U+FFFE <non assegnato>
------------------8<------------------
ciao
PM
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]