Fix language argument not working as list

Fixes #523
This commit is contained in:
James R. Barlow
2020-04-14 23:18:52 -07:00
parent 9471bc8921
commit 4a640b8dcd
2 changed files with 14 additions and 3 deletions
+9 -3
View File
@@ -21,7 +21,7 @@ import sys
from contextlib import suppress
from enum import IntEnum
from pathlib import Path
from typing import Dict, List
from typing import Dict, Iterable
from tqdm import tqdm
@@ -154,6 +154,12 @@ def create_options(*, input_file: os.PathLike, output_file: os.PathLike, **kwarg
cmdline.append(f"--{cmd_style_arg}")
continue
if isinstance(val, Iterable):
for elem in val:
cmdline.append(f"--{cmd_style_arg}")
cmdline.append(elem)
continue
# We have a parameter
cmdline.append(f"--{cmd_style_arg}")
if isinstance(val, (int, float)):
@@ -184,7 +190,7 @@ def ocr( # pylint: disable=unused-argument
input_file: os.PathLike,
output_file: os.PathLike,
*,
language: List[str] = None,
language: Iterable[str] = None,
image_dpi: int = None,
output_type=None,
sidecar: os.PathLike = None,
@@ -214,7 +220,7 @@ def ocr( # pylint: disable=unused-argument
jbig2_page_group_size: int = None,
pages: str = None,
max_image_mpixels: float = None,
tesseract_config: List[str] = None,
tesseract_config: Iterable[str] = None,
tesseract_pagesegmode: int = None,
tesseract_oem: int = None,
pdf_renderer=None,
+5
View File
@@ -59,3 +59,8 @@ def test_tqdm_console():
log.info("done")
assert not before_pbar("done")
def test_language_list():
with pytest.raises(ocrmypdf.exceptions.InputFileError):
ocrmypdf.ocr('doesnotexist.pdf', '_.pdf', language=['eng', 'ita'])