aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* revert: Remove serde and structural renderer support魏曹先生2 days4-19/+8
|
* feat(lint): add shell completion for linter checkers魏曹先生2 days1-6/+26
|
* refactor(linter): rename LintRegistry to ResLintRegistry魏曹先生2 days2-7/+7
|
* feat(linter): refactor lint registry into program resource魏曹先生2 days4-54/+58
| | | | | Extract lint registry loading from cmd_explain into a shared program-level resource initialized via setup.
* refactor(linter): simplify lint explain output formatting魏曹先生2 days1-4/+2
|
* chore: align markdown table formatting魏曹先生2 days1-8/+8
|
* chore: add shell completion for explain command魏曹先生2 days1-3/+20
|
* feat(cli): implement `explain` command and add JSON structural rendering魏曹先生2 days6-4/+139
| | | | | | | | | | Add a new `explain <LINT>` command that queries the embedded lint registry (generated by `build.rs`) and displays detailed information about a specifoic lint, including its name, title, summary, active-on target, default setting, and author. Enable the `structural_renderer` feature and add `serde`/`serde_json` dependencies to support JSON output rendering for command results.
* refactor(linter): move ra lint commands to separate module魏曹先生2 days2-64/+64
|
* refactor(linter): rename cmd_mlint to cmd_lint魏曹先生2 days2-2/+2
|
* feat: add package and project manager modules魏曹先生2 days3-0/+2
|
* docs: add help text for CLI commands and descriptions魏曹先生2 days4-3/+66
| | | | | | Add help text for global flags, commands, and subcommands in help.txt. Add metadata descriptions for linter and metadata commands.
* refactor: extract metadata args into reusable statics魏曹先生2 days2-9/+39
|
* feat(cli): add dynamic completion scripts and global help魏曹先生2 days7-27/+31
| | | | | | Enable the dispatch_tree and comp features to generate completion scripts during build and register global help and completion support in the main entry point.
* chore: remove deprecated comment魏曹先生2 days1-3/+0
|
* fix(comps): fix PowerShell completion word index and arg passing魏曹先生2 days2-8/+32
| | | | | Correct off-by-one word index computation and conditionally pass option values only when non-empty to avoid spurious parsing.
* fix(zsh): guard compdef call with function check魏曹先生2 days1-3/+6
| | | | | If compdef is not available, fall back to compctl directly without invoking an undefined command.
* chore: bump version to 0.4.0魏曹先生2 days9-20/+20
|
* feat(pathf): remove BasicStructPattern from analyzer魏曹先生5 days4-4/+12
| | | | | | | | Remove the BasicStructPattern from pathf's pattern analyzer to eliminate noise from plain structs not associated with any Mingling macro. Also clean up the now-unused `basic_struct` module and update the integration test to assert plain structs are no longer collected.
* feat(diagnostic): translate doc comment to English魏曹先生5 days1-1/+1
|
* fix(core): write RenderResult::eprintln to stderr魏曹先生6 days2-1/+3
| | | | | Fix the method to use `eprintln!` instead of `println!` when `immediate_output` is enabled, ensuring error output goes to stderr.
* chore: remove redundant comments in fish completion script魏曹先生6 days1-8/+0
|
* feat(flags): derive PartialEq and Eq for ShellFlag魏曹先生7 days1-1/+1
|
* docs: document completion description support魏曹先生7 days3-25/+114
| | | | | Update changelog and issue tracker notes for the enhanced `default_completion` behavior.
* refactor(metadata): move metadata module to core crate魏曹先生7 days4-2/+6
|
* chore(core): merge custom completions with defaults魏曹先生7 days2-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魏曹先生7 days2-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魏曹先生7 days4-0/+90
|
* feat(gen_program): add get_metadata method stub魏曹先生7 days2-0/+11
|
* feat: add entry metadata system with compile-time typed values魏曹先生7 days30-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魏曹先生7 days1-1/+5
|
* fix: update install scripts to use mingling_cli path and make shell魏曹先生7 days2-2/+2
| | | | script executable
* chore: ignore __*.rs files魏曹先生7 days1-0/+1
|
* feat(linter): use RendererInvoker for JSON report rendering魏曹先生7 days1-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魏曹先生8 days2-0/+73
|
* fix(core): resolve subcommands after global parameters魏曹先生8 days2-13/+67
| | | | Fix command tree matching when global flags precede the subcommand.
* feat(comps): improve bash completion script word tracking魏曹先生8 days2-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魏曹先生8 days2-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魏曹先生8 days1-2/+2
|
* docs: fix trailing whitespace in issue doc page魏曹先生8 days1-1/+1
|
* refactor(picker): replace global picker functions with PickerHelper魏曹先生8 days4-35/+72
| | | | trait
* chore: add EntryFallback completion support魏曹先生8 days3-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魏曹先生8 days1-4/+3
|
* chore: ignore draft Python files魏曹先生8 days1-0/+1
|
* chore!: rename ErrorDispatcherNotFound to EntryFallback魏曹先生8 days26-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魏曹先生8 days1-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魏曹先生8 days1-0/+2
|
* fix(shell-ctx): distinguish missing -F from empty flag魏曹先生8 days1-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魏曹先生8 days1-2/+2
|
* refactor: simplify boolean and type assignment logic魏曹先生8 days1-3/+3
|