sites

public wiki contents of suckless.org
git clone git://git.suckless.org/sites
Log | Files | Refs

index.md (1985B)


      1 universcroll
      2 ============
      3 
      4 Description
      5 -----------
      6 With *scroll*(1) and default binds (as of 0.8.4), how to scroll?
      7 - Inside alt screen? Mouse{4,5} to scroll {Up,Down}. :)
      8 - Outside alt screen? Shift+Mouse{4,5} to scroll {Up,Down}. :(
      9 
     10 With universcroll patch, always use Mouse{4,5} to scroll {Up,Down}.
     11 Doesn't matter alt screen or not. No more `^Y^Y^Y^Y^Y^E^E^E^E^E`!
     12 
     13 `universcroll-example` on top of `universcroll` makes some extra
     14 changes:
     15 - Set scroll program = "scroll"
     16 - Mouse wheel scroll enabled only with NO_MOD.
     17 - Mouse wheel zoom enabled with ShiftMask/ANY_MOD.
     18 
     19 Download
     20 --------
     21 - [st-universcroll-0.8.4.diff](st-universcroll-0.8.4.diff)
     22 - [st-universcroll-example-0.8.4.diff](st-universcroll-example-0.8.4.diff)
     23 
     24 Notes
     25 -----
     26 In the provided config, both Mouse{4,5} and Shift+{Page_Up,Page_Down}
     27 emit {`\033[5;2~`,`\033[6;2~`}. In default *scroll*(1) config, those
     28 sequences scroll {Up,Down} by full page each time (like TTY). This is
     29 maybe not desired behavior.
     30 
     31 You can change *st*(1) config to use different sequences and define how
     32 *scroll*(1) responds to sequences in *scroll(1)*'s config.
     33 
     34 In *st*(1) config, some keys are defined to send certain sequences in
     35 `key[]`. Inside `mshortcuts[]` and `shortcuts[]`, use function `ttysend`
     36 with argument `{.s = ""}` to send sequences.
     37 
     38 My settings:
     39    //st
     40    { XK_NO_MOD,            Button4, ttysend,        {.s = "\033[1;3A"}, 0, -1 },
     41    { XK_NO_MOD,            Button5, ttysend,        {.s = "\033[1;3B"}, 0, -1 },
     42    //scroll
     43    {"\033[1;3A",   SCROLL_UP,    3},       /* Mod1+Up */
     44    {"\033[1;3B",   SCROLL_DOWN,  3},       /* Mod1+Down */
     45 
     46 Bugs
     47 ----
     48 Non-readline shell (zsh, fish) can have prompt issues with *scroll*(1)
     49 (Scrolling down by line after scrolling up, among other things). More
     50 problems with non-PS1 prompt.
     51 
     52 Author
     53 ------
     54 - [Dennis Lee](mailto:dennis@dennislee.xyz)
     55 
     56 `universcroll` was made possible by
     57 [scrollback-mouse-altscreen](../scrollback).  All alt screen detection
     58 code is from that patch.