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 .