Wer startet xbindkeys?

8

Wenn ich meinen Computer neu xbindkeysstarte , wird er gestartet, funktioniert aber nicht richtig. Wenn ich es töte und dann manuell starte nohup xbindkeys, funktioniert es einwandfrei. Ich denke, es wird gut funktionieren, wenn ich es in meine .xsessionrcDatei lege . Aber etwas anderes startet es bereits beim Booten, was stört.

Ich suchte rekursiv /etcfür xbindkeysohne Erfolg.

Espressofa
quelle
1
Haben Sie Computer in einem Netzwerk?
horIzoN
Nicht sicher was du meinst. Viele Systeme befinden sich im selben WiFi-Netzwerk wie ich. Es gibt jedoch nur einen Benutzer (mich) des Systems, auf den ich mich beziehe, und es ist immer der physische Zugriff auf die Maschine. Kein SSHing oder so.
Espressofa
OK. Wenn Sie die Dateifreigabe aktiviert haben und sich im Netzwerk ein Ubuntu-Computer befindet xbindkeys, wird dieser möglicherweise gleichzeitig mit Ihnen ausgeführt. Aber ich bin sicher, dass die Lösung von @ Mik funktionieren wird.
horIzoN
Ich habe ein ähnliches Problem. Wenn ich starte, xbindkeys -swird die richtige Liste der Befehle angezeigt, aber sie funktionieren nicht alle - ich führe sie aus killal xbindkeys && xbindkeysund dann funktionieren sie. Funktionieren Ihre xbindkeys überhaupt nicht? Oder funktionieren einige Befehle?
Benubird
Ich habe genau das gleiche Problem (2 Jahre nach dem letzten Kommentar und am 15.10.). Xbindkeys startet automatisch, aber meine Schlüssel sind nicht gebunden. Wenn ich es töte und neu starte, funktioniert es. Ich habe versucht, das Startskript durch just zu ersetzen xbindkeys, aber es macht das Gleiche.
Lasse Dahl Ebert

Antworten:

7

Ich habe festgestellt, dass xbindkeysautomatisch gestartet wird, wenn Sie eine .xbindkeysrcin Ihrem Home-Ordner oder in einem Systemordner wie haben /etc. Daher muss es nach der Installation normalerweise nicht als separates Startelement hinzugefügt werden.

Dies wird in der Datei gut erklärt /etc/X11/Xsession.d/98xbindkeys, die bei jeder normalen Installation aus dem Ubuntu-Paket generiert wird. Hier ist ein Ausschnitt aus der Datei, der durch Ausführen generiert wurde cat /etc/X11/Xsession.d/98xbindkeys:

This file is sourced by Xsession(5), not executed.

PROG="/usr/bin/xbindkeys"
NOAUTO="${HOME}/.xbindkeys.noauto"

This file autostarts xbindkeysrc if the user (or system) has a config
for it AND does NOT Have a .xbindkeys.noauto in his homedir.

[The rest of the file is a script]

Die einfache Lösung besteht also darin, die Anweisungen zu notieren und eine Datei mit dem Namen .xbindkeys.noautoin Ihrem Home-Verzeichnis abzulegen. Anschließend xbindkeyswird Ihre x-Sitzung nicht gestartet, und Sie können einen alternativen Starteintrag für sie entsprechend Ihren spezifischen Anforderungen erstellen.


quelle
Großartig, ich werde das ausprobieren. Haben Sie Ideen, warum der automatisch gestartete Fehler auftreten könnte? Verwendet es ein anderes $ HOME oder einen anderen Benutzer oder etwas anderes?
Espressofa
@Espressofa Ich bin nicht sicher, warum der automatisch gestartete fehlschlagen sollte; Es scheint in Precise (12.04) zu funktionieren und xbindkeysist in Precise und Quantal dieselbe Version.
Es ist komisch - der Prozess läuft, aber das Drücken meiner gebundenen Tasten scheint keine Wirkung zu haben. Es wird gestartet als /usr/bin/xbindkeys /home/MY_USERNAME/.xbindkeysrc- das ist der Speicherort xbindkeysund meiner Konfigurationsdatei. Wenn ich mit nur xbindkeysstarte, funktioniert es gut.
Espressofa
OK, ich habe jetzt eine .xbindkeys.noauto und sie startet nicht wie erwartet automatisch. Ich habe xbindkeys &meine .xsessionAkte eingefügt. Dieser Prozess läuft, funktioniert aber nicht. Wenn ich in einem Terminal laufe kill xbindkeys; xbindkeys &, funktioniert es.
Espressofa
@Espressofa Versuchen Sie, xbindkeysals Benutzer- Startelement hinzuzufügen , anstatt es in Ihr Element einzufügen .xsessionrc.
0

