Я хочу написать сценарий оболочки, который будет делать то же, что и записанный макрос, и воспроизводить нажатия клавиш. В частности, для производства ctrl+а.
Это возможно?
Я пробовал такие вещи, как echo \0141
, но он просто говорит, что нет command \0141
.
Вы пробовали Expect?
В X11 вы можете использовать xdotool
.
xdotool key ctrl+a
Когда приложение запущено, оно часто сбрасывает характеристики терминала, так что нажатие ctrl-a может быть записано как ASCII 1. Или как серию нажатий клавиш.
В консоли ctrl-v ctrl-a вызывает отображение ^ A, и вы получаете
echo ^A | od -x
0000000 010a
где 01 - ctrl-a.
Итак, суть в следующем:
для того, чтобы что-то «записать», вы должны захватить настройки терминала, запомнить их, а затем сбросить их во время воспроизведения. В сценарии оболочки это означает анализ вывода
stty -a
и сохраняя его в формате, который позволяет вам отправить его обратно в stty во время воспроизведения, а затем отправить поток данных на терминал.
Это сильно усложняется драйверами терминалов, графическими интерфейсами и т. Д.
Чтобы получить "чистый" ctrl-a, используйте ctrl-v ctrl-a - только в консоли, не обязательно внутри редактора.
Со страницы документации, которую я сделал недавно
Серж довольно устал от стандартных шагов веб-разработки:
Поэтому он решил немного автоматизировать;)
Как он поправил ситуацию:
$ sudo apt-get install xdotool
$ mkdir Documents/scripts $ vim Documents/scripts/vim-browser-vim.sh [...] #!/bin/bash # Seach for a window having "Coding" in its title and send keys to save current document in vim xdotool search "Coding" key "Escape" "colon" "w" "Return" # Search for a window having "Studyladder" in its title, activate it and refresh (In chrome it's Ctrl+r) xdotool search "Studyladder" windowactivate key "Ctrl+r" # Seach for a window having "Coding" in its title and activate it xdotool search "Coding" windowactivate [...] chmod u+x Documents/scripts/vim-browser-vim.sh
В GNOME: Панель задач> Система> Настройки> Сочетания клавиш> Добавить
Имя: vim-browser-vim Команда: /home/srivest/Documents/scripts/vim-browser-vim.sh
Затем примените.
Затем назначьте сочетание клавиш по вашему выбору. Я использовал Ctrl + 2, просто чувствую, что палец ленивый и нужно потренироваться;)
Щелкните Закрыть.
Теперь вы можете запустить скрипт, нажав на ярлык!
Жизнь меняется! хе-хе ..
-
Исправление проблем:
Если скрипт не работает, то вам нужно искать:
PS: НЕ ПЫТАЙТЕСЬ СОЗДАТЬ ALT + TAB И ДРУГИЕ КОМБО КЛАВИШИ НА РАБОЧЕМ СТОЛЕ. Это действительно будет работать в консоли, но не при запуске системой ярлыков gnome. Я предполагаю, что этот код ярлыка запускает скрипт в его собственной песочнице и генерация таких вещей, как Alt + Tab для переключения приложения, не будет работать, поскольку в этой песочнице нет приложений. Часы потрачены впустую, пытаясь заставить это работать.