Como posso encontrar o recurso padrão (fonte) que uma instância VT * está usando?

1

Configurando a aparência do terminal virtual em uma caixa com o Arch e urxvt , não consigo exibir quais recursos do X estão em uso em uma determinada VT instância .

Tome esse fluxo de trabalho:

  1. Abra um console do urxvt, carregue um atributo específico de cor / fonte / fonte (por exemplo, editando ~/.Xresources e atualize este VT com xrdb merge )
  2. Abra outro VT, carregue uma configuração diferente e repita para comparar entre eles.
  3. Telefone toca, hora de comer ou olhar para algum garoto ...
  4. Volte para o computador: Oow, quais eram as configurações de recursos do X no VT 1, 2 ou N já?

Eu tentei várias ferramentas que são capazes de mostrar configurações de recursos do X para um aplicativo específico, mas:

Comovocêpodever,xrdbmostraráosrecursosXcarregadospeloVTemummomento,masnãoporinstânciaVT.Omesmoparaxorg-appres.Aquiestáuma imagem mais ampla com mais instâncias e diferentes configurações carregadas

Existe uma maneira de mostrar os recursos X carregados em uma instância VT em particular que você conhece?

PS: A minha pergunta é ligeiramente diferente da que, de outra forma, seria muito informativa. Como posso encontrar o recurso padrão (fonte) que o XTerm está usando? - 2013

    
por tuk0z 30.08.2016 / 15:18

1 resposta

2

Nos bons velhos tempos, e 20 anos depois, você pode usar editres para ver e até mesmo alterar os recursos do widget Athena em um real xterm .

No entanto, o urxvt não usa esses widgets, mas alguma outra biblioteca de gráficos. No entanto, ele fornece uma extensão perl, então você deve ser capaz de obter qualquer informação escrevendo algum perl. Por exemplo, eu rapidamente juntei essas linhas que você pode colocar em um arquivo, digamos ~/myextn :

#!/usr/bin/perl
# http://unix.stackexchange.com/a/306775/119298
# for urxvt --perl-lib ~/ -pe myextn
sub on_init {
   my ($self) = @_;
   # warn "in my font info init";
   my $hotkey = "C-s";
   $self->bind_action($hotkey, "%:getinfo")
      or warn "unable to register '$hotkey' as font info\n";
   ()
}
sub on_action {
    my ($self, $action) = @_;
    if($action eq "getinfo"){
        my $term = $self->{term};
        # warn "font ",$term->resource('font');
        $term->scr_add_lines("font ".$term->resource('font')."\r\n");
    }
    ()
}

Em seguida, execute urxvt --perl-lib ~ -pe myextn para usar a extensão e quando você digitar control-s , verá o valor do recurso "font" aparecer no terminal.

    
por 30.08.2016 / 22:28