Projekat

Općenito

Profil

Akcije

Podrška #25296

Zatvoren

F18, utf konverzija u outf.txt, f18_editor

Dodano od Saša Vranić prije više od 13 godina. Izmjenjeno prije oko 13 godina.

Status:
Zatvoreno
Prioritet:
Normalan
Odgovorna osoba:
Saša Vranić
Početak:
18.11.2011
Završetak:
% završeno:

100%

Procjena vremena:

Opis

radi problema štampe u outf.txt


Fajlovi

utf8tostr.png (10,5 KB) utf8tostr.png Ernad Husremović, 19.11.2011 15:00
outf.txt (2,76 KB) outf.txt ovaj txt ima mix latin1 i utf8 slova, vi prikazuje kao latin1 enkodiran Ernad Husremović, 19.11.2011 15:08
outf.txt (2,76 KB) outf.txt utf-8 račun-otpremnica Ernad Husremović, 19.11.2011 15:36
outf.txt (2,76 KB) outf.txt machine encoding Ernad Husremović, 19.11.2011 16:27
f18_editor.png (74,4 KB) f18_editor.png Ernad Husremović, 19.11.2011 22:44

Povezani tiketi 2 (0 otvoreno2 zatvorenih)

korelira sa F18 - Podrška #25250: PTXT, DelphiRB i F18 ?ZatvorenoJasmin Beganović15.11.2011

Akcije
korelira sa F18 - Podrška #25313: print iz f18_editorZatvorenoJasmin Beganović20.11.2011

Akcije
Akcije #1

Izmjenjeno od Saša Vranić prije više od 13 godina

trenutno dobijamo lude karaktere

Akcije #3

Izmjenjeno od Ernad Husremović prije više od 13 godina

parametri štampača PPrint

Akcije #4

Izmjenjeno od Ernad Husremović prije više od 13 godina

setpxlat je funkcija koja je dummy u F18

Akcije #5

Izmjenjeno od Ernad Husremović prije više od 13 godina

i u hbct je ova funkcija dummy

hernad@macan:~/devel/harbour/harbour-3.0.0$ grep -r -i "setpxlat" *
contrib/hbct/cterror.ch:#define CT_ERROR_SETPXLAT        2024
contrib/hbct/dummy.c:HB_FUNC( SETPXLAT )   {;}
Akcije #6

Izmjenjeno od Ernad Husremović prije više od 13 godina

rješenje je ? hb_strtoutf8(cOut)

Akcije #7

Izmjenjeno od Ernad Husremović prije više od 13 godina

hm za gnFirma dobijam

Husremovi<86>
Akcije #8

Izmjenjeno od Ernad Husremović prije više od 13 godina

deaktiviraću sve konverzije znakova kao npr. StrKznWin.

Akcije #9

Izmjenjeno od Ernad Husremović prije više od 13 godina

common/common_string_util.prg

stavio "četiri" i imam problems a encoding-om

http://stackoverflow.com/questions/778069/how-can-i-change-a-files-encoding-with-vim

Akcije #10

Izmjenjeno od Ernad Husremović prije više od 13 godina

:set fileencoding=utf-8
Akcije #11

Izmjenjeno od Ernad Husremović prije više od 13 godina

commit silna brisanja konverzija

ovo će vjerovatno izazvati popriličan haos. ali bolje da ovo raskopam nego da ovi čaršafi presipanja iz šupljeg u prazno jednom za uvijek prekinemo

i konverzije svedemo na jednu dvije funkcije koje svako razumije.

Akcije #12

Izmjenjeno od Ernad Husremović prije više od 13 godina

napravio sam konverziju fajla u utf-8

https://github.com/knowhow/F18_knowhow/commit/027887ae11fb7888aa10720971ad9c05cc7f30f3

:set

--- Options ---
  background=dark     hidden              incsearch           shiftround        noswapfile            ttyfast
  expandtab           history=1000        laststatus=2        shiftwidth=4        syntax=clipper      ttymouse=xterm2
  filetype=clipper    hlsearch            number              showmatch           tabstop=4           visualbell
  helplang=en         ignorecase          scroll=18           smartcase           title
  backspace=indent,eol,start
  fileencoding=utf-8 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  fileencodings=ucs-bom,utf-8,default,latin1

napomena:

vi editor ovaj fajl vidi sada kao utf-8 enkodiran i u njemu normalno vidim naša slova.

i onda sa hb_utf8tostr() napravio konverziju koju UI prepoznaje kako treba:

Akcije #13

Izmjenjeno od Ernad Husremović prije više od 13 godina

Akcije #14

Izmjenjeno od Ernad Husremović prije više od 13 godina

kada sam u poreznu fakturu stavio hb_StrToUtf8

dobijam čist utf-8 txt fajl

Akcije #15

Izmjenjeno od Ernad Husremović prije više od 13 godina

Akcije #16

Izmjenjeno od Ernad Husremović prije više od 13 godina

rezime

1) Prikaz stringova na UI-u, kao i snimanje u dbf mora pretrpiti konverziju hb_Utf8ToStr( utf8_enkodiran_string )

2) habrour prg fajlovi trebaju biti konvertovani u utf-8 encoding sa odgovarajućom set fileendoding=utf-8

3) ako želimo prikaz utf onda vršimo konverziju internih stringova u utf-8 sa hb_StrToUtf8( oem?ansi?ne znam šta od ovoga_encodiran_string )

Akcije #17

Izmjenjeno od Ernad Husremović prije više od 13 godina

