Come fare se un file di LibreOffice è estremamente lento
Un collega ha un problema con un file di LibreOffice Calc: era estremamente lento da aprire. Per aprirlo erano necessari proprio 10 minuti e poi comunque il computer è paralizzato. Ho provato a convertirlo in Excel, ma anche aprendolo con Microsoft Excel era estremamente lento.
Ho provato a passare al cloud, mettendolo su Google Drive e aprendolo quindi con Google Sheets. Nulla da fare, si paralizza il browser!
Ho quindi salvato il file ODS (OpenDocument Sheets) come FODS. I file di OpenOffice/Libreoffice infatti, sono file XML zippati.
Un file FODS è semplicemente lo stesso file ODS, solo che non essendo compresso, è possibile aprirlo con un editor di testo per capire che cosa succede.
Già da qui si può vedere che qualcosa non quadra. Compresso occupa 0.16 MB, non compresso 7 MB? La compressione non è magica, per diventare così piccolo, vuol dire che il file contiene un elevato tasso di ripetizione.
Infatti, ecco il problema. Per qualche motivo, nel file sono presenti centinaia di migliaia di minuscoli e invisibili caselle di testo!
Purtroppo però non è un blocco contiguo. Sono centinaia di blocchi sparsi tra contenuto “buono” da tenere, selezionarli e toglierli a mano è un’operazione che impiega giorni!
Ci aiuta xmlstarlet.
Si scarica la versione per Windows (o per Linux) e si studia la sintassi con
xmlstarlet el iltuofile.fods
e apparirà una lista lunghissima con la struttura del file. Come abbiamo visto nel file di testo, noi dobbiamo sbarazzarci di questa struttura:
office:document/office:body/office:spreadsheet/table:table/draw:custom-shape
e lo facciamo con:
xmlstarlet ed -d "office:document/office:body/office:spreadsheet/table:table/table:table-row/table:table-cell/draw:custom-shape" iltuofile.fods > sistemato.fods
Fatto! Adesso il file si apre in pochissimi secondi, di nuovo! Si può salvare nuovamente come ODS.
Aggiornamento luglio 2022: purtroppo questo post per qualche motivo attira le attenzioni dei bot, che commentano 50 spam al giorno… chiudo i commenti, è possibile continuare sul forum.
2 commenti su Come fare se un file di LibreOffice è estremamente lento
Comments are closed.