Ich hatte das gleiche Problem, als ich versuchte, die Touchpad-Ein- / Aus-Taste auf meinem HP G60-530US-Laptop zum Laufen zu bringen. Wenn ich mich anmelde, wird xbindkeys ausgeführt. Manchmal funktioniert es, xbindkeys zu beenden und xbindkeys neu zu starten. xbindkeys zu töten, xbindkeys-config 'apply, save & exit' auszuführen funktionierte, war aber ziemlich umständlich.

Der Versuch von Miks Vorschlag schien nicht zu funktionieren, da ich bereits einen 'xbindkeys' in meinen Gnome-Session-Eigenschaften (gsp) hatte. Ich erinnerte mich dann daran, dass es oft nicht funktioniert, nur den Befehl in gsp einzugeben. Stattdessen klicke ich auf die Schaltfläche "Durchsuchen" und navigiere zu / usr / bin / xbindkeys, um den Schlüssel festzulegen. Abgemeldetes und protokolliertes Backing sowie die Ein- / Aus-Tasten des Maus-Touchpads funktionieren jetzt ordnungsgemäß.

HP G60-530US spezifisch:

  1. relevante Bits von ~/.xbindkeysrc(der Rest der Datei ist Standard):

    #TouchpadOff - works
    "synclient TouchpadOff=1"
       0x1008ffb1
    
    #TouchpadOn - works
    "synclient TouchpadOff=2"
       0x1008ffb0
    
  2. .xbindkeys.noauto ist im Home-Profil des Benutzers vorhanden:

    ~/.xbindkeys.noauto
    
  3. Aktiviert /usr/bin/xbindkeyswurde mithilfe der Startanwendungseinstellungen von gnome-session-properties festgelegt. Ein wichtiger Teil (für mich) war das Festlegen des Befehls über die Schaltfläche "Durchsuchen" in der Benutzeroberfläche.

    Name: xbindkeys
    Command: /usr/bin/xbindkeys
    Comments: Touchpad on/off
    
NoOp
quelle
0

Ich hatte ein Problem mit den gleichen Symptomen: xbindkeys scheinen gestartet worden zu sein, aber es hat keine Verknüpfung funktioniert. Nach dem manuellen Neustart von xbindkeys von einer Shell aus funktionierte es wie erwartet.

Mein Problem war, dass die mit den Verknüpfungen verknüpften Befehle von meiner Shell-Konfiguration abhingen (beim Versuch, einen Ruby-Befehl zu starten, aber Ruby wurde mit asdf geladen, das in meiner .zshrc-Quelle enthalten ist).

Die Lösung bestand darin, den Startbefehl xbindkeys von xbindkeysnach zu ersetzen /usr/bin/zsh -c "xbindkeys"und auch das asdf-Setup von .zshrcnach zu verschieben .zshenv, da letzteres geladen wird, auch wenn kein tty vorhanden ist.

Der Startbefehl konnte unter "Startanwendungen" in meinem Ubuntu 16.04 bearbeitet werden.

Lasse Dahl Ebert
quelle
-1

Ich habe dieses Problem behoben, indem ich xbindkeys beim Start im Terminal ausgeführt habe! Fügen Sie Terminal = true in Ihre .desktop-Datei ein.

Dimitrios Charalampidis
quelle
Dies gibt keine Antwort auf die Frage. Um einen Autor zu kritisieren oder um Klärung zu bitten, hinterlassen Sie einen Kommentar unter seinem Beitrag. Sie können jederzeit Ihre eigenen Beiträge kommentieren. Sobald Sie einen ausreichenden Ruf haben, können Sie jeden Beitrag kommentieren .
Volker Siegel
@VolkerSiegel Ich glaube, das ist eine Antwort, der Antwortende sagt, es hat das Problem für ihn gelöst.
Seth
@VolkerSiegel Es ist in der Tat eine Antwort und kein Kommentar! Ich habe Anweisungen bereitgestellt (Terminal = true zur .desktop-Datei hinzufügen, die xbindkeys beim Start öffnet, normalerweise unter ~ / .config / autostart), aber aufgrund der Art des Problems glaube ich, dass es sich um einen berechtigungsbezogenen Fehler in xbindkeys handelt, den ich nicht kann Stellen Sie sicher, dass es für alle funktioniert!
Dimitrios Charalampidis