33This module provides the argument parsing and command-line handling functionality,
44including argument definitions, help text generation, and command processing.
55"""
6- import argparse
76import logging
87import os
98import sys
9+ from argparse import ArgumentParser , Namespace , RawDescriptionHelpFormatter
1010from typing import Dict , List , Optional
1111
1212from ..models .enums import ModelProvider , ModelProviderList
1313from .helpers import get_version
1414
1515
16- class CustomArgumentParser (argparse . ArgumentParser ):
16+ class CustomArgumentParser (ArgumentParser ):
1717 """
1818 Custom ArgumentParser that handles errors in a more user-friendly way.
1919 """
@@ -29,12 +29,12 @@ def error(self, message: str):
2929 sys .exit (2 )
3030
3131
32- def parse_args () -> argparse . Namespace :
32+ def parse_args () -> Namespace :
3333 """
3434 Parse command-line arguments with a more user-friendly interface.
3535
3636 Returns:
37- argparse. Namespace: Parsed arguments
37+ Namespace: Parsed arguments
3838 """
3939 # First pass - check if list-models is in args
4040 # This allows us to make folder and lang not required when listing models
@@ -59,7 +59,7 @@ def parse_args() -> argparse.Namespace:
5959 # Process multiple translations in bulk with a specific model
6060 gpt-po-translator --folder ./locales --lang ja,ko --bulk --model gpt-4
6161""" ,
62- formatter_class = lambda prog : argparse . RawDescriptionHelpFormatter (prog , max_help_position = 35 , width = 100 )
62+ formatter_class = lambda prog : RawDescriptionHelpFormatter (prog , max_help_position = 35 , width = 100 )
6363 )
6464
6565 # Create argument groups for better organization
@@ -239,12 +239,12 @@ def create_language_mapping(lang_codes: List[str], detail_langs_arg: Optional[st
239239 return dict (zip (lang_codes , detail_langs ))
240240
241241
242- def get_provider_from_args (args : argparse . Namespace ) -> Optional [ModelProvider ]:
242+ def get_provider_from_args (args : Namespace ) -> Optional [ModelProvider ]:
243243 """
244244 Get the provider from command line arguments.
245245
246246 Args:
247- args (argparse. Namespace): Parsed command line arguments
247+ args (Namespace): Parsed command line arguments
248248
249249 Returns:
250250 Optional[ModelProvider]: The selected provider or None if not specified
@@ -254,12 +254,12 @@ def get_provider_from_args(args: argparse.Namespace) -> Optional[ModelProvider]:
254254 return None
255255
256256
257- def get_api_keys_from_args (args : argparse . Namespace ) -> Dict [str , str ]:
257+ def get_api_keys_from_args (args : Namespace ) -> Dict [str , str ]:
258258 """
259259 Extract API keys from command line arguments and environment variables.
260260
261261 Args:
262- args (argparse. Namespace): Parsed command line arguments
262+ args (Namespace): Parsed command line arguments
263263
264264 Returns:
265265 Dict[str, str]: Dictionary of provider names to API keys
0 commit comments