On Fri, Mar 21, 2014 at 12:41:38PM +0100, Nils R wrote:
> Hi misc,
>
> i have a problem with my terminal, st [1]. Just for the record,
> i am using the latest -current snapshot (but the problem existed
> before). I had an unrelated problem with zsh, where my HOME and
> DEL key were not working properly (the related thread on the
> st-mailing list can be found at [2]). I was pointed to the zsh FAQ
> [3], where they suggest to enable (and later disable) the "application
> mode" in zsh using the terminfo commands "smkx" and "rmkx". Now,
> here's the problem: st ships a terminfo file (st.info), which is
> installed with tic (in my case, systemwide). The original st.info
> contains entries for {r,s}mkx, but when i query the system terminfo
> database with 'infocmp -1 st', no entries for {r,s}mkx are found:
>
> % egrep '[rs]mkx' st.info
> rmkx=\E[?1l\E>,
> smkx=\E[?1h\E=,
> % infocmp -1 st-256color | egrep '[rs]mkx' | wc -l
> 0
>
> How can this be? Is this a bug or am i missing something? Any
> help much appreciated.
>
> [1]: http://st.suckless.org/
> [2]: http://lists.suckless.org/dev/1403/20418.html
> [3]: http://zsh.sourceforge.net/FAQ/zshfaq03.html#l25
On OpenBSD, the curse and termcap library use *only* pre-compiled
databases to search for a TERM entry.
Every mention to the /usr/share/misc/terminfo/*/* or ~/.terminfo/*/*
scheme in OpenBSD's own manpages or on instructions written for
system that do use that scheme (Linux) are invalid.
That st.info file will not be used. (Unless you use a Linux COMPAT
executable.)
As I wrote in my other email, see /usr/src/share/termtypes for how
to build a terminal databases.
OpenBSD does support per user databases installed in ~/.termcap.db
and ~/.terminfo.db.
With these 2 caveat:
- if your TERM entry is found in the per user db, all the "tc="
expension entries must also be included.
- SETUID/GID executable ignores per user terminal databases.
In the end, I find that they are rather anoying to use.
Hope it helps explain why it didn't work as you expected.
(OK, I looked into this a while ago. I really doubt it changed much
in current.)