forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.LINUX

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 17.08.2016, 16:41
Vova Uralsky
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Vova Uralsky написал(а) к All в Jan 15 00:24:26 по местному времени:

Нello All!

Задача заключается в перенаправлении STDOUT программы например в xterm. Примерно так, как это делает KeePassX. Предполагается сделать в openbox <keybind.. <action.. <command.. чтобы по комбинации клавиш отправлять вывод в фокусное окно.

Может есть что-то готовое? Или где бы почитать как это примено сделать? Желательно без использования GTK, Qt, итд...

Regards,
Vova

--- Msged/BSD 6.2.0
Ответить с цитированием
  #2  
Старый 17.08.2016, 16:41
Alexey Korop
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Alexey Korop написал(а) к Vova Uralsky в Jan 15 08:36:20 по местному времени:

Привет, Vova!

08.01.2015 в 00:24:13 Vova Uralsky написал к All:

VU> Задача заключается в перенаправлении STDOUT программы например в
VU> xterm. Примерно так, как это делает KeePassX. Предполагается сделать
VU> в openbox <keybind.. <action.. <command.. чтобы по комбинации клавиш
VU> отправлять вывод в фокусное окно.
Вопрос совершено непонятный. Возможно, что-то прояснится, если членораздельно расскажешь, в какой ситуации и зачем это нужно, и без ссылок на какую-то неизвестную программу.

С уважением, Alexey.

...В действительности всё совсем не так, как на самом деле.

--- FleetStreet 1.27.1
Ответить с цитированием
  #3  
Старый 17.08.2016, 16:41
Alexey Vissarionov
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Alexey Vissarionov написал(а) к Vova Uralsky в Jan 15 15:07:00 по местному времени:

Доброго времени суток, Vova!
08 Jan 2015 00:24:26, ты -> All:

VU> Задача заключается в перенаправлении STDOUT программы например в
VU> xterm. Примерно так, как это делает KeePassX. Предполагается сделать
VU> в openbox <keybind.. <action.. <command.. чтобы по комбинации клавиш
VU> отправлять вывод в фокусное окно. Может есть что-то готовое?

Есть.

VU> Или где бы почитать как это примено сделать?

`man pty`

VU> Желательно без использования GTK, Qt, итд...

Си, синьор.


--
Alexey V. Vissarionov aka Gremlin from Kremlin
gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii

... Рожденный ползать, уйдите со взлетной полосы!
--- /bin/vi
Ответить с цитированием
  #4  
Старый 17.08.2016, 16:41
Vova Uralsky
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Vova Uralsky написал(а) к Alexey Vissarionov в Jan 15 01:52:04 по местному времени:

Нello Alexey!

09 Jan 15 15:07, Alexey Vissarionov wrote to Vova Uralsky:

VU>> Задача заключается в перенаправлении STDOUT программы например в
VU>> xterm. Примерно так, как это делает KeePassX. Предполагается сделать
VU>> в openbox <keybind.. <action.. <command.. чтобы по комбинации клавиш
VU>> отправлять вывод в фокусное окно. Может есть что-то готовое?
AV> Есть.

Расскажи?

VU>> Или где бы почитать как это примено сделать?
AV> `man pty`

Если я хочу написать в поле ввода, например в формочке, отображкнной firefox, всё равно man pty? xterm я привёл только в качестве примера, а не ограничения.

VU>> Желательно без использования GTK, Qt, итд...
AV> Си, синьор.

Подробнее?

Regards,
Vova

--- Msged/BSD 6.2.0
Ответить с цитированием
  #5  
Старый 17.08.2016, 16:41
Vova Uralsky
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Vova Uralsky написал(а) к Alexey Korop в Jan 15 01:55:24 по местному времени:

Нello Alexey!

09 Jan 15 08:36, Alexey Korop wrote to Vova Uralsky:

AK> Вопрос совершено непонятный. Возможно, что-то прояснится, если
AK> членораздельно расскажешь, в какой ситуации и зачем это нужно, и без
AK> ссылок на какую-то неизвестную программу.

Чтобы не вдаваться в никому не нужные подробности... Допустим, я хочу набирая, например, текст в, например, LibreOffice Writer, вставить путём нажатия комбинации клавиш вывод, например, /bin/date. Чтобы это произошло так, как будто я это с клавиатуры набрал. То есть вваод консольной программы отправить в Xовое приложение. (прошу копипэйст из терминала не предлагать, смысл не в этом)

