5

Я пытался понять это - цель состоит в том, чтобы прокрутить горизонтально на экране GNU. (Чтобы избежать уродливого переноса строк в результате выполнения запросов mysql CLI.)

Если вы делаете:

screen -h 5000 # 5000 lines history
Ctrl-a r # to disable horizontal wrap
mysql -u user -p
SELECT * FROM db.big_fat_table LIMIT 500;
Ctrl-a [ # to enter scroll (copy) mode

Теперь вы можете прокручивать вверх и вниз с помощью Ctrl-b и Ctrl-d соответственно. Но как вы прокручиваете вправо и влево?

2 ответа2

4

Я не думаю, что отключение опции wrap делает то, что вы думаете. Вот что показывает моя справочная страница для опции wrap :

wrap [on|off]

Sets  the  line-wrap setting for the current window.  When line-wrap is
on, the second consecutive printable character output at the last  col-
umn  of  a  line  will  wrap to the start of the following line.  As an
added feature, backspace (^H) will also wrap through the left margin to
the previous line.  Default is ‘on’.

Это низкоуровневая функция терминала, не связанная с горизонтальной прокруткой.

Однако у less есть функция, которая может вам помочь, ключ -S позволяет вам прокручивать файл влево и вправо с помощью клавиш со стрелками влево и вправо. Если вы просматриваете файл результатов с длинными строками, это может быть очень полезно.

1

Насколько я знаю, экран не выполняет горизонтальную прокрутку. Экран в основном эмулирует аппаратный терминал, а горизонтальная прокрутка не является типичной функцией аппаратных терминалов.

Вы можете выполнять свои запросы в буфере M-x shell в Emacs. Переменная truncate-lines управляет переносом длинных строк или нет. Когда длинные строки не переносятся, Ctrl+PgUp или Ctrl+x, < прокрутка влево и Ctrl+PgDn или Ctrl+x, > прокрутка вправо.

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