History log of /haiku/src/apps/terminal/VTparse.h
Revision Date Author Comments
# 242adb20 06-Jan-2021 Jérôme Duval <jerome.duval@gmail.com>

Terminal: implement ECMA-48 "REP"

fix #16724

Change-Id: Ie9f8252393a65a0101a6d78db2360f48bb52bc73
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3607
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 62eadc5e 09-Nov-2016 Jérôme Duval <jerome.duval@gmail.com>

Terminal: implement index and next-line CSI sequences.

* also ignore 0xa, 0xb, 0xc control characters in CSI sequences.


# ecfaa77a 03-Nov-2016 Jérôme Duval <jerome.duval@gmail.com>

Terminal: Implement a few cursor CSI commands.

* Cursor back tab, cursor forward tab.
* Cursor next line, cursor previous line.
* also add size 13 to the list of font sizes.


# bf88d81e 18-Apr-2013 Siarzhuk Zharski <zharik@gmx.li>

Fix GB18030 encoding support. And some cleanup ...

* Fix GB18030 Chinese encoding support for two and four bytes long
characters. This finally resolves issue described in #6227;
* Processing of multi-byte characters was slightly refactored too;
* Remove the multi-byte 94/96 graphsets designation support for
Japanese encodings. That looks like MuTerm rudiment, it had incomplete
implementation and looked like abandoned. On the other hand multi-byte
designation must be implemented in the same way as designation for
single-byte graphsets was done. Note that this multi-byte graphsets
designation has nothing to do with the normal encoding support for
usual data flow conversion - so you will be on the safe side when
use terminal encoding menu switch.
The removed feature is the ancient technique to achieve different charsets
support on 8-bit serial lines by assigning (designating) predefined
sets of characters to G0, G1, G2 and G3 and selecting them during
program life-time into GL (x20-x07E) or GR (xA0-xFF) areas by using LS
or SS functions.
For example xterm has no support for designation multi-byte graphsets
at all. Anyway if this feature is required and you can provide the
test environment - please let me know and I will be glad to implement
this feature in more easy and consistent way;
* Remove unreferenced gSmbcsTable and gScsTable parsing tables that
looks like is not used anymore;
* Remove gCS96GroundTable and gMbcsTable parsing tables that were used
by multi-byte 94/96 Japanese graphsets support and now obsoleted by
removing mentioned feature;
* Remove some obsoleted #defines, like HW statusline support for
example, from parse tables definition.


# daebca78 21-Mar-2013 Siarzhuk Zharski <zharik@gmx.li>

More standard handling G0,G1,G2,G3 graph.char sets

Handling of graphic character sets G0-G3 is fixed and implemented in
more consistent, extensible way.


# 5b41331f 09-Mar-2013 Siarzhuk Zharski <zharik@gmx.li>

CodeStyle fixes, some refactoring and cleanup

* Clear some codestyle issues catched by checker script;
* Rename RestartDebugCapture to more consistent StartStopDebugCapture;
* Updated Copyrights and authors lists, some occurences of the raw MIT
licence text replaced with "under the terms of MIT licence" reference;
* Fixes for x86_64 build.

This is cumulative cleanup commit for series of Terminal refactoring
changes I have introduced last time. No significant functional changes.


# 6d30b376 05-Mar-2013 Siarzhuk Zharski <zharik@gmx.li>

Support for underline and ibeam terminal cursor styles

* Add support for underline and i-beam cursor shapes. No corresponding
UI configuration in preferences view ATM because preferences are waiting
for refactoring and we need some eggs for this Easters. ;-)
* Add handling of VT520/xterm specific DECSCUSR control sequences
allowing applications to modify the style and blinking state of the
cursor. May be utilized, for example, by console version of vim;
* Implement cursor blinking/hiding on DECSET/DECRST commands.


# 3614af01 13-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Fix #2673 : allow use of \E(0 to switch to line drawing character set.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38088 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a177ec8c 16-Jun-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added support for \ESC[%dX (erase characters).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25988 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9035d0e2 16-Jun-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added support for \ESC[%dT (scroll screen down).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25984 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3f600843 16-Jun-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Support for \ESC[%dS (scroll screen up).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25982 a95241bf-73f2-0310-859d-f6bbb57e9c96


# eed037b6 08-May-2008 François Revol <revol@free.fr>

- SetPosX/Y were wrong, but not yet used.
- implemented HPA/VPA (CV/CH) sequences (set absolute v and h position). It's optional but because the beterm termcap advertises it we must implement it. Also note beterm increments args unlike others. This fixes all obvious display issues with the rhapsody IRC client (a small ncurses client I ported).
- maybe we should switch the CASE_* to an enum ?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25392 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d3dc729f 18-Jul-2005 Axel Dörfler <axeld@pinc-software.de>

