abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:22 | Zajímavý software

    BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.

    Ladislav Hagara | Komentářů: 1
    včera 12:55 | Nová verze

    Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.5. 23:44 | Pozvánky

    V neděli 26. května lze navštívit Maker Faire Rychnov nad Kněžnou, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    22.5. 16:33 | Nová verze

    Byla vydána nová stabilní verze 3.20.0, tj. první z nové řady 3.20, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu 64bitové architektury RISC-V.

    Ladislav Hagara | Komentářů: 0
    22.5. 14:11 | IT novinky

    Společnost Jolla na akci s názvem Jolla Love Day 2 - The Jolla comeback představila telefon se Sailfish OS 5.0 Jolla Community Phone (ve spolupráci se společností Reeder) a počítač Jolla Mind2 Community Edition AI Computer.

    Ladislav Hagara | Komentářů: 5
    22.5. 12:33 | Nová verze

    LibreOffice 24.8 bude vydán jako finální v srpnu 2024, přičemž LibreOffice 24.8 Alpha1 je první předběžnou verzí od začátku vývoje verze 24.8 v prosinci 2023. Od té doby bylo do úložiště kódu odesláno 4448 commitů a více než 667 chyb bylo v Bugzille nastaveno jako opravené. Nové funkce obsažené v této verzi LibreOffice najdete v poznámkách k vydání.

    ZCR | Komentářů: 0
    21.5. 23:33 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 141 (pdf) a HackSpace 78 (pdf).

    Ladislav Hagara | Komentářů: 0
    21.5. 21:22 | Nová verze

    Byla vydána verze 2.0.0 programovacího jazyka Kotlin (Wikipedie, GitHub). Oficiálně bude představena ve čtvrtek na konferenci KotlinConf 2024 v Kodani. Livestream bude možné sledovat na YouTube.

    Ladislav Hagara | Komentářů: 2
    21.5. 12:55 | Nová verze

    Byla vydána nová major verze 27.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (82%)
     (4%)
     (7%)
     (7%)
    Celkem 517 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Dotaz: Vim - špatná diakritika v souborech UTF-8

    12.2.2005 13:47 Jan Odvárko | skóre: 10
    Vim - špatná diakritika v souborech UTF-8
    Přečteno: 1323×
    Vim mi podle všeho nějak divně zapisuje diakritiku v kódování UTF-8. Když zapíšu soubor na disk a v konzoli ho vytisknu, pak se všechno zobrazí správně, ale pokud ho zobrazím v jakémkoli GUI prohlížeči (a samozřejmě nastavím že je kódovaný v UTF-8), tak mi prohlížeč např. místo " ž " zobrazí znak " ¾ " nebo místo " ě " znak " ì " atd. A když jsem se pokusil jen za zkoušku soubor zapsat v ISO8859-2, tak mi Vim vypíše chybu: E513: write error, conversion failed
    Tuhle chybu mi vypíše jen tehdy, pokud soubor obsahuje diakritiku. Myslím, že může být špatné nastavení už někde na úrovni shellu, protože s ním si Vim musí rozumnět. Ale může to být i něčím jiným. Předem díky ----
    Moje konfigurace: Distribuce Slackware 10.0,
    Vim 6.3, Bash 3.00 (oboje zkompilované proti knihovně slang-1.4.5). Locales:
    export LANG=en_US.utf-8
    export LC_COLLATE=cs_CZ.utf-8
    export LC_CTYPE=cs_CZ.utf-8
    Ve skriptu /etc/profile ještě spouštím pro konzoli:
    unicode_start /usr/share/kbd/consolefonts/lat2-14.psfu.gz Ve .vimrc souboru mám pro kódování:
    set encoding=utf-8
    set fileencoding=utf-8

    Odpovědi

    Marek Bernát avatar 12.2.2005 14:12 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Co sa tyka encoding, tak to je len interne kodovanie vimu a s tymto nema nic docinenia, takze ho z .vimrc mozete rovno vyhodit.
    To co potrebujeme je fileencoding(staci aj fenc).
    Vim totiz pri otvarani suboru skusa prave kodovania, ktore su v tejto premennej. Takze ak chcete otvorit vo vicku subor s inym kodovanim ako utf, tak nanho placne utf a je koniec.
    Takze co treba spravit je dat do .vimrc:
    set fenc=utf-8,iso-8859-2,..
    Vim pouzije na subor prve kompatibilne kodovanie, preto je nutne pisat utf-8 ako prve a ostatne kodovania az za tym.
    Popripade, ak ste vo vim trochu vyspelejsi, este lepsie je napisat autocommand pre TeX-ovske subory a tam mu povedat, aby na ne daval utf.
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    12.2.2005 14:41 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Téměř správně. Proměnná, kterou popisuješ, je fileencodings, nikoli fileencoding (rozdíl viz v :h fencs).
    Marek Bernát avatar 12.2.2005 14:51 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Jasne, ospravedlnujem sa.
    Tento problem som riesil asi pred pol rokom a od vtedy som sa na to nepozeral, takze som poradil, co ma napadlo.
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    12.2.2005 15:20 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    To s interním kódováním (encoding) jsem nevěděl, dík. Už to ve .vimrc nemám. Co se týče fileencodings a odlišných kódování, tak ISO8859-2 jsem uvedl jen jako příklad, mně nejde o samotnou konverzi kódování (všechno vč. konzole mám v UTF-8) ale o to, že se mi text v UTF-8 asi zapisuje špatně a nevím kde mám hledat chybu, co je špatně nastaveno, že se mi jinde než v konzoli zobrazí diakritika špatně.
    Marek Bernát avatar 12.2.2005 15:52 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Ak som to spravne pochopil, tak mate ciste utf-8 a vsetko co teda potrebujete je set fencs=utf-8

    Ale najlepsie asi bude, ak si sam poskusate:
    :help enc
    :help fenc
    :help fencs

    a z toho zistite, co vlastne potrebujete.
    Vimovsky :help je naozaj takmer dokonaly (ako sam vim) a oplati sa ho preliezt.
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    12.2.2005 16:14 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Vimovskou nápovědu znám, v ní jsem právě řešení hledal hodně dlouho a nenašel :-( Vysvětlím problém na jednoduchém příkladu:
    - V konzoli si spustím Vim, napíšu v něm text "ěščřžýáíé", a uložím.
    - Otevřu jakýkoli prohlížeč (Mozillu nebo třeba IE ve Win) a v menu vyberu, že je soubor kódovaný v UTF-8.
    - No a místo textu "ěščřžýáíé" vidím obludnosti typu "ì¹èø¾ýáíé"

    Teď jen jde o to, v čem je vlastně chyba. V nastavení konzole, či snad ve Vim? Zkoušel jsem spoustu věcí a vůbec jsem s tím nehnul. Paradoxně ten soubor vidím v konzoli správně, když např. pomocí cat zobrazím jeho obsah, takže je to asi s konzolí nějak provázané.
    12.2.2005 16:25 User682 | skóre: 38 | blog: aqarium | Praha
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    v lete byla na toto tema chyba ve vimu. pak se to opravilo. vim, ze jsme to nejakou dobu resili na linuxsoftu pri zavadeni utf-8 na vsechny weby.
    jakou pouzivate versi vim-u ?
    anebo se to take podari, pokud zeditujete dany soubor v nejakem jinem kodovani nez utf-8 a potom to otevrete v nejakem editoru(treba vim-u).
    gf
    12.2.2005 16:33 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Nainstaloval jsem si nedávno verzi 6.3 (2004 June 7) ale dělá to tu samou chybu. Takže by stačilo patchnout Vim?
    Marek Bernát avatar 12.2.2005 16:54 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Blbost!
    Je velmi nepravdepodobne, ze by bola chyba vo vime.
    Ak sa subor zle zobrazuje v mozille, znamena to, ze ho vim z nejakeho dovodu neprekodoval do utf.
    Predpokladam, ze vo vimrc mate set fencs=utf-8
    Skuste znova vytvorit subor s nejakymi ceskymi znakmi a ulozit ho.
    Ak je vsetko spravne nastavene, tak vim napise nieco ako [converted].
    Ak to nevypise, skuste napisat priamo vo vime set fenc=utf-8 a subor znova ulozit.
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    12.2.2005 17:01 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Při ukládání mi [converted] nepíše. Ani když explicitně určím kódování. Podle mě je to logické, když mám konzoli taky v UTF-8, tak proč by se mělo něco konvertovat?
    Marek Bernát avatar 12.2.2005 17:23 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Nejde o to, ake kodovanie mate v konzole, konverzia je medzi vimovskym internym kodovanim a suborom. Takze mate zrejme nastavene aj interne kodovanie vimu ako utf-8.
    Skuste na ten subor pustit recode: recode utf-8..iso-8859-2 subor. Ak nevypise chybu, tak subor je (takmer) urcite utf-8 a teda problem bude skor s mozillou a spol.
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    12.2.2005 17:34 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Abychom se něčeho dobrali, tak nainstaluj enca, protože ty soubory jsou asi v kdovíčem a testovat je zobrazováním v náhodném programu udělá kdovíco.
    12.2.2005 18:58 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Tak mi enca píše, že je to Universal transformation format 8 bits; UTF-8
    Jenže ono se to jako UTF-8 přece tvářit může, ale znaky můžou být zapsané špatně. Ať to zobrazím v jakémkoli prohlížeči, tak je to prostě blbě. :-( Napsal jsem ve Vimu testovací stránku která je v UTF-8, abyste to viděli sami.
    12.2.2005 19:20 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Jediný způsob, jak může tohleto vzniknout, je, že se text v ISO-8859-2 zkonvertuje do UTF-8, jako by byl v ISO-8859-1.
    12.2.2005 19:31 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Výborně, tak jsem zase o krok dál. Dík. Teď jen jak to řešit. :(
    12.2.2005 19:39 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Netuším, kde se tam může po cestě vzít Latin1.
    Vašek Lorenc avatar 12.2.2005 20:20 Vašek Lorenc | skóre: 27
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Vařím z vody -- špatně vygenerované locales by něco takového způsobit nemohly?
    ...včetně majestátného loosa
    12.2.2005 22:29 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Locales se zdají být nastavené správně. Napadla mě jedna souvislost: Když v konzoli napíšu české znaky a pak pomocí backspace chci ty znaky smazat, tak mi to umaže i další znaky, třeba i kus promptu. A nebo když napíšu něco s českými znaky a pak napíšu ještě něco před to, tak se ten vložený text ve výsledku objeví úplně někde jinde. Tzn. už konzole se znaky zachází špatně, možná to s problémem souvisí.
    Marek Bernát avatar 12.2.2005 23:51 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Tak toto vyzera naozaj na zle nastavene locales, konzola ignoruje multi-bytove utf znaky.
    Skuste si overit, ci nie su nejake localy ala LC_ALL a spol nastavene ako iso namiesto utf.
    Myslim, ze sa mozete zamerat cisto na tento problem a vim uz vynechat.
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    12.2.2005 17:29 User682 | skóre: 38 | blog: aqarium | Praha
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    taky jsem se divil (nejen ja), ale byla to chyba vim-u. s novejsi versi to slo.
    bye gf
    13.2.2005 15:30 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Vyřešeno. Všem moc díky. Nainstaloval jsem nejnovější vývojovou verzi Vim a už to funguje (než používat nestabilní vývojovou verzi, možná stačí patch). Čili mohu potvrdit, že to skutečně byla chyba Vim.
    13.2.2005 17:58 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    Je to jinak. Chyba byla v nastavení Locales - když mám nastaveno LANG=cs_CZ a LC_ALL=cs_CZ (jen pro příklad) tak pak to funguje i s verzí 6.3. Uff. Testování je dost nevděčná a zdlouhavá práce, zvlášť v tomhle případě to mělo nejasnou příčinu, tak sorry že jsem ten příspěvek zase posunul na začátek před ostatní. Ale alespoň nebudu šířit bludy.
    Marek Bernát avatar 13.2.2005 18:11 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Vim - špatná diakritika v souborech UTF-8
    IMHO presne ako som si myslel, je velmi nepravdepodobne, ze bude taka doocibijuca chyba v programe, ktory pouzivaju miliony (dufam ;-)) ludi.
    Btw, prispevok o locales som postol o nieco vyssie, mohli ste skusit hned, ale som rad, ze sa to nakoniec dotiahlo do vitazneho konca.
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.