Hei. Jeg overtok i sommer utviklingen/vedlikeholdet av «Fryktelig Fin Faktura» som ikke har hatt noe aktivitet siden utviklingen stoppet helt opp i 2009. Jeg kan svært lite om python og Qt som programmet er skrevet i, så det er veldig begrenset hva jeg kan gjøre av endringer og nyutvikling. Så det har begrenset seg til feifiksing, og har fikset mange av feilene som er meldt inn.
Men oversettelse har jeg funnet ut at jeg skal forsøke, da jeg ser noen har etterlyst nynorskutgave.
Jeg har funnet ut hvordan jeg lager og kompilerer oversettelsesfiler for Qt-guien med lupdate og lrelease og har lagt til ting i .pro-filen, men jeg finner ikke ut hvordan jeg får programmet til å bruke oversettelsesfilen(e).
Er det noen Qt-utviklere her som kan hjelpe til med å finne ut hva som mangler å gjøre? Jeg har googlet en del, men jeg forstår ikke instruksene som blir foreslått i eksemplene jeg finner, da alle instrukser jeg finner går ut i fra at koden bruker en hel den .cpp og .h-filer, noe vi ikke gjør. Ikke bruker vi qmake heller, noe de fleste instruksene tar for gitt. ;-)
Koden ligger i et git-repo for de som ønsker å se: http://sourceforge.net/p/finfaktura/code/ci/master/tree/
Hei
Jeg er ikke Qt-utvikler, men dette bør vi klare å nøste opp i. Såvidt jeg kan se så er ikke programmet oversettbart - det inneholder ingen QTranslator-instanser. (Kjernen av QT skifter kanskje automatisk basert på lokale, men dine oversettelser blir ikke lastet inn og kan derfor heller ikke endres.)
Jeg tenker at det enkleste er at du ser på et eksempel f.eks. layout_test.tar.gz som du finner på http://activityworkshop.net/software/beaver/pyqt.html (Pass at du tar med mappenavnet "translations" når du kaller load(). Eksemplet fungerte fint med Python 3, men du bruker vel Python 2) Ellers er wikien til QT fin inspirasjon hvis du vil lage det mer dynamisk - se https://wiki.qt.io/How_to_create_a_multi_language_application
Hans
PS! Vet du om finfaktura også virker/er ment å virke på Windows?
PS! Noen spesiell grunn til at bokmåloversettelsen har fått kode no istedenfor nb - ref filnavn i mappa "translations"?
21. oktober 2015 kl. 00.53 skrev Johnny A. Solbu johnny@solbu.net:
Hei. Jeg overtok i sommer utviklingen/vedlikeholdet av «Fryktelig Fin Faktura» som ikke har hatt noe aktivitet siden utviklingen stoppet helt opp i 2009. Jeg kan svært lite om python og Qt som programmet er skrevet i, så det er veldig begrenset hva jeg kan gjøre av endringer og nyutvikling. Så det har begrenset seg til feifiksing, og har fikset mange av feilene som er meldt inn.
Men oversettelse har jeg funnet ut at jeg skal forsøke, da jeg ser noen har etterlyst nynorskutgave.
Jeg har funnet ut hvordan jeg lager og kompilerer oversettelsesfiler for Qt-guien med lupdate og lrelease og har lagt til ting i .pro-filen, men jeg finner ikke ut hvordan jeg får programmet til å bruke oversettelsesfilen(e).
Er det noen Qt-utviklere her som kan hjelpe til med å finne ut hva som mangler å gjøre? Jeg har googlet en del, men jeg forstår ikke instruksene som blir foreslått i eksemplene jeg finner, da alle instrukser jeg finner går ut i fra at koden bruker en hel den .cpp og .h-filer, noe vi ikke gjør. Ikke bruker vi qmake heller, noe de fleste instruksene tar for gitt. ;-)
Koden ligger i et git-repo for de som ønsker å se: http://sourceforge.net/p/finfaktura/code/ci/master/tree/
-- Johnny A. Solbu web site, http://www.solbu.net PGP key ID: 0xFA687324
Den 21. okt. 2015 14:56, Hans Fredrik Nordhaug skreiv:
PS! Noen spesiell grunn til at bokmåloversettelsen har fått kode no istedenfor nb - ref filnavn i mappa "translations"?
Kan nemna at bruk av «no» som språkkode for bokmål har vore «deprecated» sidan tidleg på 2000-talet. Den skal aldri brukast.
Det er kanskje på tide at me får fjerna «no_NO» som eit lokale frå glibc fullstendig (no er det eit alias til nb_NO), for å unngå at folk lagar omsettingsfiler med dette namnet (eg har sett fleire eksempel i det siste).
[Karl Ove Hufthammer]
Det er kanskje på tide at me får fjerna «no_NO» som eit lokale frå glibc fullstendig (no er det eit alias til nb_NO), for å unngå at folk lagar omsettingsfiler med dette namnet (eg har sett fleire eksempel i det siste).
Det tror jeg kun er en god ide når alle operativsystemer med uavhengige libc/locale-implementasjon gjør endringen samtidig. Det er jo ikke alle som bruker glibc.
On Wednesday 21. October 2015 14.56, Hans Fredrik Nordhaug wrote:
Jeg er ikke Qt-utvikler, men dette bør vi klare å nøste opp i.
Det er ikke jeg heller. :-) Men jeg syntes at programmet var bra nok til mitt bruk, og det eksisterer visst ikke andre linux-alternativer for norske fakturaer som ikke er en nettjeneste. og da måtte jeg i det minste forsøke å få det til å fungere.
Såvidt jeg kan se så er ikke programmet oversettbart - det inneholder ingen QTranslator-instanser.
Det har vel jeg også skjønt etter å ha lest flere av googletreffene, men det er alt jeg har skjønt. Jeg skjønte aldri hvor de mente jeg skulle legge inn den load()-saken og alt jeg fant gikk ut fra at man kodet i noe annet enn det vi gjør, men skal se litt på det eksemplet du linker til når jeg er hjemme fra jobb i kveld.
PS! Vet du om finfaktura også virker/er ment å virke på Windows?
Ja, det skal gjøre det, og derfor har vi både tarball og zip-fil tilgjengelig for nedlasting.[1] Når det ble utviklet av opphavsmannen inntil han mistet interessen i 2009, ble det utgitt en windowsinstaller. Men siden jeg ikke har Windows og derfor ikke kan lage en windowsinstaller, kan jeg ikke hjelpe med hvordan det skal installeres der. men for de som vet hvordan kan pyqt4, python2 og repportlab installeres fra pip(2) også i windows. Og da burde programmet la seg kjøre.
Dersom noen vet hvordan man går frem i GNU/Linux for å lage en windowsinstaller som vil fungere så vil vi gjøre det. Den installeren må enten ha med alle avhengigheter bundlet, eller hente de ned fra nett ved installasjon.
Det er en «finfaktura-installer.nsi» i git som lager en installer. Men den laster ned binærfiler fra to zip-filer som ligger på den gamle prosjektsiden på Google Code. Og siden det ikke er noen informasjon om hvordan de ble laget, og det ene arkivet hadde ekstern binærkode, fjerna jeg de arkivene fra git da jeg ikke kan gå god for hva det er. Vi distribuerer ikke binærblobber som vi ikke vet hva gjør.
Og med «vi» så mener jeg meg og Kevin Unhammer, som har tilgang til git-arkivet.
PS! Noen spesiell grunn til at bokmåloversettelsen har fått kode no istedenfor nb - ref filnavn i mappa "translations"?
Jeg fulgte et eksempel fra et prosjekt på nett, men kan gjerne fikse korrekt filnavn. :-)
[1] http://sourceforge.net/projects/finfaktura/files/
[Johnny A. Solbu]
Jeg fulgte et eksempel fra et prosjekt på nett, men kan gjerne fikse korrekt filnavn. :-)
I den anledning kan det hende du vil ha nytte av å lese <URL: http://people.skolelinux.org/pere/blog/Spr_kkoder_for_POSIX_locale_i_Norge.h... >.
On Thursday 22. October 2015 08.49, Johnny A. Solbu wrote:
On Wednesday 21. October 2015 14.56, Hans Fredrik Nordhaug wrote:
Jeg er ikke Qt-utvikler, men dette bør vi klare å nøste opp i.
Det er ikke jeg heller. :-) Men jeg syntes at programmet var bra nok til mitt bruk, og det eksisterer visst ikke andre linux-alternativer for norske fakturaer som ikke er en nettjeneste. og da måtte jeg i det minste forsøke å få det til å fungere.
Såvidt jeg kan se så er ikke programmet oversettbart - det inneholder ingen QTranslator-instanser.
Det har vel jeg også skjønt etter å ha lest flere av googletreffene, men det er alt jeg har skjønt. Jeg skjønte aldri hvor de mente jeg skulle legge inn den load()-saken og alt jeg fant gikk ut fra at man kodet i noe annet enn det vi gjør, men skal se litt på det eksemplet du linker til når jeg er hjemme fra jobb i kveld.
Da har jeg sett litt på eksemplene, og jeg forstår ingenting, :-/ Jeg skjønner ikke hva jeg skal legge inn hvor.
Alle eksemplene forutsetter at man lager noe fra grunnen av, mens her er det snakk om å endre det etter at programmet er ferdig...
Fin Faktura bruker ui-filer for å definere GUI'et, altså posisjon av knappar og slikt, men all logikken er implementert i Python, og oppsett av ting som omsetjing må inn i Python-koden (eller C++-koden for applikasjonar som er skrive i det språket). Sjølv har eg kun skrive Qt C++-applikasjonar (og uten ui-filer), men dei samme prinsippa gjeld stort sett som for Python.
I første omgang må du installere QTranslator som nemnd ovanfor. Du kan sjå eit eksempel her: https://wiki.python.org/moin/PyQt/Using%20a%20translation%20of%20Qt I Fin Faktura må dette inn litt seinare sidan Qt ikkje vert sett opp i __main__-funksjonen, men litt seinare, i start-funksjonen heilt nedst i gui.py.
Vidare, må normalt tekststrengar som skal omsetjast, sendast gjennom ein translate-funksjon (i C++ er denne kalla for tr()). Dette sørgar for at omsetjinga faktisk vert brukt, men byggeverktyet genererer også omsetjingsmalane basert på desse. Med ui-filer, så vert visstnok alle tekststrengar automatisk dytta inn i tr() og gjort klar for omsetjing.
Unntaket i Fin Faktura ser ut til å vere feildialogar - iallfall ser det ut som om mange av dei får teksten sin direkte frå koden i gui.py (og kanskje andre Python-filer). Dersom du vil omsetje dei, anbefalar eg å pakke tekstrengane inn i translate() (sjå http://pyqt.sourceforge.net/Docs/PyQt5/i18n.html for meir informasjon, sannsynlegvis må ein også inn i .pro-fila for å setje opp uthenting av strengar frå Python-filene ved hjelp av pylupdate5-verktyet).
Frå SourceForge sitt web-view, kan det også sjå ut til at kodinga av Python-filene er feil, sidan norske teikn i dialogtekstane vises feil. Er også ei moglegheit at det berre er web-viewet som trur at fila har anna koding enn den faktisk har.
Og til slutt, takk for tipset - det kan hende eg ser nærare på Fin Faktura som brukar ved ei seinare anledning :)
Mvh, Lars Ivar Igesund
On Fri, Oct 23, 2015 at 2:47 AM Johnny A. Solbu johnny@solbu.net wrote:
On Thursday 22. October 2015 08.49, Johnny A. Solbu wrote:
On Wednesday 21. October 2015 14.56, Hans Fredrik Nordhaug wrote:
Jeg er ikke Qt-utvikler, men dette bør vi klare å nøste opp i.
Det er ikke jeg heller. :-) Men jeg syntes at programmet var bra nok til mitt bruk, og det
eksisterer visst ikke andre linux-alternativer for norske fakturaer som ikke er en nettjeneste. og da måtte jeg i det minste forsøke å få det til å fungere.
Såvidt jeg kan se så er ikke programmet oversettbart - det inneholder
ingen
QTranslator-instanser.
Det har vel jeg også skjønt etter å ha lest flere av googletreffene, men
det er alt jeg har skjønt. Jeg skjønte aldri hvor de mente jeg skulle legge inn den load()-saken og alt jeg fant gikk ut fra at man kodet i noe annet enn det vi gjør, men skal se litt på det eksemplet du linker til når jeg er hjemme fra jobb i kveld.
Da har jeg sett litt på eksemplene, og jeg forstår ingenting, :-/ Jeg skjønner ikke hva jeg skal legge inn hvor.
Alle eksemplene forutsetter at man lager noe fra grunnen av, mens her er det snakk om å endre det etter at programmet er ferdig...
-- Johnny A. Solbu web site, http://www.solbu.net PGP key ID: 0xFA687324 _______________________________________________ i18n-no mailing list i18n-no@lister.ping.uio.no https://lister.ping.uio.no/mailman/lister.ping.uio.no/listinfo/i18n-no
On Wednesday 21. October 2015 00.53, Johnny A. Solbu wrote:
Er det noen Qt-utviklere her som kan hjelpe til med å finne ut hva som mangler å gjøre?
Og da fikk jeg hjelp fra Eivind Tagseth, som sendte en merge request. Tusen takk. :-)
Det neste spørsmålet blir jo da om det er mulig å bruke translation project til å oversette programmet, eller er det begrenset til .po-filer? Qt bruker jo .ts-filer. Hvis ikke, er det andre resurser som kan brukes til formålet?
On 23/10-2015 19:04, Johnny A. Solbu wrote:
Det neste spørsmålet blir jo da om det er mulig å bruke translation project til å oversette programmet, eller er det begrenset til .po-filer? Qt bruker jo .ts-filer. Hvis ikke, er det andre resurser som kan brukes til formålet?
Programmet 'po4a' kanvist nok oversætte mellem '.ts'-formatet og '.po'-formatet.
God fornøjelse,
Jacob