Terminal core (src/core, QtCore only, headless testable): - VT100/xterm parser: CSI/OSC/DCS, SGR 256/truecolor, scroll regions, insert/delete, DEC special graphics, alternate screen - cell grid with 5000 line scrollback, CJK wide chars, combining marks - xterm 256 color palette Terminal widget (src/term): - QPainter renderer with run batching, wide char clipping, cursor blink - mouse selection (char/word/line), auto copy, middle click paste - full key encoding: arrows + DECCKM, F1-F12, modifiers, ctrl/alt - IME support via inputMethodEvent Transports (src/session): - SSH through the system OpenSSH client on a forkpty pseudo terminal, so agent, ProxyJump, known_hosts and 2FA keep working - Telnet with IAC negotiation (NAWS, ECHO, SGA) - Serial via QSerialPort UI (src/ui): - tabbed main window, session dialog with saved profiles - dark violet theme, CLI targets (user@host:port, telnet://, serial:) Tests: - tests/test_core: escape sequence and layout assertions - tests/test_widget: offscreen render checks and key encoding
14 lines
318 B
Prolog
14 lines
318 B
Prolog
QT = core
|
|
CONFIG += console c++17
|
|
CONFIG -= app_bundle
|
|
TARGET = vx_tests
|
|
TEMPLATE = app
|
|
INCLUDEPATH += ../src
|
|
SOURCES += test_core.cpp \
|
|
../src/core/Screen.cpp \
|
|
../src/core/CharWidth.cpp \
|
|
../src/core/Palette.cpp \
|
|
../src/core/VtParser.cpp
|
|
HEADERS += ../src/core/Screen.h \
|
|
../src/core/VtParser.h
|