BabelDOC 0.2.28__tar.gz → 0.2.29__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {babeldoc-0.2.28 → babeldoc-0.2.29}/PKG-INFO +1 -1
- babeldoc-0.2.29/babeldoc/__init__.py +1 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/const.py +1 -1
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/il_translator.py +4 -1
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/il_translator_llm_only.py +4 -1
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/styles_and_formulas.py +4 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/high_level.py +3 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/main.py +1 -1
- {babeldoc-0.2.28 → babeldoc-0.2.29}/pyproject.toml +2 -2
- {babeldoc-0.2.28 → babeldoc-0.2.29}/uv.lock +1 -1
- babeldoc-0.2.28/babeldoc/__init__.py +0 -1
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.cursorignore +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/ISSUE_TEMPLATE/bug_report.yaml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/ISSUE_TEMPLATE/feature_request.yaml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/dependabot.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/labels.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/release-drafter.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/workflows/codeql.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/workflows/docs.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/workflows/labeler.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/workflows/publish-to-pypi.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.github/workflows/test.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.gitignore +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/.pre-commit-config.yaml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/LICENSE +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/README.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/assets/assets.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/assets/embedding_assets_metadata.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/asynchronize/__init__.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/converter.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/__init__.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/babeldoc_exception/BabelDOCException.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/backend/__init__.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/backend/pdf_creater.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/frontend/__init__.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/frontend/il_creater.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/il_version_1.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/il_version_1.rnc +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/il_version_1.rng +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/il_version_1.xsd +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/__init__.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/add_debug_information.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/detect_scanned_file.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/layout_parser.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/paragraph_finder.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/remove_descent.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/table_parser.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/midend/typesetting.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/translator/__init__.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/translator/cache.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/translator/translator.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/utils/atomic_integer.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/utils/fontmap.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/utils/layout_helper.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/utils/priority_thread_pool_executor.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/utils/style_helper.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/xml_converter.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/docvision/README.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/docvision/__init__.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/docvision/doclayout.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/docvision/rpc_doclayout.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/docvision/table_detection/rapidocr.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/pdfinterp.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/progress_monitor.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/result_merger.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/split_manager.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/tools/generate_font_metadata.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/translation_config.py +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/CODE_OF_CONDUCT.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/CONTRIBUTING.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/CONTRIBUTOR_REWARD.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/AsyncTranslate/AsyncTranslate.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/ILTranslator/ILTranslator.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/PDFCreation/PDFCreation.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/PDFParsing/PDFParsing.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/ParagraphFinding/ParagraphFinding.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/README.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/StylesAndFormulas/StylesAndFormulas.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/Typesetting/Typesetting.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/README.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/deploy.sh +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-banner.png +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-big-logo-darkmode-with-transparent-background.png +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-big-logo-darkmode-with-transparent-background.svg +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-big-logo-with-transparent-background.png +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-big-logo-with-transparent-background.svg +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-big-logo.png +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-contributor_reward_example.png +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-preview.gif +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-small-logo-with-transparent-background.png +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-small-logo-with-transparent-background.svg +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-small-logo.png +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/index.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/intro-to-pdf-object.md +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/docs/requirements.txt +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/mkdocs.yml +0 -0
- {babeldoc-0.2.28 → babeldoc-0.2.29}/tests/test_translation_config.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.2.29"
|
|
@@ -134,7 +134,10 @@ class ILTranslator:
|
|
|
134
134
|
self.tokenizer = tokenizer
|
|
135
135
|
|
|
136
136
|
def calc_token_count(self, text: str) -> int:
|
|
137
|
-
|
|
137
|
+
try:
|
|
138
|
+
return len(self.tokenizer.encode(text, disallowed_special=()))
|
|
139
|
+
except Exception:
|
|
140
|
+
return 0
|
|
138
141
|
|
|
139
142
|
def translate(self, docs: Document):
|
|
140
143
|
tracker = DocumentTranslateTracker()
|
|
@@ -65,7 +65,10 @@ class ILTranslatorLLMOnly:
|
|
|
65
65
|
raise ValueError("LLM translator not supported") from e
|
|
66
66
|
|
|
67
67
|
def calc_token_count(self, text: str) -> int:
|
|
68
|
-
|
|
68
|
+
try:
|
|
69
|
+
return len(self.tokenizer.encode(text, disallowed_special=()))
|
|
70
|
+
except Exception:
|
|
71
|
+
return 0
|
|
69
72
|
|
|
70
73
|
def find_title_paragraph(self, docs: Document) -> PdfParagraph | None:
|
|
71
74
|
"""Find the first paragraph with layout_label 'title' in the document.
|
|
@@ -366,6 +366,9 @@ def fix_null_xref(doc: Document) -> None:
|
|
|
366
366
|
obj = doc.xref_object(i)
|
|
367
367
|
if obj == "null":
|
|
368
368
|
doc.update_object(i, "[]")
|
|
369
|
+
elif obj and "/ASCII85Decode" in obj: # make pdfminer happy
|
|
370
|
+
data = doc.xref_stream(i)
|
|
371
|
+
doc.update_stream(i, data)
|
|
369
372
|
except Exception:
|
|
370
373
|
doc.update_object(i, "[]")
|
|
371
374
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "BabelDOC"
|
|
3
|
-
version = "0.2.
|
|
3
|
+
version = "0.2.29"
|
|
4
4
|
description = "Yet Another Document Translator"
|
|
5
5
|
license = "AGPL-3.0"
|
|
6
6
|
readme = "README.md"
|
|
@@ -148,7 +148,7 @@ pythonpath = [".", "src"]
|
|
|
148
148
|
testpaths = ["tests"]
|
|
149
149
|
|
|
150
150
|
[bumpver]
|
|
151
|
-
current_version = "0.2.
|
|
151
|
+
current_version = "0.2.29"
|
|
152
152
|
version_pattern = "MAJOR.MINOR.PATCH[.PYTAGNUM]"
|
|
153
153
|
|
|
154
154
|
[bumpver.file_patterns]
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.2.28"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/babeldoc_exception/BabelDOCException.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{babeldoc-0.2.28 → babeldoc-0.2.29}/babeldoc/document_il/utils/priority_thread_pool_executor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/AsyncTranslate/AsyncTranslate.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{babeldoc-0.2.28 → babeldoc-0.2.29}/docs/ImplementationDetails/ParagraphFinding/ParagraphFinding.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-big-logo-with-transparent-background.png
RENAMED
|
File without changes
|
{babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-big-logo-with-transparent-background.svg
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-small-logo-with-transparent-background.png
RENAMED
|
File without changes
|
{babeldoc-0.2.28 → babeldoc-0.2.29}/docs/images/babeldoc-small-logo-with-transparent-background.svg
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|