aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* chore: escape colons in zsh completion descriptions魏曹先生11 hours2-5/+5
| | | | | | | Fix zsh completion script to escape colons in completion items and descriptions, preventing parsing issues with `_describe`. Also iterate over the original completions array for simple completions to correctly extract completion items.
* feat: use Pickable trait for value conversion魏曹先生11 hours1-2/+2
|
* docs: fix trailing whitespace in issue doc page魏曹先生13 hours1-1/+1
|
* refactor(picker): replace global picker functions with PickerHelper魏曹先生13 hours4-35/+72
| | | | trait
* chore: add EntryFallback completion support魏曹先生13 hours3-2/+38
| | | | | | Add `#[completion(EntryFallback)]` syntax to enable custom completion suggestions for unmatched entries, merging fallback results with default completions via `Suggest::combine()`.
* fix: rename dispatcher_not_found to entry_fallback魏曹先生14 hours1-4/+3
|
* chore: ignore draft Python files魏曹先生14 hours1-0/+1
|
* chore!: rename ErrorDispatcherNotFound to EntryFallback魏曹先生14 hours26-58/+78
| | | | | | | | Rename the internal fallback type and its associated `ProgramCollect` plumbing from `ErrorDispatcherNotFound`/`build_dispatcher_not_found` to `EntryFallback`/`build_entry_fallback`, along with the generated enum variant and pack type. Update all documentation, examples, and tests accordingly.
* chore(ci): test arg-picker separately from workspace魏曹先生26 hours1-6/+15
| | | | | | `arg-picker` is excluded from the workspace test command and tested on its own due to conflicting `mingling_support` feature doctests. Also remove unused `mling/res` ignore directories.
* docs(mingling): fix doc example compile error魏曹先生26 hours1-0/+2
|
* fix(shell-ctx): distinguish missing -F from empty flag魏曹先生26 hours1-2/+8
| | | | | | Previously, an absent -F and a present -F without a value both mapped to "unknown". Now, a -F with no value maps to an empty shell flag, while a missing -F remains "unknown".
* chore: use idiomatic boolean and reference patterns魏曹先生26 hours1-2/+2
|
* refactor: simplify boolean and type assignment logic魏曹先生26 hours1-3/+3
|
* feat(ci): build workspace with all documented features魏曹先生26 hours1-4/+86
| | | | | | Use `--workspace` for build, clippy, and test tasks to cover feature-gated code instead of relying on default features. Skip workspace members in individual crate tasks to avoid redundant runs.
* fix: add generic program entry point variant魏曹先生26 hours1-0/+2
|
* docs: update Mingling description wording魏曹先生27 hours1-1/+1
|
* docs(build): update build feature documentation魏曹先生27 hours1-6/+49
| | | | | Document build-time features, feature pairing, and add a `build.rs` template for easily setting up `comp` and `pathf`.
* chore: add mingling CLI version files to config魏曹先生27 hours1-2/+10
|
* chore(docs): add Arborium header to docs build魏曹先生27 hours5-3/+7
| | | | | | Add the Arborium JS library header to the documentation build via RUSTDOCFLAGS and docs.rs metadata so generated docs include the interactive Arborium components.
* feat(build): document build module and refine feature exports魏曹先生27 hours6-18/+36
| | | | | Add module-level docs for the build module via include_str and restrict public re-exports to explicit items instead of glob imports.
* docs: Add preset feature groups and improve feature docs魏曹先生27 hours7-8/+205
| | | | | | | Add convenience presets (`mini`, `advanced`, `full`, `build_advanced`, `build_full`) to `mingling/Cargo.toml` and document them in both English and Chinese feature docs. Update getting-started guides to reflect the new default `core`/`macros` features.
* docs: update changelog for CRATE_ROOT module placement魏曹先生27 hours1-5/+7
|
* docs: add CRATE_ROOT module for docs_rs builds魏曹先生28 hours1-1/+5
|
* feat(gen_program): add Entry struct and program constructors魏曹先生28 hours1-3/+37
| | | | | | | Add `Entry` struct with `pub(crate)` visibility for `inner` fields, plus `new()` and `this()` constructors on `ThisProgram` for docs.rs demonstration of the `gen_program!` macro expansion.
* chore: update run scripts for version 0.1.2魏曹先生28 hours2-93/+173
|
* chore(zed): remove cargo features from settings魏曹先生31 hours1-1/+1
|
* feat: add docs.rs generated program documentation module魏曹先生32 hours4-1/+261
|
* feat(shell_ctx): replace manual arg parsing with macro魏曹先生35 hours1-33/+9
| | | | | Use the `special_argument!` macro to simplify extracting shell context values from command-line arguments.
* revert: Remove picker_comp module and PickerArgSuggest trait魏曹先生39 hours4-65/+17
|
* feat(core): add batch methods to Suggest and update macro魏曹先生40 hours3-12/+74
| | | | | | | | | Add `add_suggest()` and `add_suggest_with_description()` methods to `Suggest` for ergonomic batch population of suggestion sets from collections of strings. Update the `suggest!` macro to use these new methods and accept expressions beyond string literals for suggestion items.
* refactor!: rename `extra_macros` feature to `extras`feat/new-pipeline-model魏曹先生2 days51-167/+201
| | | | | Update all references across docs, examples, and configuration files to use the shorter `extras` feature name.
* docs: remove redundant macro doc comments魏曹先生2 days1-70/+0
|
* chore: reduce visibility of debug module魏曹先生2 days1-1/+1
|
* docs: add detailed EXAMPLES module documentation魏曹先生2 days2-1/+6
|
* chore: move lib.md to docs directory魏曹先生2 days2-1/+1
|
* docs(dev): add next-gen mingling pipeline doc魏曹先生3 days2-0/+79
|
* feat(picker_comp): add module to bridge picker and comp subsystems魏曹先生6 days3-0/+64
|
* feat(core/comp): add Suggest::combine method for merging suggestions魏曹先生6 days2-0/+17
|
* feat(renderer): add exit_process method to RenderResult魏曹先生6 days1-1/+19
|
* feat(renderer): add ExitCode conversions for RenderResult魏曹先生6 days1-0/+13
|
* feat(dispatcher, gen_program): add From impl and default Entry pack type魏曹先生6 days3-0/+12
| | | | | | Add a `From<pack_Type> for crate::Entry` implementation in `dispatcher!()` macro and a default `Entry` pack type in `gen_program!()` for ergonomic program entry handling
* feat(example): add command macro example魏曹先生6 days7-0/+447
|
* fix(dispatch_tree): emit re-export token stream directly魏曹先生6 days1-5/+8
|
* feat(attr): allow #[command] on functions with no args param魏曹先生6 days1-20/+42
| | | | | | | Previously, #[command] required at least one owned parameter for args injection. Now, if the first parameter is a reference or there are no parameters, a synthetic entry parameter is inserted so the function can still be used with #[chain].
* feat(macros): wrap gen_program output in a hidden module魏曹先生6 days4-39/+96
| | | | | | Move pathf type resolution from `program_final_gen` to `gen_program` and isolate generated code inside `__this_program_impl` to prevent namespace pollution
* refactor(macros): move pathf include from gen_program into魏曹先生6 days2-10/+12
| | | | program_final_gen
* feat(mingling_macros, mingling_pathf): add `#[command]` attribute macro魏曹先生6 days8-0/+559
| | | | | | | | | | | | | Add a new `#[command]` attribute macro (feature-gated behind `extra_macros`) that converts a plain function with a `Vec<String>` parameter into a fully wired Mingling command. The macro generates a `dispatcher!` call, a `#[chain]` wrapper, and a hidden module re-exporting all generated types. Also add `CommandPattern` to the pathf pattern analyzer to recognize `#[command]`-annotated functions and track their generated hidden modules.
* refactor(pathf): move type resolution from compile-time to build-time魏曹先生6 days6-146/+67
|
* refactor(dispatcher): replace custom dotted-to-pascal helper with魏曹先生6 days1-19/+1
| | | | `just_fmt::pascal_case!`
* feat(picker): add `unwrap_or_default`, `unwrap_or_else`, and `expect`魏曹先生7 days1-0/+49
| | | | for tuples