|
Linux, D-Bus, JavaScript - как? 🠗 (Asmody 07.02.2022 01:33) | ☑ | ||
---|---|---|---|---|
0
hogik
06.02.22
✎
22:33
|
Подскажите пожалуйста полным текстом программы.
Как выполнить на языке JavaScript: $ gdbus call --session --dest org.gnome.SettingsDaemon.Keyboard --object-path /org/gnome/SettingsDaemon/Keyboard --method org.gnome.SettingsDaemon.Keyboard.SetInputSource "0" |
|||
1
acht
06.02.22
✎
22:50
|
(0) > Подскажите пожалуйста полным текстом программы.
Дайте, пожалуйста воды попить, а то так есть хочется, что переночевать негде. В каком окружении ты собрался запускать JavaScript? nodejs? |
|||
2
hogik
06.02.22
✎
22:57
|
nodejs?
Нет. Хочется вставить вызов в HTML. А про воду попить... Фраза - жесть. |
|||
3
hogik
06.02.22
✎
23:01
|
||||
4
acht
06.02.22
✎
23:04
|
(3) Это вообще к чему?
|
|||
5
Сергиус
06.02.22
✎
23:24
|
(4)Видимо, то, что хочется получить)
|
|||
6
acht
06.02.22
✎
23:40
|
(0) Даже не затрагивая тем о песочницах и ограничениях браузера и об этичности похода переключения клавиатуры по желанию левой html странички, остается вопрос.
С чего ты взял, что раскладка 0 - это не китайская, например? |
|||
7
hogik
06.02.22
✎
23:51
|
(6)
«С чего ты взял, что раскладка 0 - это не китайская, например?»(с) Я это пытаюсь сделать сугубо :-) для своей домашней системы. Чтобы поставить стартовой страницы в Chromium. Т.к. меня достаёт запоминание последней выбранной раскладки. Хочу иметь Eng при вызове Chromium. А она в моей системе имеет 0 номер/порядка. |
|||
8
acht
06.02.22
✎
23:56
|
(7) > Я ... для своей ... меня ... в моей
Успехов тебе и семь футов под килем. Полный текст программы ему написать. |
|||
9
hogik
07.02.22
✎
00:00
|
8)
А за деньги можешь написать? :-) Или только бла-бла можешь? |
|||
10
Asmody
модератор
07.02.22
✎
01:33
|
(0) DBus из браузерного js недоступен.
(9) А за чрезмерную борзоту у нас можно укатить в бан на длительные сроки |
|||
11
tgu82
07.02.22
✎
08:32
|
(10) Нет тут никакой борзоты. Если есть возможность помочь Ходжику - почему бы не помочь.
Он между прочим за все эти годы много кому помог и много чего полезного для 7-ков сделал |
|||
12
tgu82
07.02.22
✎
08:33
|
(8) А что это так же сложно как операционку написать?
Сомневаюсь. Кто спецы могли бы и помочь. Это же не коммерция |
|||
13
hogik
10.02.22
✎
03:51
|
Задачку из (7) сообщения решил так.
В файле "chromium-browser.desktop" изменил строку: Exec="/home/vova/Рабочий стол/.RunInEng" 1 /usr/lib/chromium-browser/chromium-browser --disable-gpu --wm-window-animations-disabled --log-level=3 %U Поместил в каталог "/home/vova/Рабочий стол" скомпилированную программу: #include <sys/types.h> #include <sys/wait.h> #include <stdlib.h> #include <stdio.h> #include <errno.h> #include <unistd.h> #include <string.h> int main(int argc,char *argv[]) { int pid,status,ret; char buf[1024],com[1024]; if (argc<3) {printf("Usage: %s delay command [arg1 [arg2]...]\n",argv[0]); return EXIT_FAILURE;} pid=fork(); if (pid==0) {execvp(argv[2],&argv[2]); perror("execvp"); return EXIT_FAILURE;} strcpy(buf,"pidof "); strcat(buf,argv[2]); strcat(buf," 1>/dev/null 2>/dev/null"); strcpy(com,"gdbus call --session "); strcat(com,"--dest org.gnome.SettingsDaemon.Keyboard "); strcat(com,"--object-path /org/gnome/SettingsDaemon/Keyboard "); strcat(com,"--method org.gnome.SettingsDaemon.Keyboard.SetInputSource "); strcat(com,"0 1>/dev/null 2>/dev/null"); sleep(atoi(argv[1])); while(1) { ret=system(buf); if (ret==0) {system(com); break;}} return EXIT_SUCCESS;} |
|||
14
hogik
20.02.22
✎
00:38
|
Ещё одно решение задачки из (7) сообщения.
В конце файла /usr/bin/chromium-browser добавить символ & в строки: exec $LIBDIR/$APPNAME $CHROMIUM_FLAGS "$@" $LIBDIR/$APPNAME $CHROMIUM_FLAGS "$@" Добавить операторы после последнего fi: sleep 1 gdbus call --session --dest org.gnome.SettingsDaemon.Keyboard --object-path /org/gnome/SettingsDaemon/Keyboard --method org.gnome.SettingsDaemon.Keyboard.SetInputSource 0 1>/dev/null 2>/dev/null |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |