Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
108 commits
Select commit Hold shift + click to select a range
6adb677
Unify `miscellaneous-field` namespaces under `mks:*` (`meta/diag/src/…
igapyon Feb 27, 2026
6c9bcf3
Merge pull request #115 from igapyon/tiga0228cat
igapyon Feb 27, 2026
771e56a
Align `miscellaneous-field` policy to `mks:*` only and remove legacy …
igapyon Feb 27, 2026
87d5530
Merge pull request #116 from igapyon/tiga0228hcc
igapyon Feb 27, 2026
debc77a
ZIPファイル入力対応を追加し、ルート直下エントリ選択とロード中オーバーレイ表示を実装
igapyon Feb 28, 2026
be32822
Merge pull request #118 from igapyon/tiga0228iap
igapyon Feb 28, 2026
def8f47
Output導線のUI調整と圧縮エクスポート設定のデフォルトON化
igapyon Feb 28, 2026
510932f
Merge pull request #119 from igapyon/tiga0228sae
igapyon Feb 28, 2026
ed36ead
docs(spec): 和声解析拡張仕様 v1 ドラフトを新規追加(EN/JA)
igapyon Feb 28, 2026
1a1848a
Merge pull request #120 from igapyon/tiga0228saz
igapyon Feb 28, 2026
70d7320
Editパネルに「Editor / Measure XML」サブタブを追加し、小節単位のSelf-contained MusicXML/M…
igapyon Mar 1, 2026
10a79b9
Merge pull request #121 from igapyon/tiga0301abg
igapyon Mar 1, 2026
f091aa1
MEI取込強化: `mks:src:mei:raw-*` 常時付与 + `stem.mod=slash` の刻み展開 + Self-con…
igapyon Mar 1, 2026
9c3fc23
Merge pull request #122 from igapyon/tiga0301vab
igapyon Mar 1, 2026
3bc7083
`General Settings` の metadata 制御を `mks:meta/src/dbg` の個別スイッチに分離
igapyon Mar 1, 2026
6abed4d
Merge pull request #123 from igapyon/tiga0301vcd
igapyon Mar 1, 2026
3150f4f
sample1/2 を sample6/7 へ完全リネームし、MEI raw 埋め込みの chunk 上限を拡張
igapyon Mar 1, 2026
cbb07dd
Merge pull request #124 from igapyon/tiga0301wby
igapyon Mar 1, 2026
4c1c4cd
MuseScore 取込の互換性改善: C/ヘ音記号対応・非表示テンポ抑制・タイトル/作曲者抽出修正
igapyon Mar 1, 2026
3c5b4b9
Merge pull request #125 from igapyon/tiga0302aae
igapyon Mar 1, 2026
bdc4a0c
MuseScore取込と再生タイムラインを改善(sample4追加・弱起補正・standalone tempo対応・Beam推定抑止)
igapyon Mar 2, 2026
386ec0b
Merge pull request #126 from igapyon/tiga0302caf
igapyon Mar 2, 2026
d94b6ef
サンプル資産を `sample1`〜`sample4` に統一し、MEI/MIDI/MuseScore/MusicXML 一式を追加
igapyon Mar 2, 2026
eab7fdc
Merge pull request #127 from igapyon/tiga0302jax
igapyon Mar 2, 2026
537f53c
sample1-3 の組み込みローダー追加と sample1-4 関連アセットの更新
igapyon Mar 2, 2026
af348a3
Merge pull request #128 from igapyon/tiga0302wax
igapyon Mar 2, 2026
1230100
MEI/MuseScore/MIDI 取込の精度改善(拍子・テンポ・装飾音・リピート・綴り保持・Viola譜表)
igapyon Mar 3, 2026
5246cd1
Merge pull request #129 from igapyon/tiga0303acb
igapyon Mar 3, 2026
c995ee1
ドキュメント体系を再編し、mikuscoreを「MusicXML中心の変換ソフト」として明確化
igapyon Mar 3, 2026
ed591dc
Merge pull request #130 from igapyon/tiga0303jcg
igapyon Mar 3, 2026
22a68e2
MIDI/Playbackの同音連結ロジックを再設計し、tie/slur境界とアーティキュレーション表現を保持
igapyon Mar 3, 2026
64c8b82
Merge pull request #131 from igapyon/tiga0303ubi
igapyon Mar 3, 2026
f5a5a37
MIDI round-trip fidelity: weak-pickup preservation (MuseScore-style F…
igapyon Mar 3, 2026
5f381e8
Merge pull request #132 from igapyon/tiga0303xca
igapyon Mar 3, 2026
811f45f
MIDI I/O: 標準メタ優先の復元に改善し、mksテキストメタ出力を設定連動化
igapyon Mar 3, 2026
0ed08bd
Merge pull request #133 from igapyon/tiga0304aau
igapyon Mar 3, 2026
ade437e
midi-io/musescore-io: メタデータ互換性強化とMuseScore往復変換の安定化(テンポ・C clef・slur/tr…
igapyon Mar 3, 2026
a53378a
Merge pull request #134 from igapyon/tiga0304ach
igapyon Mar 3, 2026
6baa6e5
MEI/MuseScore互換性の改善: スラー・強弱時刻・テンポ・パート名/アーティキュレーション出力を修正し回帰テストを追加
igapyon Mar 3, 2026
f8d6843
Merge pull request #135 from igapyon/tiga0304dad
igapyon Mar 3, 2026
98da39b
mikuscore に `lht-cmn` を導入し、`md3` ランタイム CSS 依存を解消
igapyon Mar 7, 2026
5578106
Merge pull request #136 from igapyon/tiga0304hcb
igapyon Mar 7, 2026
4301699
`lht-select-help` の設定同期を修正し、Quick Playback Tone の `Sine` を正しく反映する
igapyon Mar 7, 2026
d011eab
Merge pull request #137 from igapyon/tiga0307jba
igapyon Mar 7, 2026
453764e
整理済みの `lht-cmn` フィードバックへ再編し、tooltip の自己完結性不足を明文化する
igapyon Mar 8, 2026
24d475c
Merge pull request #138 from igapyon/tiga0308mam
igapyon Mar 8, 2026
fc6fdb7
Playback の dense score 安定化と軽量化ルールの追加
igapyon Mar 8, 2026
6deef0a
Merge pull request #139 from igapyon/tiga0308maz
igapyon Mar 8, 2026
91f18f3
Playback 中の現在小節ハイライトを追加し、dense score 安定化を強化
igapyon Mar 8, 2026
f6858fb
Merge pull request #140 from igapyon/tiga0308sbq
igapyon Mar 8, 2026
322101d
Playback 中の現在小節を左寄せ基準で自動スクロール追従する
igapyon Mar 8, 2026
9ba2352
Merge pull request #141 from igapyon/tiga0308tan
igapyon Mar 8, 2026
df6da69
Playback 中ハイライトをピンクに変更し、選択小節からの再生位置表示を修正
igapyon Mar 8, 2026
7426c92
Merge pull request #142 from igapyon/tiga0308tao
igapyon Mar 8, 2026
d538f8f
AI向けJSON仕様・プロンプト資産を追加し、score/measure JSON出力を実装
igapyon Apr 4, 2026
8294c06
Merge pull request #145 from igapyon/tiga0404afj
igapyon Apr 4, 2026
5fdc5a3
README に OGP 画像を追加
igapyon Apr 4, 2026
566d866
Merge pull request #146 from igapyon/tiga0404kaf
igapyon Apr 4, 2026
18c9d1b
AI連携方針を明文化し、Output UIをABC/JSON(Partial)方針に合わせて整理
igapyon Apr 4, 2026
948b158
Merge pull request #147 from igapyon/tiga0404kdc
igapyon Apr 4, 2026
af8700a
AI向けABC+JSONワークフロー文書へ移行し、関連仕様とビルド運用を整理
igapyon Apr 4, 2026
576aefa
Merge pull request #148 from igapyon/tiga0404vcb
igapyon Apr 4, 2026
b8349e2
ABC 互換パーサと ABC I/O の対応範囲を拡張し、仕様・回帰テストを強化
igapyon Apr 5, 2026
37066f8
Merge pull request #149 from igapyon/tiga0404wag
igapyon Apr 5, 2026
d2749ce
ABC 2.2 対応方針の文書化と ABC 互換パーサ/装飾記号対応の強化
igapyon Apr 5, 2026
2ee8210
Merge pull request #150 from igapyon/tiga0406abi
igapyon Apr 5, 2026
e332238
ABC coverage baseline を整理し、ABC I/O と回帰テストを強化
igapyon Apr 5, 2026
c3f3fd9
Merge pull request #151 from igapyon/tiga0406caa
igapyon Apr 5, 2026
96640f1
ABC unsupported-input の扱い改善と日常ビルド時間の短縮
igapyon Apr 6, 2026
c134a4b
Merge pull request #152 from igapyon/tiga0406iah
igapyon Apr 6, 2026
85595de
【途中保存】字句解析・構文解析ベースに書き換え開始
igapyon Apr 6, 2026
b7bc47e
Merge pull request #153 from igapyon/tiga0406mec
igapyon Apr 6, 2026
860653d
ABC parser を拡張し、ABC 取り込み処理を parser ベースへ整理
igapyon Apr 7, 2026
96c52d5
Merge pull request #154 from igapyon/tiga0406wad
igapyon Apr 7, 2026
5594a9b
CLI 基盤を追加し、JSON 系インタフェースを現行スコープ外へ整理
igapyon Apr 11, 2026
d0b37df
Merge pull request #155 from igapyon/tiga0412acf
igapyon Apr 11, 2026
1f02d90
ABCのinline voice処理を修正し、CLIテストとビルド負荷を軽減
igapyon Apr 12, 2026
ce544ad
Merge pull request #156 from igapyon/tiga0412bef
igapyon Apr 12, 2026
2c6157d
コントリビューション関連文書を追加し、TypeScript ファイルに標準 Apache ヘッダを付与
igapyon Apr 12, 2026
898f21b
Merge pull request #157 from igapyon/tiga0412jea
igapyon Apr 12, 2026
b009584
docs/articles 配下に Qiita/Note 向け記事管理テンプレートと記事原稿を追加
igapyon Apr 12, 2026
af5530d
Merge pull request #158 from igapyon/tiga0412kei
igapyon Apr 12, 2026
a0a675b
Note版記事を追加し、Qiita版「生成AI に譜面対応させたくて、まず ABC 記譜法に寄っていった話」を調整
igapyon Apr 12, 2026
a65ac7f
Merge pull request #159 from igapyon/tiga0412rcf
igapyon Apr 12, 2026
f358922
記事メタ情報を `mikuscore-skills` 表記に合わせて整理
igapyon Apr 12, 2026
378dc16
Merge pull request #160 from igapyon/tiga0412uca
igapyon Apr 12, 2026
8ec6c02
MuseScore import で `concertKey` / `transposeKey` を考慮して調号復元を改善
igapyon Apr 12, 2026
1f22174
Merge pull request #161 from igapyon/tiga0412xab
igapyon Apr 12, 2026
53dbf0c
MusicXML からの MuseScore エクスポートで `concertKey` / `transposeKey` を出力して 4.…
igapyon Apr 12, 2026
005edca
Merge pull request #162 from igapyon/tiga0413bch
igapyon Apr 12, 2026
db0880a
MuseScore export から独自 transpose helper tag を削除して 4.0+ ネイティブ寄りにする
igapyon Apr 12, 2026
8f07dfe
Merge pull request #163 from igapyon/tiga0413bdi
igapyon Apr 12, 2026
dc49cf9
ABC エクスポートの初期テンポ解釈を修正し、拍単位付き `Q:` 出力に対応
igapyon Apr 12, 2026
9a6a1f0
Merge pull request #164 from igapyon/tiga0413iae
igapyon Apr 12, 2026
8e750a4
docs: downstream 追従確認の運用メモと workflow 導線を追加
igapyon Apr 12, 2026
cc1ce83
Merge pull request #165 from igapyon/tiga0413ibi
igapyon Apr 12, 2026
fe0b7eb
ABC の bounded `%%score` staff grouping 対応と MusicXML / MuseScore I/O の…
igapyon Apr 14, 2026
687190f
Merge pull request #166 from igapyon/tiga0413ifg
igapyon Apr 14, 2026
0a8ca50
MuseScore I/O の内部構造を段階的に整理し import/export の責務境界を明確化
igapyon Apr 14, 2026
932515a
Merge pull request #167 from igapyon/tiga0414jce
igapyon Apr 14, 2026
932761a
ABC I/O の段階的リファクタリングを進めつつ build 導線を整理し、ABC body parser の進行保証を追加
igapyon Apr 14, 2026
b440a5b
Merge pull request #168 from igapyon/tiga0414wea
igapyon Apr 14, 2026
0c9eca1
ABC I/O の export helper 分解をさらに進め、grouped `%%score` の characterization…
igapyon Apr 14, 2026
903b205
Merge pull request #169 from igapyon/tiga0415hbb
igapyon Apr 14, 2026
9cad67c
mikuscore の説明を変換ツール中心に整理し、README・開発文書・UI文言を整合させる
igapyon Apr 14, 2026
5eab791
Merge pull request #170 from igapyon/tiga0415hdj
igapyon Apr 14, 2026
223e2d8
`index.html` を生成物化し、ビルド日付付きのランディングページ運用へ切り替える
igapyon Apr 15, 2026
e67cd83
Merge pull request #171 from igapyon/tiga0415iah
igapyon Apr 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
node_modules/
coverage/
.DS_Store
tests/fixtures-local/
tests/local-data/*
!tests/local-data/.gitkeep
tests/artifacts/roundtrip/
tests/roundtrip/musescore/cases.local.json
.tsbuildinfo
.mikuscore-build/
workplace/*
12 changes: 12 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# AGENTS

## Path Style

- Do not write absolute filesystem paths in repository documents unless there is a truly unavoidable reason.
- Prefer repository-relative paths such as `docs/spec/AI_JSON_SPEC.md`.
- Do not write paths like `/Users/igapyon/...`.

## Documentation Hygiene

- Keep examples and references portable across environments.
- Prefer concise path references over machine-local path details.
63 changes: 63 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Code of Conduct

## Purpose

`mikuscore` aims to be a respectful and practical collaboration space for bug reports, feature requests, design discussion, documentation work, and code contributions.

The goal is not to avoid disagreement. The goal is to keep discussion specific, constructive, and safe for participants.

## Expected Behavior

- Be respectful.
- Be specific.
- Prefer concrete repro steps, fixtures, examples, and tests over vague claims.
- Critique ideas, code, assumptions, and designs without attacking people.
- Keep technical disagreement focused on behavior, tradeoffs, and evidence.
- Accept that maintainers may ask to narrow scope, add tests, or clarify intent before accepting a change.

## Unacceptable Behavior

- Harassment, intimidation, or personal attacks
- Discriminatory, hateful, or abusive language
- Repeated hostile or bad-faith argument
- Dismissing or insulting contributors instead of addressing the technical point
- Publishing private or sensitive information without permission
- Spam, trolling, or deliberately disruptive behavior

## Scope

This code of conduct applies to project spaces such as:

- Issues
- Pull requests
- Discussions and review comments
- Documentation contributions
- Other project-related public collaboration spaces managed for `mikuscore`

## Maintainer Responsibility

Project maintainers may moderate discussions and contributions to keep the project usable and collaborative.

This may include:

- Asking for clarification or tone adjustments
- Hiding, editing, locking, or closing discussions when appropriate
- Rejecting contributions that are technically unsuitable or behaviorally disruptive
- Limiting further participation in project spaces if necessary

## Reporting

If you experience or observe behavior that should be addressed, contact the project maintainer through a project channel that is appropriate for the situation.

If a public thread would make the issue worse, prefer a private contact path instead of escalating in public.

## Project Style

For `mikuscore`, the preferred collaboration style is:

- specific
- respectful
- test-oriented
- focused on reproducible behavior

Technical rigor is welcome. Personal hostility is not.
82 changes: 82 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# Contributing to mikuscore

Thank you for contributing to `mikuscore`.

This project accepts bug reports, feature requests, documentation fixes, tests, and pull requests.

See `CODE_OF_CONDUCT.md` for collaboration and behavior expectations in project spaces.

## Before Opening an Issue or Pull Request

- Check whether the topic is already covered by an existing issue, pull request, spec note, or TODO item.
- For behavior changes, describe both the current behavior and the expected behavior.
- Keep changes focused. Small, reviewable pull requests are preferred.
- When practical, include or update tests together with code changes.

## Development Notes

- `mikuscore.html` is a generated artifact. Do not edit it directly unless regeneration is intentionally part of the change.
- `src/js/main.js` is generated from TypeScript and is committed. If you change `src/ts/`, regenerate `src/js/main.js` as part of the same change when needed.
- Application logic should normally be edited in `src/ts/` and `core/`.
- Tests live under `tests/`.
- `mikuscore` changes can require downstream follow-up in `mikuscore-skills` and `miku-abc-player`, which basically track `devel`. Keep that impact visible when a change affects shared behavior, contract, generated assets, or handoff assumptions.
- Vendored or externally sourced files should be treated carefully:
- `src/js/verovio.js`
- `src/js/midi-writer.js`
- `src/vendor/utaformatix3/utaformatix3-ts-plus.mikuscore.iife.js`
- `lht-cmn/`
- Do not rewrite vendored files as part of unrelated application changes.

## Documentation Expectations

Update documentation when a change affects behavior, scope, policy, or the supported format contract.

Documentation roles:

- `README.md`: repository entry point, supported scope, development commands, CLI overview
- `TODO.md`: active backlog only
- `docs/spec/*`: normative implementation and behavior specifications
- `docs/future/*`: deferred or future-facing notes
- `docs/FORMAT_COVERAGE.md`: current format support summary

## Recommended Checks

Run relevant commands before submitting a pull request when possible.

```bash
npm run typecheck
npm run test:build
npm run test:integration
npm run test:property
npm run test:all
npm run build
npm run check:all
```

In practice, not every change needs every command. A smaller change may only need the subset that covers the touched area.

## Pull Request Guidelines

- Explain what changed and why.
- Mention any user-visible behavior change.
- Mention any spec, README, or TODO updates that are part of the change.
- If downstream follow-up is expected, mention that `mikuscore-skills` and/or `miku-abc-player` may need updates from `devel`.
- If a change is intentionally partial, deferred, or scoped down, say so explicitly.
- If fixtures, samples, or local-only data were used for verification, explain that briefly.

## Contribution License

By submitting an issue, pull request, comment, documentation change, code change, or other material intentionally for inclusion in this project, you agree that:

- Your contribution is provided under the Apache License 2.0 used by this repository.
- The maintainer may use, modify, rewrite, adapt, edit, and redistribute your contribution as part of this project, as permitted by that license.
- You have the right to submit the contribution.
- Unless you explicitly state otherwise, your submission is treated as a "Contribution" under Section 5 of the Apache License 2.0.

If you do not want a submission to be treated as a contribution for inclusion in the project, mark that clearly and do not open it as a pull request intended to be merged.

## Collaboration Expectations

- Be specific.
- Be respectful.
- Prefer concrete repro steps, fixtures, and tests over vague reports.
8 changes: 8 additions & 0 deletions CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Contributors

This project includes contributions, review, feedback, and improvement suggestions from the following people.

- Toshiki Iga
- Original author and current maintainer.

Additional contributors may be acknowledged here, in Git history, or in release notes as the project evolves.
Empty file added MusicXML
Empty file.
Loading
Loading