KeePassX я привёл в качестве примера, поскольку эта программа делает нечто аналогичное. (кто не знает) Это хранилка паролей, совместимая с виндовым KeePass. Эта программа умеет, например, "набрать", например, логин пароль в предыдущее активное окно. Мне показалось это неплохим примером, поскольку как считать вывод я в курсе, а вот как отправить его в Xовое приложение, пока не разобрался...

Можно, конечно, заняться реверсинженирингом, почитать исходники KeePassX, найти заветное место, узнать волшебное слово, почитать про него документацию и написать собственную программу, которую уже, вполне возможно, кто-то написал. Задавая здесь вопрос я надеялся сэкономить как минимум шаг реверсинжениринга. Да... Гуглёж ничего удобоваримого к сожалению не дал. Подробности того, как не работало то что я нашёл, будут, судя по всему, мало кому интересны.

Regards,
Vova

P.S. Если мой русский кому-то показался странным, прошу за это прощения.

--- Msged/BSD 6.2.0
Ответить с цитированием
  #6  
Старый 17.08.2016, 16:41
Alexey Vissarionov
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Alexey Vissarionov написал(а) к Vova Uralsky в Jan 15 12:55:00 по местному времени:

Доброго времени суток, Vova!
10 Jan 2015 01:52:04, ты -> мне:

VU>>> Задача заключается в перенаправлении STDOUT программы например в
VU>>> xterm. Примерно так, как это делает KeePassX.

А ну-ка, рассказывай подробно: что за ХранИжопуКс такое?

VU>>> Предполагается сделать в openbox <keybind.. <action.. <command..
VU>>> чтобы по комбинации клавиш отправлять вывод в фокусное окно.
VU>>> Может есть что-то готовое?
AV>> Есть.
VU> Расскажи?

Даже в мануал ткнул...

VU>>> Или где бы почитать как это примено сделать?
AV>> `man pty`
VU> Если я хочу написать в поле ввода, например в формочке, отображкнной
VU> firefox, всё равно man pty? xterm я привёл только в качестве примера,
VU> а не ограничения.

Это уже совершенно другое: ты, насколько я понимаю, хочешь ввести в окне то, что высрала в stdout другая программа где-то хрен пойми где. Штатных средств делать подобную хрень в X11 нет - ввод возможен либо из InputDevice, либо из primary selection (опять же, по мышовому щелчку).

Наверное, можно что-то сколхозить через nested X server, но я этот вопрос не изучал, ибо от всякоразной гуйни далек.


--
Alexey V. Vissarionov aka Gremlin from Kremlin
gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii

... Хочу много знать, готов скоро состариться
--- /bin/vi
Ответить с цитированием
  #7  
Старый 17.08.2016, 16:41
Vova Uralsky
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Vova Uralsky написал(а) к Alexey Vissarionov в Jan 15 14:14:42 по местному времени:

Нello Alexey!

10 Jan 15 12:55, Alexey Vissarionov wrote to Vova Uralsky:

VU>>>> Задача заключается в перенаправлении STDOUT программы например в
VU>>>> xterm. Примерно так, как это делает KeePassX.
AV> А ну-ка, рассказывай подробно: что за ХранИжопуКс такое?

Уже-уже... Не читал, но осуждаю?

VU>>>> Предполагается сделать в openbox <keybind.. <action.. <command..
VU>>>> чтобы по комбинации клавиш отправлять вывод в фокусное окно.
VU>>>> Может есть что-то готовое?
AV>>> Есть.
VU>> Расскажи?
AV> Даже в мануал ткнул...

Только мимо темы промазал...

VU>>>> Или где бы почитать как это примено сделать?
AV>>> `man pty`
VU>> Если я хочу написать в поле ввода, например в формочке, отображкнной
VU>> firefox, всё равно man pty? xterm я привёл только в качестве примера,
VU>> а не ограничения.
AV> Это уже совершенно другое: ты, насколько я понимаю, хочешь ввести в
AV> окне то, что высрала в stdout другая программа где-то хрен пойми где.
AV> Штатных средств делать подобную хрень в X11 нет - ввод возможен либо
AV> из InputDevice, либо из primary selection (опять же, по мышовому
AV> щелчку).

