summaryrefslogtreecommitdiff
path: root/todo.org
diff options
context:
space:
mode:
Diffstat (limited to 'todo.org')
-rw-r--r--todo.org98
1 files changed, 81 insertions, 17 deletions
diff --git a/todo.org b/todo.org
index d2bc0c7..5c2e314 100644
--- a/todo.org
+++ b/todo.org
@@ -1,18 +1,67 @@
ST Patches
* ST Patches Open Work
-** TODO [#A] allows alpha transparency
-st-alpha-osc11-20220222-0.8.5.diff
-** TODO [#A] allows ligatures (must be applied after alpha and scrollback)
-st-ligatures-alpha-scrollback-20230105-0.9.diff
-** TODO [#B] allows setting of size of ST via the -G parameter
-st-anygeometry-0.8.1.diff
+** TODO [#A] ligatures (apply after alpha and scrollback)
+*** Description and URL
+This patch adds proper drawing of ligatures.
+The code uses Harfbuzz library to transform original text of a single line to a list of glyphs with ligatures included.
+
+Note
+ The patch adds additional dependency on Harfbuzz library and headers.
+ Original patch was made for vanilla version of ST from latest master commit. It is not 100% compatible with Scrollback and Alpha patches, so I made modified versions that you can apply on top of a Scrollback and/or Alpha patch.
+ Due to some limitations in drawing engine, ligatures will break when crossing colors, font styles or selection. They will still render properly as separate symbols, just not as ligatures.
+ Since 0.8.4 patch, there's now a way to enable additional font rendering features. Look into features array in hb.c for details.
+Boxdraw
+
+ The original patch does not work very well with the boxdraw patch. Since it requires some additional changes in the code to make ligatures compatible with boxdraw, a special version of the patch was added, that you can apply on top of the boxdraw patch.
+ It does not include Alpha or Scrollback patches.
+
+https://st.suckless.org/patches/ligatures/
+https://st.suckless.org/patches/ligatures/0.9/st-ligatures-alpha-scrollback-20230105-0.9.diff
+** TODO [#B] externalpipe
+*** Description and URLs
+Reading and writing st's screen through a pipe.
+Example
+
+config.h example, binding TERMMOD + U to extract all visible URLs and present dmenu to select and open one:
+
+static char *openurlcmd[] = { "/bin/sh", "-c",
+ "xurls | dmenu -l 10 -w $WINDOWID | xargs -r open",
+ "externalpipe", NULL };
+Shortcut shortcuts[] = {
+ ...
+ { TERMMOD, XK_U, externalpipe, { .v = openurlcmd } },
+};
+
+(xurls and open are external scripts)
+xurls: https://raw.github.com/bobrippling/perlbin/master/xurls
+open: https://github.com/bobrippling/open
+Example Shell Scripts
+
+ link grabber - similar to the function above, but without xurls dependency
+ https://st.suckless.org/patches/externalpipe/linkgrabber.sh
+ edit screen - open screen in $EDITOR for copying text
+ https://st.suckless.org/patches/externalpipe/editscreen.sh
+
+https://st.suckless.org/patches/externalpipe/
+https://st.suckless.org/patches/externalpipe/st-externalpipe-0.8.4.diff
+** TODO [#A] font2 (fallback font for glyphs + emojis)
+st-font2-0.8.5.diff
+** TODO [#A] right-click sends paste
+st-rightclickpaste-0.8.2.diff
+** TODO [#B] xresources with signal reloading
+*** Description and URLs
+This patch adds the ability to configure st via Xresources and signal reloading. This patch is not based on xresources patch and is extended from xst's commit on github.
+You can basically pass a USR1 signal to all st processes after updating your Xresources to reload the settings: ` pidof st | xargs kill -s USR1 `
+
+https://st.suckless.org/patches/xresources-with-reload-signal/
+https://st.suckless.org/patches/xresources-with-reload-signal/st-xresources-signal-reloading-20220407-ef05519.diff
** TODO [#B] swaps the color of the background with the character the cursor is on
st-dynamic-cursor-color-0.9.diff
-** TODO [#B] read and write st's screen via a pipe
-st-externalpipe-0.8.4.diff
-** TODO [#A] fallback font (for glyphs + emojis)
-st-font2-0.8.5.diff
-** TODO [#B] colorschemes
+** TODO [#C] .desktop entry
+st-desktopentry-0.8.5.diff
+** TODO [#C] netwmicon
+st-netwmicon-0.8.5-v2.diff
+** TODO [#C] colorschemes
This patch adds multiple color schemes and lets you change them without having to restart st.
Predefined color schemes:
@@ -37,15 +86,30 @@ Key bindings
https://st.suckless.org/patches/colorschemes/
https://st.suckless.org/patches/colorschemes/st-colorschemes-0.8.5.diff
-** TODO [#C] .desktop entry and icon
-st-netwmicon-0.8.5-v2.diff
-st-desktopentry-0.8.5.diff
-** TODO [#C] right-click sends paste
-st-rightclickpaste-0.8.2.diff
** TODO [#D] allows for 2 transparencies: based on window focus state
st-focus-20200731-patch_alpha.diff
-
* ST Patches Completed
+** DONE [#A] alpha
+*** 2023-07-23 @ 15:00:52 -0500 Patch applied successfully without issue
+*** Patch Description and URL
+This patch allows users to change the opacity of the background. Note that you need an X composite manager (e.g. compton, xcompmgr) to make this patch effective.
+Notes
+
+ The alpha value affects the default background only.
+ The color designated by 'defaultbg' should not be used elsewhere.
+ Embedding might fail after applying this patch.
+
+Changes in 0.8.2
+
+ The internal method for querying X visual is changed. St will respect the visual of its parent window, allowing it to be embedded easily.
+ Opacity value is now typed in float.
+ -A option is added to allow changing the opacity value without compiling.
+
+https://st.suckless.org/patches/alpha/
+https://st.suckless.org/patches/alpha/st-alpha-osc11-20220222-0.8.5.diff
+*** A Note on OSC 11
+'\e]11;?\007' can be used to query the background color of a terminal (OSC 11).
+OSC 11 is used by Neovim to automatically set its background setting to "dark" or "light".
** DONE [#A] prefers system (browser) clipboard instead of terminal clipboard
*** 2023-07-23 @ 13:56:02 -0500 patch applied successfully w/o issue
*** Description and URL