xsel и DISPLAY переменная

indeviral
А что это за wm/de?
скорей всего кеды, путь знакомый...
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
p00st0ta, цитируй только нужное, а не все.
Для проверки всегда начинают с самого простого, рекомендую для проверки hotkey вместо своей сложной команды прописать просто beep - если про бибикает, значит дело в переменных окружения, если не пробибикает, дело в написании hotkey
Ошибки не исчезают с опытом - они просто умнеют
добавил в скрипт такие строки:

os.environ['XAUTHORITY']='/home/user/.Xauthority'
os.environ['DISPLAY']=':0.0'
os.environ['DBUS_SESSION_BUS_ADDRESS']='unix:path=/run/user/1000/bus'

В нопрофиль режиме это помогло. Без этих строк была ошибка:

bash-5.0$ python translate
xsel: Can't open display: (null)
: Inappropriate ioctl for device
Traceback (most recent call last):
  File "translate", line 19, in <module>
    raw_text = subprocess.check_output(['xsel', '-o', '*.txt'], shell=True, universal_newlines=True)
  File "/usr/lib/python3.7/subprocess.py", line 395, in check_output
    **kwargs).stdout
  File "/usr/lib/python3.7/subprocess.py", line 487, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['xsel', '-o', '*.txt']' returned non-zero exit status 1.

хоткеи работают, скрипт с notify работает нормально, проблема в программе xsel походу.

Заголовок темы можно менять на xsel и DISPLAY переменная
p00st0ta
хоткеи работают, скрипт с notify работает нормально
Ну и приведи для истории рабочее решение, возможно кому-нибудь и пригодится ... (комментарии по мере необходимости)

p00st0ta
Заголовок темы можно менять на xsel и DISPLAY переменная
Меняет автор, редактируя 1-ый пост ... при необходимости ставится РЕШЕНО
Ошибки не исчезают с опытом - они просто умнеют
vasek
p00st0ta
хоткеи работают, скрипт с notify работает нормально
Ну и приведи для истории рабочее решение, возможно кому-нибудь и пригодится … (комментарии по мере необходимости)
Рабочего пока нет. Я имел ввиду что часть скрипта указанная в Теме (уже изменил на более актуальную), как оказалось, работает нормально.
p00st0ta, ваши посты ацки тяжело читать на маленьком экране!
vasek
p00st0ta, цитируй только нужное, а не все.
!!!
red
если я не ошибаюсь то тема не на своём месте
Согласен ...
p00st0ta
проблема в программе xsel походу
Если уж так хочется своего, а не использовать готовое, рекомендую посмотреть как это (работа с буфером обмена) выполнено у Shatur
Ошибки не исчезают с опытом - они просто умнеют
#!/bin/bash
_key=""
_opt="key=$_key&srv=tr-text&text=$(xsel -o | sed -e 's/\r/ /g;s/&/ /g;s/;/ /g)&lang=ru&options=1"
_text=$(wget -qO- https://translate.yandex.net/api/v1.5/tr.json/translate --post-data="$_opt" | jq '.text | .[]')
notify-send "#Translate:" "$_text"
Ошибки в тексте-неповторимый стиль автора©
indeviral
#!/bin/bash
_key=""
_opt="key=$_key&srv=tr-text&text=$(xsel -o)&lang=ru&options=1"
_text=$(wget -qO- https://translate.yandex.net/api/v1.5/tr.json/translate --post-data="$_opt" | jq '.text | .[]')
notify-send "#Translate:" "$_text"

спасибо ман, я уже сам собирался свое пилить на bashe. Правда пока не работает, но начало есть.... Установил jq и норм. спасиб
p00st0ta
вывод &> log.txt дает пустой файл
проблема в программе xsel походу.
Та до xsel еще не дошло. У вас же в скрипте
print("test")
должен хотя бы "test" в лог файле быть, ну и дальше содержимое буфера обмена( print(raw_text))

p00st0ta
КАКИЕ переменные нужны
Тут вопрос чего ваш питон не наследует системные при запуске с хоткея
Запуск скрипта test
#!/usr/bin/env python
import os
print(os.environ)
у меня дает почти одинаковый вывод что при запуске из терминала что при записи той же команды в хоткей компиза
python '/home/oleg/Рабочий стол/test' &> /tmp/envtest.txt

Или КДЕшные заморочки или что другое
 
Зарегистрироваться или войдите чтобы оставить сообщение.