
e-Sword 주석 모듈 연동 업데이트
📋 변경 사항
새로 추가된 기능
e-Sword 형식 지원 (.cmti, .cmtx)
이번 업데이트에서 e-Sword 주석 모듈을 완벽하게 지원하도록 commentary_utils.py 파일을 수정했습니다.
지원되는 e-Sword 형식
1. CMTI 형식 (구형 e-Sword 주석)
- BookCommentary 테이블: 책 서론
- 컬럼:
Book INT, Comments TEXT
- 컬럼:
- ChapterCommentary 테이블: 장 서론
- 컬럼:
Book INT, Chapter INT, Comments TEXT
- 컬럼:
- VerseCommentary 테이블: 절 주석
- 컬럼:
Book INT, ChapterBegin INT, ChapterEnd INT, VerseBegin INT, VerseEnd INT, Comments TEXT
- 컬럼:
2. CMTX 형식 (신형 e-Sword 주석)
- Books 테이블: 책 서론
- 컬럼:
Book INT, Comments TEXT
- 컬럼:
- Chapters 테이블: 장 서론
- 컬럼:
Book INT, Chapter INT, Comments TEXT
- 컬럼:
- Verses 테이블: 절 주석
- 컬럼:
Book INT, ChapterBegin INT, ChapterEnd INT, VerseBegin INT, VerseEnd INT, Comments TEXT
- 컬럼:
주요 개선 사항
- RTF/HTML 태그 자동 제거
clean_rtf_html()함수 추가- RTF 제어 코드 제거 (예:
\u123,{\rtf...},\par등) - HTML 태그 제거 (예:
<b>,<i>,<p>등) - 여러 공백을 하나로 정리
- 순수한 텍스트만 출력
- 자동 파일 스캔
.cmti및.cmtx파일을 자동으로 감지- 기존 형식(.mybible, .twm, .cdb 등)과 함께 작동
- 계층적 주석 검색
- 절 주석 우선 검색
- 절 주석이 없으면 장 서론 검색
- 장이 0이면 책 서론 검색
🔧 설치 방법
1. 백업
기존 core/commentary_utils.py 파일을 백업하세요:
cp core/commentary_utils.py core/commentary_utils.py.backup
2. 파일 교체
다운로드한 commentary_utils.py를 core 폴더에 복사하세요:
cp commentary_utils.py core/commentary_utils.py
3. e-Sword 모듈 배치
e-Sword 주석 파일(.cmti, .cmtx)을 다음 위치에 배치하세요:
commentaries/폴더 (자동 인식)- 또는 설정에서 선택한 검색 폴더
📖 사용 방법
예제 1: 절 주석 검색
책: 창세기
장: 1
절: 1
→ 창세기 1장 1절에 대한 모든 주석이 표시됩니다.
예제 2: 장 서론 검색
책: 요한복음
장: 3
절: 0
→ 요한복음 3장 서론이 표시됩니다.
예제 3: 책 서론 검색
책: 로마서
장: 0
절: 0
→ 로마서 책 서론이 표시됩니다.
🎯 지원되는 모든 형식
| 형식 | 확장자 | 설명 |
|---|---|---|
| e-Sword (구형) | .cmti |
Book/Chapter/VerseCommentary 테이블 |
| e-Sword (신형) | .cmtx |
Books/Chapters/Verses 테이블 |
| MyBible | .mybible, .cmt.mybible |
commentary 테이블 |
| TheWord | .twm, .cmt.twm |
bible_refs + content 테이블 |
| Custom SQLite | .sqlite3, .sqlite |
유연한 스키마 추론 |
| CrosswireDB | .cdb |
Bible 테이블 |
📝 기술 상세
RTF 제거 정규표현식
# 유니코드 문자 변환
text = re.sub(r'\\u(-?\d+)\??', lambda m: chr(int(m.group(1))), text)
# RTF 제어 블록 제거
text = re.sub(r'\{\\[^\}]*\}', '', text)
# RTF 제어어 제거
text = re.sub(r'\\[a-z]{1,10}(-?\d+)?\s?', '', text)
# HTML 태그 제거
text = re.sub(r'<[^>]+>', '', text)
SQL 쿼리 예제 (CMTX)
-- 절 주석 검색
SELECT Comments FROM Verses
WHERE Book=?
AND ? BETWEEN ChapterBegin AND ChapterEnd
AND ? BETWEEN VerseBegin AND VerseEnd
-- 장 서론 검색
SELECT Comments FROM Chapters
WHERE Book=? AND Chapter=?
-- 책 서론 검색
SELECT Comments FROM Books
WHERE Book=?
⚠️ 주의사항
- Book ID: 성경 책 번호는 1(창세기)부터 66(요한계시록)까지 표준 순서를 따릅니다.
- 인코딩: e-Sword 파일이 UTF-8로 인코딩되어야 합니다.
- 성능: 많은 주석 파일이 있을 경우 첫 검색 시 시간이 걸릴 수 있습니다.
🐛 문제 해결
주석이 표시되지 않을 때
- 파일 확장자가
.cmti또는.cmtx인지 확인 - 파일이
commentaries/폴더 또는 선택한 검색 폴더에 있는지 확인 - SQLite DB 구조가 올바른지 확인 (DB Browser for SQLite 사용)
텍스트가 깨질 때
clean_rtf_html()함수가 제대로 작동하는지 확인- RTF 형식이 표준을 따르는지 확인
📞 지원
문제가 발생하면 다음 정보를 제공해주세요:
- e-Sword 파일 형식 (.cmti or .cmtx)
- 오류 메시지
- 검색한 성경 구절 정보
버전: 2.0
업데이트 날짜: 2026-02-12
호환성: BibleAI v281.36.144000 Agape
*** 대량 텍스트의 딥 리딩을 위한 별도 뷰어 - 크롬 브라우저의 번역 기능 이용 한글로 독서 가능

'BibleAI > 설치 및 활용법' 카테고리의 다른 글
| BibleAI 설치 가이드 - Windows (0) | 2026.02.16 |
|---|---|
| 다국어 번역이 가능한 epub 뷰어로 활용하는 법 (0) | 2026.02.14 |
| agape1401ai5 설치 및 사용법 (0) | 2026.02.09 |
| 바이블AI 코드 작업을 마치며 ... (0) | 2026.02.08 |
| 히 11:1 - 새벽기도 프리셋 사용 설교 초안 (0) | 2026.02.08 |