Проблема : в cvs нужно добавлять комменты в koi8, в консоле кодировка глючит жесткоко (именно когда на русском пишешь в koi8 если поменять в настройках консоли, в дефолтной кодировке писать можно нормально). Я часто делаю так : открываю редактор GUI там пишу что нужно, затем копирую в консоль ( в которой уже стоит кодировка koi8). Это долго и меня бесит.
Я хочу написать скрипт, который примет в качестве параметра строку в дефолтной кодировке консоли на русском сделает из нее строку в кодировке koi8 и выполнит нужную мне команду. Затем восстановит кодировку.
Впринципе ничего сложного нет, но я не знаю с помощью какой команды изменить кодировку и перекодировать строку. Есть ли вообще такие в bash/sh ? Или тут без perl ?
Временное изменение кодировки в консоли
Модератор: Модераторы разделов
-
KiWi
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
Re: Временное изменение кодировки в консоли
О, боже...
iconv
iconv
-
dr-evil
- Сообщения: 159
- ОС: Fedora 18
Re: Временное изменение кодировки в консоли
консоле кодировка глючит жесткоко
локаль генерить пробовали?
сам на эти грабли натыкался
Анализ подозрительных файлов тут
Все что вы скажете может быть использовано как баян.
Jabber-конференция: sysadmins.ru на conference.jabber.ru - всем добро пожаловать!
Все что вы скажете может быть использовано как баян.
Jabber-конференция: sysadmins.ru на conference.jabber.ru - всем добро пожаловать!
-
Devilguard
- Сообщения: 11
- ОС: FreeBSD
Re: Временное изменение кодировки в консоли
Вообщем не знаю как у вас. У меня происходит так, что при наборе русского текста в koi8 он вставляет соверешенно не те буквы после использования delete/backspace. После ввода символа он вставляет предыдущий удаленный символ 
Кроме того с koi8 MC выглядит мягко говоря неработельно. Вместо линий псевографики там появляются другие символы. Поэтому установить koi8 по дефолту - не выход.
Кроме того с koi8 MC выглядит мягко говоря неработельно. Вместо линий псевографики там появляются другие символы. Поэтому установить koi8 по дефолту - не выход.
-
rm_
- Сообщения: 3340
- Статус: It's the GNU Age
- ОС: Debian
Re: Временное изменение кодировки в консоли
Если надо отредактировать файл в windows-1251, а перекодировать iconv'ом в UTF и обратно не охота, я делаю так:
Работает отлично. (mousepad - это GUI текстовый редактор, вместо него можно подставить всё, что угодно.)
Вам, соответственно, надо будет устанавливать LANG в "ru_RU.KOI8-R". Если не помогает, и сыплются сообщения о "Falling back to default locale ("C")", проверьте, что в /etc/locale.gen есть строчка ru_RU.KOI8-R KOI8-R и выполните locale-gen. Это всё по опыту в Linux, как в BSD - не знаю.
Код: Выделить всё
export LANG="ru_RU.CP1251"
mousepad file.txtРаботает отлично. (mousepad - это GUI текстовый редактор, вместо него можно подставить всё, что угодно.)
Вам, соответственно, надо будет устанавливать LANG в "ru_RU.KOI8-R". Если не помогает, и сыплются сообщения о "Falling back to default locale ("C")", проверьте, что в /etc/locale.gen есть строчка ru_RU.KOI8-R KOI8-R и выполните locale-gen. Это всё по опыту в Linux, как в BSD - не знаю.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Временное изменение кодировки в консоли
$ LANG=ru_RU.cp1251 luit vim /файл/в/кодировке/cp1251
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог