gnotclub / xst

st fork that uses Xresources and some pretty good patches
MIT License
536 stars 73 forks source link

Upgrade to 0.8.x? #82

Closed carlitos777 closed 4 years ago

carlitos777 commented 4 years ago

Heyyo, Thanks for this awesome st build. Any chance to bump version to latest st?

Thanks, carlitos

ralsei commented 4 years ago

Is anyone not okay with me attempting this (in a branch, obviously)? I have commit access to this repository, technically, albeit I haven't worked on it as of yet.

actionless commented 4 years ago

@ralsei, would be super nice, just please don't push it directly to master, but give some time for people around to test the PR

ralsei commented 4 years ago

oh of course, yeah, that's what the new branch rebase-0.8.2 is for

ghost commented 4 years ago

st 0.8.3 is out.

tmpm697 commented 4 years ago

if it's okay, anyone can push to aur?

neeasade commented 4 years ago

hi all,

At the start of xst a friend and I had plans to do more poking at it than ever happened, which is why we changed the layout (bikeshed) and with some other things over time, merging is a little icky. I'm going to revert to upstream st's repo and then apply patches + xst changes. I've gathered some notes (org format) for order and how I'm going to sync on the 2020_reset branch. /cc @actionless

(editing this comment with status periodically)

**** list of patches/things to account for in xst
[bankruptcy]

goals:
- match upstream repo layout
- keep `xst` in terminfo and binary name
- make merging in the future easy

approach:
- start with current upstream
- apply wanted patches
- makefile + terminfo --> s/st/xst/
- implement current xst-specific (no upstream) patches

***** DONE spoiler
CLOSED: [2020-07-02 Thu 23:44]

***** DONE clipboard
CLOSED: [2020-07-02 Thu 23:48]

***** DONE externalpipe
CLOSED: [2020-07-02 Thu 23:48]

***** DONE boldcolors (only the ability to disable bold fonts)
CLOSED: [2020-07-03 Fri 09:59]

***** DONE vertcenter
CLOSED: [2020-07-02 Thu 23:52]

***** CANCELLED alpha (transparent background)
CLOSED: [2020-07-02 Thu 23:54]
Decide that if users want alpha, they can get it through a compositor
this option doesn't seem widely used -- see https://github.com/search?l=&q=%22st.opacity%3A%22+extension%3AXresources&type=Code

***** TODO cursor blinking
https://github.com/gnotclub/xst/commit/b43b7548f88072880b02bec2b938368ae687b965

***** DONE delkey patch
CLOSED: [2020-07-03 Fri 15:11]

***** DONE migrate terminfo and makefile
CLOSED: [2020-07-03 Fri 00:14]

***** DONE configurable line scroll
CLOSED: [2020-07-03 Fri 11:41]
https://github.com/gnotclub/xst/commit/1e82647b0e04077e975679a4b4cf1eb02b04e6bc

***** DONE scrollback patch
CLOSED: [2020-07-03 Fri 00:14]

***** CANCELLED hidecursor patch? https://github.com/gnotclub/xst/pull/65
CLOSED: [2020-07-03 Fri 01:03]
just recommend unclutter to whoever wants this

***** DONE borderless window patch https://github.com/gnotclub/xst/commit/dda53ae9edaecb09a929388917ea7cdfcaa38fa6
CLOSED: [2020-07-03 Fri 15:00]

***** DONE max_bold_weight_infelicity
CLOSED: [2020-07-03 Fri 11:54]
https://github.com/gnotclub/xst/commit/7679315a6746c4a9c59409ebdeb7d95e9f1c2488
https://github.com/gnotclub/xst/commit/8519227bcef14712d9eff1c8919a31ef1b629eb7

***** CANCELLED IMStyle
CLOSED: [2020-07-03 Fri 10:01]
https://github.com/gnotclub/xst/pull/37/files
https://github.com/gnotclub/xst/commit/bcc622d591c06e4e1df1b2b36a1c1a66c4a8421e
over-the-spot editing landed upstream?: https://github.com/gnotclub/xst/commit/e85b6b64660214121164ea97fb098eaa4935f7db
@odknt now maintains their own fork, so probably OK not bringing this in: https://github.com/odknt/st/commits/master

***** CANCELLED Premultiply R,G and B when using transparency.
CLOSED: [2020-07-03 Fri 13:32]
https://github.com/gnotclub/xst/commit/360ef337ea66c1d38f3b1a715fc1b8a5312513f8
cancelled: no alpha means not needed

