4

Как я могу получить $PS1 содержащий символы рисования коробки?

Я запускаю Bash, если это имеет значение.

2 ответа2

9

Если у вас есть редактор с поддержкой UTF-8, вы можете напрямую вводить символы рисования блоков Юникод и геометрические фигуры . Что-то вроде:

PS1='┌─[blah][blah]
└─▪ '

Запишите это в файл с помощью вашего редактора, а затем отправьте файл в сеанс bash с помощью source ./myfile . Когда вы будете готовы сохранить его, добавьте его в свой файл .bashrc.

Другой, более старый способ сделать это - использовать escape-коды VT100 для переключения на набор символов рисования линий терминала. В этом случае ваша линия PS1 выглядит так:

PS1='\[\e(0\]lq\[\e(B\][blah][blah]
\[\e[0\]mq~\[\e(B\] '

\[ И \] сообщают bash, что эти части приглашения не печатаются, что помогает ему узнать, где находится курсор при редактировании из командной строки. \e(0 переключается на набор символов для рисования линий, а \e(B переключается обратно. В режиме рисования линий:

  • я ┌
  • д ─
  • м └
  • ~ это ▪

Вы можете создать полный список, выполнив в командной строке bash такие команды, как printf '\e(0 qwertyuiop \e(B \n' .

0

Вот очень хорошая выборка разных PS1:

Тот, который вы хотите, это:

Вам придется немного его изменить, но элементы есть. Я предлагаю вам посмотреть здесь для получения дополнительной информации:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .