il sistema utilizzato per tradurre i menu in italiano deve essere attentamente rivisto, in quanto ad ogni applicazione che si installa, viene alterata la categoria nel file
.desktop dell'applicazione, che ne determina corretta collocazione nei menu
per riprodurre il problema
- scaricate il pacchetto di localizzazione italiana -
http://www.italianpuppy.org/community/index.php?topic=587.0 e riavviate il server X
- un programma qualsiasi (nello specifico
pdfedit -
http://puppylover.netsons.org/dokupuppy/programs:pdf_editing giusto per riprodurre la stessa condizione, ma temo che succeda con il 90% degli altri)
ora, nel menu inglese, si sarebbe aggiunta una nuova voce in
- Documentma questa voce, nell'analogo
- Documenti:non c'è:
se si apre il pacchetto .
pet di
pdfedit, si nota che la categoria di assegnazione, nel file .desktop è:
X-DocumentUtility[Desktop Entry]
Encoding=UTF-8
Name=pdfedit
Icon=/usr/local/share/pdfedit/icon/pdfedit_icon_48.png
Comment=PDF editor
Exec=pdfedit
Terminal=false
Type=Application
Categories=X-DocumentUtility
GenericName=pdfedit PDF editor
mentre verificando la stessa voce nel file .desktop di
pdfedit che abbiamo installato (e che è stato copiato in
/usr/share/applications)
notiamo che la categoria è stata cambiata (al momento dell'installazione si deve supporre)
BuildingBlockcategoria per la quale non sono previsti menu e dunque pdfedit non comparirà
[Desktop Entry]
Encoding=UTF-8
Name=pdfedit
Icon=/usr/local/share/pdfedit/icon/pdfedit_icon_48.png
Comment=PDF editor
Exec=pdfedit
Terminal=false
Type=Application
Categories=BuildingBlock
GenericName=pdfedit PDF editor
e dunque pdfedit non comparirà in alcun menu
questa è la spia che il meccanismo di ri-generazione automatica dei menu, è più o meno seriamente compromesso dalla tecnica adottata per la loro traduzione; farò altre prove per stabilire se è possibile ovviare a ciò; avendo notato che, se eliminavo le cartelle originali
desktop-directories in
/usr/share/ e
menus e
templates in
/etc/xdg, per rimpiazzarle con le omologhe contenenti i file italiani, fixmenus restituiva degli errori (pur funzionando),
# fixmenus
Generating /root/.icewm/menu...
** (process:16456): CRITICAL **: gmenu_tree_directory_get_contents: assertion `directory != NULL' failed
** (process:16456): CRITICAL **: gmenu_tree_item_unref: assertion `item != NULL' failed
** (process:16494): CRITICAL **: gmenu_tree_directory_get_contents: assertion `directory != NULL' failed
** (process:16494): CRITICAL **: gmenu_tree_item_unref: assertion `item != NULL' failed
** (process:16520): CRITICAL **: gmenu_tree_directory_get_contents: assertion `directory != NULL' failed
** (process:16520): CRITICAL **: gmenu_tree_item_unref: assertion `item != NULL' failed
** (process:16533): CRITICAL **: gmenu_tree_directory_get_contents: assertion `directory != NULL' failed
** (process:16533): CRITICAL **: gmenu_tree_item_unref: assertion `item != NULL' failed
** (process:16546): CRITICAL **: gmenu_tree_directory_get_contents: assertion `directory != NULL' failed
** (process:16546): CRITICAL **: gmenu_tree_item_unref: assertion `item != NULL' failed
** (process:16559): CRITICAL **: gmenu_tree_directory_get_contents: assertion `directory != NULL' failed
** (process:16559): CRITICAL **: gmenu_tree_item_unref: assertion `item != NULL' failed
** (process:16611): CRITICAL **: gmenu_tree_directory_get_contents: assertion `directory != NULL' failed
** (process:16611): CRITICAL **: gmenu_tree_item_unref: assertion `item != NULL' failed
Generating /root/.jwmrc...
avevo scelto di lasciarle e copiarvi dentro i file .directory e gli altri omologhi in italiano, in questo modo si evitavano gli errori:
# fixmenus
Generating /root/.icewm/menu...
Generating /root/.jwmrc...
volesse il cielo che l'errore fosse mio e il problema soltanto questo! Farò ulteriori prove; non tutti i sottomenu zembrano esserne affetti, il menu
Utilità sembra esserne immune