7

Я все время использую программу screen командной строки в Linux и просматривал справочную страницу, но не нашел ответа на это (хотя, возможно, я просто пропустил это):

То, что я хочу сделать, это иметь одну команду, которая разделяет текущий регион, вкладки в новый регион и открывает новый экран в нем. Я надеялся, что есть какой-то способ перейти в командный режим (двоеточие) и сделать что-то вроде split; focus down; screen но это не работает. Есть идеи? Возможно ли связать серию команд с одной привязкой C-a ?

3 ответа3

6

Вы также можете расположить некоторые файлы следующим образом:

~/.myscreenmacro:

split
focus down
screen

~/.screenrc:

bind e source $HOME/.myscreenmacro

Это немного понятнее, чем другие способы.

6

Ты пытался:

register s ^aS^i^ac
bindkey ^a,, process s

Из глубины экрана руководства:

зарегистрировать строку ключа [-e кодировка]

Сохраните указанную строку в ключе регистра. Кодировка строки может быть указана с помощью опции -e. Смотрите также команду "вставить".

а также:

процесс [ключ]

Заполните содержимое указанного регистра в очередь ввода экрана. Если аргумент не указан, вас попросят ввести имя регистра. Текст анализируется так, как если бы он был набран с клавиатуры пользователя. Эта команда может использоваться для привязки нескольких действий к одному ключу.

3

Команда eval для экрана удобна для создания таких макросов:

screen -X bind e eval split 'focus down' screen

Команды, ожидающие аргументы (например, focus down), должны быть заключены в кавычки (одинарные или двойные).

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