1 votes

Comment créer une icône sur le lanceur pour désactiver le clavier + faire pivoter l'écran ?

J'ai un PC 2 en 1 avec Ubuntu. Je me demandais s'il y a un moyen d'écrire une commande qui active et désactive un clavier interne, et fait pivoter l'écran de 90 degrés vers la gauche (ou la droite), et de la placer dans un lanceur sur la gauche. Existe-t-il un moyen de faire cela ?

Ce serait bien, si je pouvais juste taper dessus pour désactiver le clavier (+ touchpad) et faire pivoter l'écran de 90 degrés, et taper une fois de plus pour revenir à la bonne orientation avec le clavier fonctionnel (+touchpad).

1voto

Jacob Vlijm Points 78990

script + lanceur pour faire tourner l'écran. et basculer le clavier, en une seule étape

Le script ci-dessous va à la fois

  • faire pivoter (basculer) votre écran (à gauche ou à droite)
  • désactiver (basculer) le clavier que vous avez défini comme étant désactivé

    enter image description here

    enter image description here

Le script

#!/usr/bin/env python3
import subprocess

# --- set the name of the screen, and the rotate direction and the id of your keyboard below
screen = "DVI-I-1"
rotate = "left"
disable = ["9", "14"]
# ---

matchline = [
    l.split() for l in subprocess.check_output(["xrandr"]).decode("utf-8").splitlines()\
    if l.startswith(screen)
    ][0]
s = matchline[
    matchline.index([s for s in matchline if s.count("+") == 2][0])+1
    ]

newset = ["normal", "1"] if s == rotate else [rotate, "0"]
subprocess.call(["xrandr", "--output", screen, "--rotate", newset[0]])
for item in disable:
    subprocess.call(["xinput", "set-prop", item, "Device Enabled", newset[1]])

Mode d'emploi

  1. Copiez le script dans un fichier vide, enregistrez-le sous le nom de rotate.py

  2. Copiez le lanceur ci-dessous dans un fichier vide, enregistrez-le en tant que rotate.desktop

    [Desktop Entry]
    Exec=python3 /path/to/rotate.py
    Icon=preferences-desktop-keyboard
    Name=Rotate & Disable Keyboard
    Type=Application

    Dans la ligne Exec= remplacez le /path/to/rotate.py par le véritable chemin vers le rotate.py script. Faites le .desktop fichier exécutable . Il affichera une icône comme :

    enter image description here

  3. Maintenant, vous devez découvrir deux choses :

    a. le nom de votre écran (celui que vous voulez faire pivoter) : Run in a terminhal :

    xrandr

    Cherchez une ligne avec "connected" dedans. La première chaîne est le nom d'écran, ressemblant à l'exemple dans le script. (pourrait aussi être VGA-1 ou quelque chose comme ça)

    b. Le site id de votre clavier, celui qui doit être désactivé. Exécutez dans un terminal la commande :

    xinput -list

    comme décrit dans 本答 .

  4. Entrez les éléments trouvés dans l'en-tête du script :

    # --- set the name of the screen, and the rotate direction and the id of your keyboard below
    screen = "DVI-I-1"
    rotate = "left"
    disable = ["9"]
    # ---

Maintenant que vous avez terminé, vous pouvez soit utiliser le .desktop directement depuis votre bureau ou le déplacer vers ~/.local/share/applications et faites-le glisser vers le lanceur depuis Dash.

Si vous choisissez cette dernière option, notez qu'après avoir fait pivoter l'écran, l'icône ne répondra pas pendant environ 7 secondes.

Amusez-vous bien !

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X