Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno diakritika v PSpade (po neviemkolky krat)

No - ano viem ze sa to uz riesilo, a aj google som skusil, ale nejak si s tym neviem rady.

Mam Windows XP (UK verzia) kde som v regional settings nastavil podporu pre nonunicode na Slovak. Vsetko ide fajn - stranky zobrazuje dobre, mozem pisat s diakritikou, maily word notepad - proste vsetko fajn.

Ale nainstaloval som si PSPad a ten si nejako s mojou slovencinou nie a nie poradit. Skusil som vsetko kodovania (proste vsetky vo Format menu, a pri Open Files mam nastavene Use menu Format) ale akosi to nie a nie ist...

majme priklad:

subor 1.txt v ktorom je ľščťžýáí , ked tento subor otvorim v notepade a skusam ho savnut (v notepade) tak pise ze encoding je ansi. Nuz fajn. Skusim otvorit tento subor v PSPade a dostanem:
¾šèžýáí

(neviem ci to ma vyznam, alebo je to uz prekodovane, ale pri hexe je to v pspade: BE9AE89D9EFDE1ED)

vieme ze na sk/cz sa ma pouzivat iso 8859-2 nuze skusme to.

Ked otvorim moj povodny notepadovsky subor 1.txt dostanem v pspade toto:
ž±è¶·ýáí

najzvlastnejsie je ze mam taky pocit ze ked vytvorim priamo v pspade subor (iso8859-2) v ktorom napisem ľščťžýáí a tento savnem, zatvorim pspad a znova subor otvorim, tak sam paspad to vidi inak (lšctžýá - poodstranoval niekde makcene)

Podme dalej :) vcera som robil rozne experimenty s diakritikou a mam subor v kodovani UTF-16LE. Otvorim ho - ide dobre, savnem - ide dobre... Proste fajn. Az by sa zdalo ze to riesi moj problem... Problem vsak je ze tento subor je v Unicode. Teda - to je dovod preco ho aj notepad aj PSPad vidi "dobre". Ale ja mam mnozstvo suborov ktore som vytvoril v kodovani Ansi a tieto chcem teraz editovat v PSpade (savnutie ako Unicode nepripada do uvahy - suborov je mnozstvo, nechce sa mi to konvertovat po jednom, a najma - som spokojny s ANSI)

Som si isty ze sa to nejak dat MUSI - pretoze ak to zvladne notepad preco by nemal PSPad? Font mam nastaveny Central European v Notepade aj PSPade...

Uff - poradi niekto co robim zle?

