Sto installando openbox sul mio laptop con Linux Mint 13. Voglio che il mio tasto BLOC MAIUSC funga da tasto di controllo aggiuntivo. Ho inserito le impostazioni richieste nel mio ~/.Xmodmap
file e l'ho verificato eseguendo
xmodmap ~/.Xmodmap
Funziona correttamente
Tuttavia, quando accedo nuovamente alla mia sessione di openbox, questi cambiamenti chiave non sono presenti. L'esecuzione del xmodmap
comando sopra lo fa funzionare di nuovo, ma voglio che accada automaticamente all'avvio.
La cosa interessante è che ho aggiunto un zenity
comando di prova come segue al mio ~/.config/openbox/autostart
file
zenity --info --text=Hello
Ciò produce una piccola finestra di dialogo ed esce solo dopo la chiusura della finestra di dialogo.
Ora, quando accedo nuovamente alla mia sessione di openbox, il tasto BLOC MAIUSC funge da tasto Ctrl, fino a quando la finestra di dialogo zenity non viene chiusa. Una volta chiusa la finestra di dialogo, il BLOC MAIUSC torna al suo comportamento predefinito.
Non ho trovato nulla su questo con Google, quindi sto chiedendo aiuto qui. Ragazzi avete qualche idea su cosa potrebbe andare storto?
Aggiornare:
Ho cercato di capirlo e nei miei esperimenti ho copiato il mio /usr/bin/xmodmap
file /usr/bin/xmodmap_
e sostituito il /usr/bin/xmodmap
file con il seguente script bash
#!/bin/bash
{
echo '-------'
date
echo xmodmap "$@"
} >> ~/xmodmap-calls
exec /usr/bin/xmodmap_ "$@"
Quindi, ogni volta che viene eseguito uno script dannato sul sistema xmodmap
, lo conosco.
Con questo, ricollego e trovo solo una voce nel mio ~/xmodmap-calls
file, che è quella che esegue my ~/.Xmodmap
, che è prevista. Quindi, ho pensato che non è un xmodmap
che sta sovrascrivendo i miei cambiamenti.
Successivamente, un po 'di googling mi ha fatto conoscere il setxkbmap
comando, che apparentemente può anche fare la stessa cosa. Ho sostituito anche quel file eseguibile, simile a xmodmap sopra. E ho ricevuto il comando del colpevole!
setxkbmap -option terminate:ctrl_alt_bksp
Non ho assolutamente idea di quello che fa, ma dopo l'esecuzione xmodmap ~/.Xmodmap
(che ha applicato correttamente le mie impostazioni), se eseguo il comando sopra, le mie modifiche vengono ripristinate! Modifica : questo si sta rivelando davvero divertente. Solo un setxkbmap
comando senza argomenti, sovrascrive felicemente le mie modifiche con il xmodmap ~/.Xmodmap
comando.
Ora ho due cose da capire, da dove viene setxkbmap
eseguito questo e perché e come risolverlo. Sto ancora indagando ma potrei seriamente usare un po 'di aiuto :)
Aggiornamento 2
Al diavolo xmodmap
. Non riesco a capire da dove setxkbmap
viene chiamato, ma ho immaginato un modo per usare il setxkbmap
comando per far sì che il mio Blocco maiuscole si comporti come Ctrl.
setxkbmap -option ctrl:nocaps
Poco prima di iniziare openbox. Funziona alla grande. Il tasto BLOC MAIUSC rimane funzionante come tasto Ctrl. xmodmap
non è mai eseguito.
Terrò aperta questa domanda in modo che qualcuno che conosce queste cose possa fornire alcune informazioni. Inoltre, per le persone che affrontano questo dopo di me :)
Aggiornamento 3
Ecco il mio contenuto .config/openbox/autostart
, come richiesto da Pedrosaurio.
#!/bin/bash
# Set the wallpaper.
feh --bg-scale /wall.png
# Set default brightness.
xbacklight -time 1 '=40'
# Compositing.
xcompmgr &
# The panel.
tint2 &
# Start a terminal too.
roxterm &
Questo non ha nulla a che fare con la tastiera, per quanto ne so. Inoltre, ecco lo script che avvia la mia sessione: (Run by lightdm)
#!/bin/bash
setxkbmap -option ctrl:nocaps
exec openbox-session
autostart
file?