***** DONE xresources loading
CLOSED: [2020-07-03 Fri 11:23]
check reference file, make sure all options accounted for
NOTE: light bg opacity looks like shit rn

***** DONE dmenu xurls call
CLOSED: [2020-07-03 Fri 13:42]
if binding comes to fruition, won't need this, but probably want to maintain a way to grab urls

***** CANCELLED copy paste bindings
CLOSED: [2020-07-03 Fri 13:34]
handled in defaults with control shift {c,v}

***** CANCELLED keep new defaults?
CLOSED: [2020-07-03 Fri 11:31]
colorscheme, at least
cancelled: just match what's in there

***** TODO keybind option?
maybe:

add an "xres_shortcuts" array to be assigned too on xres load and handled in =kpress=
when assigning we could just look for modifiers and combinations and call c or shell functions?, maybe with externpipe

st.key_{meta_,shiftmeta_}{key}[_withpipe] "<function>"

***** TODO Other st forks for inspo
color emoji: https://github.com/odknt/st/commits/master
insert multiple codepoints https://github.com/b0o/xst/commits/master
---> note, now depends on https://st.suckless.org/patches/iso14755/

***** TODO idea: externpipe but with the scrollback buffer contents
actionless commented 4 years ago

i went through the list it looks fine, but i'm not sure about blinking patch, i think having cursorblinkontype option is important

neeasade commented 4 years ago

@actionless sounds good, I hadn't given the upstream patch a close look yet

neeasade commented 4 years ago

alright, blinking patch is the last thing, I think we're ready beyond that, will take a look later(tm)

arkhan commented 4 years ago

Greetings, what great news.

You could consider the next patch https://st.suckless.org/patches/ligatures/

Thanks

neeasade commented 4 years ago

@arkhan sure, after i'll take a look after this is pushed out/consider -- adding a link to that patch over on #71.

@actionless would you mind testing the 2020_reset branch? should be all sync'd up now, just sanity check on someone else's config might be nice --- and then maybe I'll just force push this into master

neeasade commented 4 years ago

merged it

actionless commented 4 years ago

Not supported patches alpha: use a compositor such as picom to make xst windows transparent

when using external compositor, text also becomes transparent

neeasade commented 4 years ago

when using external compositor, text also becomes transparent

good point. I re-applied the patch on branch alpha but I currently have a bug where I have no window border on alpha windows.

actionless commented 4 years ago

border -- you mean the one defined by st.borderpx?

neeasade commented 4 years ago

no -- I mean window manager border -- combination is bspwm + compton v7.5

actionless commented 4 years ago

was you able to reproduce the same problem in xst 0.7?

neeasade commented 4 years ago

I was not -- here's a screenshot https://0x0.st/iyQN.png -- from top to bottom (right to left):

(where alpha 255 is max value)

actionless commented 4 years ago

and patch is only in one commit? i can try to look into it during the sunday afternoon

arkhan commented 4 years ago

I just tried this and it's great, what I don't see is working is the cursorshape since I put it on the value of 4 but in the terminal it continues showing as if it was parameterized with 2

neeasade commented 4 years ago

and patch is only in one commit? i can try to look into it during the sunday afternoon

it is -- https://github.com/gnotclub/xst/commit/be52e877458351c8166bf33b01487cf8412d2bcb much appreciated if you can. do note there's a small change from og patch I made for this commit

neeasade commented 4 years ago

@arkhan thanks for the bug report -- fixed with https://github.com/gnotclub/xst/pull/90

actionless commented 4 years ago

@neeasade i've reviewed your patch and tested on practice:

1) i can't reproduce the border issue, try with few other WMs -- it seems what your WM gets confused by (missing of?) some of X attrs, namely try some major well-known-not-to-be-buggy WM like openbox; 2) although i found a problem in pre-multiply patch adoptation and filed a PR with the fix: https://github.com/gnotclub/xst/pull/94

2.1) going back to a very previous discussion, i still think that pre-multiplication is a bit questionable move, so i suggest making it optional (however don't mind it to be enabled by default).

neeasade commented 4 years ago

@actionless sounds good -- I'll take your word re: 1. I'll make it optional/on by default in that PR. thanks for taking a look!

tmpm697 commented 4 years ago

I have same issue with border, but only with newest update 1:0.8.4.r8.ga4dd66d-1

look total different from previous version. in my case the color look brighter than previous ones.