Il Bar dell'Ingegneria

LOCAL-LACOL

A passeggio tra le lingue

« Older   Newer »
 
  Share  
.
  1. zax2013
        +1   -1
     
    .
    Avatar

    Advanced Member

    Group
    Member
    Posts
    2,942
    Reputation
    +187

    Status
    Offline
    Andiamo invece ai suggerimenti del programmatore con cui ho parlato.

    La sintesi è: "se gettext opera nella maniera che sappiamo proviamo a 'replicarne' in qualche modo il funzionamento con qualcosa fatta in casa, ma che abbia le potenzialità di permettere facilmente l'introduzione di una nuova lingua alla bisogna".

    Ecco quindi che mi ha fornito una doppia possibilità.
    Ambedue passano attraverso la creazione di file di testo, da battezzare .dat o come meglio si preferisce, in cui ogni singolo file di questa specie contenga le stringhe nella lingua desiderata.

    Illustro prima l'opzione 'semplice'.

    1) Creazione di un semplice file .dat, in cui vengono memorizzate tutte le stringhe che il programma utilizza.
    (Rispetto ad una mia 'visione' la memorizzazione di una stringa avviene una sola volta, anche se il programma utilizza quella 'voce' in più punti del programma. Immaginate ad esempio il pulsante "Annulla" (in italiano) presente in tutte le finestre di dialogo, che nella traduzione inglese debba diventare "Cancel". Ebbene memorizzerò una sola volta la stringa tradotta, e poi dovrò dire al programma per tutti questi pulsanti di utilizzare una ed una sola specifica stringa).

    2) All'apertura del programma, conosciuta la lingua di interfaccia, il programma apre il file .dat corretto e provvede a memorizzare in memoria l'elenco delle stringhe in un vettore di opportuna capienza (bisognerà allocare memoria).

    3) Con apposita procedura provvederà ad 'inizializzare' tutte le stringhe di tutte le finestre di dialogo del programma, utilizzando l'indicizzazione del vettore in memoria per 'reperire' la stringa giusta.

    Quest'ultima operazione può eseguirsi ogni volta che si dovrà visualizzare una finestra di dialogo (e quindi far permanere in memoria il vettore delle stringhe), oppure all'inizio della elaborazione per tutte le finestre (e quindi una volta utilizzata buttare a mare il vettore e liberare lo spazio in memoria occupato).
     
    Top
    .
17 replies since 26/1/2015, 22:03   350 views
  Share  
.