Předmět Autor Datum
nejdřív si musíš ujasnit v jakém kódování svoje soubory vlastně máš, v jakém os/aplikaci jsi je poří…
lední brtník 20.10.2006 18:47
lední brtník
dakujem za obsirnu odpoved ale bohuzial ani toto moj problem neriesi... ohladom aplikacie kde som s…
wray 23.10.2006 11:57
wray
doplnok: skutocne to suvisi s kodovou strankou - ked nastavim Regional Settings na Slovak tak to fun…
wray 23.10.2006 12:02
wray
A to kódovanie Windows-1250 v menu nemáš? [http://img234.imageshack.us/img234/3057/pspadcp1250 ms3.p…
los 23.10.2006 16:28
los
No - tak takto moj PSPad nevyzera, jednak mam anglicke prostredie (verim ze TO nie je problem) a vo…
wray 24.10.2006 10:52
wray
Není to sice odpověď jakou čekáš, ale tip na možné řešení tvého problému. Dlouho jsem nemohl nalézt…
Craft_logout 23.10.2006 13:34
Craft_logout
pspad fora: ano aj tam som pozeral a z tohoto: http://forum.pspad.com/read.php?4,23056,34221#msg-3 4…
wray 24.10.2006 11:03
wray
PSPad umi v teto chvili pracovat pouze s ANSI = nastaveni odpovidajici regionalnimu nastaveni Window…
Jan Fiala 24.10.2006 11:09
Jan Fiala
au :( no - verim ze cast vety "v teto chvili" naznacuje, ze to raz bude mozne... dik aj tak poslední
wray 24.10.2006 11:47
wray

nejdřív si musíš ujasnit v jakém kódování svoje soubory vlastně máš, v jakém os/aplikaci jsi je pořídil. ansi znamená asi jen to, že znaky využívají 8-bitů, ale neříkají v jakém kódování. na tom se shodnem - jinak ztrácíme čas.

zůstávají pravděpodobné win1250, win1252, utf8, nebo nějaké historičtější. můžeš to zjistit, ale jen na souborech které jsi ještě znovu neuložil:

notepad: neumí konvertovat soubory - prostě ho otevře, pokud máš pro zobrazení náhodou vybraný font se správnou znakovou sadou zobrazí ho správně, a zase ho uloží/zavře. nijak ho nepřekóduje, nic takového neumí.
pokud jde o národní stránku win-kódování: xp používají unicode systémový font. ve formát - písmo - skript vybereš něco až se trefíš - z názvu "skriptu" písma určíš variantu win-kódování win125x.

na jiná kódování potřebuješ třeba pspad: umí zobrazit více druhů. navíc je umí i mezi sebou převést. nejspíš bude potřeba vypnout automatickou detekci kódování, uvidíš sám.

takže pspad: nejdřív si v menu formát nějaké vybereš, teprv pak necháš zobrazit soubor. v exotických operačních systémech (třeba v anglických xp) musíš doufat že máš rozumně nastavený default font vzhledem ke kódování tvých souborů (možná to jde měnit jen v pspad.ini)
když to není v pořádku, soubor bez ukládání zavřeš. nechceš zatím nic konvertovat, ale zjistit kódování originálu.
zkusiš tedy zvolit ve formátu jiné kódování, znovu otevřít...
když žádná rozumná možnost nevyjde, je prostě závada v použitém fontu. ten může kopírovat systémové nastavení.

příklad: tvé originální soubory jsou win1250, eng windows znají unicode, ze kterého si default vyberou západoevropský skript win1252 - a ty vidíš nesmysly.

čili otázkou je jak si rozumí pspad s podporou pro nonunicode sw (píšeš žes nastavil "slovak") - zda mu v pspad.ini natvrdo nepřepsat rodinu fontu "ce" - a taková varianta by měla být v registrech: fonty.htm - běžně se tam zapisuje pro některé fonty s lokalizovanými ms office.

kdybys věděl z jaké aplikace soubory pochází, mohl sis toto celé ušetřit.

no a buď to tak necháš, nebo si je dávkově převedeš do vyhovujícího kódování(altap salamander - files - convert - change coding)

nakonec: když máš soubor už otevřený v pspadu, a pak v menu formát vybereš jiný a dáš uložit, bude mít nový formát.
pokud je zobrazen z neznámých příčin špatně, a ty změníš kódování a uložíš, můžeš výsledek vyhodit.

dakujem za obsirnu odpoved ale bohuzial ani toto moj problem neriesi...

ohladom aplikacie kde som subor vytvoril: bol to editor 1st Page 2000, EditPlus a Notepad. Kodovanie suborov odhadnut neviem proste vzdy som dal len save, a vsetko fungovalo (a funguje dodnes az na PSPad)

Co sa kodovania v notepade tyka mal som pocit ze ANSI je kodovanie, pretoze pri ukladani suboru v notepade je moznost vybrat si ANSI, Unicode, Unicode Big Endian a UTF-8 preto som spominal ze pouzivam ANSI (co je default)

Neviem ako by som zistil ono kodovanie, avsak ak subor 1.txt otvorim v opere tak funguje spravne pri Encoding Windows-1250 co ma vedie k usudku ze toto je to kodovanie ktore pouzivam...

Pokusmi v PSPade som dospel k tymto vysledkom, (povodny subor obsahoval znaky ľščťžýáí):

ANSI: ¾šèžýáí
Kamenickych: Ü ÝØýß
OEM: ÿÜR£×øßÝ
ISO 8859-2: ž±è¶·ýáí
UTF-8: ¾šèžýáí (preplo samo do ANSI)
UTF-16 LE: ¾šèžýáí (preplo samo do ANSI)
UTF-16 BE: ¾šèžýáí (preplo samo do ANSI)

Font ktory pouzivam je Deja Vu Sans, skript Central European. Verim ze dokaze zobrazit "moje" kodovanie, nakolko to dokaze v notepade. Taktiez - zistil som ze nezalezi na tom aky font (ci uz v skripte CE alebo inom) zvolim v PSPade - stale to zobrazi nespravne

Skontroloval som aj tie rodiny fontov v registroch a nasiel som tam par fontov ktore uz tieto zmeny nastavene maju (Fixedsys napr.) avsak PSPad nezobrazil diakritiku spravne ani pri tychto...

Subor pspad.ini som nenasiel, a v inych ini suboroch PSPadu nevidim zmienku o fontoch.

prekodovat subory - ano je to moznost, ale radsej by som sa tomu vyhol. v tejto chvili mi to funguje spravne vsade okrem PSPadu, s ktorym iba zacinam. Nerad by som sa dostal do situacie, ze mi to pojde iba PSPade a nikde inde nie :)

doplnok: skutocne to suvisi s kodovou strankou - ked nastavim Regional Settings na Slovak tak to funguje (pri ANSI zobrazi PSPad diakritiku) spravne. Ano - toto je moznost, ale ja potrebujem mat Regional Settings anglicke (posobim v UK)

Teda potrebujem aby PSPad pouzil ANSI, ale nie windows native codepage, ale Windows-1250 (resp. slovensku CP) nejake napady ako na to?

No - tak takto moj PSPad nevyzera, jednak mam anglicke prostredie (verim ze TO nie je problem) a vo format menu mam

ANSI
Kamenickych (CP895)
OEM
ISO 8859-2
UTF-8
UTF-16 LE
UTF-16 BE

Ked prepnem jazyk do Slovak (co nechcem ale budiz) vyzera moj screen ako screenshot hore, avsak - je to len preklad, (ne)funguje to stale rovnako

Ako vravim - ak mam regional settings Slovak, tak to vsetko funguje spravne ale ja nechcem mat regional settings Slovak (pracujem v UK, a neposobi to dobre ked pride sef a vidi v mailoch Pondelok, Utorok, Streda namiesto toho co tam ma byt - proste musim mat UK regional settings) cize - skor otazka - ako presvedcit PSPad ze nech pouziva kodovu stranku CP1250?

Není to sice odpověď jakou čekáš, ale tip na možné řešení tvého problému. Dlouho jsem nemohl nalézt chybu, proč se mi nechce ve fóru zobrazovat registrační kód a jiné problémy, i když jsem vše pečlivě dělal v PSPadu pod UTF8, nicméně problém přetrvával, poté mi došla trpělivost a na radu jsem použil editor jEdit, kde jsem udělal úplně to samé a světe div se problém odstraněn, přitom se oba soubory jak z PSpadu, tak jEditoru tvářili jako UTF8 a přesto je tam někde rozdíl, na který jsem dodnes nepřišel. Nicméně PSPad považuji stále za skvělí editor, akorát když potřebuji něco provádět v kódování utf8 dělám to již v jEdit. Pokud chceš zjistit v jakém kódování je soubor uložen stačí jej otevřít v notepadu a dát uložit jako - automaticky se ti nabídne kódování, ve kterém je uložen.

BTW. Proč se na to přímo nezeptáš Jendy Fialy ve fóru na jeho stránkách, třeba je to tam už vyřešeno.

Craft

Zpět do poradny Odpovědět na původní otázku Nahoru