aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* docs: document completion description supportHEADmain魏曹先生9 hours3-25/+114
| | | | | Update changelog and issue tracker notes for the enhanced `default_completion` behavior.
* refactor(metadata): move metadata module to core crate魏曹先生9 hours4-2/+6
|
* chore(core): merge custom completions with defaults魏曹先生10 hours2-1/+23
| | | | | | | When a concrete entry's custom completion handler produces a `Suggest` value, combine it with the default subcommand suggestions instead of replacing them entirely. `FileCompletion` still falls back to the default completion since it cannot be meaningfully merged.
* refactor(dispatch_tree): match longest registered prefix in trie魏曹先生10 hours2-33/+55
| | | | | | | | Refactor `build_dispatch_body` to take a caller-provided `no_match` fallback token stream instead of hardcoding `build_entry_fallback` calls. Thread the fallback through recursive calls so child paths are preferred over exact endpoints at the same depth, matching the dynamic dispatcher's longest-prefix-wins behavior.
* feat(metadata): add Description convention metadata type魏曹先生10 hours4-0/+90
|
* feat(gen_program): add get_metadata method stub魏曹先生11 hours2-0/+11
|
* feat: add entry metadata system with compile-time typed values魏曹先生11 hours30-1/+1542
| | | | | | | | | | | Add `Metadata<B>` trait and `#[metadata(Entry)]` attribute macro to attach arbitrary, compile-time-typed metadata to entries. Implement `ProgramCollect::get_metadata<T>()` for runtime retrieval, backed by a global registry populated by `register_metadata!`. Extend `pathf` with `MetadataPattern` to resolve metadata types across modules at build time. Add two examples demonstrating metadata usage with and without pathf integration.
* feat: prioritize default completion over empty fallback魏曹先生27 hours1-1/+5
|
* fix: update install scripts to use mingling_cli path and make shell魏曹先生28 hours2-2/+2
| | | | script executable
* chore: ignore __*.rs files魏曹先生29 hours1-0/+1
|
* feat(linter): use RendererInvoker for JSON report rendering魏曹先生29 hours1-4/+8
| | | | | Replace AnyOutput-based dispatch with RendererInvoker in render_lint_reports_json to improve type safety and clarity.
* feat(comp): add prefix and suffix methods to Suggest魏曹先生30 hours2-0/+73
|
* fix(core): resolve subcommands after global parameters魏曹先生30 hours2-13/+67
| | | | Fix command tree matching when global flags precede the subcommand.
* feat(comps): improve bash completion script word tracking魏曹先生31 hours2-12/+33
| | | | | | | | Rework bash completion script to fix word-index tracking when the cursor is in the middle of a word, compute the current word from COMP_LINE truncated at COMP_POINT, and use space-separated option arguments. Also trim colon prefixes from completion items when COMP_WORDBREAKS includes colons.
* chore: escape colons in zsh completion descriptions魏曹先生31 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魏曹先生32 hours1-2/+2
|
* docs: fix trailing whitespace in issue doc page魏曹先生33 hours1-1/+1
|
* refactor(picker): replace global picker functions with PickerHelper魏曹先生33 hours4-35/+72
| | | | trait
* chore: add EntryFallback completion support魏曹先生33 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魏曹先生34 hours1-4/+3
|
* chore: ignore draft Python files魏曹先生34 hours1-0/+1
|
* chore!: rename ErrorDispatcherNotFound to EntryFallback魏曹先生34 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魏曹先生46 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魏曹先生46 hours1-0/+2
|
* fix(shell-ctx): distinguish missing -F from empty flag魏曹先生46 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魏曹先生46 hours1-2/+2
|
* refactor: simplify boolean and type assignment logic魏曹先生46 hours1-3/+3
|
* feat(ci): build workspace with all documented features魏曹先生46 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魏曹先生47 hours1-0/+2
|
* docs: update Mingling description wording魏曹先生47 hours1-1/+1
|
* docs(build): update build feature documentation魏曹先生47 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魏曹先生47 hours1-2/+10
|
* chore(docs): add Arborium header to docs build魏曹先生47 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魏曹先生47 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魏曹先生48 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魏曹先生48 hours1-5/+7
|
* docs: add CRATE_ROOT module for docs_rs builds魏曹先生48 hours1-1/+5
|
* feat(gen_program): add Entry struct and program constructors魏曹先生48 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魏曹先生2 days2-93/+173
|
* chore(zed): remove cargo features from settings魏曹先生2 days1-1/+1
|
* feat: add docs.rs generated program documentation module魏曹先生2 days4-1/+261
|
* feat(shell_ctx): replace manual arg parsing with macro魏曹先生2 days1-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魏曹先生2 days4-65/+17
|
* feat(core): add batch methods to Suggest and update macro魏曹先生2 days3-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魏曹先生3 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魏曹先生3 days1-70/+0
|
* chore: reduce visibility of debug module魏曹先生3 days1-1/+1
|
* docs: add detailed EXAMPLES module documentation魏曹先生3 days2-1/+6
|
* chore: move lib.md to docs directory魏曹先生3 days2-1/+1
|
* docs(dev): add next-gen mingling pipeline doc魏曹先生3 days2-0/+79
|