aboutsummaryrefslogtreecommitdiff
path: root/st.c
diff options
context:
space:
mode:
authorRoberto E. Vargas Caballero <k0ga@shike2.com>2012-10-06 19:13:36 +0200
committerRoberto E. Vargas Caballero <k0ga@shike2.com>2012-10-06 19:13:36 +0200
commit034dc71fb8227e8963f22b123f30962ec0b6bca7 (patch)
tree6bbfca2f1768a6b5d42fa42d97c948343583296e /st.c
parentfbfa1f83eb501e885d1077e95739a7d7cab2397f (diff)
downloadst-034dc71fb8227e8963f22b123f30962ec0b6bca7.tar.gz
st-034dc71fb8227e8963f22b123f30962ec0b6bca7.zip
Add SI and SO control codes
SI and SO allows change the G0 and G1 selection. This implementation is not full vt100 compatible, but it is complatible with linux virtual terminal implementation. For full vt100 compatibility we need remake a lot of stuff relate to the different charmaps. --- st.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
Diffstat (limited to 'st.c')
-rw-r--r--st.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/st.c b/st.c
index 8e25d23..ba6973a 100644
--- a/st.c
+++ b/st.c
@@ -1814,9 +1814,12 @@ tputc(char *c, int len) {
1814 csireset(); 1814 csireset();
1815 term.esc = ESC_START; 1815 term.esc = ESC_START;
1816 return; 1816 return;
1817 case '\016': /* XXX: SO */ 1817 case '\016': /* SO */
1818 case '\017': /* XXX: SI */ 1818 term.c.attr.mode |= ATTR_GFX;
1819 break; 1819 break;
1820 case '\017': /* SI */
1821 term.c.attr.mode &= ~ATTR_GFX;
1822 return;
1820 case '\032': /* SUB */ 1823 case '\032': /* SUB */
1821 case '\030': /* CAN */ 1824 case '\030': /* CAN */
1822 csireset(); 1825 csireset();