<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mingling.git/mingling_core/src/renderer/render_result.rs, branch picker-0.2.0</title>
<subtitle>用于开发多子命令的命令行框架
</subtitle>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/'/>
<entry>
<title>refactor(core): improve code style and public API clarity</title>
<updated>2026-08-10T07:49:31+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-08-10T07:49:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=a9d5943939261e27e58bcf5cacbb618a0f63e999'/>
<id>a9d5943939261e27e58bcf5cacbb618a0f63e999</id>
<content type='text'>
Replace bool-based settings with enums, refine visibility and
signatures, and standardize `Self` usage across the crate.

- Introduce `ErrorOutput`, `RenderOutput`, `PanicSilence`, `Verbosity`,
  `ColorOutput`, and `ProgressOutput` enums for clearer configuration
  semantics
- Make `GlobalResources`, `ProgramCell`, and
  `split_input`/`split_input_string` public
- Change hook info parameters to accept references and
  `split_input_string` to take `&amp;str`
- Apply `Self` shorthand throughout implementations and add
  `#[must_use]` attributes where appropriate
- Enable strict clippy lints with targeted allowances
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replace bool-based settings with enums, refine visibility and
signatures, and standardize `Self` usage across the crate.

- Introduce `ErrorOutput`, `RenderOutput`, `PanicSilence`, `Verbosity`,
  `ColorOutput`, and `ProgressOutput` enums for clearer configuration
  semantics
- Make `GlobalResources`, `ProgramCell`, and
  `split_input`/`split_input_string` public
- Change hook info parameters to accept references and
  `split_input_string` to take `&amp;str`
- Apply `Self` shorthand throughout implementations and add
  `#[must_use]` attributes where appropriate
- Enable strict clippy lints with targeted allowances
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(core): write RenderResult::eprintln to stderr</title>
<updated>2026-08-05T04:26:52+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-08-05T04:26:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=08e804e75478953aa656064ac25903858bf5ef64'/>
<id>08e804e75478953aa656064ac25903858bf5ef64</id>
<content type='text'>
Fix the method to use `eprintln!` instead of `println!` when
`immediate_output` is enabled, ensuring error output goes to stderr.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix the method to use `eprintln!` instead of `println!` when
`immediate_output` is enabled, ensuring error output goes to stderr.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(renderer): add exit_process method to RenderResult</title>
<updated>2026-07-28T14:40:33+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-28T14:40:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=18acfba07497ff5554f2790a170d003ed6a7dbfb'/>
<id>18acfba07497ff5554f2790a170d003ed6a7dbfb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(renderer): add ExitCode conversions for RenderResult</title>
<updated>2026-07-28T14:35:00+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-28T14:35:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=6c8ffbadb82bd4e0596fa23f26d5a48a82268eb2'/>
<id>6c8ffbadb82bd4e0596fa23f26d5a48a82268eb2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs(core): add Clone and Eq derives to RenderResult</title>
<updated>2026-07-22T11:25:38+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-22T11:25:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=66069888bcaf4bfb839263d64579aa6f6125feea'/>
<id>66069888bcaf4bfb839263d64579aa6f6125feea</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(core): add From impl for RenderResult with closure coercion</title>
<updated>2026-07-20T20:30:00+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-20T20:28:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=844c3c9029f75f37622413f3e3a92b93664852ed'/>
<id>844c3c9029f75f37622413f3e3a92b93664852ed</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(core, macros): add r_append! macro and RenderResult::append_other</title>
<updated>2026-07-20T20:26:10+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-20T20:26:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=2683d7c6c3c88355fd3188ac2b2c68338ae2d205'/>
<id>2683d7c6c3c88355fd3188ac2b2c68338ae2d205</id>
<content type='text'>
Implement `RenderResult::append_other()` to merge buffered content and
immediate output behavior from one result into another. Add the
`r_append!` macro with both explicit buffer (`dst, src`) and implicit
buffer (`src`) usage forms, re-exported from `mingling::prelude`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implement `RenderResult::append_other()` to merge buffered content and
immediate output behavior from one result into another. Add the
`r_append!` macro with both explicit buffer (`dst, src`) and implicit
buffer (`src`) usage forms, re-exported from `mingling::prelude`.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(core)!: replace RenderResult with buffered output model</title>
<updated>2026-07-20T19:46:06+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-20T19:46:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=c81485b6ae1ba80d658ad8e4482d384303b539ef'/>
<id>c81485b6ae1ba80d658ad8e4482d384303b539ef</id>
<content type='text'>
Remove `Deref&lt;Target=str&gt;` and `render_text:String` in favor of
`render_buffer:Vec&lt;(String, RenderResultMode)&gt;` and an
`immediate_output`
flag. Add `RenderResultMode` enum, `r_eprint!`/`r_eprintln!` macros, and
new buffer manipulation methods (`append_to_buffer`, `eprint`, etc.).
Update `Display` to trim output and remove trailing newline. Migrate all
callers and tests away from `Deref` usage.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove `Deref&lt;Target=str&gt;` and `render_text:String` in favor of
`render_buffer:Vec&lt;(String, RenderResultMode)&gt;` and an
`immediate_output`
flag. Add `RenderResultMode` enum, `r_eprint!`/`r_eprintln!` macros, and
new buffer manipulation methods (`append_to_buffer`, `eprint`, etc.).
Update `Display` to trim output and remove trailing newline. Migrate all
callers and tests away from `Deref` usage.
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: add missing docs lint and document public API</title>
<updated>2026-07-20T06:49:47+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-20T06:49:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=9f5a0f2e9325264564bc6fe9ff544c034ad16287'/>
<id>9f5a0f2e9325264564bc6fe9ff544c034ad16287</id>
<content type='text'>
Add `#![deny(missing_docs)]` across multiple crates and fill in
documentation for all public items, including struct fields, enum
variants, trait methods, and proc macros.  Also mark two shell scripts
as executable.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add `#![deny(missing_docs)]` across multiple crates and fill in
documentation for all public items, including struct fields, enum
variants, trait methods, and proc macros.  Also mark two shell scripts
as executable.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(macros): add `#[buffer]` attribute and re-export `r_print!(ln)`</title>
<updated>2026-07-20T00:42:16+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-20T00:42:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=7b3a1d7fd9f60b91a7f9602374c081882d46facc'/>
<id>7b3a1d7fd9f60b91a7f9602374c081882d46facc</id>
<content type='text'>
macros

Reintroduce `r_print!` and `r_println!` macros as public exports, now
supporting both explicit buffer argument and implicit `#[buffer]` attr.
Add `#[buffer]` attribute macro that wraps unit-returning functions to
produce a `RenderResult` with an automatically injected buffer variable.
Relax `RenderResult::print()` and `println()` to accept `impl
AsRef&lt;str&gt;`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
macros

Reintroduce `r_print!` and `r_println!` macros as public exports, now
supporting both explicit buffer argument and implicit `#[buffer]` attr.
Add `#[buffer]` attribute macro that wraps unit-returning functions to
produce a `RenderResult` with an automatically injected buffer variable.
Relax `RenderResult::print()` and `println()` to accept `impl
AsRef&lt;str&gt;`.
</pre>
</div>
</content>
</entry>
</feed>
