blob: c7a0344fc8a7ae50e9917e8affda6a3b1a0c1e67 [file] [log] [blame]
zeertzjqb00df7a2023-08-08 11:03:00 +08001CODE-MAP
2 - high-level list and description of files in the repository
3
4CONTRIBUTING
5 - documentation explaining how developers can contribute fixes and features
6
7doc/
8 - contains documentation
9
10doc/seqs.txt
11 - documents the sequences recognised by the library
12
13include/vterm.h
14 - main include file
15
16include/vterm_keycodes.h
17 - include file containing the keyboard input keycode enumerations
18
19LICENSE
20 - legalese
21
22Makefile
23 - main build file
24
25src/
26 - contains the source code for the library
27
28src/encoding.c
29 - handles mapping ISO/IEC 2022 alternate character sets into Unicode
30 codepoints
31
32src/keyboard.c
33 - handles sending reported keyboard events to the output stream
34
35src/mouse.c
36 - handles sending reported mouse events to the output stream
37
38src/parser.c
39 - parses bytes from the input stream into parser-level events
40
41src/pen.c
42 - interprets SGR sequences and maintains current rendering attributes
43
44src/screen.c
45 - uses state-level events to maintain a buffer of current screen contents
46
47src/state.c
48 - follows parser-level events to keep track of the overall terminal state
49
50src/unicode.c
51 - utility functions for Unicode and UTF-8 handling
52
53src/vterm.c
54 - toplevel object state and miscellaneous functions
55
56src/vterm_internal.h
57 - include file for definitions private to the library's internals
58
59t/
60 - contains unit tests
61
62t/harness.c
63 - standalone program to embed the library into for unit-test purposes
64
65t/run-test.pl
66 - invokes the test harness to run a single unit test script