463ca9ef40
TUI view management and input handling cleanup
2024-09-16 16:18:18 +00:00
24b5cdbbf6
More monior TUI refactor/cleanup
...
`tui/tui.go` is no longer responsible for passing window resize updates
to all views, instead we request a new window size message to be sent at
the same time we enter the view, allowing the view to catch and handle
it.
Add `Initialized` to `tui/shared/View` model, now we only call
`Init` on a view before entering it for the first time, rather than
calling `Init` on all views when the application starts.
Renames file, small cleanups
2024-09-16 14:04:08 +00:00
443c8096d3
TUI refactor
...
- Clean up, improved startup logic, initial conversation load
- Moved converation/message business logic (mostly) into `model/tui`
2024-09-16 00:48:45 +00:00
c1ead83939
Rename shared.State to shared.Shared
2024-06-09 16:19:19 +00:00
97cd047861
Cleaned up tui view switching
2024-05-30 07:18:31 +00:00
ed784bb1cf
Clean up tui View handling
2024-05-30 07:05:08 +00:00
c1792f27ff
Split up tui code into packages (views/*, shared, util)
2024-05-30 06:44:40 +00:00
aeeb7bb7f7
tui: Add --system-prompt handling
...
And some state handling changes
2024-05-07 08:19:45 +00:00
7463b7502c
tui: basic conversation selection and navigation
2024-04-01 22:47:15 +00:00
1404cae6a7
tui: call handleResize on states before transitioning
2024-04-01 17:07:50 +00:00
9e6d41a3ff
tui: fixed Init handling
...
Don't re-init components on each state change
2024-04-01 17:03:49 +00:00
105ee2e01b
tui: update/clean up input handling
2024-04-01 16:42:23 +00:00
e1970a315a
tui: split model up into chat/conversations
2024-03-31 23:51:45 +00:00
020db40401
tui: renamed stateConversation -> stateChat
...
stateConversationList -> stateConversations
2024-03-30 20:50:33 -06:00
811ec4b251
tui: split up conversation related code into conversation.go
...
moved some things to util, re-ordered some functions
2024-03-30 20:50:33 -06:00
c68cb14eb9
tui: Initial rough conversation list view
2024-03-30 20:50:33 -06:00
cef87a55d8
tui: initial wiring of different "app states"
2024-03-30 20:50:33 -06:00
9cd28d28d7
tui: renamed uiCache to views, cleanup
2024-03-29 20:56:39 +00:00
0b991800d6
tui: dynamic input textarea height and styling updates
...
Maintain a height of 4 up to half of the main content area
Add rounded border
2024-03-29 20:00:28 +00:00
5af857edae
tui: truncate title to width
2024-03-29 15:48:50 +00:00
3e24a54d0a
tui: add border above input
2024-03-28 06:53:39 +00:00
a669313a0b
tui: add tool rendering
...
cleaned up message rendering and changed cache semantics
other smaller tweaks
2024-03-26 08:06:46 +00:00
6310021dca
tui: improve footer truncation
2024-03-23 04:08:48 +00:00
ef929da68c
tui: add uiCache
...
Clean up/fix how we calculate the height of the content viewport
2024-03-23 03:55:20 +00:00
91c74d9e1e
Update CreateChatCompletion behavior
...
When the last message in the passed messages slice is an assistant
message, treat it as a partial message that is being continued, and
include its content in the newly created reply
Update TUI code to handle new behavior
2024-03-22 20:02:28 +00:00
3185b2d7d6
tui: show the message position when focused
2024-03-17 22:55:02 +00:00
6c64f21d9a
tui: support for message retry/continue
...
Better handling of persistence, and we now ensure the response we
persist is trimmed of whitespace, particularly important when a response
is cancelled mid-stream
2024-03-17 22:55:02 +00:00
6f737ad19c
tui: handle text wrapping ourselves, add ctrl+w wrap toggle
...
Gets rid of those pesky trailing characters
2024-03-17 22:55:02 +00:00
a8ffdc156a
tui: open input/messages for editing in $EDITOR
2024-03-17 22:55:02 +00:00
7a974d9764
tui: add ability to select a message
2024-03-17 22:55:02 +00:00
adb61ffa59
tui: conversation rendering tweaks, remove input character limit
2024-03-17 22:55:02 +00:00
1c7ad75fd5
tui: fixed response cancelling
2024-03-17 22:55:02 +00:00
613aa1a552
tui: ctrl+r to retry previous message
2024-03-17 22:55:02 +00:00
71833b89cd
tui: fixed footer styling
2024-03-17 22:55:02 +00:00
2ad93394b1
tui: removed scrollbar
2024-03-17 22:55:02 +00:00
f49b772960
tui: minor fixed and cleanup
2024-03-17 22:55:02 +00:00
29d8138dc0
tui: update lodos
2024-03-17 22:55:02 +00:00
3756f6d9e4
tui: add response waiting spinner
2024-03-17 22:55:02 +00:00
41916eb7b3
tui: add LLM response error handling
...
+ various other small tweaks
2024-03-17 22:55:02 +00:00
3892e68251
tui: add a "scroll bar" and error view
2024-03-17 22:55:02 +00:00
8697284064
tui: generate titles for conversations
2024-03-17 22:55:02 +00:00
383d34f311
tui: persist new conversations as well
2024-03-17 22:55:02 +00:00
ac0e380244
tui: add reply persistence
2024-03-17 22:55:02 +00:00
c3a3cb0181
tui: improve footer rendering
...
Made it easier to add segmemts later, better handling of padding
2024-03-17 22:55:02 +00:00
612ea90417
tui: slight function order change
2024-03-17 22:55:02 +00:00
94508b1dbf
tui: cache highlighted messages
...
Syntax highlighting is fairly expensive, and this means we no longer
need to do syntax highlighting on the entire conversaion each time a new
message chunk is received
2024-03-17 22:55:02 +00:00
7e002e5214
tui: adjust message header styling
2024-03-17 22:55:02 +00:00
48e4dea3cf
tui: style tweaks
2024-03-17 22:55:02 +00:00
0ab552303d
tui: add contentStyle, applied to overall viewport content
2024-03-17 22:55:02 +00:00
6ce42a77f9
tui: update TODO
2024-03-17 22:55:02 +00:00