Il menu Apple può essere spostato a destra di una quantità considerevole (errore di schermata)?

6

Il mio macbook pro è caduto e il lato sinistro dello schermo è ora nero. Quindi circa il 20% di esso non è visibile a causa della rottura. Sto lavorando su questo utilizzando un display esterno quando riesco a individuarne uno, ma in viaggio mi piacerebbe zoppicare fino a quando non posso permettermi la riparazione. Esiste una soluzione software per MacBook Pro (Retina, 15 pollici, metà 2014) in esecuzione macOS Sierra versione 10.12 per regolare la risoluzione o il posizionamento dello schermo per comprimerlo senza incasinare le proporzioni a sinistra in modo che copra solo la parte non rotta .

C'è un modo per regolare manualmente la risoluzione tramite underscan / overscan (che non è visibile a me per il mio display) o attraverso altri mezzi?

Sto provando a spingere tutto di lato in modo che sia visibile (incluso il menu del logo Apple in alto a sinistra)

Ho provato a scaricare DisableMonitor ma si attacca solo alle proporzioni e non mi consente di spingere il contenuto a destra. Tutti gli interruttori di risoluzione presumono che tutto lo schermo funzioni - ho bisogno di spostare il contenuto e non cambiare la scala dello schermo rimanente.

Fondamentalmente, il window manager può funzionare in modalità schermo diviso con niente di fondamentale nella parte sinistra?

    
posta Youssef Abdelmohsen 31.12.2016 - 09:21
fonte

1 risposta

4

Prova a utilizzare RDM per impostare quello che ti piace e il suo free / oss, quindi id lo consiglia. Puoi anche dare un'occhiata a QuickRes che può (probabilmente) fare lo stesso, ma non è gratuito. C'è anche SwitchResX puoi provare se ha qualcosa di cui potresti aver bisogno.

Aggiornamento: ho trovato anche questo qui chiamato risolutore e c'è un util brew di cui mi sono completamente dimenticato in botte cscreen , puoi provare ad installarlo con brew brew cask install cscreen e poi, ad esempio:

cscreen -d 32 -x 1420 -y 1080 -s b42e7f0 -r 59 -f

Puoi anche provare questo essenza: link Dopo aver pensato al tuo problema sembra essere in EDID. Inoltre, qual è la tua GPU nel MBP e cosa succede se cambi l'opzione overscan in pref?

Ho dimenticato che per applicare questa patch è necessario disabilitare la protezione dell'integrità del sistema di Apple con csrutil disable dalla modalità di salvataggio e poi nuovamente in macOS e (re) applicare lo script da gist eseguendolo con ruby: cd ~/Downloads; sudo ruby patch-edid.rb (presupponendo che download sia la cartella in cui l'hai salvato), quindi riavvia di nuovo.

Per riattivare la protezione dell'integrità del sistema devi csrutil enable dal terminale in modalità Rescue e riavviare, quindi controlla csrutil status se funziona di nuovo.

Quindi ... il modo in cui proverei a risolvere il tuo problema sarebbe:

  1. controlla le opzioni di risoluzione personalizzate in una delle app sopra,
  2. imposta una risoluzione personalizzata che non include la parte danneggiata dello schermo
  3. applica la risoluzione personalizzata.
  4. se l'applicazione non è fattibile tramite le preferenze di sistema personalizzate: iniettare EDID personalizzato tramite trifoglio durante l'avvio.
  5. assicurandoti che questa soluzione sia persistente dopo il riavvio

Aggiornamento 07/01/2017

Dopo alcuni scavi di base, ci sono le impostazioni native nei file .plist di default di macOS che descrivono le proprietà dello schermo. Non l'ho ancora provato, ma ci sono alcune impostazioni interessanti che descrivono le schermate, snippet:

UnmirroredOriginX = 1920; UnmirroredOriginY = 0; UnmirroredResolution = 1; UnmirroredWidth = 1920; Width = 1920;

Modificando quelli puoi impostare nuovi default di sistema senza troppa hacking di sistema e (forse) macOS dovrebbe applicarli a logout / reboot

Ricorda , devi disabilitare SIP (vedi sopra), altrimenti macOS non ti lascerà scrivere cambiamenti anche quando usi sudo

Ottieni i valori predefiniti di Window Server plist (elenco delle proprietà)

sudo defaults read /Library/Preferences/com.apple.windowserver.plist Dopo questo, defaults elencherà qualcosa di simile a questo:

{ DisplayAnyUserSets = ( ( { Active = 1; Depth = 4; DisplayID = XXX; DisplayProductID = XXX; DisplaySerialNumber = XXX; DisplayVendorID = XXX; ForceDeepMode = 0; Height = 1080; IOFlags = 34603015; LimitsHeight = 1080; LimitsOriginX = 0; LimitsOriginY = 0; LimitsWidth = 1920; MirrorID = 0; Mirrored = 0; Mode = { BitsPerPixel = 32; BitsPerSample = 8; DepthFormat = 4; Height = 1080; IODisplayModeID = "-2147459072"; IOFlags = 34603015; Mode = 0; PixelEncoding = "--------RRRRRRRRGGGGGGGGBBBBBBBB"; RefreshRate = 60; SamplesPerPixel = 3; UsableForDesktopGUI = 1; .....

La lettura è possibile senza sudo anche se non sono sicuro di come (e se) utente / amministratore NS differisca, ma l'elenco inizia con DisplayAnyUserSets . Per coerenza usa sudo per le operazioni di lettura / scrittura.

Per modificare un singolo nodo:

sudo defaults write /Library/Preferences/com.apple.windowserver.plist dot.path.PropertyName -int XXXX

-int è il tipo, può essere float , bool , int o ... [vedi documenti]. XXXX è un numero (intero in questo caso).

È fondamentalmente un documento XML che descrive le proprietà, prima di cambiarle però - assicurati di eseguirne il backup, quelle non sono Default utente ma Impostazioni predefinite del sistema. Leggi la documentazione per i dettagli- man defaults .

Modifica un singolo nodo, esci, vedi se qualcosa cambia, se non- riavvia. Ancora niente? Modifica 3 nodi, disconnetti / riavvia di nuovo e speriamo di vedere un cambiamento. Prova a modificare le note di Orgin / Width / Height di conseguenza per saltare l'area danneggiata.

Inoltre, aggiungi un account Admin aggiuntivo nel caso in cui qualcosa vada storto, così puoi accedere con diversi set predefiniti di default (bella dicitura heh, o.O)

    
risposta data 31.12.2016 - 14:21
fonte

Leggi altre domande sui tag