Portál AbcLinuxu, 26. listopadu 2025 01:22
Chcešli CP1250 přidej do .emacs
(set-language-environment "czech")
; Console and X Window System adjustment
(codepage-setup '1250)
(prefer-coding-system 'cp1250)
(define-coding-system-alias 'windows-1250 'cp1250)
(if window-system
(setq clipboard-coding-system 'cp1250)
(set-terminal-coding-system 'cp1250))
(set-selection-coding-system 'cp1250)
; windows-1250 encoding for all processes
(setq process-coding-system-alist '((".*" . cp1250)))
:w ++enc=cp1250 ++ff=dos
Tak to funguje v textovém editoru vim.
Taky si můžete nastavit proměnnou fileencoding:
:set fileencoding=cp1250
A taky možná proměnnou fileformat:
:set fileformat=dos
Akorát jsem nepochopil, proč zrovna kódování windows-1250. Spíše bych očekával otázku, jak psát v Unicode (UTF-8).
Já mám ve vimu nastaveno encoding na UTF-8 (fileformat na unix). A být Vámi, tak bych se zamyslel, jestli by se Vám nevyplatilo používat ISO-8859-2 nebo Unicode (UTF-8).
Já třeba mám locales pro ISO-8859-2, ale ve ~/.vimrc mám:
set &termencoding=&encoding set encoding=utf-8 set fileencoding=utf-8
No a vim se postará o konverzi. Vytvořit (sehnat) locales pro UTF-8 doufám není složité, ale já jsem se k tomu zatím nedokopal.
Fileencodings je seznam kódování. Když je ve vimu načítán textový soubor, tak se zkusí první kódování ze seznamu. Pokud u prvního dojde k chybě, tak se zkusí druhé atd. V případě, že některé z kódování je shledáno jako funkční, tak vim nastaví fileencoding na jeho hodnotu, jinak fileencoding nastaví na hodnotu prázdného řetězce, což znamená, že hodnota encoding je použita.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.