translate: check after first pass
This commit is contained in:
@@ -127,7 +127,29 @@ Finding N — Title (line numbers)
|
||||
|
||||
Surgical string replacement. Verify every patch with `cat` — never rely on `read_file` (session dedup).
|
||||
|
||||
### 5. Final sweep
|
||||
### 5. Add inline translation notes to bilingual.dj
|
||||
|
||||
After findings are written, insert djot comments (`{% ... %}`) into `bilingual.dj` after translation pairs to document non-obvious translation decisions. This serves as a durable reference for future editors and bilingual readers.
|
||||
|
||||
What to annotate:
|
||||
- **Terminology choices**: why a particular rendering was chosen (e.g. 人生佛教 → "Buddhism for Human Life" vs "Humanistic Buddhism")
|
||||
- **Cultural bridges**: how an idiom or reference was adapted for English readers (e.g. 天龙八部 → expanded to "devas, nāgas, and the rest of the eight classes of beings")
|
||||
- **Structural decisions**: heading patterns, name handling, parallelism preservation
|
||||
- **Sanskrit handling**: which terms get diacritics, which get glosses, why
|
||||
|
||||
Format:
|
||||
```
|
||||
source line
|
||||
target line
|
||||
{% explanation of translation choice %}
|
||||
(blank)
|
||||
```
|
||||
|
||||
The comment sits on its own line between the target line and the blank separator. Use `execute_code` to insert comments programmatically — key by source line number (1-indexed), build new file line by line. Verify with `head`/`tail`.
|
||||
|
||||
Do NOT annotate literal/obvious translations (names, dates, simple connectives). Aim for ~1 comment per significant pair.
|
||||
|
||||
### 6. Final sweep
|
||||
|
||||
Run `python3 scripts/sweep.py <source.dj> <target.dj> [--stale term1,term2] [--new term1,term2]`. This runs all mechanical checks in one call: line parity, heading parity, Unicode em/en-dashes, Markdown bold, Chinese punctuation, TOC link artifacts, unbalanced quotes, and stale/new term assertions. Run even when no content patches were needed — it serves as final validation.
|
||||
|
||||
|
||||
@@ -4,6 +4,31 @@ Patterns found in CN→EN translation review. Add to this file as new patterns e
|
||||
|
||||
## Terminology conflation
|
||||
|
||||
### 人生佛教/人间佛教 — distinct concepts
|
||||
|
||||
人生佛教 (Taixu's "Buddhism for Human Life") and 人间佛教 (Yinshun's "Humanistic Buddhism")
|
||||
are distinct doctrinal positions in modern Chinese Buddhism. Do not conflate both into
|
||||
"Humanistic Buddhism." When the source uses 人生佛教, render as "Buddhism for Human Life"
|
||||
or "Human Life Buddhism."
|
||||
|
||||
### 心性论 → buddha-nature (WRONG)
|
||||
|
||||
心性 (mind-nature) is broader than 佛性 (buddha-nature / tathāgatagarbha).
|
||||
When a text discusses 心性 in the context of Confucian self-cultivation or general
|
||||
Buddhist psychology, use "mind-nature" or "nature of mind." Reserve "buddha-nature"
|
||||
only when the text explicitly references tathāgatagarbha doctrine.
|
||||
|
||||
### 恨 → resentment (WRONG)
|
||||
|
||||
恨 means "hatred," not "resentment." In the triad 羡慕嫉妒恨 (envy, jealousy, hatred),
|
||||
the force is strong. "Resentment" is too mild.
|
||||
|
||||
### 感悟 → conversant / heartfelt (WRONG)
|
||||
|
||||
感悟 means experiential insight or realization. It is not intellectual familiarity
|
||||
("conversant") or emotional warmth ("heartfelt"). Render as "insight," "realization,"
|
||||
or "deep understanding."
|
||||
|
||||
### 关爱/关怀 → compassion (WRONG)
|
||||
|
||||
Chinese 关爱 and 关怀 mean "care" or "loving care." They are NOT 慈悲 (compassion / karuṇā).
|
||||
@@ -27,7 +52,36 @@ Check every occurrence of "compassion" in a translation against the source:
|
||||
"continuously elevate our life" loses the Dharma meaning entirely.
|
||||
→ "continuously elevate our life, life after life"
|
||||
|
||||
## False implication
|
||||
## Degree / register shifts
|
||||
|
||||
### 学部委员 → Member (UNDERSTATES)
|
||||
|
||||
学部委员 is CASS's highest academic title, equivalent to "Academician."
|
||||
"Member" understates the prestige significantly. → "Academician" or
|
||||
"Member of the Academic Divisions."
|
||||
|
||||
### 文明 → culture (WRONG)
|
||||
|
||||
文明 is "civilization," not 文化 "culture." When a text discusses 文明传播
|
||||
(civilizational transmission), do not substitute "cultural transmission."
|
||||
|
||||
### 教制建设 → reforming (ADDS CONNOTATION)
|
||||
|
||||
教制建设 means "developing/building monastic institutions." Adding "reforming"
|
||||
introduces a connotation of fixing something broken that is not in the source.
|
||||
→ "developing monastic institutions" or "institutional development."
|
||||
|
||||
### 一荣俱荣、一损俱损 → too loose
|
||||
|
||||
This idiom has a conditional structure: "if one prospers, all prosper; if one
|
||||
suffers, all suffer." Rendering as "thrived together and suffered together"
|
||||
loses the mutual-dependence logic. → "shared prosperity and adversity alike"
|
||||
or "rose and fell together."
|
||||
|
||||
### 成圣成贤 collapsing
|
||||
|
||||
圣 (sage) and 贤 (worthy) are distinct Confucian categories. Collapsing both
|
||||
to "a sage" loses the distinction. → "sagehood and worthiness" or "a sage or worthy."
|
||||
|
||||
#### 因病返贫 → "back into poverty"
|
||||
"返贫" means becoming poor due to illness, not returning to previous poverty. Use "into poverty" or "driven into poverty."
|
||||
|
||||
@@ -37,7 +37,26 @@ Four registers observed, useful as style targets:
|
||||
4. **Voice**: Direct address ("you"), concrete images, and oral rhythm make Dharma land in English. Abstract noun chains (common in Chinese→English translationese) kill it.
|
||||
5. **Sutra quotes**: Use standard English Buddhist idiom. Check terse-idiom conventions (e.g., Diamond Sutra "lives" not "bodies").
|
||||
|
||||
For register decisions: consult the register table above (scanning MB articles is optional).
|
||||
## Pitfalls
|
||||
|
||||
### 1:1 line mapping
|
||||
|
||||
Each physical source line maps to exactly one physical target line. Never merge
|
||||
continuation lines (lines ending with ` ` soft breaks) into a single
|
||||
translation entry. The bilingual format preserves the original line structure —
|
||||
breaking this destroys alignment.
|
||||
|
||||
### Blank lines in bilingual
|
||||
|
||||
When creating an initial bilingual template from source only: blank source
|
||||
lines pass through as-is. Only non-blank lines get an empty target placeholder.
|
||||
Treating blank lines as content lines (adding target+separator) creates
|
||||
excessive blank clusters. See `references/bilingual-format.md`.
|
||||
|
||||
### Soft break markers
|
||||
|
||||
Trailing ` ` (two spaces) on source lines indicate soft line breaks (paragraph
|
||||
continuations). Preserve these markers on both source and target lines.
|
||||
|
||||
## Quick-Find in MB Corpus
|
||||
|
||||
|
||||
@@ -21,7 +21,8 @@ target-line
|
||||
|
||||
## Creating initial bilingual from source only
|
||||
|
||||
Every source line gets an empty target placeholder + blank separator:
|
||||
Only non-blank source lines get an empty target placeholder. Blank lines in the
|
||||
source pass through as-is and serve as natural pair separators.
|
||||
|
||||
```
|
||||
source-A
|
||||
@@ -29,8 +30,12 @@ source-A
|
||||
source-B
|
||||
```
|
||||
|
||||
(2 blank lines between consecutive source lines: empty target + separator.)
|
||||
The blank line between source-A and source-B is an original blank from the
|
||||
source — do NOT add an extra target+separator for it.
|
||||
|
||||
Pitfall: treating blank source lines as content lines creates 3+ consecutive
|
||||
blank lines (source-blank → target-blank → separator-blank). This is wrong.
|
||||
|
||||
## Verification
|
||||
|
||||
Source line count × 3 − 1 = bilingual line count (before trailing newline strip).
|
||||
`non_blank_source_lines × 2 + total_source_lines = bilingual_line_count`
|
||||
|
||||
Reference in New Issue
Block a user