"invalid continuation byte", kun gedcom tuontirivin viimeinen merkki on "ä"

51 views
Skip to first unread message
Assigned to isotam...@gmail.com by me

Juhani Lausas

unread,
Mar 29, 2015, 6:50:33 AM3/29/15
to gramps-...@googlegroups.com
Gedcom muotoisen tiedon tuominen sisään Gramps ohjelmaan on vähintäänkin
haasteellista. Ääkköset tulevat normaalisti kunnolla sisään, paitsi
esiintyessään rivin lopussa, jolloin tulee ilmoitus:

Tuonti ei onnistu, koska tiedostossa virheellinen merkistökoodaus.
Korjaa koodaus ja tuo uudelleen

'utf-8' codec can't decode byte 0xe4 in position 579: invalid
continuation byte

OCCU-kentässä on usein "isäntä" ja Gramps kaatuu siihen heti. Sen voi
korjata esimerkiksi käyttämällä sanaa "talollinen" tai pistämällä
pisteen perään, mutta runsaat tiedot aiheuttavat ärtymystä sillä, että
ohjelma kaatuu jatkuvasti.

Onneksi tuolle on kiertomahdollisuus, sillä moiset tiedot luettuina
johonkin toiseen ohjelmaan kuin alkuperäiseen ja tulostamalla siitä
ohjelmasta gedcom tiedoston, tuo uusi saattaa mennä sisään. Gramps
antaa vähän mistä tahansa virheilmoituksia, mutta useimmat niistä eivät
kaada ohjelmaa, kuten tämä, jolle pitäisi saada korjaus Gramps tuonti
toimintoon gedcom tietoja sisään luettaessa.

Pekka Valta

unread,
Mar 29, 2015, 8:16:46 AM3/29/15
to gramps-...@googlegroups.com, vpj.l...@quicknet.nl
Voitko lähettää (testi)tiedoston tänne, niin pääsemme tutkimaan syytä. Muistelen törmänneeni vastaavaan Taapelin erään testitiedoston kanssa.  Silloin syynä oli luovuttavan ohjelman ikä, oli Unix-kaudelta. Vai onko Jormalla tilanteeseen suorempaa tietoa?

Pekka

Pekka Valta

unread,
Mar 29, 2015, 8:30:36 AM3/29/15
to gramps-...@googlegroups.com, vpj.l...@quicknet.nl
Piti vielä lisäämäni, että annatko lisätietoina Gramps- ja käyttöjärjestelmäversiosi.


On Sunday, March 29, 2015 at 1:50:33 PM UTC+3, Juhani Lausas wrote:

Pekka Valta

unread,
Mar 29, 2015, 2:30:12 PM3/29/15
to gramps-...@googlegroups.com, vpj.l...@quicknet.nl
Katselin Jussin tiedostoa hieman. Lisäsin tiedostoon 1 CHAR UTF-8 rivin, koska Suku 2004 ei sitä kirjoita paikoilleen. Ajoin sen jälkeen tiedon Grampsiin. Meni hienosti läpi, kertoi vain ohittaneensa kolme tyhjää riviä. Grampsin Henkilöiden ja Paikkojen nimistä näkyi kuitenkin se ongelma, että kaikkien skandimerkkien kooditus oli pielessä.

Gedcomin merkkikoodisto näyttää olevan ANSEL, mistä Gramps ei oikein tykkää. Muunsin gedcomin koodistoksi UTF-8 (no BOF), jolloin skandit näkyvät sisäänluettuna Grampsissa oikein. Kaikki siltä osin kunnossa.

Kun Jussi ajaa Grampsia Linuxissa, niin voisiko sen codekseissa olla jotain poikkeavaa Windowsista, minkä vuoksi Jussi sai alkuperäisen virheilmoituksensa?

Muuten gedcomissa on huomattavan paljon laatuongelmia: mm. päivämäärien ristiriitaisuuksia ja tapahtumien TYYPPI-tiedon "väärinkäyttöä". Iso tiedosto, jota kannattaa ensin korjata ohjelmallisesti ja stten vasta muokata Grampsissa. Voin tehdä esimuokkauksen Taapeli-projektissa käytettävällä GSP-työkalulla. Jos GSP-muokkaus kiinnostaa muitakin kuin Jussia niin voin informoida tekemisistäni tälle ryhmälle laajemminkin. Pekka


On Sunday, March 29, 2015 at 1:50:33 PM UTC+3, Juhani Lausas wrote:

Juhani Lausas

unread,
Mar 30, 2015, 5:47:17 AM3/30/15
to gramps-...@googlegroups.com, Matti Niemelä
Ennen kuin käännyin apua saadakseni toisten puoleen, olin kokeillut seuraavaa lisäystä
gedcom tiedostoon:
1 CHAR UTF-8
Sillä ei ollut mitään vaikutusta Linux ympäristössä, joten poistin sen. Sen jälkeen koetin
poistaa "ä" kirjaimeen loppuvia rivejä. Se vaikutti ikuisuuspuuhalta. Luovutin. Matti muunsi
gedcom tiedot minulle Legacy ohjelman avulla. Se temppu auttoi.

Pekka tarjosi ratkaisuksi jo aikaisemmin hylkäämääni temppua. Miten se oli mahdollista?
Pekka käyttää Windows käyttöjärjestelmää ja minä Linuxia. Ei auttanut muu kuin asentaa
uudelleen Gramps Windows ympäristöön (olin poistanut sen turhana). Asensin nyt paketin
GrampsAIO-4.1.2-1_win64_py27.exe ja huomasin sitä asentaessani heti merkittävän eron.
Tuossa paketissa on Python 2.7 ja Linuxissani on Python 3.4.2. Jollei itse käyttöjärjestelmä
oli syyllinen, voi uudempi Python olla viallinen. Ja, kuten arvata saattaa, gedcom lataus
onnistui, vain viisi varoitusta. Pitäisikö minun siirtyä vanhemman Python version käyttöön
Linuxissa? Meillä lienee uusi ongelma.

Gedcom Service Programme - GSP oli minulla jo Matin suosituksesta kokeilulistalla.
Se on Windows ohjelma. Linux käyttäjälle se käy, jos koneessa on myös Windows (moinen
tulee yleensä ilmaiseksi koneen mukana, kuten minullekin aikoinaan).



matti.u.niemela

unread,
Mar 30, 2015, 8:50:56 AM3/30/15
to gramps-...@googlegroups.com, matti.u...@gmail.com, vpj.l...@quicknet.nl
Virittelin Linuksen jälleen käyttöön ja kokeilin gedcom tiedoston lataamista Gramps ohjelmaan. Kokeilu onnistui vain 1 CHAR UTF-8 lisärivin laittamisella. Rivin lisäämiseen käytin gedit ohjelmaa. Lisäyksen jälkeen tallensin tiedoston merkistökoodauksella "Nykyiset maa-asetukset (UTF-8) ja rivinloppu Windows (voisi ehkä olla myös Unix/Linux). Gramps oli 4.2.0 kokeiluversio ja python 2.7.x. Olen kokeillut Grampsia Python 3 versiolla, enkä ole saanut sitä kunnolla toimimaan. Aina olen palannut 2.7 versioon. Nyt on koneella menossa saman gedcom tiedoston lataus Linuxessa Gramps 4.1.2 versioon ja Python 2.7. Uudessa Gramps 4.2 versiossa tulee olemaan Python 3 Windows ja Linux järjestelmissä. 

Itselläni on käytössä Linux Mint Cinnamon 17.2, joka perustuu Ubuntuun. Ilmeisesti Ubuntu on myös ok

Juhani Lausas

unread,
Mar 30, 2015, 12:42:46 PM3/30/15
to matti.u.niemela, gramps-...@googlegroups.com
Kiitos, Matti. Olin alun perin tallettanut tiedoston sen Windows
oletusasetuksilla. Kun lisäsin rivin "1 CHAR UTF-8" muutin nyt myös
merkistökoodauksen muotoon "Nykyiset maa-asetukset (UTF-8)". Python
versio ei ole ongelma.

Tuo muutos riitti latauksen onnistumiseen. Linux ohje kuuluu siis:
- lisää "1 CHAR UTF-8" heti HEAD rivin jälkeen
- käytä Gedit ohjemalla editoidessa "talletus nimellä" toimintoa, jonka
alla määrittelet "Nykyiset maa-asetukset (UTF-8)"
> --
> Sait tämän viestin, koska olet tilannut seuraavan Google-ryhmän:
> Gramps Finland.
> Jos haluat peruuttaa tämän ryhmän tilauksen ja sen sähköpostiviestien
> vastaanottamisen, lähetä sähköpostia osoitteeseen gramps-finland
> +unsub...@googlegroups.com.
> Voit lähettää viestejä tähän ryhmään käyttämällä sähköpostiosoitetta
> gramps-...@googlegroups.com.
> Jos haluat tarkastella tätä keskustelua verkossa, siirry osoitteeseen
> https://groups.google.com/d/msgid/gramps-finland/b1ab4a01-46b9-4a34-b9f9-dffc778d9590%40googlegroups.com.
> Lisää vaihtoehtoja on osoitteessa https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages