Commit graph

59 commits

Author SHA1 Message Date
ant
4397a1814f fontfeature patch 2025-01-12 16:07:18 +01:00
Utkarsh Verma
c4c5113fbd
osc7: initial patch implementation (#154)
* osc7: initial patch implementation

Closes #153

* osc7: avoid redundant use of realpath()

* osc7: fix styling

* Changing position of the OSC7_PATCH toggle in patches.def.h

---------

Co-authored-by: Bakkeby <bakkeby@gmail.com>
2024-10-15 09:54:45 +02:00
Utkarsh Verma
fe065cc366
osc133: initial patch implementation (#127)
* osc133: initial patch implementation

* Specify dependency on reflow or scrollback patch
2024-10-01 21:35:30 +02:00
Bakkeby
8aee31444a Adding the anygeometry patch ref. #137 2024-05-31 22:47:52 +02:00
Bakkeby
6a5561cd76 Minor changes to description 2024-03-13 10:44:43 +01:00
Stein Gunnar Bakkeby
0b8055a271
netwmicon: upgrading patch and adding farbfeld variant (#121) 2024-03-13 10:35:17 +01:00
Stein Gunnar Bakkeby
3b87b07404
Adding reflow patch (#120) 2024-03-13 10:33:51 +01:00
Bakkeby
e88f2bf20c Removing the VIM browse patch.
The general reasoning is that the vim browse patch is very invasive,
has a high level of complexity, and is incompatible with a significant
number of other patches and it complicates further maintenance.

Additionally the patch has its own scrollback mechanism which seemingly
did not work properly - and nobody seems to have complained about this
since the patch was added back in May 2021.

If you want to try out the vim browse patch then I would recommend having
a play around with the patch author's own build that has this patch
integrated:
   - https://github.com/juliusHuelsmann/st-history-vim
   - https://github.com/juliusHuelsmann/st

Alternatively a tag has been added to this repository that refers to the
last commit that still has the vim browse patch:
   - https://github.com/bakkeby/st-flexipatch/tree/VIM_BROWSE_PATCH
2024-03-07 22:35:11 +01:00
Jordan Callicoat
2e0e84d56a
Add selectioncolors patch (#110)
https://st.suckless.org/patches/selectioncolors/

Closes #91
2024-02-28 14:34:06 +01:00
Bakkeby
d8529b66a4 Adding fullscreen patch ref. #88 2022-10-24 11:27:51 +02:00
Bakkeby
2906447fef Adding use XftFontMatch patch 2022-08-28 21:05:55 +02:00
Bakkeby
3947ceb431 Adding the no window decorations patch 2022-08-24 11:04:49 +02:00
Bakkeby
f0bad9ac44 Removing the anysize-nobar amendment for the anysize patch as this should be redundant following the fix in PR #75 2022-07-18 11:54:51 +02:00
bakkeby
3e41e252b1 Adding background image reload patch ref. pull request #62 2022-04-11 16:04:58 +02:00
bakkeby
1a8175a337 Adding background image patch 2022-03-10 13:54:28 +01:00
bakkeby
51dc6ba469 scrollback: do not scroll up when already at the top ref. #57 2022-03-06 14:18:49 +01:00
bakkeby
4a156b95f9 Delay redrawals on palette changes
Build on auto-sync and only mark window dirty on palette changes and let
the event handler do the actual draw.

Ref.
   - https://git.suckless.org/st/commit/e823e2308f2a99023032a3966ebb7036a31d305f.html
2022-02-24 13:46:37 +01:00
Steven
ac7b02b841
Update patches.def.h
Spelling fix.
2021-10-14 04:57:44 -05:00
bakkeby
271a807111 Adding the CSI 22, 23 patch 2021-08-18 10:07:42 +02:00
bakkeby
b84e8366ab Updating SIXEL comment about uncommenting in config.mk instead of Makefile ref. #35 2021-08-05 10:17:38 +02:00
bakkeby
f643835542 Adding simple version of the anysize patch ref. #35 2021-07-29 12:22:44 +02:00
bakkeby
eccd7fac9e Adding columns patch ref. #34 2021-07-26 10:16:54 +02:00
bakkeby
ee4cdc8d6e Adding openurlonclick patch ref. #32 2021-07-07 10:08:43 +02:00
Muhamad Althaf
034569c2b2
Fix typo 2021-06-27 12:28:14 +05:30
bakkeby
b0660ecf47 Adding hide terminal cursor patch 2021-06-09 09:54:50 +02:00
bakkeby
ad7e16b38a Adding swapmouse patch ref. #28 2021-05-16 11:40:15 +02:00
bakkeby
5adf4c4c8e Adding default cursor patch 2021-05-11 16:35:30 +02:00
bakkeby
e039854635 Adding vim browse patch ref. #21 2021-05-09 17:48:28 +02:00
bakkeby
e139d1fd75 Refactoring Makefile and config.mk to make it easier to enable patches such as the ligatures patch and the sixel patch 2021-05-09 15:07:12 +02:00
bakkeby
1a1d492cd8 Adding alpha-focus-highlight patch 2021-05-09 14:40:30 +02:00
bakkeby
56e208e0de Adding sync patch ref. #21 2021-05-09 09:25:22 +02:00
bakkeby
a5435903d4 Adding universcroll patch ref. #21 2021-05-08 17:49:04 +02:00
bakkeby
a1303a8811 Adding delkey patch ref. #21 2021-05-08 16:57:59 +02:00
bakkeby
a44ac5937f Adding osc_10_11_12_2 patch ref. #21 2021-05-08 16:50:06 +02:00
bakkeby
8c8bace91c Adding netwmicon patch ref. #21 2021-05-08 14:50:06 +02:00
bakkeby
79278e3d32 Adding undercurl patch ref. #20 2021-05-08 10:53:46 +02:00
bakkeby
ce05a34de1 Adding blinking cursor patch ref. #20 2021-05-08 10:13:20 +02:00
bakkeby
0fade9158a xresources reload: minor style changes ref. #16 2021-05-07 09:27:05 +02:00
Loic Coyle
540a923fb9 Add XRESOURCES_RELOAD_PATCH 2021-04-24 00:30:14 +02:00
bakkeby
08f137a8a0 Adding workaround for Variable Fonts causing too wide letter spacing 2021-04-21 15:54:41 +02:00
bakkeby
f31c43015d Adding sixel support ref. #7 2021-03-25 11:10:57 +01:00
bakkeby
884c62a056 Adding dynamic cursor color patch ref. #10 2021-02-26 14:33:03 +01:00
bakkeby
9c0f91c892 Adding alpha gradient patch 2021-02-15 14:38:06 +01:00
bakkeby
a23971fff1 Adding wide glyphs patch 2020-11-14 16:24:07 +01:00
bakkeby
ef994f3e6d Adding monochrome patch and anysize-nobar patch 2020-10-23 10:14:00 +02:00
bakkeby
315c5cbe9f Re-added visualbell patch 2020-08-09 18:09:43 +02:00
bakkeby
c8d69b5d70 Added the single drawable buffer patch as per the FAQ in order to get w3m images to display 2020-06-26 15:01:30 +02:00
bakkeby
bca86276e7 Adding w3m patch 2020-06-14 20:04:27 +02:00
bakkeby
e0169edec9 Adding ligatures patch as requested in #4 2020-06-05 13:43:14 +02:00
bakkeby
5c7d8ab1ad auto-sync: draw on idle to avoid flicker/tearing
st could easily tear/flicker with animation or other unattended
output. This commit eliminates most of the tear/flicker.

Before this commit, the display timing had two "modes":

- Interactively, st was waiting fixed `1000/xfps` ms after forwarding
  the kb/mouse event to the application and before drawing.

- Unattended, and specifically with animations, the draw frequency was
  throttled to `actionfps`. Animation at a higher rate would throttle
  and likely tear, and at lower rates it was tearing big frames
  (specifically, when one `read` didn't get a full "frame").

The interactive behavior was decent, but it was impossible to get good
unattended-draw behavior even with carefully chosen configuration.

This commit changes the behavior such that it draws on idle instead of
using fixed latency/frequency. This means that it tries to draw only
when it's very likely that the application has completed its output
(or after some duration without idle), so it mostly succeeds to avoid
tear, flicker, and partial drawing.

The config values minlatency/maxlatency replace xfps/actionfps and
define the range which the algorithm is allowed to wait from the
initial draw-trigger until the actual draw. The range enables the
flexibility to choose when to draw - when least likely to flicker.

It also unifies the interactive and unattended behavior and config
values, which makes the code simpler as well - without sacrificing
latency during interactive use, because typically interactively idle
arrives very quickly, so the wait is typically minlatency.

While it only slighly improves interactive behavior, for animations
and other unattended-drawing it improves greatly, as it effectively
adapts to any [animation] output rate without tearing, throttling,
redundant drawing, or unnecessary delays (sounds impossible, but it
works).
2020-05-20 14:15:57 +02:00