Commit Graph

40 Commits

Author SHA1 Message Date
yves-biener 570dfc3c3b add(zterm): intial implementation of tui app 2024-11-13 19:41:18 +01:00
yves-biener b418e4d3a7 add(layout/vstack): intial implementation of vstack layout 2024-11-09 16:57:05 +01:00
yves-biener b5c5f4e3e2 feat(layout): fix compile errors for newly introduced layouts 2024-11-09 14:29:55 +01:00
yves-biener 225368280a feat(layouts): add WIP layout implementations 2024-11-09 04:47:08 +01:00
yves-biener ba01bf00bb mod(pane) example layout pane has top and bottom empty row
Fix corresponding RawText line control (i.e. last line and changes to
the window size in regards to the current line).
2024-11-09 01:52:37 +01:00
yves-biener 9d711ea047 mod(benchmark): correct size and provide documentation 2024-11-09 01:33:06 +01:00
yves-biener 817d818d4c feat(benchmark): add benchmark build (with build option) to test frame rate 2024-11-09 01:17:09 +01:00
yves-biener 2d2e63ac63 mod(terminal): enable termios flags corresponding to termios(3) man page 2024-11-07 23:30:40 +01:00
yves-biener 4be3451fbf mod(app): interrupt application correctly 2024-11-07 21:55:19 +01:00
yves-biener d9bcbcec7e feat(RawText): simple pager for a static file name
Layout is a simple pane without any restrictions, which should be
implemented next to see if the interfaces are stable and usable enough.
As for example the interface for `Widget.content()` has changed to
return a `[]u8` and not a `*std.ArrayList`.
2024-11-07 21:28:52 +01:00
yves-biener 2e93218b44 mod(main): use scoped log messages when reporting memory leaks 2024-11-06 17:14:27 +01:00
yves-biener 7cfe632c33 mod(terminal): write tui to stdout; log messages to stderr 2024-11-06 17:10:24 +01:00
yves-biener 4ded0210ee mod(Render): fullscreen option as comptime configuration through App(..) 2024-11-06 17:06:45 +01:00
yves-biener 9b165e8f81 add/mod the following features
- split structure for better inclusions
- create PlainRenderer to render contents to the terminal
- simplify events
- clearify what structs are created on the heap and which are on the stack
- quit event is now emitted from the main event loop and not the input loop (see helper function `App.quit`)
- rename several variables and/or functions for easier understanding
- introduce `App.interrupt` to stop the input thread and start a new sub TUI which takes over the entire screen (i.e. 'hx', 'nvim', etc.)
2024-11-06 15:20:34 +01:00
yves-biener 9ddbb19336 add: signal handling WINCH, user input thread with waiting blocking 2024-11-06 01:38:55 +01:00
yves-biener b0b262ae0b mod(read_input): read user input from tty 2024-11-05 19:59:55 +01:00
yves-biener 9ef1081903 mod(build): update zlog dependency 2024-11-04 22:35:22 +01:00
yves-biener 14aab9ef50 mod(tui): create own terminal interface framework 2024-11-04 22:27:45 +01:00
yves-biener 0330b3a2f5 add: layout and widget dynamic dispatch with interface definitions 2024-11-02 17:52:44 +01:00
yves-biener c62fc6fb43 WIP: transformations
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 1m38s
2024-11-01 20:46:27 +01:00
yves-biener aff062f144 mod(node2buffer): improve flow for list_items
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 29s
2024-10-27 19:28:32 +01:00
yves-biener 5d913f58e2 feat(node2buffer): support lists (not nested yet); fix block representation (remove unnecessary linebreak)
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 1m37s
2024-10-27 18:43:27 +01:00
yves-biener b91918e2e6 mod(node2buffer): adjust colors for blocks
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 30s
2024-10-19 16:51:11 +02:00
yves-biener 4b3ca918b5 mod(node2buffer): correct handling of code's and ``block``'s entries
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 33s
2024-10-19 16:40:33 +02:00
yves-biener a148e9e680 doc: remove cleared todo comment 2024-10-19 16:40:21 +02:00
yves-biener 002f4f4310 add(node2buffer): convert raw and code blocks with leading line numbers 2024-10-19 16:12:31 +02:00
yves-biener 03a4b571d3 mod: adjust layout and style of widgets and header links 2024-10-19 16:11:08 +02:00
yves-biener 49caf89287 mod(node2buffer): correctly display and link hyper links
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 31s
2024-10-17 16:54:38 +02:00
yves-biener d876936ff7 add(Header): social links: github and mail links 2024-10-17 16:34:37 +02:00
yves-biener b1257fd490 mod: simplify minor implementation details
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 30s
Add scroll length detection, and link transformation with highlighting.
2024-10-15 16:04:06 +02:00
yves-biener a3d0b7af9a mod(node2buffer): add styling to parsed contents
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 29s
2024-10-13 16:39:51 +02:00
yves-biener a01619911d add(zmd): parse markdown file contents and display the parsed contents
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 44s
Not everything can be parsed and displayed correctly yet, however this
will the default file format to use for adding page contents (i.e.
normal pages, blog entries, etc.)
2024-10-13 12:57:44 +02:00
yves-biener 2db1d55fcf mod(Header): move name to the right hand side
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 30s
2024-10-09 21:13:07 +02:00
yves-biener 93ecfbeda0 add(PopupMenu): menu to enable space key binding groupings
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 32s
Some minor layout changes of the application
2024-10-09 11:10:40 +02:00
yves-biener 63bef849ec add(ViewPort): wrapper for vaxis.widgets.ScrollView
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 31s
2024-10-08 15:34:48 +02:00
yves-biener 7c6d2aa659 fix(header): render title in the aligned horizontal
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 32s
2024-10-08 14:22:30 +02:00
yves-biener fd77a99150 rem(build): test for non-existing file
Zig Project Action / Lint, Spell-check and test zig project (push) Successful in 38s
2024-10-07 22:17:20 +02:00
yves-biener 5038c92ab4 add(header): header with configurable title
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 31s
2024-10-07 22:04:29 +02:00
yves-biener 6fea65a359 setup project using and
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 1m9s
2024-10-07 19:28:01 +02:00
yves-biener d46ef18ffd Initial commit 2024-10-07 19:09:57 +02:00