en couleurs inversées (voir le message précédent pour savoir comment procéder de façon simple avec une console, quand on ne sait pas attribuer un raccourcis clavier en mode console, par exemple depuis un shell csh en TTY, ou parce qu'on a d'autres priorités)
$ xcalib -invert -alter
les couleurs sont effectivement inversées et il faut mentalement faire cette distinction
ce qui n'est pas extraordinaire, mais demande toujours un effort de plus, là où l'objectif est la simplification pour transformer un calvaire en efficacité
si je tweete en mentionnant les codes couleurs pour qui ne voit pas l'image, le risque d'erreur judiciaire est accru ! #legaltech
$ xcalib -invert -alter
est donc nécessaire à nouveau pour revenir à l'état naturel
CONFIG_MAGIC_SYSRQ=y
l'option existe, sinon, vous êtes bon pour une recompilation du noyau en l'activant.
"
Excellent moyen de découvrir les joies de la compilation lorsqu'on a un travail critique et urgent à boucler. (mais pourquoi ce type a viré cette fonction du noyau standard !)
par curiosité, j'obtiens ceci :
dog /proc/sys/kernel/sysrq
bash: dog : commande introuvable
root@atilde:/home/a# cat /proc/sys/kernel/sysrq
438
(là vraiment on se dirait dans le cercle infernal de l'administration insaisissable, pour ceux qui ont déjà tenté d'obtenir un service de la justice par exemple, biais que les #legaltech devraient limiter)
un fichier de configuration /etc présent depuis le début sur notre système de base disponible en init 1 :
\o/
$ cat /etc/inputrc
# /etc/inputrc - global inputrc for libreadline
# See readline(3readline) and `info rluserman' for more information.
# Be 8 bit clean.
set input-meta on
set output-meta on
# To allow the use of 8bit-characters like the german umlauts, uncomment
# the line below. However this makes the meta key not work as a meta key,
# which is annoying to those which don't need to type in 8-bit characters.
# set convert-meta off
# try to enable the application keypad when it is called. Some systems
# need this to enable the arrow keys.
# set enable-keypad on
# see /usr/share/doc/bash/inputrc.arrows for other codes of arrow keys
# do not bell on tab-completion
# set bell-style none
# set bell-style visible
# some defaults / modifications for the emacs mode
$if mode=emacs
# allow the use of the Home/End keys
"\e[1~": beginning-of-line
"\e[4~": end-of-line
# allow the use of the Delete/Insert keys
"\e[3~": delete-char
"\e[2~": quoted-insert
# mappings for "page up" and "page down" to step to the beginning/end
# of the history
# "\e[5~": beginning-of-history
# "\e[6~": end-of-history
# alternate mappings for "page up" and "page down" to search the history
# "\e[5~": history-search-backward
# "\e[6~": history-search-forward
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
$if term=rxvt
"\e[7~": beginning-of-line
"\e[8~": end-of-line
"\eOc": forward-word
"\eOd": backward-word
$endif
# for non RH/Debian xterm, can't hurt for RH/Debian xterm
# "\eOH": beginning-of-line
# "\eOF": end-of-line
# for freebsd console
# "\e[H": beginning-of-line
# "\e[F": end-of-line
$endif
il suffit donc de modifier ce fichier pour ajouter notre fonction à un raccourcis clavier ?
DOCUMENTÉ PAR MAN !!!!!
man /etc/inputrc
"
/etc/inputrc ‐ global inputrc for libreadline # See read‐
line(3readline) and ‘info rluserman’ for more information.
Be 8 bit clean. set input‐meta on set output‐meta on
To allow the use of 8bit‐characters like the german umlauts,
uncomment # the line below. However this makes the meta key not
work as a meta key, # which is annoying to those which don’t need
to type in 8‐bit characters.
set convert‐meta off
try to enable the application keypad when it is called. Some
systems # need this to enable the arrow keys. # set enable‐key‐
pad on
see /usr/share/doc/bash/inputrc.arrows for other codes of arrow
keys
do not bell on tab‐completion # set bell‐style none # set bell‐
style visible
some defaults / modifications for the emacs mode $if mode=emacs
allow the use of the Home/End keys "[1~": beginning‐of‐line
"[4~": end‐of‐line
allow the use of the Delete/Insert keys "[3~": delete‐char
"[2~": quoted‐insert
mappings for "page up" and "page down" to step to the begin‐
ning/end # of the history # "[5~": beginning‐of‐history #
"[6~": end‐of‐history
alternate mappings for "page up" and "page down" to search the
history # "[5~": history‐search‐backward # "[6~": history‐
search‐forward
mappings for Ctrl‐left‐arrow and Ctrl‐right‐arrow for word mov‐
for non RH/Debian xterm, can’t hurt for RH/Debian xterm
"\OH": beginning‐of‐line # "\OF": end‐of‐line
for freebsd console # "[H": beginning‐of‐line # "[F": end‐of‐
line
$endif
"
de façon sommaire mais suffisamment exhaustive.
qui nous renvoie à sont our à nos locaux
man read‐line(3readline)
$ man read[tab]
read readelf readlinkat readproc
readahead readfile readmsg readproctab
readdir readline readmsg.mailutils readprofile
readdir_r readlink readom readv
introuvable donc
et
info rluserman
$ info rluserman
bash: info : commande introuvable
tout aussi introuvable
[encore une régression ??]
pour ceux qui voudraient aller plus loin sur les "key"
$ man key[tab]
keyboard key_encryptsession keyok_sp
keybound key_gendes keypad
keybound_sp keymaps key_secretkey_is_set
keyctl key_name key_setsecret
key_decryptsession keyname keytool
key_defined keyname_sp
key_defined_sp keyok
// notez qu'il vaut mieux quelques connaissances en C pour savoir quoi en faire
// mais que la doc est là
Faisant une pause, je décide de tester la commande mentionnée plus haut
$ bind '"\e[24~": history-search-backward'
désormais, la touche F12 agit comme les touches [flèche haut] et autres raccoucis emacs ou vi s'ils sont configurés
$ bind --help
bind: bind [-lpvsPSVX] [-m keymap] [-f nomfichier] [-q nom] [-u nom] [-r seqtouche] [-x seqtouche:commande-shell] [seqtouche:fonction-readline ou commande-readline]
Définit les associations de touches et les variables de « Readline ».
Associe une séquence de touches à une fonction « Readline » ou une macro, ou définit une
variable « Readline ». La syntaxe des arguments non-options est équivalente à celle
du fichier ~/.inputrc, mais doivent être transmis comme arguments uniques :
ex : bind '"\C-x\C-r" : re-read-init-file'.
Options :
-m keymap Utilise KEYMAP comme mappage clavier pendant la
durée de cette commande. Des noms de mappage valables
sont « emacs », « emacs-standard », « emacs-meta »,
« emacs-ctlx », « vi », « vi-move », « vi-command » et
« vi-insert ».
-l Affiche les noms de fonctions.
-P Affiche les noms et associations des fonctions.
-p Affiche les fonctions et associations dans une forme qui
peut être réutilisée comme entrée.
-S Affiche les séquences de touches qui invoquent des macros,
et leurs valeurs.
-s Affiche les séquences de touches qui invoquent des macros,
et leurs valeurs sous une forme qui peut être utilisée comme entrée.
-V Affiche les noms et valeurs des variables
-v Affiche les noms et valeurs des variables dans une forme qui peut
être réutilisée comme entrée.
-q nom-fonction Permet de savoir quelles touches appellent la fonction.
-u nom-fonction Enlève toutes les associations de touches liée à la fonction.
-r seqtouche Enlève l'association pour « seqtouche ».
-f nomfichier Lit l'association de touches depuis NOMFICHIER.
-x seqtouche:commande-shell Entraîne l'exécution de la commande-shell
lorsque « seqtouche » est entrée.
-X Liste les séquences de touches liées à -x et les commandes associées
sous une forme qui peut être réutilisée comme entrée.
Code de sortie :
« bind » renvoie 0 à moins qu'une option non reconnue ne soit donnée ou qu'une erreur survienne.
toujours par curiosité, j'essaie ceci :
$ bind '"\e[24~": xcalib -invert -alter'
qui est censé donc lier la touche [F12] à l'invocation de la commande xcalib qui inverse les couleurs de l'ensemble du système (euh, les TX aussi ? ils vont être contents s'il y en a)
rien ne se produit à l'appui de [F12]
ce n'est donc pas si simple.
juste au-dessus je vois qu'il y a une option -x de l'aide en ligne de bind traduite dans ma langue maternelle par un extraordinaire traducteur ! je décide donc de l'utiliser pour vérifier si sa traduction du C vers le français est compréhensible (oui car man bind est écrit en C)
su -c alias F12='bind -x \'\"\e[24~\": xcalib -invert -alter\'' games
donc, comment appliquer le résultat de
$ xcalib -invert -alter
non pas au système [global] mais à une application graphique [local],
à partir d'une commande en console ou mieux d'un fichier de configuration en mode texte ?
par exemple /proc/sys/kernel/sysrq (voir plus haut) ?
[^] # reverse: Xorg ou Kwin : framebuffer. xcalib, KDE, Kmail, man ou régression de code (dimanche)
Posté par Patrick Trauquesègues . En réponse au message kmail*reverseVideo: on ou comment afficher kmail en vidéo inversée ?. Évalué à -4.
Sommaire
[ http://linuxfr.org/autosatisfaction-réCURSIVE ]
exemple d'un code couleur visible à l'écran
https://twitter.com/PoliceNationale/status/1434120402104692739
en couleurs inversées (voir le message précédent pour savoir comment procéder de façon simple avec une console, quand on ne sait pas attribuer un raccourcis clavier en mode console, par exemple depuis un shell csh en TTY, ou parce qu'on a d'autres priorités)
$ xcalib -invert -alter
les couleurs sont effectivement inversées et il faut mentalement faire cette distinction
ce qui n'est pas extraordinaire, mais demande toujours un effort de plus, là où l'objectif est la simplification pour transformer un calvaire en efficacité
si je tweete en mentionnant les codes couleurs pour qui ne voit pas l'image, le risque d'erreur judiciaire est accru ! #legaltech
$ xcalib -invert -alter
est donc nécessaire à nouveau pour revenir à l'état naturel
on retrouve la même problématique ici pour l'attribution d'un raccourcis clavier à une commande concernant l'affichage (qui peut s'avérer utile si on se retrouve en noir sur noir ou blanc sur blanc, à moins de réaliser mentalement les opérations à effectuer, ce que fait font parfois les handicapés confrontés à des bugs dits mineurs)
https://qastack.fr/ubuntu/326282/how-to-link-a-custom-keyboard-shortcut-to-a-bash-script-in-ubuntu-13-04
la page fournit une méthode pour l'exemple de la commande
$ xbacklight -inc / -dec 10
https://qastack.fr/ubuntu/137117/how-do-i-launch-a-bash-script-using-a-keyboard-shortcut
la page https://qastack.fr E404 étant soit en rtavaux soit en mode regression... on peut imaginer ceci fourni par l'excellent unix.stackexchange.com :
https://unix.stackexchange.com/questions/171430/how-to-get-a-list-of-tcsh-shortcuts
% bindkey
pour découvrir la possibilité de raccourcis en mode console
ou même
https://wiki.archlinux.org/title/Keyboard_shortcuts_(Fran%C3%A7ais)
(ni en anglais, ni en ubuntu, mais avec une documentation exceptionnelle)
qu'il est possible d'attribuer des raccourcis claviers au plus bas niveau, celui du noyau.
"
Si la sortie de cette commande est:
Excellent moyen de découvrir les joies de la compilation lorsqu'on a un travail critique et urgent à boucler. (mais pourquoi ce type a viré cette fonction du noyau standard !)
par curiosité, j'obtiens ceci :
dog /proc/sys/kernel/sysrq
bash: dog : commande introuvable
root@atilde:/home/a# cat /proc/sys/kernel/sysrq
438
https://qastack.fr/ubuntu/147128/change-default-tty-shortcut
propose sa solution
"
Vous pouvez utiliser bindpour lier une clé à une fonction. Voici ce que j'ai fait:
et renvoie vers
https://www.techrepublic.com/article/find-and-bind-key-sequences-in-bash/
"
The next step is to bind that key sequence to a particular shell command. For example, you can bind [F12] to the "history-search-backward" shell command:
qui renvoie vers..
(là vraiment on se dirait dans le cercle infernal de l'administration insaisissable, pour ceux qui ont déjà tenté d'obtenir un service de la justice par exemple, biais que les #legaltech devraient limiter)
un fichier de configuration /etc présent depuis le début sur notre système de base disponible en init 1 :
\o/
$ cat /etc/inputrc
# /etc/inputrc - global inputrc for libreadline
# See readline(3readline) and `info rluserman' for more information.
il suffit donc de modifier ce fichier pour ajouter notre fonction à un raccourcis clavier ?
DOCUMENTÉ PAR MAN !!!!!
man /etc/inputrc
"
/etc/inputrc ‐ global inputrc for libreadline # See read‐
line(3readline) and ‘info rluserman’ for more information.
Be 8 bit clean. set input‐meta on set output‐meta on
To allow the use of 8bit‐characters like the german umlauts,
uncomment # the line below. However this makes the meta key not
work as a meta key, # which is annoying to those which don’t need
to type in 8‐bit characters.
set convert‐meta off
try to enable the application keypad when it is called. Some
systems # need this to enable the arrow keys. # set enable‐key‐
pad on
see /usr/share/doc/bash/inputrc.arrows for other codes of arrow
keys
do not bell on tab‐completion # set bell‐style none # set bell‐
style visible
some defaults / modifications for the emacs mode $if mode=emacs
allow the use of the Home/End keys "[1~": beginning‐of‐line
"[4~": end‐of‐line
allow the use of the Delete/Insert keys "[3~": delete‐char
"[2~": quoted‐insert
mappings for "page up" and "page down" to step to the begin‐
ning/end # of the history # "[5~": beginning‐of‐history #
"[6~": end‐of‐history
alternate mappings for "page up" and "page down" to search the
history # "[5~": history‐search‐backward # "[6~": history‐
search‐forward
mappings for Ctrl‐left‐arrow and Ctrl‐right‐arrow for word mov‐
ing "[1;5C": forward‐word "[1;5D": backward‐word "[5C": for‐
ward‐word "[5D": backward‐word "\[C": forward‐word "\[D":
backward‐word
$if term=rxvt "[7~": beginning‐of‐line "[8~": end‐of‐line
"\Oc": forward‐word "\Od": backward‐word $endif
for non RH/Debian xterm, can’t hurt for RH/Debian xterm
"\OH": beginning‐of‐line # "\OF": end‐of‐line
for freebsd console # "[H": beginning‐of‐line # "[F": end‐of‐
line
$endif
"
de façon sommaire mais suffisamment exhaustive.
qui nous renvoie à sont our à nos locaux
man read‐line(3readline)
$ man read[tab]
read readelf readlinkat readproc
readahead readfile readmsg readproctab
readdir readline readmsg.mailutils readprofile
readdir_r readlink readom readv
introuvable donc
et
info rluserman
$ info rluserman
bash: info : commande introuvable
tout aussi introuvable
[encore une régression ??]
pour ceux qui voudraient aller plus loin sur les "key"
$ man key[tab]
keyboard key_encryptsession keyok_sp
keybound key_gendes keypad
keybound_sp keymaps key_secretkey_is_set
keyctl key_name key_setsecret
key_decryptsession keyname keytool
key_defined keyname_sp
key_defined_sp keyok
// notez qu'il vaut mieux quelques connaissances en C pour savoir quoi en faire
// mais que la doc est là
Faisant une pause, je décide de tester la commande mentionnée plus haut
$ bind '"\e[24~": history-search-backward'
désormais, la touche F12 agit comme les touches [flèche haut] et autres raccoucis emacs ou vi s'ils sont configurés
$ bind --help
bind: bind [-lpvsPSVX] [-m keymap] [-f nomfichier] [-q nom] [-u nom] [-r seqtouche] [-x seqtouche:commande-shell] [seqtouche:fonction-readline ou commande-readline]
Définit les associations de touches et les variables de « Readline ».
toujours par curiosité, j'essaie ceci :
$ bind '"\e[24~": xcalib -invert -alter'
qui est censé donc lier la touche [F12] à l'invocation de la commande xcalib qui inverse les couleurs de l'ensemble du système (euh, les TX aussi ? ils vont être contents s'il y en a)
rien ne se produit à l'appui de [F12]
ce n'est donc pas si simple.
juste au-dessus je vois qu'il y a une option -x de l'aide en ligne de bind traduite dans ma langue maternelle par un extraordinaire traducteur ! je décide donc de l'utiliser pour vérifier si sa traduction du C vers le français est compréhensible (oui car man bind est écrit en C)
$ bind -x '"\e[24~": xcalib -invert -alter'
[12]
jour
[12]
nuit
[12]
jour
[12]
nuit
[12]
jour
[12]
nuit
[12]
jour
[12]
nuit
bon, mais ça ne résoud toujours pas le problème initial de l'application de cette fonctionnalité à une fenêtre en particulier,
qu'elle soit :
https://fr.wikipedia.org/wiki/Gestionnaire_de_fen%C3%AAtres
https://fr.wikipedia.org/wiki/Gestionnaire_de_fen%C3%AAtres#Gestionnaire_de_fen%C3%AAtre_par_pavage
ou simplement
https://www.linuxquestions.org/questions/linux-newbie-8/how-to-set-display-to-run-firefox-from-tty-799468/
su -c alias F12='bind -x \'\"\e[24~\": xcalib -invert -alter\'' games
donc, comment appliquer le résultat de
$ xcalib -invert -alter
non pas au système [global] mais à une application graphique [local],
à partir d'une commande en console ou mieux d'un fichier de configuration en mode texte ?
par exemple /proc/sys/kernel/sysrq (voir plus haut) ?
pour aller plus loin, disponible sur [12]nal :
https://linuxfr.org/users/postroutine/journaux/bash-et-les-raccourcis-clavier