windows aplikacije ptxt, delphirb i naša slova ?!

kako će se ptxt ponašati to tek trebamo vidjeti sa ovakvim outf.txt-om.

možeš li posljednji outf.txt učitati u PTXT na windows mašini i pustiti na printer ?

Akcije #18

Izmjenjeno od Ernad Husremović prije više od 13 godina

ja sam testirao:

prvi outf.txt sa račun/otpremnica enkodiran po latin-2 oem-u PTXT prikazuje kako treba.

drugi račun-otpr ne prijkazuje, ovaj što je enkodiran kao utf-8.

Akcije #20

Izmjenjeno od Ernad Husremović prije više od 13 godina

koji je machine encoding uopšte ? cp852 ? cp1250 ? trebao bi biti win-1250

Akcije #21

Izmjenjeno od Ernad Husremović prije više od 13 godina

hm ...

encoding posljdenjeg fajla je cp852.

kada sam na windows mašini otvorio sa vim i stavio

:set encoding cp852

dobio sam naša slova

Akcije #22

Izmjenjeno od Ernad Husremović prije više od 13 godina

pa da ... ptxt je podešen da prima fajlove koje generiše fmk a fmk je native cp852 generisao naša slova.

Akcije #23

Izmjenjeno od Ernad Husremović prije više od 13 godina

cp852 zašto ?

pa zato što smo kod inicijalizacije aplikacije rekli

hb_setCodePage( "SL852" )
hb_setTermCP("SLISO")
Akcije #24

Izmjenjeno od Ernad Husremović prije više od 13 godina

windows postavke

saša je ovo komentarisao i podesio da radi kao i mac/linux:

//REQUEST HB_CODEPAGE_SL852
//REQUEST HB_CODEPAGE_SLWIN

//hb_setCodePage( "SL852" )
//hb_setTermCP("SLWIN")

zašto ?

Akcije #25

Izmjenjeno od Ernad Husremović prije više od 13 godina

hernad@macan:~/github/F18_knowhow$ cat /usr/local/bin/f18_editor


# iconv na mac-u: brew install icon

cat $1 | sed 's/#%.*#//g' | iconv -c -f IBM852 -t UTF-8 > $1.conv.txt

mvim $1.conv.txt

Akcije #26

Izmjenjeno od Ernad Husremović prije više od 13 godina

iskoristio sam F18 editor da izbacim i ptxt kodove tako da imam pregled:

Akcije #27

Izmjenjeno od Ernad Husremović prije više od 13 godina

  • Naslov promijenjeno iz F18, utf konverzija u outf.txt u F18, utf konverzija u outf.txt, f18_editor
Akcije #28

Izmjenjeno od Ernad Husremović prije više od 13 godina

Ernad Husremović je napisao/la:

windows postavke

saša je ovo komentarisao i podesio da radi kao i mac/linux:

[...]

zašto ?

ako na win imamo istu funkcionalnost kao i unix/linux nije ni bitno :)

Akcije #29

Izmjenjeno od Ernad Husremović prije više od 13 godina

  • % završeno promijenjeno iz 0 u 90
Akcije #30

Izmjenjeno od Ernad Husremović prije više od 13 godina

harbour podrška našim znakovima, rekap

praktično tri postavke:

1) dbf, memorijske varijable

podaci u dbf i memorijske varijable podaci nalaze se u formatu određeni ovim parametrom:

hb_setCodePage( "SL852" )

2) terminal

podaci se na terminal šalju u skladu sa ovim parametrom:

hb_setTermCP("SLISO")

ova konverzija terminal <-> memorijske varijable odvija se automatski tako da nam ovaj parametar, kada je sve ok sa prikazom naših slova na terminalu, možemo ispustiti iz vida

3) print oput

qout i slične komande, ako želimo utf trebaju raditi konverziju sa

hb_StrToUtf8 memorijskih varijabli i sadržaja dbf polja da bi dobili utf-8 output.

4) harbour source code, enkodiran utf-8

ako pišemo string konstante u harbour source-kodu, treba koristiti utf-8 file encoding (vim :set fileencoding utf-8)

tada međutim treba napisati:

neka_var = hb_Utf8ToStr("Ernad Husremović")
Akcije #31

Izmjenjeno od Saša Vranić prije više od 13 godina

Ernad Husremović je napisao/la:

windows postavke

saša je ovo komentarisao i podesio da radi kao i mac/linux:

[...]

zašto ?

živ ti bio, ja ništa komentarisao nisam. Taj dio koda nisam ni gledao.

Akcije #32

Izmjenjeno od Ernad Husremović prije više od 13 godina

vjerovatno je ovo rađeno kod ld porta na harbour. kasnije sam zaključio da nije ni bitno.

Akcije #33

Izmjenjeno od Ernad Husremović prije više od 13 godina

  • Status promijenjeno iz Novo u Zatvoreno
  • % završeno promijenjeno iz 90 u 100
Akcije #34

Izmjenjeno od Ernad Husremović prije oko 13 godina

PTXT - 852 enkodiranje => OUTF.TXT - ne koristiti hb_StrToUtf8

Ernad Husremović je napisao/la:

rješenje je ? hb_strtoutf8(cOut)

ne koristiti ovu funkciju jer F18 treba proizvesti outf.txt koji koristi PTXT.

PTXT koristi 852 enkodiranje.

Ovo je ispravno za polje partner

f18_editor proizvodi conv.txt koji je 852 enkodiran i njega pregledamo u vi editoru

Akcije

Također dostupno kao Atom PDF