только есть ведь ужеЗнаю, но это-же от скуки. Откопал набросок 2015 года и решил оптимизировать.
На мургеЕсть ещё это (http://distro.ibiblio.org/puppylinux/sources/).
но код грязный с историческими пластами с 2012гА не проще "мы наш, мы новый мир построим"?
Есть ещё это.не понял что именно
А не проще "мы наш, мы новый мир построим"?Может и проще, но почти весь функционал нужен
не понял что именноТам исходники.
почти весь функционал нужен"Огласите весь список, пожалуйста"
Отдельный гемор - wtУ меня такого нет.
"Огласите весь список, пожалуйста"ntf --help
У меня такого нет.Полезная чтука, но сложно добиться работы с совсем всеми ДЕ
ntf --helpНет уж, давай подробно, что, почему и зачем.
Полезная чтукаЧем??
Нет уж, давай подробноntf --test - все покажет подробно
Полезная чтукаОбозначить начало и конец длинных операций , чтобы юзер не думал, что не работает или зависло
Чем??
ntf --test - все покажет подробноЭто надо pra загружать, а мне в нём некомфортно
Отдельный гемор - wtУ меня Google выдаёт по "arch linux wt" WebToolkit. У тебя самопал что-ли?
У тебя самопал что-ли?Да.
код грязный с историческими пластами с 2012грождалось долго и в муках
рождалось долго и в мукахОно и видно. А если начать так?
program=$1
$program &
msg_work &
pid_msg=$!
while [ `pidof $program` ]; do sleep 1; done
kill pid_msg
msg_out
не работаетДа
#!/bin/sh
n=0
until [ $n = 10 ]; do echo -n .; n=`expr $n + 1`; sleep 1; done
#!/bin/sh
./prog &
pid_p=$!
echo $pid_p
echo `pidof prog`
export NTF='<window decorated="false">
<frame Инфо><hbox>
<pixmap>
<input file>./wait.gif</input>
</pixmap>
<text>
<label>Процесс пошёл, ждите отстоя пива.</label>
</text>
</hbox></frame>
</window>'
gtkdialog -G +250+50 --program=NTF &
pid_m=$!
echo $pid_m
while [ "$pid_p" = "`pidof prog`" ]; do sleep 1; done
echo выход
kill $pid_m
./msg -i -t 3 Финита ля комедиа!
цикл заканчивается, не начавшисьПроверил, так и есть. Вчера работало. Мистика какая-то
Мистика какая-тоС этим функционалом именно так. Самое интересное - когда начнете делать под нотификаторы (http://wiki.puppyrus.org/soft/notify#%D0%B4%D0%B5%D0%BC%D0%BE%D0%BD%D1%8B) разных ДЕ
Проверил, так и есть. Вчера работало. Мистика какая-токак то было, из за каментов в скрипте что-то не работало,
Вчера работало.Сегодня проверил, работает как часы. Ничего не менял, так как pfs
видимо причина в этомДа.
# pidof seamonkey
927
# pidof /usr/bin/seamonkey
#
# pidof `basename /usr/bin/seamonkey`
927
Собрал в модуль1. msg -i -t 3 - выводит -t в сообщение
msg -i -t 3 - выводит -t в сообщениеЧто интересно, только в pra, в Richy нет.
Фокус переносится на сообщение. Т.е. "вырываете из рук"Да. Тогда эту затею надо бросать.
Не тратьте время.я просто тренируюсь :) уровень скрипто-писательства приподнять свой
тренируюсьТренируйтесь с пользой для всех (http://forum.puppyrus.org/index.php?topic=21769.0) ;)
Фокус переносится на сообщение. Т.е. "вырываете из рук"Теперь понял, что меня так раздражало в pra.
но пока не получается hboxПолучилось :)
-w тоже пользуется
w - сообщение с кнопкой ОКНе понимаю смысла. Понятно, вопрос или предупреждение с кнопками "Да" и "Нет", но сообщение с подтверждением?
Пробую написать на gtk (си)Будет чужеродно смотреться на ДЕ со своим нотификатором
Перезагрузился в pra и посмотрел. Что-то, мне кажется, много лишнего.Все ключи используются. Лишнее - только исторические слои с conky и т.п.
notify-sendДля работы notify-send требуется libnotify и демон notifyd (или его аналог). Само сообщение отправляется через dbus. Не слишком ли для вывода нескольких строчек? Это как поехать на дачу через Пекин по транссибу.
Будет чужеродно смотреться на ДЕ со своим нотификаторомЕсть свой нотификатор - пользуйся на здоровье. А если нет?
Все ключи используются.Приму к сведению. Но пока есть то, что есть.
msg-gtk2-64 -q "Это вопрос требующий подтверждения"
Не слишком ли для вывода нескольких строчек?Это стандарт. Практически необходимый компонент любого ДЕ
msg-gtk2-64Чем это лучше yad\gtkdialog? Проблема с "вырыванием мыши" актуальна только для всплывающих сообщений
Это стандарт. Практически необходимый компонент любого ДЕНавязывание заведомо сложного и тяжёлого стандарта - это и есть прогрессивизм в чистом виде.
Т.е. опять "свободное творчество" без общественнополезного результатаДа, творчество. Мне интересен сам процесс. А если под ногами не будешь путаться, может и результат будет.
# msg-gtk2-64 -h
Notification GPL2 DdShurick
Version 0.0b
Usage: ntf [n N sec] [eiqw] "text message"
-e | --error "message"
-i | --info "message"
-q | --question "question yes no"
-w | --warning "warning yes no"
-n | --timeout N sec
которые реализованы в пра уже несколько лет как.Ключевое слово как реализованы.
чтобы доработать имеющееся для общей пользы или переписать совместимоНе пытайся меня эксплуатировать. Не выйдет.
live@prar-1811:/usr/bin$ mc
live@prar-1811:/usr/bin$ ./notify-send
No summary specified.
Для продолжения нажмите любую клавишу...
live@prar-1811:/usr/bin$ ./notify-gtk2
Ошибка сегментирования
Для продолжения нажмите любую клавишу...
Да, эту защиту забыл сделать, но notify-gtk2 --help можно было посмотреть? Почему из mc, а не из консоли?Кодlive@prar-1811:/usr/bin$ ./notify-gtk2
Ошибка сегментирования
--help можно было посмотреть? Почему из mc, а не из консоли?- добрался до компьютера :) ; увидел-скачал-подключил ; попробовал на скору руку.
Иконку показывает в натуральный размер.смаштабировать? под размер окошка
смаштабировать? под размер окошкаНе получается. GtkWidget *image масштабируется, но если иконка больше, показывает только часть.
код можно глянуть? крытиковать не будуМожно. Критики не боюсь.
if (argc == 1) { usage(); exit(1); }"Птичка не вылетает", в смысле, не показывает usage.
?
"Птичка не вылетает", в смысле, не показывает usage.не понял
int opt, t=3000, yesno;// дефолтное время показа - 3 секБыло, потом убрал, когда экспериментировал с yesno. Думаю, можно убрать yesno, совпадает с t == 0;
Переместил ниже, иначе ошибается при одном аргументе - пустом ключе:Кодif (argc == 1) { usage(); exit(1); }
argc -= optind;
argv += optind;
optind = 0;
if (argc == 0) { usage(); exit(1); }
Ключ -s | --start "не вытанцовывается"Получается только отдельной программой
switch(pid=fork()) {
case -1:
exit(1); // Если ошибка
case 0:
system (run); // Запускаем отслеживаемую программу
kill(getppid(),15); // Убиваем окно
raise(15);
default:
gtk_init(&argc, &argv); // Запускаем окно
/*Здесь идёт описание окна */
gtk_main();
}
Получается только отдельной программойВстроил код в notify-gtk2. Sfs, теперь критикуй (функционал, дока) ;)
notify-gtk2пока не глядя - нужен вариант gtk3
for gtk3 "sed -i 's/2/3/' Makefile"
но не проверял.Проверил. Не собирается. Причина - отсутствие в gtk3 vbox и hbox. Под gtk3 надо переписывать так:
gtk_box_new (GtkOrientation orientation, gint spacing);
Делать для gtk3?да
да
загружено 2 раз.И тишина... ?
не привязано к dbus.Я его специально игнорирую, ибо "не нужен и ни разу".
ТК независимого dunstПрежде чем что-то утверждать. читай README
Dependencies :
- dbus
- libxinerama
- libxrandr
- libxss
- libxdg-basedir
- glib
- pango/cairo
- libgtk-3-dev
Информационные - смысл заморачиваться с Си...Лучше заморачиваться с кучей чужого, да?
В ДЕ со своим нотификаторомНадо пользоваться своим.
Внешний вид мне не понравилсяТвои поделки мне аналогично.
Я его специально игнорирую, ибо "не нужен и ни разу".Как проги выведут свои сообщения? Например deadbeef
ТК независимого dunsthttps://www.archlinux.org/packages/community/x86_64/dunst/
Лучше заморачиваться с кучей чужого, да?Проще сделать на yad
Проще сделать на yadОтнюдь не всегда оно работает.
ТК независимого dunstУбил день на этот dunst, ничем не лучше xpupsay.
ничем не лучше xpupsayлучше как минимум , стандартной работой через dbus