Skip to content

出力の空行連続が最長 8 行に収まることを spec に明記#57

Merged
TwoSquirrels merged 1 commit into
mainfrom
docs/blank-line-collapse-note
Jul 12, 2026
Merged

出力の空行連続が最長 8 行に収まることを spec に明記#57
TwoSquirrels merged 1 commit into
mainfrom
docs/blank-line-collapse-note

Conversation

@TwoSquirrels

Copy link
Copy Markdown
Owner

「マクロや #ifdef を多用すると出力が空行だらけになりそう」という直感は自然に湧くが、実際にはプリプロセッサの仕様で解決済みだった、という調査結果を spec の出力形式の節に記録します。

  • プリプロセッサは 8 行を超える隙間を空行ではなく linemarker で埋め、risundle はそれを #line 1 行に変換する。そのため空行の連続は最長 8 行に収まる (実測ではマクロ 13 個 + #ifdef ブロックのテンプレートで単発 2 つ、Nyaan's Library の NTT 例で最長 2 行連続・全体の 0.3%)。
  • 「閾値を決めて #line で畳む」という対策案は、既存動作そのものだった (#pragma once 対応 #11#pragma once と同じ、プリプロセス委譲設計が最初から解決していたパターン)。

同じ直感を持ったユーザーやコントリビューターが非問題を直しに来ないよう、仕様として明記しておきます。

🤖 Generated with Claude Code

Macro-heavy sources look like they would bloat the output with blank
lines, but the preprocessor fills gaps longer than 8 lines with a
linemarker that risundle turns into a single #line directive. Record
this so users and contributors don't set out to fix a non-problem
(same story as #pragma once in #11).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 12, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@TwoSquirrels, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 8 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 8b299f13-ed3d-480e-b497-4a7e8ee2c86c

📥 Commits

Reviewing files that changed from the base of the PR and between 1f0607f and 2f33b62.

📒 Files selected for processing (2)
  • docs/spec.ja.md
  • docs/spec.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/blank-line-collapse-note

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@TwoSquirrels TwoSquirrels merged commit c432d27 into main Jul 12, 2026
10 checks passed
@TwoSquirrels TwoSquirrels deleted the docs/blank-line-collapse-note branch July 12, 2026 16:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant