Підказки Ncurses виглядають зламаними в PuTTY з Windows


12

Byobu виглядає дуже розбитим у PuTTY. Я вже виправив ключову проблему з картографуванням, але ця проблема не вказана на довільній сторінці чи навіть у Google:

Зламана консоль PuTTY

Зверніть увагу на неправильне розташування списку вікон, пошкоджене положення селектора, дублювання останнього вікна, випадкове a у верхньому правому куті та неправильно застосований параметр застосування. Цього ви не бачите, але останній варіант не можна вибрати.

Чи є якийсь варіант у PuTTY, який мені потрібно використовувати, щоб правильно це побачити?


Якщо хтось хоче створити puttyтег, це було б добре
TheLQ

У мене більше немає Windows, тому я не можу перевірити, але я б заглянув у параметри шаблонів PuTTY.
січня

1
Екран чудовий - просто потрібно мати гідний.screenrc
Марко Чеппі

Відповіді:


10

Налаштуйте шпаклівку для читання utf8. putty -> config -> window -> translation виберіть utf у "Отримані дані в ..." Це не проблема byobu, це проблема putty.

Дивіться також:


1
Домовились. Зауважте, що це вказано на сторінці byobu.1.
Дастін Кіркланд

8

Пов’язаний із Putty, я додав цю примітку до сторінки byobu (1) назад:

> PuTTY  users have reported that the
> F2, F3, and F4 shortcut keys are not
> working properly.  PuTTY sends the
> same escape sequences as the linux
> console for F1-F4 by default.  You can
> fix this problem in the PuTTY config,
> Terminal -> Keyboard -> Function keys:
> Xterm R6.

Побачити:


Я вже робив це, щоб зробити Бюбу принаймні корисним.
TheLQ

Тільки для підтвердження того, що я говорив вище для всіх, хто приходить разом: я мав на увазі, що знімок екрана вище - із шпаклівкою в режимі Xterm R6. Тож це не вирішення цієї проблеми.
TheLQ

3

Ubuntu використовує UTF-8 для свого терміналу, але, схоже, bybu використовує для нього меню "ISO-8859-1 (Західноєвропейська)". Ви можете встановити схему у вікні -> Переклад.

Наступний код я знайшов в Інтернеті, і я все ще задоволений ним. byobuможе бути більше варіантів, але мені це також подобається ( ~/.screenrc):

startup_message off
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B}%Y-%m-%d %{W}%c %{g}]%{w} %l'
shelltitle "$ |bash"
termcapinfo xterm ti@:te@
altscreen on

Примітка: для byobu shelltitle "$ |bash"потрібно видалити / коментувати, інакше byobu не працюватиме.


Штуті, здається, за замовчуванням ISO-8859-1:1998 (Latin-1, West Europe), так що це не проблема. Перехід на UTF-8 зробив термінал надзвичайно повільним, але фіксував меню. Що, мабуть, робити цей код? Нічого не змінив у byobu
TheLQ

За замовчуванням екран пропонує вам просто оболонку з декількома (невидимими) вкладками. За допомогою цього коду ви можете мати вишукану оболонку, на нижній частині якої є кольорова смужка [ computername ][ 0$ bash 1-$ bash (2*$bash) ][2010-12-11 16:24 ] 1.30 1.40 1.43.
Лекенштейн

0

Тож щоб Byobu виглядав добре в шпаклівці, ви насправді повинні внести дві зміни.

По-перше, це змінити клавіатуру на xterm-R6, як уже згадувалося, але по-друге, на вашій машині Linux запустіть команду як звичайний користувач: byobu-select-backendа потім виберіть варіант screen(зазвичай 2).

Слід працювати чудово зараз! Насолоджуйтесь!


0

Це працювало для мене (підходить для Putty - тимчасовий):

Вікно -> Переклад -> Віддалений набір символів: DEC-MCS

Для остаточного рішення у вашій заявці:

  1. додати у файл .bashrc (для поточного користувача) або додати etc / bash.bashrc (для всіх користувачів)

NCURSES_NO_UTF8_ACS = 1

  1. переконайтесь, що у вас є:

    • sudo apt-get -встановити ncurses

    • sudo apt-get install libncursesw5-dev

  2. Додати код: #include <locale.h> #include <ncurses.h> //change curses ------------------------------------- //add in main setlocale(LC_TYPE, "");

  3. Складіть додаток з -lncursesw , приблизно так:

    gcc -o arquivo arquivo.c -lncursesw

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.