Como faço para temporariamente tornar a área de mensagens do Weechat "largura total" como irssi?


8

De irssionde estou, estou acostumado a ser capaz de copiar e colar mensagens da exibição de mensagens do meu terminal (PuTTY) em execução irssicom relativa facilidade, sem ter que entender o texto. Isso funciona quando irssié executado diretamente, ou quando irssié executado em uma sessão de tela com a janela atual definida para o tamanho do terminal (ou seja , Ctrl- a, :fit).

Como faço para conseguir algo semelhante weechat? Com o layout padrão, à direita, weechatdesenha uma borda e lista os cortes no canal. À esquerda, há uma borda para a data / hora e a fonte da mensagem (o apelido ou o tipo de evento). É possível ocultar temporariamente todo o cromo da janela e apresentar algo como o que é mantido nos logs?


Parece que weechat não é uma tag aqui, e eu não tenho reputação de fazer isso. Se alguém tiver a reputação de fazer isso, marque-o adequadamente.
User314104

Eu acabei fazendo /alias chatmode /bar show nicklist ; /set weechat.look.prefix_align right ; /set weechat.look.align_end_of_lines messagee/alias copymode /bar hide nicklist ; /set weechat.look.prefix_align none ; /set weechat.look.align_end_of_lines time
user314104

Respostas:


12

ATUALIZAÇÃO : Se você está seguindo as versões de desenvolvimento mais recentes, recentemente foi adicionada uma maneira muito mais fácil de obter uma área de mensagens com largura total para fins de cópia, chamada modo "exibição nua" !

Ele é vinculado meta-lpor padrão - faça /key missingpara definir essa combinação de teclas, se ainda não estiver na sua configuração - e desativa todo o cromo do WeeChat, deixando apenas uma exibição em estilo de log do conteúdo do buffer atual.

Se você não possui as versões de desenvolvimento, a solução a seguir, usando várias configurações, ainda funciona, mas eu recomendo o uso do modo de exibição simples, se houver.


Bem, você pode facilmente mover o nicklist para fora do caminho ou ocultá-lo completamente. Os comandos para cada um são (respectivamente):

/set weechat.bar.nicklist.position top
  and
/bar toggle nicklist

Se você precisar da lista de apelidos regularmente, uma combinação de teclas pode ser adicionada, assim.

/key bind meta-f /bar toggle nicklist

A formatação do lado esquerdo é um pouco menos direta. Pode ser desativado fazendo as seguintes configurações; isso eliminará a borda das linhas quebradas (para que você não obtenha caracteres extras da borda) e desabilitará o alinhamento das fontes de mensagem.

/set weechat.look.prefix_align none
/set weechat.look.align_end_of_lines time
  To re-enable, the defaults are:
/set weechat.look.prefix_align right
/set weechat.look.align_end_of_lines message

Com tudo isso feito, você provavelmente ainda terminará com textos rígidos! Definir a opção a seguir corrige isso, mas é conhecido por produzir erros de renderização no WeeChat, portanto, não é aconselhável deixá-lo ativado o tempo todo:

/set weechat.look.eat_newline_glitch on

Com todo esse conjunto, copiar diretamente do WeeChat deve oferecer algo bem próximo ao seu formato de log.


Eu votaria novamente se pudesse. Obrigado por postar com a atualização!
User314104 01/03

Acredito que a chave é meta-lou Alt-lnão!
Tri Nguyen

1
@TriNguyen Ah, foi meta-! quando escrevi isso, mas depois fui alterado para meta-l porque é muito mais fácil digitar.
0000

Seria incrível se houvesse uma maneira de mover o tempo das mensagens para estar no topo do apelido, economizando 8 caracteres de espaço na coluna.
CMCDragonkai

1

A maneira correta de fazer isso é usar Alt+l(aka Meta-l), que coloca o terminal no "modo canônico". Isso é fundamentalmente diferente das outras respostas que sugerem maneiras de ocultar as barras laterais, porque faz com que as seleções de texto funcionem corretamente para o texto quebrado, o que não é possível ocultar as barras laterais. Isso é particularmente importante ao tentar copiar URLs longos postados nos buffers de canal.

Explicação detalhada

O comportamento exato de um TTY em relação a edição e exibição de linhas é tratado por vários sinalizadores que podem ser definidos usando termios(3)ou diretamente com ioctl(2). Eles controlam coisas como se a entrada do teclado deve ecoar automaticamente na tela e se caracteres especiais como Backspace ou Home / End devem ser tratados da maneira usual, ou se o terminal deve passá-los diretamente para o aplicativo subjacente para lidar com eles diretamente.

Um desses sinalizadores é chamado ICANON, que controla se o terminal está ou não no modo canônico. Os detalhes estão na termios(3)página do manual (link acima). Durante as operações normais, o WeeChat retira o terminal do modo canônico, para que ele tenha controle total sobre a entrada e a renderização do teclado na tela. Quando isso acontece, o emulador de terminal não pode mais detectar quando o texto está sendo quebrado. Se alguém postar um URL longo no WeeChat, ao tentar selecioná-lo com o cursor, você descobrirá que a seleção de palavras irá para o final da linha e não será automaticamente contornada. Da mesma forma, se você destacar manualmente todo o URL, sua seleção de cópias terá novas linhas.

Ao usar o Alt+lWeeChat, você voltará temporariamente ao modo canônico e renderizará novamente a tela como texto sem formatação. Quando isso acontece, seu terminal é capaz de distinguir texto agrupado, e as seleções para "palavras" longas, como URLs, funcionarão corretamente. Quando terminar de copiar o texto, você poderá usar Alt+luma segunda vez para voltar ao modo normal.


0

ou simplesmente faça;

meta-l 

mostrar o formato 'bruto' nos logs, remove o nicklist e o 'chrome' automaticamente - também ajuda com links 'maiores que a largura' que, dependendo do emulador de terminal, agora podem ser clicados e ser um link completo. Esta é a versão de Jessie do weechat: - 1.0.1


0

Você pode vincular uma chave para alternar entre lista de apelidos e lista de buffers, liberando a maioria dos imóveis da tela, por exemplo:

ctrl-F = "/bar toggle nicklist; /bar toggle buflist"
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.