Metadata-Version: 2.4
Name: persian-logger
Version: 1.0.0
Summary: لاگ‌گیری فارسی با RTL، تاریخ جلالی و سطوح فارسی
Author-email: نام شما <you@example.com>
License: MIT
Project-URL: Source, https://github.com/yourname/persian-logger
Keywords: persian,farsi,logging,rtl,jalali
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: Persian
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: arabic-reshaper==3.0.0
Requires-Dist: iniconfig==2.3.0
Requires-Dist: jalali_core==1.0.0
Requires-Dist: jdatetime==5.2.0
Requires-Dist: packaging==25.0
Requires-Dist: pluggy==1.6.0
Requires-Dist: Pygments==2.19.2
Requires-Dist: pytest==8.4.2
Requires-Dist: python-bidi==0.6.7

# Persian Logger

یک **logger فارسی برای پایتون** با پشتیبانی از:

- اعداد فارسی (`۰۱۲۳۴۵۶۷۸۹`)
- تاریخ و ساعت **جلالی فارسی**
- پشتیبانی از **RTL (راست‌چین)** برای جملات فارسی و ترکیبی
- قالب‌بندی جداگانه برای **کنسول و فایل**
- تشخیص خودکار محیط ترمینال (VSCode, GNOME, iTerm و غیره)

---

## نصب

```bash
pip install persian-logger
```

---

## استفاده

```python
from persian_logger.logger import get_fa_logger

logger = get_fa_logger()

logger.debug("این DEBUG است")
logger.info("سلام! پکیج با موفقیت نصب شد")
logger.warning("این هشدار است")
```

### خروجی کنسول

```
[۱۴۰۴/۰۸/۱۸ | ۱۲:۳۰:۲۶ | اطلاعات] (سلام! پکیج با موفقیت نصب شد)
[۱۴۰۴/۰۸/۱۸ | ۱۲:۳۰:۲۶ | اشکال‌زدایی] (این DEBUG است)
[۱۴۰۴/۰۸/۱۸ | ۱۲:۳۰:۲۶ | هشدار] (این هشدار است)
```

---

## ویژگی‌ها

- **اعداد و تاریخ فارسی:** نمایش اعداد و تاریخ/ساعت جلالی فارسی
- **RTL خودکار:** جملات فارسی یا ترکیبی انگلیسی+فارسی راست‌چین می‌شوند
- **Formatterهای جداگانه:**
  - `ConsolePersianFormatter` → برای ترمینال
  - `FilePersianFormatter` → برای فایل
- **سازگاری ترمینال:** تشخیص خودکار محیط و فعال/غیرفعال کردن RTL

---

## ساختار پروژه

```
persian_logger/
├── converter.py          # تبدیل اعداد و RTL
├── formatter.py          # Formatterهای کنسول و فایل
├── logger.py             # تابع get_fa_logger
├── terminal_supports_rtl.py  # تشخیص ترمینال
tests/                     # تست‌ها
examples/                  # مثال‌های کاربردی
```

---

## تست

```bash
pytest tests/
```

تمام تست‌ها شامل:
- نمایش صحیح RTL
- تبدیل اعداد و تاریخ/ساعت جلالی فارسی
- جلوگیری از duplicate شدن پیام‌ها
- تست روی ترمینال‌های مختلف
