LINUX.ORG.RU

Как вставить выхлоп команды в окно с фокусом


0

1

Воспользовался скриптом, который позволяет отправлять звуковой файл в гугл и получать оттуда распознанный текст. Как можно сделать так, чтобы результат команды вставлялся текстом в окно, если оно поддерживает такое? KDE.

★★

Ответ на: комментарий от Valdor

Есть такое:

kdialog --msgbox <text>
kdialog --textbox <file> [width] [height]

Через pipe не работает, кдешники - виндузятники. Через переменную или файл можно подставить.

Можно еще в буфер обмена затолкнуть и средней кнопкой мыши вставить куда угодно:

echo hello | xclip

anonymous ()
Ответ на: комментарий от anonymous

Черт... Похоже, ты не понял задачу. Допустим, открыт KWrite (или Gedit, если так понятнее). Я запускаю команду, переключаю фокус на редактор, и выхлоп команды появляется в редакторе.

Valdor ★★ ()
Ответ на: комментарий от Valdor

без действий мышкой

Shift+Ins эквивалентен нажатию средней кнопки мыши. Да. я понимаю, что это не «автоматом», но хотя бы к мыши тянуться не нужно

// Подписался на тему

dexpl ★★★★★ ()
Последнее исправление: dexpl (всего исправлений: 1)
Ответ на: комментарий от Valdor

Смотри xautomation и xmacro. Но это всё виндузятские извращения.

anonymous ()
Ответ на: комментарий от anonymous

Хорошо. Как только выполняется определенная команда, её выхлоп вставляется в текстовое поле того окна, на котором фокус.

Valdor ★★ ()
Ответ на: комментарий от Valdor

А как ты введешь команду в терминал, не переключаясь на него? Ведь если переключишься, фокус уйдет из того окна.

vurdalak ★★★★★ ()

Это странная задача. Откуда скрипт узнает что ты уже выбрал нужное окно, и не промахнулся?

Если скрипт вызывается по хоткею, то можно попробовать написать такую обёртку:

#!/bin/sh
out=`echo 111`       # тут нужная команда
sleep 1
xdotool type "$out"  # требуется xdotool

Вызывать в уже выделенном окне. В течении секунды лучше отжать все клавиши-модификаторы которые будут использоваться для её вызова.

anonymous ()
Ответ на: комментарий от Valdor

выхлоп вставляется в текстовое поле того окна, на котором фокус

А если в нем нет текстового поля?

kss ★★★★★ ()

На винфак! За такой виндовый ламеризм надо банить без раздумия. Еще гентушник, что показательно.

anonymous ()
Ответ на: комментарий от kss

А если в нем нет текстового поля?

Хы, имеется ввиду — а если у ТСа нету глаз? ) .

ТС я точно понял что ты хочешь. Используй xdotool. Я и сам это использую для вставки некоторых (динамичных) данных в любые поля в любых окнах.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.