Como eu inicio um processo para um monitor específico no Fluxbox?

2

Eu tenho uma configuração de quatro monitores. Como faço para iniciar um processo gráfico (ou seja, inkscape) para um monitor específico via terminal? IIRC envolve a configuração da variável DISPLAY. Como eu também listo quais valores possíveis essa variável pode conter?

OS é o Debian 8. O gerenciador de janelas é o Fluxbox.

    
por cat pants 28.03.2016 / 02:36

1 resposta

2

Muitos aplicativos suportam uma opção de linha de comando -geometry ou --geometry com um especificação de geometria como argumento. A geometria pode especificar o tamanho da janela, a posição ou ambos. Uma posição especifica indiretamente o monitor, já que todos os monitores são organizados em um plano. Para ver como seus monitores são organizados, execute xrandr ; uma indicação como “conectado 1600x1200 + 1600 + 0” significa que esse monitor tem 1600 pixels de largura, 1.200 de altura e seu canto superior esquerdo está na posição x = 1600, y = 0. Então, para lançar o xterm neste monitor (no canto superior esquerdo), eu poderia usar

xterm -geometry +1600+0

Isso não funciona com o inkscape: ele não suporta essa opção.

Com o inkscape, você não pode forçar facilmente uma instância específica a estar em uma posição específica. Mas você pode fazer seu gerenciador de janelas colocar janelas do inkscape em um monitor específico, ou em uma posição específica, se o gerenciador de janelas tiver esse recurso. O Fluxbox tem esse recurso. Ele é configurado por meio do arquivo de aplicativos ~/.fluxbox/apps .

[app] (name=inkscape)
[Head] {1}
[end]

Uma "cabeça" é um monitor em X que fala.

Isso pode não funcionar com alguns drivers de vídeo proprietários (pela última vez, o driver proprietário da Nvidia fingiu que a tela era uma única tela retangular em vez de relatar corretamente monitores separados). Se [Head] não funcionar para você, você pode usar [Position] para forçar a janela em uma posição específica.

    
por 03.04.2016 / 00:10