summaryrefslogtreecommitdiff
path: root/st.info
AgeCommit message (Collapse)Author
2020-05-30Partially add back in "support REP (repeat) escape sequence"Hiltjo Posthuma
Add the functionality back in for xterm compatibility, but do not expose the capability in st.info (yet). Some notes: It was reverted because it caused some issues with ncurses in some configurations, namely when using BSD padding (--enable-bsdpad, BSD_TPUTS) in ncurses it caused issues with repeating digits. A fix has been upstreamed in ncurses since snapshot 20200523. The fix is also backported to OpenBSD -current.
2020-05-16Revert "support REP (repeat) escape sequence"Hiltjo Posthuma
This reverts commit e8392b282c2eaa28725241a9612804fb55113da4. There is currently a bug in older ncurses versions (like on OpenBSD) where a fix for a bug with REP is not backported yet. Most likely in tty/tty_update.c: Noticed while using lynx (which uses ncurses/curses). To reproduce using lynx: echo "Z0000000" | lynx -stdin or using the program: int main(void) { WINDOW *win; win = initscr(); printw("Z0000000"); refresh(); sleep(5); return 0; } This prints "ZZZZZZZ" (incorrectly).
2020-05-16support REP (repeat) escape sequenceAvi Halachmi (:avih)
The sequence \e[Nb prints the last printed char N (more) times if it's printable, and it's ignored after newline or other control chars. This is Ecma-048/ANSI-X3.6 sequence and not DEC VT. It's supported by xterm, and ncurses uses it when possible, e.g. when TERM is xterm* (and with this commit also st*). xterm supports only codepoints<=255, possibly due to internal limits. We support any value/codepoint which was placed in a cell. To test: - tput rep 65 4 -> prints 'AAAA' - printf "\342\225\246\033[4b" -> prints U+2566 1+4 times.
2020-05-16Add rin terminfo capabilityRoberto E. Vargas
Tianlin Qu discovered that st is missing rin (scroll back #1 lines).
2020-04-11Add st-mono terminfo entryRoberto E. Vargas Caballero
This entry is intended for monocolor display and it is very helpful for color haters.
2020-04-11Add terminfo entries for backspace modeRoberto E. Vargas Caballero
St used to use backspace as BS until the commit 230d0c8, but due to general lack of knowledge of lusers, we moved to the most common configuration in linux to avoid answering the same question 3 times per month. With the most common configuration we have a backspace that returns a DEL, and we have a Delete key that doesn't return a DEL character neither a BS. When dealing with devices connected using a serial line (or even with Plan9) it is more common Backspace as BS and Delete as DEL. For this reason, st is not always the best tool when you talk with a serial device. This patch adds new terminfo entries for Backspace as BS and Delete as DEL. A patch for confg.h is also added, to make easier switch between both configurations.
2019-11-05Fix tmux terminfo extensions Se and SsSebastian J. Bronner
The tmux terminfo extensions Ss and Se are currently specified as booleans in `st.info`. They should be strings. See https://github.com/tmux/tmux/blob/eeedb43ae847a0a692ceea965f7556e84bca4fd0/tty-term.c lines 254 and 265. I have used the values from https://invisible-island.net/ncurses/terminfo.src.html#toc-_S_I_M_P_L_E_T_E_R_M for this patch.
2017-07-12Add dim/smxx/rmxx to terminfo, remove duplicate kich1Quentin Rameau
2017-06-03Add color change terminfo capabilitiesMarc André Tanner
2017-03-19Support xterm Ms feature to set clipboardosandov@osandov.com
This is used by, e.g., tmux.
2016-11-14Add tmux capabilities to st.infopl@ninthfloor.org
2016-09-09Delete ncv capability from terminfoRoberto E. Vargas Caballero
We do not need to disable the previous ncv definition, because there is not previous definition.
2016-09-09st.info: do not prevent st from displaying attributesQuentin Rameau
With ncv set to 3, we prevent st from displaying A_STANDOUT and A_UNDERLINE with colors while our virtual terminal is capable of it.
2015-08-12st.info: replace the acsc entry from xterm to urxvtQuentin Rameau
The current acsc entry, copied from xterm was not exposing capability to display arrows.
2015-03-10Finally resolving the backspace problem.Christoph Lohmann
The majority now using the Linux behaviour. Minorities have to live in their ghettos.
2015-03-07Update kdch1 definition to three octal digits.Johannes Postma
ncurses wasn't able to detect the delete-character key as KEY_DC. This patch fixes that. kdch1 was defined as "\0177", but terminfo(5) states: ... characters may be given as three octal digits after a \. The delete-character key is correctly defined in config.def.h.
2015-02-22Let curses do the dirty work for flashIvan Delalande
Use the terminfo delay syntax ($<x>) in our flash capability to avoid hardcoding a fixed delay in redraw() when called from tsetmode() with DECSCNM. We need to turn on the npc capability so that delays are made with xon/xoff instead of padding characters.
2014-10-21Reverting smacs and rmacs to the xterm defaults.Christoph Lohmann
These are needed by ncurses to correctly handle the switch between line drawing. The changes to the alternative characterset code already fixed the urwid hack.
2014-10-08Use G1 for alternate charsetRoberto E. Vargas Caballero
St has enacs, which must be printed if a program requires to use the alternate charset (graphic charset), that in st case was to select charset graphic for G1, but it was not useful at all because smacs and rmacs were always redefining the value of G0.
2014-08-19Make useful DEL in application modeRoberto E. Vargas Caballero
DEL key has to generate the sequence ^[P in application mode, because such sequence means delete current character. It implies that the character sent in keypad mode must be ^? (DEL character).
2014-08-07Remove ul capabilityRoberto E. Vargas Caballero
This capability indicates that underscore '_' overstrike current letter under the cursor. It means that you can generate a underline 'b' using 'b^H_', because it writes a 'b' then backward one characther and then overstrike '_'. St has not such behaviour, so it is an error to have this capability.
2014-04-11Fix Backspace and Delete charactersRoberto E. Vargas Caballero
Backspace key must generate the backspace character (\010) and Delete key must generate the delete character (\0177). In some systems the kernel configuration for erasing previous character is \0177, so some programs (for example cat, ed, mail, ...), can not understand the correct meaning of backspace. In this cases it is only needed this command: stty erase 
2014-03-06Add terminfo entries for printerRoberto E. Vargas Caballero
These capabilities inform to programs how print in local printer of the terminal.
2013-12-10Fix rmul definitionEric Pruitt
rmul means "exit underline mode", so a full reset of all the attributes is not the correct way of exiting from underline mode, because it is going to modify also another attributes not related.
2013-08-12Add terminfo definitions for terminals with meta keyRoberto E. Vargas Caballero
Some programs don't check the value of km and use smm and rmm capabilites, and they cause the terminal change to meta enabled mode even in cases where is not desirable. Allmost all people is using the terminal waiting that meta sends escape, so rmm and smm are not needed. If someone needs meta sets 8 bit he can use the correct terminfo definition in TERM.
2013-04-26Enable blinking in st.Christoph Lohmann
2013-04-23Yes, rs2 != is2.Christoph Lohmann
2013-04-23There is no 8bit by default and reset 8bit too.Christoph Lohmann
2013-04-23Implementing 8 bit mode for meta.Christoph Lohmann
2013-01-20Implementing Back Color Erase (BCE).Christoph Lohmann
2013-01-08Standout is now reverse. This makes bsd-games work in st.Christoph Lohmann
2012-11-25Add support for End keyRoberto E. Vargas Caballero
- Shift + End : Delete until end of line. - Control + End : Delete until end of screen. When the End key is pressed without any modifier is not generated the correct sequence for it (going to the end of the screen), because the size of the terminal is not known, so it is not possible write a sequence for this purpouse. --- config.def.h | 10 ++++++++-- st.info | 2 ++ 2 files changed, 10 insertions(+), 2 deletions(-)
2012-11-25Add support for Supr keyRoberto E. Vargas Caballero
Del : Delete character under cursor. Shift + Del : Delete the line under cursor. Ctrl + Del: Delete the full screen. --- config.def.h | 16 ++++++++++++---- st.info | 2 ++ 2 files changed, 14 insertions(+), 4 deletions(-)
2012-11-25Add support for insert keyRoberto E. Vargas Caballero
Insert key stands for a key which allows enter or leaves insert mode, so let it generates the correct sequence to change between these modes: - Insert: Enter in insert mode. - Shift + Insert: Leave insert mode (replace mode). - Control + Insert: Insert a blank line. Like Shift + Insert also paste text, if a user want this feature be full functional he has to modify such shortcut. --- config.def.h | 16 ++++++++++++---- st.info | 3 +++ 2 files changed, 15 insertions(+), 4 deletions(-)
2012-11-25Fix value of ka1 terminfo capabilityRoberto E. Vargas Caballero
ka1 stands for upper left of keypad, so the correct value is the one generated by Home in application keypad mode. --- st.info | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2012-11-15Import the patch of Eckehard Berns to add insert mode. Thanks!Christoph Lohmann
2012-11-13Add missed key definitionsRoberto E. Vargas Caballero
This patch adds the keys for the keypad (in both modes, application mode or ansi mode) and function keys. It uses the same convention than xterm and instead of using the XK_Fxx values it generates them using F1-F12 and modifiers. For example: F1 -> ^[OP F1 + Shift = F13 -> ^[[1;2P F1 + Control = F25 -> ^[[1;5P F1 + Mod2 = F37 -> ^[[1;6P F1 + Mod1 = F49 -> ^[[1;3P F1 + Mod3 = F61 -> ^[[1;4P It is also important notice than the terminfo capability kIC (shifted insert key) only can be generated using the keypad keyboard, because the shorcut for selection paste is using the same combination. After this path the number of elements in the Key array becomes high, and maybe a sequencial search is not enough efficient now. --- TODO | 6 +--- config.def.h | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++- st.info | 70 ++++++++++++++++++++++++++++++++++++++-- 3 files changed, 169 insertions(+), 9 deletions(-)
2012-11-13Add control and meta combinations for arrow keysRoberto E. Vargas Caballero
Since there isn't any terminfo capability for control and meta modifiers for arrows keys it is necessary use the same that almost terminal emulators use, because there are a lot of programs which have these codes hardcoded. This cause also that shift combinations are also changed, but in this case this is not a problem since there are terminfo capabilities for them. After this patch shift-up and shift-down continue not working in emacs with TERM=st, but they work with TERM=xterm, so it is possible some other changes are necessary in the terminfo entry. --- config.def.h | 16 ++++++++++++---- st.info | 8 ++++---- 2 files changed, 16 insertions(+), 8 deletions(-)
2012-11-13Fix arrow keys terminfo capabilitiesRoberto E. Vargas Caballero
Usually the arrow keys generate the ANSI sequence which terminal will understand like a movement, so it is not necessary any dealing for them, the program can not know if the sequence is generate for a echo key or directly from the program. If you need really know if the key was pressed then you need activate the keypad mode where the keys will generate a special code for each keypad key. The terminfo capabilities kcub1, kcud1, kcuf1 and kcuu1 are used for this keypad code, not for the sequence generate in the ansi mode. --- st.info | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
2012-11-13Fix keypad mode and cursor modeRoberto E. Vargas Caballero
Keypad mode is used for detecting when keys in the auxiliary keypad are pressed, while cursor mode is used for detecting when a cursor is pressed, but they are different modes. St was mixing both modes and DECPAM and DECPNM modified the cursor mode, and this was incorrect. --- st.c | 5 +++-- st.info | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-)
2012-09-25Enabling enacs and adding compatibility to xterm and urxvt for alternativeChristoph Lohmann
charsets.
2012-09-05Implement italic font support.Christoph Lohmann
2012-09-05Enable keypad set and unset commands.Christoph Lohmann
2012-09-05Disable BCE again.Christoph Lohmann
2012-09-04Updating the TODO and enabling BCE.Christoph Lohmann
2012-09-03Fixing a type in in2 in the st.info.Christoph Lohmann
2012-09-03Patch from Roberto Vargas. »Add initialization strings in terminfo«Christoph Lohmann
Taken from the description: When tput init is executed the list of task performed are (taken from terminfo(5)): run the program iprog output is1 is2 set the margins using mgc, smgl and smgr set tabs using tbc and hts print the file if and finally output is3. When reset is executed, a more stronger initialization process is performed, so the terminal can return from an unknown state. rs1, rs2 and rs3 are used in this case instead of using is1, is2 and is3. This patch makes is2 = rs2, resets insert mode and set normal keypad mode. For rs1 it performs a full initilization using ^[c.
2012-09-02Add standout mode.Christoph Lohmann
2012-09-02Add vpa terminfo capabilityRoberto E. Vargas Caballero
--- st.info | 2 ++ 1 file changed, 2 insertions(+)
2012-08-29Adding setb and setf and a comment about terminfo installation.Christoph Lohmann