Commit Graph

19 Commits

Author SHA1 Message Date
8ece2a5de6 feat(help): add invocation-aware path rendering for nested CLI help
- introduce InvocationContext and InvocationSegment for styled invocation paths
- thread invocation_context through command arg resolution and help/tldr rendering
- render CLI and namespace help from routed context instead of static program formatting
- support per-segment styling for nested namespaces and command paths
- rebase help target context for `help -k` so usage matches the target command path
- clean up context module docs and remove old invocation path formatting helper
2026-04-11 20:00:01 -04:00
30cb8b97b5 feat: add recursive namespace routing and standalone runner polish
- introduce namespace-aware routing with RootParseResult, RouteResult, and InvocationContext
- register submenus as FalyxNamespace entries and resolve them through _entry_map
- refactor FalyxParser to parse only root options and leave recursive routing to Falyx
- add prepare_route, resolve_route, and route dispatch flow to Falyx
- update validator and completer to understand namespace entries and route results
- unify help/TLDR rendering APIs and add custom_tldr support on Command
- tighten Command.resolve_args error handling and parser type validation
- improve CommandRunner dependency validation and argv handling
- add BottomBar.has_items and improve wrapped executor error messages
- add tests for execution options, resolve_args, command runner, and route-aware validation
2026-04-11 11:57:03 -04:00
7f63e16097 feat: Add module docs, Enum coercion, tracebacks, and toggle improvements
- Add comprehensive module docstrings across the codebase for better clarity and documentation.
- Refactor Enum classes (e.g., FileType, ConfirmType) to use `_missing_` for built-in coercion from strings.
- Add `encoding` attribute to `LoadFileAction`, `SaveFileAction`, and `SelectFileAction` for more flexible file handling.
- Enable lazy file loading by default in `SelectFileAction` to improve performance.
- Simplify bottom bar toggle behavior: all toggles now use `ctrl+<key>`, eliminating the need for key conflict checks with Falyx commands.
- Add `ignore_in_history` attribute to `Command` to refine how `ExecutionRegistry` identifies the last valid result.
- Improve History command output: now includes tracebacks when displaying exceptions.
2025-07-19 14:44:43 -04:00
68d7d89d64 Add ArgumentAction.STORE_BOOL_OPTIONAL, Add BreakChainSignal 2025-07-14 21:59:12 -04:00
4c1498121f Add falyx.console for single rich.console.Console instance, Add ConfirmAction, SaveFileAction, Add lazy evaluation for ArgumentAction.ACTION 2025-07-12 11:52:02 -04:00
53ba6a896a Add multi selecto to SelectionAction and SelectFileAction, Allow IOActions to receive no input, Rename subpackage falyx.parsers -> falyx.parser, Add default_text to UserInputAction 2025-06-08 12:09:16 -04:00
b24079ea7e Add ExecutionContext.signature, fix partial command matching with arguments, fix passing args to Falyx._create_context helper 2025-06-05 17:23:27 -04:00
ac82076511 Add filtering and options for History Command 2025-06-03 23:07:50 -04:00
4f3632bc6b Remove emojis from logging statements 2025-05-24 15:09:39 -04:00
87a56ac40b Linting 2025-05-13 00:18:04 -04:00
880d86d47d Move spinner and confirmation logic from Falyx to Command 2025-05-08 00:45:24 -04:00
5d96d6d3d9 Change headless -> run_key, Add previews, _wrap_literal -> _wrap 2025-05-06 22:56:45 -04:00
91c4d5481f Add MenuAction, SelectionAction, SignalAction, never_prompt(options_manager propagation), Merged prepare 2025-05-04 14:11:03 -04:00
e91654ca27 Linting, pre-commit 2025-05-01 20:26:50 -04:00
bc1637143c Rename ResultsContext -> SharedContext 2025-04-30 21:45:11 -04:00
80de941335 Hide ioactions, Add doc strings, Add tests 2025-04-29 16:34:20 -04:00
ebcd4b43c6 Add ResultReport hook 2025-04-17 22:34:52 -04:00
4969b7cfa8 Add Examples 2025-04-16 21:52:40 -04:00
3c75b5db3a Initial 2025-04-14 22:14:12 -04:00