Quero pressionar uma combinação de teclas em um gerenciador de janelas compatível com o EWMH e ter um terminal abaixo da minha janela redimensionada do Chromium

0

Esta é uma das coisas que parece que pode ter uma solução simples, mas consome bastante tempo quando você começa a investigar o PyTile, o Xnee e outros.

Eu sei, eu deveria apenas usar um gerenciador de janelas lado a lado etc., mas suponho que isso pode ser feito em um gerenciador de janelas compatível com o EWMH (como o OpenBox), e estou esperando que alguém já tenha uma solução funcional.

Ok, então eu quero pressionar uma combinação de teclas enquanto eu estiver em uma sessão do OpenBox (Lubuntu LXDE para ser mais preciso) e ter meu terminal aparecer abaixo da minha janela do Chromium (digamos ~ 60% Chromium e ~ 40% Terminal ).

    
por Erik 09.09.2012 / 10:18

1 resposta

1

Escrevi um pequeno script que coloca o Chromium em 60% da tela, inicia um terminal e o coloca no Chromium:

#!/bin/bash

screen_width=' wmctrl -d | awk '{print $9}' | cut -d x -f 1'
screen_height='wmctrl -d | awk '{print $9}' | cut -d x -f 2'
titlebar=51
browser="Chromium"
terminal_cmd="xterm"

browser_height=$[$screen_height * 60 / 100 - $titlebar]
# unmaximize browser
wmctrl -b remove,maximized_vert,maximized_horz -r "$browser"
wmctrl -r "$browser" -e "0,0,0,$screen_width,$browser_height"

# start terminal and wait till its window has appeared
$terminal_cmd &
sleep 1

# put terminal under browser
terminal_top=$[$screen_height * 60 / 100 + $titlebar]
terminal_height=$[$screen_height * 40 / 100]
wmctrl -r :ACTIVE: -e "0,0,$terminal_top,$screen_width,$terminal_height"

Você pode alterar algumas propriedades (como o terminal e o navegador usados e a altura da barra de título da janela). Observe que $browser é (parte do) título do navegador (janela) (como "Chromium", "Google Chrome" ou "Firefox"), não o comando para iniciar o navegador.

Caso você não queira que o Chromium redimensione, fica um pouco mais complicado, mas isso pode ser feito obtendo as coordenadas da janela com wmctrl -G -l .

Eu não sei como atribuir atalhos de teclado no OpenBox, e se ele funciona nesse WM, mas pelo menos ele funciona no Unity quando eu o executo na linha de comando.

    
por 16.09.2012 / 14:07