feat: replace .imp with .isc format (289 maps) - #180
Merged
Merged
Conversation
All 289 transliteration maps converted from Ruby DSL (.imp) to ISC format (.isc). Git history preserved — the old .imp files were renamed to .isc via git mv, then content replaced. The .imp format is now legacy. The .isc format is the canonical source format for all transliteration systems. Library files (libs/*.iml) remain unchanged.
ronaldtse
added a commit
to interscript/interscript.github.io
that referenced
this pull request
Aug 25, 2026
… a real map compressHTML: true restores pre-7 whitespace collapse (space preserved between text and inline elements) — the systemic fix for the glue bug hand-patched across pages; the source-level vitest guard stays as a second layer. The old Map_Format.adoc reference no longer exists — point step 03 at a fully-worked map in the corpus instead (resolves once interscript/maps#180 lands the .isc migration).
Adds an isc-parse job (interscript-ruby parser over every .isc file — no heavy gem deps). Fixes mofa-jpn sokuon rule (not_after line_end) and the var-ara rababa directive syntax so the corpus parses clean.
Comment on lines
+44
to
+77
| name: All .isc files parse (Ruby) | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v7 | ||
| - name: Set up Ruby | ||
| uses: ruby/setup-ruby@v1 | ||
| with: | ||
| ruby-version: "3.4" | ||
| - name: Checkout interscript-ruby | ||
| run: | | ||
| git clone --depth=1 https://github.com/interscript/interscript.git ../interscript | ||
| - name: Parse all .isc files | ||
| run: | | ||
| cd ../interscript/ruby | ||
| ruby -Ilib -e ' | ||
| require "interscript" | ||
| require "interscript/isc" | ||
| total = 0 | ||
| failures = [] | ||
| Dir.glob("../../maps/maps/*.isc").sort.each do |path| | ||
| total += 1 | ||
| begin | ||
| tree = Interscript::Isc::Parser.parse(File.read(path), filename: File.basename(path)) | ||
| Interscript::Isc::DocumentBuilder.build(tree, filename: File.basename(path)) | ||
| rescue => e | ||
| failures << "#{File.basename(path)}: #{e.message[0,120]}" | ||
| end | ||
| end | ||
| puts "Parsed #{total - failures.size}/#{total} .isc files" | ||
| failures.each { |f| STDERR.puts " #{f}" } | ||
| exit 1 if failures.any? | ||
| ' | ||
|
|
||
| isc-parse-ts: |
Ruby parses against interscript-ruby feat/isc-parser-codemod (289/289 locally; flip to main once that PR merges). TS parses against interscript-ts feat/imf-runtime-ts. The TS job's ..-prefixed working-directory/cache paths were rejected by Actions — cd inside run steps instead.
The inline -e script couldn't resolve relative module imports; the committed checker imports the parser from the interscript-ts checkout directly (289/289 locally). No build step needed.
Comment on lines
+81
to
+97
| name: All .isc files parse (TS) | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v7 | ||
| - name: Checkout interscript-ts | ||
| run: | | ||
| git clone --depth=1 --branch feat/imf-runtime-ts https://github.com/interscript/interscript-ts.git ../interscript-ts | ||
| - uses: actions/setup-node@v7 | ||
| with: | ||
| node-version: "22" | ||
| - name: Install + build TS parser | ||
| run: | | ||
| cd ../interscript-ts | ||
| npm ci | ||
| npm run build | ||
| - name: Parse all .isc files | ||
| run: npx -y tsx scripts/parse-isc.mjs ../interscript-ts |
…tion * origin/main: ci: add CodeQL workflow for Ruby docs: add CHANGELOG.md docs: add CI badge docs: add CONTRIBUTING.md docs: add SECURITY.md chore: Ruby 3.3+ floor, modern GHA, gemspec hygiene # Conflicts: # .github/workflows/test.yml
The job cloned interscript/interscript and ran its ruby suite against the monorepo's own maps submodule — it never exercised this repo's changes, and the monorepo's js/ removal (moved out for submodules) broke it out from under us. The parse-all jobs are the corpus's real gate.
1 task
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
git mv+ content replacementVerification
git log -- maps/foo.impTest plan