abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 17:25 | IT novinky

Do prodeje (Farnell) se dostal jednodeskový počítač Tinker Board (unboxing). Jedná se o konkurenci Raspberry Pi 3 od společnosti Asus. Porovnání (jpg) těchto počítačů například na CNXSoft. Cena Tinker Boardu je 55 £.

Ladislav Hagara | Komentářů: 6
včera 14:44 | Zajímavý projekt

Byla zveřejněna pravidla hackerské soutěže Pwn2Own 2017, jež proběhne od 15. do 17. března v rámci bezpečnostní konference CanSecWes ve Vancouveru. Soutěžit se bude o více než milion dolarů v pěti kategoriích. Letos se bude útočit i na Ubuntu. Jedná se již o 10. ročník této soutěže.

Ladislav Hagara | Komentářů: 1
včera 13:33 | Nová verze

Po sedmi měsících vývoje od vydání verze 5.7 byla vydána verze 5.8 (YouTube) toolkitu Qt. Z novinek lze zmínit například Qt Lite pro vestavěná zařízení. Nově jsou plně podporovány moduly Qt Wayland Compositor (YouTube) a Qt SCXML (YouTube). Současně byla vydána verze 4.2.1 integrovaného vývojového prostředí (IDE) Qt Creator.

Ladislav Hagara | Komentářů: 1
včera 11:52 | Pozvánky

Lednový Prague Containers Meetup se koná ve čtvrtek 26. ledna 2017 od 18:00 v Apiary, Pernerova 49, Praha 8. Přijďte se podívat na přednášky o Enterprise Kubernetes a Jenkins as a code.

little-drunk-jesus | Komentářů: 0
včera 11:40 | Pozvánky

Program letošního ročníku konference Prague PostgreSQL Developer Days, která se koná již 15. a 16. února 2017 na ČVUT FIT, Thákurova 9, Praha 6, byl dnes zveřejněn. Najdete ho na stránkách konference včetně anotací přednášek a školení. Registrace na konferenci bude otevřena zítra (24. ledna) v brzkých odpoledních hodinách.

TomasVondra | Komentářů: 0
22.1. 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

Ladislav Hagara | Komentářů: 0
22.1. 02:02 | Komunita

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
21.1. 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
21.1. 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
20.1. 17:00 | Nová verze

Byl vydán Docker 1.13. Přehled novinek na YouTube a v poznámkách k vydání na GitHubu. Docker umožňuje běh aplikací v softwarových kontejnerech (Wikipedia).

Ladislav Hagara | Komentářů: 7
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (11%)
 (2%)
 (73%)
 (3%)
 (10%)
Celkem 387 hlasů
 Komentářů: 31, poslední včera 19:19
Rozcestník
Reklama

Dotaz: Kódování češtiny v konzoli (Ubuntu) a vim

16.5.2009 18:09 Josef
Kódování češtiny v konzoli (Ubuntu) a vim
Přečteno: 3023×

Na počítači s Ubuntu je v konsoli defaultně nastavená čeština UTF-8. Já ale potřebuji psát texty v ISO-8859-2. Používám Vim. Zkoušel jsem věci jako upravit .vimrc (fenc a fileencoding), ale vim mi nedovolí uložení: E513 write error, conversion failed (make 'fenc' empty to override).

Zkoušel jsem i nastavit dpkg-reconfigure console-setup na ISO-8859-2, což mi jen totálně rozhodí a znemožní práci v konzole a velmi nesnadno se vrací zpátky.

Nepomohla ani změna  v /etc/default/console-setup CHARMAP="ISO-8859-2".

