Como dividir verticalmente widescreen em dois espaços de trabalho virtuais no Ubuntu / Gnome?

21

Meu novo laptop tem uma tela grande de 16: 9, e eu estou achando difícil utilizá-lo completamente durante 95% do tempo em que não estou assistindo filmes em HD nele.

Eu gostaria de configurá-lo como uma espécie de tela dupla virtual dividindo a tela física em dois espaços de trabalho. Eu sei que eu poderia organizar minhas janelas manualmente, mas eu gostaria de ser capaz de maximizar uma janela e tê-la consumir apenas metade do monitor, e ter seus diálogos pop-up centrados em sua meia tela, esse tipo de coisa.

Existe algum tipo de plug-in disponível para fazer isso?

    
por David 02.03.2010 / 00:39

9 respostas

24

você pode usar o fakexinerama 'para alcançar o que deseja:

 Fake Xinerama is a replacement libXinerama library that instead 
 of querying the XServer reads ~/.fakexinerama and provides fake 
 information about Xinerama screens based on this file. It can be 
 used to fake a Xinerama setup even on computers with just one monitor
 or to fake Xinerama setup other than one specified in the XServer 
 configuration (e.g. making one screen smaller when using two same 
 screens). It's probably only useful for developers.
    
por 02.03.2010 / 07:00
16

Para expandir a dica de akira sobre o uso do "xinerama falso" de Lubos Lunak, aqui está exatamente como eu trabalhei para mim:

  1. Eu baixei este arquivo Xinerama.c do Site falso do Xinerama .
  2. Eu abri um terminal e naveguei para a pasta onde eu salvava o Xinerama.c.
  3. eu executei: gcc -O2 -Wall Xinerama.c -fPIC -o libXinerama.so.1.0.0 -shared
  4. Eu abri o nautilus (o gnome file explorer) como root, digitando Alt-F2 e depois:
    gksu nautilus
  5. Eu naveguei para / usr / lib, encontrei libXinerama.so.1.0.0 e fiz uma cópia de backup dele.
  6. Copiei o libXinerama.so.1.0.0 do meu diretório de download para o diretório / usr / lib, sobrescrevendo a cópia (que acabei de fazer no passo 5, para que eu possa desfazer isso mais tarde, se necessário). ) Para manter as coisas claras, foi útil notar que o tamanho do arquivo da versão "falsa" era maior (12,6 kb) do que a versão "real" que eu estava substituindo (8,6 kb).
  7. Eu criei um novo arquivo de texto chamado .fakexinerama no meu diretório / home / dave e coloquei nele: (com base no tamanho da minha tela física de 1440 x 900)% 2
    0 0 720 900
    720 0 720 900

O Fake Xinerama permite que você defina qualquer tipo de configuração de tela virtual desejada, mas eu só quero uma tela dividida vertical. Para conseguir isso em seu monitor, X por Y pixels de tamanho, olhando para o meu exemplo de arquivo, basta substituir 720 por X / 2 e substituir 900 por Y.

É isso. Eu entrei e voltei, e estava em funcionamento.

Obrigado novamente ao Lubos Lunak por criar este mod e ao akira por me apontar para ele.

    
por 02.03.2010 / 11:12
5

Existe agora um novo projeto chamado FakeXRandR que funciona realmente direto.

This is a tool to cheat an X11 server to believe that there are more monitors than there actually are. It hooks into libXRandR and libXinerama and replaces certain, configurable monitor configurations with multiple virtual monitors. A tool that comes with this package can be used to configure how monitors are split.

    
por 13.08.2015 / 18:33
2

Isso pode ser feito no XRandR 1.5 sem software adicional. Embora nem o fakexinerama nem o FakeXRandR tenham funcionado para mim no Xubuntu, esta solução finalmente dividiu a tela em dois.

