Aivar
Т.е. не устанавливали системную локаль.
Кстати, сейчас вас устраивает, что она английская? Расово правильно (и удобнее) будет установить родную национальную.
Впрочем, хозяин-барин.
Всмысле, ставить русскую локаль? У меня и оболочка то вся на английском, мне русификация ни к чему, главное чтоб вот таких косяков не было :)
Aivar
forthgate
Я ставил arch на разные машины, и везде была одна и та же проблема с этим промптом
Значит ставили не по тому гайду.
https://wiki.archlinux.org/index.php/Installation_guide#Localization
Да, мой косяк, locale-gen я выполнял, а на locale.conf благополучно забивал
vasek
forthgate
Косяк был в локали
Это просто в данном случае.
А вообще такое возможно - backspace может удалить всю строку и не зависимо от локали (кирилица или латиница) - это возможно при неправильном написании prompt, когда readline не знает сколько символов было выведено на экран и сколько было перехвачено при выходе терминала.
Например, проверьте для эксперимента упрощенный вариант …. PS1='\[\e[0;32m —>\e[m ' … стерется вся строка.
Это хорошо описано и даже, если не ошибаюсь, прописано в man, правда не явно.

PS - убрал жирный шрифт, а то неправильно выводит —

Да, я в первую очередь PS1 ковырял, а в локаль заглянуть не догадался. Мне интересно, что за значение такое LANG=C, и почему оно стояло по дефолту, когда я настраивал локаль
UPD:
Косяк был в локали, поставил LANG="en_US.UTF-8", проблема решилась
vs220, спасибо за наводку!
UPD:
Косяк был в локали, поставил LANG="en_US.UTF-8", проблема решилась
vs220, спасибо за наводку!
locale -a
C
POSIX
en_US.utf8
ru_RU.utf8

locale

LANG=C
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=

$SHELL
/bin/bash

bashrc
PS1='\[\e[1;32m\][\u@\h \W]\$\[\e[0m\]
По сути то же самое, просто раскрасил, когда эксперементировал с решением проблемы

setxkbmap -print

xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwerty)" };
        xkb_types     { include "complete"      };
        xkb_compat    { include "complete"      };
        xkb_symbols   { include "pc+us+ru:2+inet(evdev)+group(alt_shift_toggle)"        };
        xkb_geometry  { include "pc(pc101)"     };
};

Я ставил arch на разные машины, и везде была одна и та же проблема с этим промптом
Решил вынести в отдельную тему, так как вопрос не связан непосредственно с русским языком в консоли
Вопрос собственно такой, как решить проблему с тем, что если в консоли написав что-то по русски, захочешь удалить, то стираются бэкспейсом не только кириллица, но и сам промпт? Уже долго не могу найти ответ. Косяк как в tty, так и в эмуляторе терминала проявляется.
В bashrc переменная PS имеет вид PS1='[\u@\h \W]\$ '
Проблема есть только при наличии в строке ввода кириллицы, с латиницей такого нет.
Aivar
Дикость какая-то. Покажите:
$ grep PS ~/.bashrc

PS1='[\u@\h \W]\$ '
Я пробовал кастомные прописывать параметры, не помогало - латиницу не стирает, кириллицу удаляет вместе с частью промпта
Вопрос собственно такой, как решить проблему с тем, что если в консоли по ошибке было написано по русски, то стираются бэкспейсом не только кириллица, но и сам промпт? Уже долго не могу найти ответ. В консоли русский язык не установлен (может быть проблема в этом?), в KDE есть. Соотвтственно, когда в эмуляторе терминала пытаюсь удалить кириллицу, стирается и промпт.

UPD:
В tty кириллицу установил, естественно, это никак не повлияло на мою проблему. Сколько раз ставил Arch на разные машины, всегда с этой проблемой сталкилвался.