st terminal: copie no select e clique com o botão direito do mouse para colar

0

link faz mousewheel para selecionar e colar, mas eu preciso copiar na seleção do mouse esquerdo e, em seguida, clique com o botão direito do mouse para colar.

e para estender, ctrl-v para colar.

Eu uso o xorg, o archlinux.

Como conseguir isso?

    
por Tuyen Pham 26.09.2018 / 11:53

1 resposta

2

Manuseio da liberação do mouse

A rotina que transforma um evento de mouse em uma pasta é brelease() in x.c :

void
brelease(XEvent *e)
{
        if (IS_SET(MODE_MOUSE) && !(e->xbutton.state & forceselmod)) {
                mousereport(e);
                return;
        }

        if (e->xbutton.button == Button2)
                selpaste(NULL);
        else if (e->xbutton.button == Button1)
                mousesel(e, 1);
}

Se você quiser que o botão direito cole, em vez do botão do meio, basta alterar Button2 para Button3 e depois recompilar:

            if (e->xbutton.button == Button3)

Definições de atalhos de teclado

Os atalhos de teclado estão na matriz shortcuts em config.h . Pasta de prancheta já está mapeada para Ctrl - Deslocamento - V :

static Shortcut shortcuts[] = {
    /* mask                 keysym          function        argument */
...
    { TERMMOD,              XK_V,           clippaste,      {.i =  0} },

Ctrl - v já tem um significado especial em alguns shells e editores, então você pode não querer que o terminal o intercepte, e prefere usar o atalho existente. Mas se você está realmente determinado a ter este novo atalho, você terá que adicionar / alterar a linha da seguinte forma:

    { ControlMask,          XK_v,           clippaste,      {.i =  0} },

Observe que o XK_v agora tem um minúscula "v", porque não há Shift .

    
por 26.09.2018 / 13:14