Para dividir o monitor, faça o seguinte:

  1. Insira xrandr no terminal para verificar o nome da saída e a resolução atual da exibição que você deseja dividir.
    No meu sistema, o resultado foi:

    Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
    HDMI1 disconnected (normal left inverted right x axis y axis)
    HDMI2 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 509mm x 286mm
       1920x1080     60.00*+  50.00    59.94
       1920x1080i    60.00    50.00    59.94  
       1600x900      60.00  
       1280x1024     75.02    60.02  
       1152x864      75.00  
       1280x720      60.00    50.00    59.94  
       1024x768      75.08    60.00  
       800x600       75.00    60.32  
       720x576       50.00  
       720x576i      50.00
       720x480       60.00    59.94
       720x480i      60.00    59.94
       640x480       75.00    60.00    59.94
       720x400       70.08
    VGA1 disconnected (normal left inverted right x axis y axis)
    VIRTUAL1 disconnected (normal left inverted right x axis y axis)
    

    Podemos ver que meu monitor está conectado ao HDMI2 e a resolução está definida para 1920x1080.

  2. Adicione 2 monitores virtuais com o comando xrandr --setmonitor , garantindo que eles se sobreponham à sua exibição física e sejam colocados um ao lado do outro. A sintaxe do comando é (sem aspas):

    xrandr --setmonitor "monitor_name" "width_px"/"width_mm"x"height_px"/"height_mm"+"x_offset_px"+"y_offset_px" "output_name" 
    

    Para o meu sistema, foi:

    xrandr --setmonitor HDMI2~1 960/254x1080/286+0+0 HDMI2
    xrandr --setmonitor HDMI2~2 960/255x1080/286+960+0 none
    
  3. Enquanto o acima já configurou os monitores virtuais em meu sistema, as mudanças não foram aplicadas até que eu executei (parece atualizar xrandr):

    xrandr --fb 1921x1080
    xrandr --fb 1920x1080
    

Para persistir as alterações após a reinicialização, você deve executar esses comandos quando fizer o login. Você pode fazer isso anexando os comandos no final do arquivo ~/.profile .

    
por 21.01.2018 / 22:38
1

Eu encontrei um artigo sobre o omgubuntu que fornece um maneira muito fácil de imitar a funcionalidade do Windows Snap no Ubuntu / Gnome usando o painel de controle do Compiz. Esse Snap do Windows me deixa com um desktop widescreen, mas as próprias janelas podem ser facilmente encaixadas para preencher metade da tela. (Isso não é exatamente o que eu estava procurando originalmente, mas ainda é muito útil.)

    
por 24.05.2010 / 10:04
1

Eu tenho usado uma solução para essas perguntas há alguns anos usando o triplehead2go. Esse dispositivo mesclará até 3 monitores e reportará um enorme monitor para X.

Aqui está como dividir esse enorme monitor em espaços de trabalho virtuais no xorg.conf:

Section "Device"
    # ... your other settings above
    Option         "TwinViewXineramaInfoOverride" "1280x1024+0+0, 1280x1024+1280+1, 1280x1024+2560+0"
EndSection

E se você estiver usando os drivers nvidia mais recentes, esses drivers fornecerão sua própria extensão xinerama, que parece ignorar a configuração acima, portanto você deve adicionar o seguinte na seção de dispositivo:

Option         "NoTwinViewXineramaInfo" "true"
    
por 23.09.2012 / 06:30
0

Tenho quase certeza de que você pode fazer isso ajustando o arquivo X , mas eu não só porque eu provavelmente quebraria minha configuração de exibição. Se você tentar isso, tenha muito cuidado, backup você exibir config & Verifique se você tem um login alternativo que pode ser usado caso precise corrigir sua exibição.

Você pode obter mais satisfação de um gerenciador de janelas lado a lado, como xmonad , ou até mesmo executando compiz para controlar como as janelas abrem, fecham & telha.

    
por 02.03.2010 / 06:15
0

Funciona bem para mim:

Eu usei o seguinte para dois monitores (1280x1024 + 2048x1152):

3
0 0 1280 1024
1280 0 1024 1152
2304 0 1024 1152
    
por 06.01.2011 / 00:38
0

Se você estiver usando o compiz, poderá encontrar o seu plug-in de grade , uma solução mais fácil e flexível. Você pode configurá-lo para colocar uma janela na metade esquerda / direita da tela ao arrastá-la contra a borda.

Esse é o recurso Window Snapping descrito no artigo do qual David está vinculado. Além disso, você pode configurar atalhos e fazer uma janela ocupar a metade superior / inferior ou um quarto da tela.

O Xinerama causa um notável desempenho (uma vez que replica ações X em todas as telas do Xinerama) e não funciona bem com gerenciadores de janela compostos.

    
por 05.05.2012 / 14:56