Commit Graph

24 Commits

Author SHA1 Message Date
CrystalSplitter
160f704353 Update cabal file with more correct version bounds
This uses the --prefer-oldest flag to find what the correct
bottom bounds should be for some package versions.
2024-01-21 14:59:41 -08:00
CrystalSplitter
9f2bb3c45b Reorganise modules to create the Ghcitui.Brick module 2024-01-19 01:46:31 -08:00
CrystalSplitter
9248597e8e Add start up logging for GHCiD 2024-01-15 13:04:18 -08:00
CrystalSplitter
4e533fe4bb Reorganise modules, clean up formatting
This moves the ghcitui libs which don't require Brick to ghcitui-core,
and the other library files to ghcitui-brick.
2024-01-15 02:12:47 -08:00
CrystalSplitter
898e00ef76 Add better failure handling in Ghcid.Daemon 2024-01-15 02:12:47 -08:00
CrystalSplitter
13b8ad8b38 Entirely rework the source viewer for more performance
This is a massive fundamental TUI change. Because Brick Viewports
are too slow to render large source files with tens of thousands
of widgets, we need to use a slice-able data structure to contain
this info.

This is where SourceWindow comes in, which efficiently displays
the source code as a custom widget. This is based on Brick.List,
though slightly different because Brick.List also doesn't
meet our needs.
2024-01-15 02:12:47 -08:00
CrystalSplitter
bf93aeecda Clean up Daemon start up and messaging 2024-01-15 02:12:47 -08:00
CrystalSplitter
34e494df37 Add submodule Ghcitui for all library components
Potentially, we should re-export the important bits. But for now this
seems to work fine.
2024-01-15 02:12:47 -08:00
CrystalSplitter
2f1ad27a96 Append commands to history only if they are not empty 2024-01-15 02:12:47 -08:00
CrystalSplitter
3c39f6836a Support program tracing
This is a fairly big feature add, where we now have program tracing
in the info sidebar.

Unfortunately, it's still fairly hard to read in its short space, so I
probably want to think about how to resize or highlight parts of the
info panel?
2024-01-15 02:12:47 -08:00
CrystalSplitter
586718e49a Simplify execMuted 2024-01-15 02:12:47 -08:00
CrystalSplitter
88992b7742 Remove deprecated lib/Tui.hs 2024-01-15 02:12:47 -08:00
CrystalSplitter
4d8b593856 Reorder most DaemonIO args 2023-10-14 21:49:33 -07:00
CrystalSplitter
33db7c4f32 Rename StringUtil.hs to Util.hs 2023-10-14 21:48:55 -07:00
CrystalSplitter
edccac0ee3 Multiple structural changes for lib
* Better documentation for nearly every module.
* Use DaemonIO (ExceptT DaemonError IO a)
2023-10-08 22:41:08 -07:00
CrystalSplitter
52a2f3c11c Module box + more 2023-10-01 22:43:10 -07:00
CrystalSplitter
ea7d9cc403 Support multiline source ranges 2023-09-20 01:23:52 -07:00
CrystalSplitter
55962ae79c Another large set of changes without much tracking 2023-08-30 00:45:59 -07:00
CrystalSplitter
afaad53b90 Add history to the live interpreter 2023-08-02 22:44:46 -07:00
CrystalSplitter
77d08e470a The interpreter commit 2023-07-30 16:02:36 -07:00
CrystalSplitter
ee8788dbf2 Add breakpoint toggling 2023-06-22 02:03:11 -07:00
CrystalSplitter
871f284e82 Some more early development 2023-06-06 22:19:12 -07:00
CrystalSplitter
39af025aa7 Continued early development work 2023-06-03 19:37:01 -07:00
CrystalSplitter
cde9f0a7e8 Initial commit 2023-05-31 20:26:13 -07:00