C'è un modo per rilevare automaticamente quando uno schermo è disconnesso?


20

Sto eseguendo Ubuntu su un Dell Latitude con gli ultimi driver Nvidia. Fondamentalmente quello che voglio è quando disconnetto il mio display esterno che tutto ritorna a quello principale senza dover cambiare ogni volta la configurazione.

Qualsiasi aiuto è il benvenuto!


Hai provato sudo xrandr --autodopo una modifica?
Popinou,

Risposte:


11

Prima installa disper , quindi scarica autorandr e segui queste istruzioni:

  • Quando il monitor esterno è sganciato , eseguire il seguente comando nel terminale:

    auto-disper.sh --save undocked
    
  • Quando il monitor esterno è ancorato e configurato come desiderato (con le impostazioni del server Nvidia X), eseguire:

    auto-disper.sh --save docked
    
  • Provare:

    auto-disper.sh --change
    

    con monitor agganciato e sganciato. Dovrebbe rilevare lo stato e modificare la configurazione.

  • Infine, fai una scorciatoia da tastiera perauto-disper.sh --change

Ho provato a creare uno script che lo eseguisse ogni 3 secondi, quindi funziona il riconoscimento automatico, ma uso troppa risorsa. Spero che possa aiutarti!


1
Questo progetto è stato unito in autorandr ed è disponibile solo per far funzionare i collegamenti. Si prega di controllare autorandr. github.com/wertarbyte/autorandr
belacqua

1
disper non è nei repository 10.10. È disponibile come ppa: launchpad.net/~disper-dev/+archive/ppa
belacqua

1

Questa è una limitazione di Nvidia Twinview su Linux. Il driver open source funzionerà come previsto (anche se perderai l'accelerazione 3D e Compiz).


1

Sono nella stessa situazione. Uso un laptop che a volte è collegato al mio monitor esterno. Quando lo è, di solito voglio usare solo questo monitor (perché l'ho collegato anche a una tastiera e un mouse esterni).

Quello che ho scoperto è che se hai un file chiamato .xprofile , viene chiamato ogni volta che il display viene inizializzato (da X.org?). Ecco il contenuto del mio file. Come puoi vedere, l'ho adattato da qui .

Quello che dovresti fare è salvarlo in ~ / .xprofile e quindi renderlo eseguibile ( chmod + x .xprofile ). Controlla come vengono chiamati i tuoi monitor interni ed esterni: esegui xrandr senza argomenti. Mie sono VGA1 e LVDS1 rispettivamente. L'ultima cosa è impostare la variabile EXTERNAL_RES sulla risoluzione nativa del monitor esterno.

Ora all'avvio, verrà utilizzato il monitor collegato se è collegato. La parte difficile è l'automazione (come rimuovere il cavo mentre Ubuntu è in esecuzione). Non ho trovato un'ottima soluzione per questo, ma sembra che il passaggio a una console virtuale e viceversa faccia il trucco (Ctrl-Alt-F1 e poi Ctrl-Alt-F7). È un po 'più veloce che scorrere tutte le possibilità con il tasto Fn (che a volte rovina anche il display).


1

Usa disper . Dopo averlo installato, potresti voler creare due scorciatoie:

  1. Per passare alla visualizzazione extrnal alla massima risoluzione: CTRL + E -> disper "max" -S
  2. per tornare al display principale: CTRL + P -> disper "max" -s

0

Puoi sempre premere Fn+ F8dopo aver scollegato il monitor. Questo probabilmente lo cambierà di nuovo.


Non funziona sul mio computer. I tasti FN non fanno nulla. Sai cosa potrebbe essere?
Diego,

@Diego per me solo usando F8 ha funzionato bene. senza usare il tasto funzione insieme.
Kapad

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.