Na fóru zde - číslo 216229 (http://www.abclinuxu.cz/poradna/linux/show/216229) píše Lukimanicka něco o parametru jádra vt.default_utf8, ale nevím, jak se s tím zachází či kam to mám nacpat.

Neboli: Je mi jedno, co kde bude nastaveno, potřebuji jen psát a ukládat v konzole ve vimu v ISO Latin2 a pokud možno správně zobrazovat mc a podobné věci. Nepotřebuji rady typu "tak to piš v terminálu v X".

Dík za radu, fakt mi došly všechny nápady. Na druhém počítači na Debianu mi to jde v ISO, tady na notebook mi ale Debian nedokázal obsloužit některé HW součásti, tak jsem musel nasadit Ubunt, který mi jinak taky vyhovuje.

Pohoda, hezký den

Josef

Odpovědi

pek avatar 16.5.2009 22:58 pek | skóre: 20
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim
Dobrý den,

zkuste nechat konzoli v utf8 a spustit: vim -c "e ++enc=iso-8859-2" soubor-iso.txt Soubor se při načtení překóduje do utf8 a čeština se zobrazuje správně. Při uložení :w se soubor uloží jako iso. Ve stavovém řádku vimu by se měl objevit nápis [zkonvertován]. Vyzkoušeno na ubuntu 9.04.

Parametry fenc a fileencoding ve .vimrc by měly dělat něco podobného..., ale mě osobně to nikdy nefungovalo tak jak bych potřeboval.

Petr
17.5.2009 12:04 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim
S ohledem na to, že mi funkce fileencodings (fencs) a fileencoding (fenc) přišla z manuálu jasnější, používám takovéto nastavení:
set fileencodings=""
set fileencoding=""

" If we have a BOM, always honour that rather than trying to guess.
if &fileencodings !~? "ucs-bom"
  set fileencodings^=ucs-bom
endif

" Always check for UTF-8 when trying to determine encodings.
if &fileencodings !~? "utf-8"
  set fileencodings+=utf-8
endif

" fce pro zjištění kódování pomocí externího programu (enca)
function GetEncoding(f)
  let e = system('enca -Pe "' . a:f . '"')
  let e = substitute(e, '/.*', '', '')
  if e =~ 'unknown'
    return 'ascii'
  endif
  return e
endfunc

" zjištění kódování
if has("autocmd")
  au BufReadPre * exec "set fencs+=" . GetEncoding(expand('<afile>'))
endif

" a nebo když ji miluješ, není co řešit
if has("autocmd")
  "au BufReadPre *.tex  set fencs=iso-8859-2
  "au BufNewFile *.tex  set fenc =iso-8859-2
  au BufReadPre *.gnu  set fencs=iso-8859-2
  au BufNewFile *.gnu  set fenc =iso-8859-2
  au BufReadPre *.plot set fencs=iso-8859-2
  au BufNewFile *.plot set fenc =iso-8859-2
fi
++enc podle mne v zásadě dělá něco jako to co je výše v bloku "když ji miluješ", tedy překóduje buffer z ++enc-definovaného kódování do ve-vimu/vimrc-nastaveného-interního-"encoding"-kódování a nastaví fenc na hodnotu danou ++enc aby se to při ukládání opět rekódilo.
18.5.2009 19:23 Josef
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim

Dík,

geniální a fungující -- dokud ovšem nepotřebuji napsat ň. Tam se vim zarputile brání uložení chybou 513 (vizte výše). Než na něco přijdu, obcházím to zatím TeXovským \v n, což ovšem není příliš čisté a budu zkoušet další možnosti. Nepomohl ani pokus na výměnu fontu.

Josef

16.5.2009 23:44 Jirka | skóre: 36
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim
Máte na mysli textový terminál, nebo emulátor terminálu v X (Konsole, Gnome Terminál, ...)?

Ty bohatější emulátory (Konsole, Gnome Terminál) umí v aktuální session měnit kódování. Pokud tam máte X (na notebooku asi ano), tak bych šel touto cestou. V Gnome je to v menu Terminal - Set Character Encoding. Konsole v novém KDE to má v nastavení profilu, ve starém KDE se to dalo nastavit rychleji v kontextové nabídce.
16.5.2009 23:46 Jirka | skóre: 36
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim
Omlouvám se. Teď jsem si to četl znova a zjistil jsem, že o mou radu nestojíte. :-)
16.5.2009 23:58 Jirka | skóre: 36
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim
Tak jsem si to přečetl znova a pokud si to dobře pamatuji, tak by to mělo být nějak takto.

Zkuste zkonfigurovat locales:

dpkg-reconfigure locales a vyberete i cs_CZ.ISO-8859-2

Pak, pokud to chcete globálně pro celý systém (jinak do .bash_profile svého uživatele), v /etc/environment přidáte export těchto proměnných do prostředí:
export LC_MESSAGES=C
export LANG=cs_CZ.ISO-8859-2
Musíte se odhlásit a znovu přihlásit.
18.5.2009 19:44 Josef
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim

Tak jsem zkusil dpkg-reconfigure locales, ale nedalo se to tam nikde doplnit, jen proběhl nějaký skript a na konci každého řádku bylo UTF-8... up-to-date. Jak se tam dá nacpat to ISO? Co myslíte tím "vyberte i cs_CZ.ISO..."

Nejde to nějak takto: Otevři soubor tenaten a napiš tam toato?

Josef

18.5.2009 20:13 Jirka | skóre: 36
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim
Ano. Locales, které chcete vygenerovat musíte (na nový řádek) uvést v souboru /var/lib/locales/supported.d/local a pak spustit dpkg-reconfigure locales. Jak jsem říkal, jsou to už roky, co jsem něco takového potřeboval.
18.5.2009 20:55 Josef
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim

Díky převeliké, Jiří

to je přednně ono! To pomohlo a mohu psát ďťň, zobrazuje a ukládá se to dobře. Ostatní programy ukazují taky správně, co mají.

Jen doplním, že po úpravě souboru,...local a spuštění  dpkg-reconfigure locales

je potřeba pustit dpkg-reconfigure console-setup a nastavit tam latin2 (to pro takové nedouky jako jsem já nebo kdybych za čas potřeboval stejnou věc podruhé:)). 

Tímto slavnostně prohlašuji problém za vyřešený:)

Pohoda, hezký den

Josef

 

16.5.2009 23:59 couker
Rozbalit Rozbalit vše Re: Kódování češtiny v konzoli (Ubuntu) a vim

ja jsem si pridal do .vimrc tohle

18 function! ChangeFileencoding()
 19     let encodings = ['iso88592', 'utf8', 'cp1250']
 20     let prompt_encs = []
 21     let index = 0
 22     while index < len(encodings)
 23         call add(prompt_encs, index.'. '.encodings[index])
 24         let index = index + 1
 25     endwhile
 26     let choice = inputlist(prompt_encs)
 27     if choice >= 0 && choice < len(encodings)
 28         execute 'e ++enc='.encodings[choice].' %:p'
 29     endif
 30 endf
 31 nmap <F8> :call ChangeFileencoding()<CR>
 

ted kdyz otevru soubor,zmacknu f8, tak mi to da na vyber co chci za kodovani..nake si zvolim a datlim v nem..

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.