Moved the files out of the MYOB folder into the main folder.
There are some double entries (like TermApp.cpp and TerminalApp.cpp, so
it still needs a further cleanup).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13734 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bf88d81ea66a93295ec06ec8668c38e28aa49957 18-Apr-2013 Siarzhuk Zharski <zharik@gmx.li>

Fix GB18030 encoding support. And some cleanup ...

* Fix GB18030 Chinese encoding support for two and four bytes long
characters. This finally resolves issue described in #6227;
* Processing of multi-byte characters was slightly refactored too;
* Remove the multi-byte 94/96 graphsets designation support for
Japanese encodings. That looks like MuTerm rudiment, it had incomplete
implementation and looked like abandoned. On the other hand multi-byte
designation must be implemented in the same way as designation for
single-byte graphsets was done. Note that this multi-byte graphsets
designation has nothing to do with the normal encoding support for
usual data flow conversion - so you will be on the safe side when
use terminal encoding menu switch.
The removed feature is the ancient technique to achieve different charsets
support on 8-bit serial lines by assigning (designating) predefined
sets of characters to G0, G1, G2 and G3 and selecting them during
program life-time into GL (x20-x07E) or GR (xA0-xFF) areas by using LS
or SS functions.
For example xterm has no support for designation multi-byte graphsets
at all. Anyway if this feature is required and you can provide the
test environment - please let me know and I will be glad to implement
this feature in more easy and consistent way;
* Remove unreferenced gSmbcsTable and gScsTable parsing tables that
looks like is not used anymore;
* Remove gCS96GroundTable and gMbcsTable parsing tables that were used
by multi-byte 94/96 Japanese graphsets support and now obsoleted by
removing mentioned feature;
* Remove some obsoleted #defines, like HW statusline support for
example, from parse tables definition.


# daebca78f8edce18e967705c7e7c00e0b4c43e23 21-Mar-2013 Siarzhuk Zharski <zharik@gmx.li>

More standard handling G0,G1,G2,G3 graph.char sets

Handling of graphic character sets G0-G3 is fixed and implemented in
more consistent, extensible way.


# 5b41331f1100c78541d87b7ad5a15d5652acb079 09-Mar-2013 Siarzhuk Zharski <zharik@gmx.li>

CodeStyle fixes, some refactoring and cleanup

* Clear some codestyle issues catched by checker script;
* Rename RestartDebugCapture to more consistent StartStopDebugCapture;
* Updated Copyrights and authors lists, some occurences of the raw MIT
licence text replaced with "under the terms of MIT licence" reference;
* Fixes for x86_64 build.

This is cumulative cleanup commit for series of Terminal refactoring
changes I have introduced last time. No significant functional changes.


# 6d30b376e908fe678fc35c79d58314367f3d44fe 05-Mar-2013 Siarzhuk Zharski <zharik@gmx.li>

Support for underline and ibeam terminal cursor styles

* Add support for underline and i-beam cursor shapes. No corresponding
UI configuration in preferences view ATM because preferences are waiting
for refactoring and we need some eggs for this Easters. ;-)
* Add handling of VT520/xterm specific DECSCUSR control sequences
allowing applications to modify the style and blinking state of the
cursor. May be utilized, for example, by console version of vim;
* Implement cursor blinking/hiding on DECSET/DECRST commands.


# 3614af01cd2ad47c8b88a74f2b2be1a62deb2b81 13-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Fix #2673 : allow use of \E(0 to switch to line drawing character set.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38088 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a177ec8cf6ae96f95e0ea57ba4ca8b2db2e4f5b3 16-Jun-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added support for \ESC[%dX (erase characters).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25988 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9035d0e247903f4480e1c8a38954b5187fc5aa36 16-Jun-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added support for \ESC[%dT (scroll screen down).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25984 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3f6008436d40129dcde5b36e962740d2c8078ca4 16-Jun-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Support for \ESC[%dS (scroll screen up).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25982 a95241bf-73f2-0310-859d-f6bbb57e9c96


# eed037b63788902306b30bc698f95400762ca1f5 08-May-2008 François Revol <revol@free.fr>

- SetPosX/Y were wrong, but not yet used.
- implemented HPA/VPA (CV/CH) sequences (set absolute v and h position). It's optional but because the beterm termcap advertises it we must implement it. Also note beterm increments args unlike others. This fixes all obvious display issues with the rhapsody IRC client (a small ncurses client I ported).
- maybe we should switch the CASE_* to an enum ?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25392 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d3dc729f9fbe302c5c45c3ec2518650a260605d7 18-Jul-2005 Axel Dörfler <axeld@pinc-software.de>

Moved the files out of the MYOB folder into the main folder.
There are some double entries (like TermApp.cpp and TerminalApp.cpp, so
it still needs a further cleanup).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13734 a95241bf-73f2-0310-859d-f6bbb57e9c96