I built the suckless st terminal from source,
but the makefile use tic to add the st.info file to the terminfo.db which freebsd doesnt use
Freebsd uses termcap.db which means the st terminal has odd behavior especially with ncurses apps like newsboat and ncmpc
because the termcap.db doesnt contain any information about the st terminal
I dont get the above issue on ubuntu with the my linux build of the st terminal,
because it uses the terminfo.db
On the sterm freebsd ports page (st is called sterm on freebsd)
there is commit on 20 Mar 2018 17:10:09 which says there are instructions on how to configure terminfo
- Fix the way we handle the terminfo of x11/sterm. FreeBSD 12,
11-STABLE, and 11.2-RELEASE do not require any additional
configuration (thanks to bapt@) [1]. For older versions, there is a
simple set of instructions on how to configure terminfo for x11/sterm
in pkg-message.
So i deleted my installed version of the st terminal and installed the sterm pkg
but looking at the pkg message just return the pkg name
It may the pkg message has been removed
I also had the same issue with ncurses applications with the sterm pkg as i did with my build of st
I did find a post on unix.stackexchange which suggests converting the terminfo to a termcap file using the following command
i presume you would need that as root and give it the st.info file
Has anyone built the st terminal from source
and if so do how did you convert the st.info terminfo file and add it to the termcap.db,
and do you have any issues with ncurses applications
This is the line from the st terminal Makefile which use tic to add the st.info file to the terminfo.db
does anyone know of the correct command for the Makefile to convert st.info file and add to the termcap.db
Im using urxvt at the moment but the st terminal has better unicode rendering than urxvt,
i also had a look at alacritty but i had the same issue with ncurses applications as i did with the st terminal
alacritty also used about 3.4% cpu doing bugger all compared to the urxvt or st using about 0.2%
The other issue with the st terminal is when you ssh into another machine like a mac for example,
you get double characters printed in the terminal because the mac doesnt have a record of the st terminal in its database,
the fix is you have to start a tmux session on the client machine running the st terminal before you ssh in the remote machine,
that because tmux will change the TERM variable to screen which will be recognized by the machine you are sshing into
i also came across a post that mentioned the st info in the ncurses package is broken,
and hasnt been updated in about 3 years or so
Any terminal recommendations or suggestions
update:
i found this forum post about converting terminfo files
The hard and not yet working 100% way:
but the makefile use tic to add the st.info file to the terminfo.db which freebsd doesnt use
Freebsd uses termcap.db which means the st terminal has odd behavior especially with ncurses apps like newsboat and ncmpc
because the termcap.db doesnt contain any information about the st terminal
I dont get the above issue on ubuntu with the my linux build of the st terminal,
because it uses the terminfo.db
On the sterm freebsd ports page (st is called sterm on freebsd)
there is commit on 20 Mar 2018 17:10:09 which says there are instructions on how to configure terminfo
- Fix the way we handle the terminfo of x11/sterm. FreeBSD 12,
11-STABLE, and 11.2-RELEASE do not require any additional
configuration (thanks to bapt@) [1]. For older versions, there is a
simple set of instructions on how to configure terminfo for x11/sterm
in pkg-message.
So i deleted my installed version of the st terminal and installed the sterm pkg
but looking at the pkg message just return the pkg name
It may the pkg message has been removed
Bash:
pkg info -D sterm
I also had the same issue with ncurses applications with the sterm pkg as i did with my build of st
I did find a post on unix.stackexchange which suggests converting the terminfo to a termcap file using the following command
Bash:
infocmp -Cr
i presume you would need that as root and give it the st.info file
Bash:
# infocmp -Cr st.info
Has anyone built the st terminal from source
and if so do how did you convert the st.info terminfo file and add it to the termcap.db,
and do you have any issues with ncurses applications
This is the line from the st terminal Makefile which use tic to add the st.info file to the terminfo.db
does anyone know of the correct command for the Makefile to convert st.info file and add to the termcap.db
Bash:
tic -sx st.info
Im using urxvt at the moment but the st terminal has better unicode rendering than urxvt,
i also had a look at alacritty but i had the same issue with ncurses applications as i did with the st terminal
alacritty also used about 3.4% cpu doing bugger all compared to the urxvt or st using about 0.2%
The other issue with the st terminal is when you ssh into another machine like a mac for example,
you get double characters printed in the terminal because the mac doesnt have a record of the st terminal in its database,
the fix is you have to start a tmux session on the client machine running the st terminal before you ssh in the remote machine,
that because tmux will change the TERM variable to screen which will be recognized by the machine you are sshing into
i also came across a post that mentioned the st info in the ncurses package is broken,
and hasnt been updated in about 3 years or so
Any terminal recommendations or suggestions
update:
i found this forum post about converting terminfo files
The hard and not yet working 100% way:
- Install devel/ncurses to get /usr/local/bin/tic
- Append the x11/sterm related config to /usr/share/misc/termcap by
- tic -C -t st.info >> termcap. tic can already generate the hashed file but this does not work.
- Generate the hashed file by cap_mkdb termcap in the termcap directory.