Вобщем, придётся реверсинженирить, видимо...

AV> Наверное, можно что-то сколхозить через nested X server, но я этот
AV> вопрос не изучал, ибо от всякоразной гуйни далек.

Странно, из твих высказываний про всякие QtGTKbla-bla у меня создалось другое впечатление.

Regards,
Vova

--- Msged/BSD 6.2.0
Ответить с цитированием
  #8  
Старый 17.08.2016, 16:41
Alexey Korop
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Alexey Korop написал(а) к Vova Uralsky в Jan 15 16:22:38 по местному времени:

Привет, Vova!

10.01.2015 в 01:55:12 Vova Uralsky написал к Alexey Korop:

AK>> Вопрос совершено непонятный. Возможно, что-то прояснится, если
AK>> членораздельно расскажешь, в какой ситуации и зачем это нужно, и без
AK>> ссылок на какую-то неизвестную программу.

VU> Чтобы не вдаваться в никому не нужные подробности... Допустим, я хочу
VU> набирая, например, текст в, например, LibreOffice Writer, вставить
VU> путём нажатия комбинации клавиш вывод, например, /bin/date. Чтобы это
VU> произошло так, как будто я это с клавиатуры набрал.
man xdotool, искать keystroke.
VU> То есть вваод
VU> консольной программы отправить в Xовое приложение.
Непонятно, что это значит, но это и не нужно. Нужно вывод программы использовать в командной строке xdotool, а это делает легко любой шелл. Стандартное средство (работает в любом шелле) - обратные кавычки, расширение bash - $(...).
Вот только надо иметь в виду, что openbox - это не шелл, так что проще всего составить шелл-скрипт, а из openbox его вызывать. Да отлаживать его так будет проще.
VU> P.S. Если мой русский кому-то показался странным, прошу за это
VU> прощения.
Язык нормальный, вопрос был странный. Вопрос зачем-то содержал в себе подход к решению (перенаправление вывода в окно), но подход неправильный, а точнее, бессмысленный.

С уважением, Alexey.

...В действительности всё совсем не так, как на самом деле.

--- FleetStreet 1.27.1
Ответить с цитированием
  #9  
Старый 17.08.2016, 16:41
Vova Uralsky
Guest
 
Сообщений: n/a
По умолчанию Перенаправление вывода в X

Vova Uralsky написал(а) к Alexey Korop в Jan 15 10:33:14 по местному времени:

Нello Alexey!

10 Jan 15 16:22, Alexey Korop wrote to Vova Uralsky:

VU>> набирая, например, текст в, например, LibreOffice Writer, вставить
VU>> путём нажатия комбинации клавиш вывод, например, /bin/date. Чтобы это
VU>> произошло так, как будто я это с клавиатуры набрал.
AK> man xdotool, искать keystroke.

О, спасибо! Работает!

VU>> То есть вваод
VU>> консольной программы отправить в Xовое приложение.
AK> Непонятно, что это значит, но это и не нужно. Нужно вывод
AK> программы использовать в командной строке xdotool, а это делает легко
AK> любой шелл. Стандартное средство (работает в любом шелле) - обратные
AK> кавычки, расширение bash - $(...).

:-)

AK> Вот только надо иметь в виду, что openbox - это не шелл, так что
AK> проще всего составить шелл-скрипт, а из openbox его вызывать. Да
AK> отлаживать его так будет проще.

Программа, результаты которой мне надо "набирать", уже является шеллскриптом. Я специально взял в качестве примера /bin/date, чтобы исключить вопросы типа "а кто его знает что там такое выделывает твой неизвестный скрипт". И это действительно роли не играет.

VU>> P.S. Если мой русский кому-то показался странным, прошу за это
VU>> прощения.
AK> Язык нормальный, вопрос был странный. Вопрос зачем-то содержал в
AK> себе подход к решению (перенаправление вывода в окно), но подход
AK> неправильный, а точнее, бессмысленный.

На самом деле мне действительно надо перенаправить STDOUT в окно, через какую $опу это придётся делать, вопрос возможностей.

Regards,
Vova

--- Msged/BSD 6.2.0
Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 07:40. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot