روابط
الذكاء الاصطناعي / الوكلاء
المطورون
مؤسسة البحث العلمي
gdtest-i18n-arabic
أدوات تنسيق النصوص والقوالب.
الميزات
- استبدال العناصر النائبة في القوالب
- ترميز أحرف HTML الخاصة
- فواصل قابلة للتخصيص
الترخيص
MIT
i18n test with Arabic (RTL script). Sets site.language: ar and enables every translatable widget. Verifies dir=rtl on the HTML element, right-to-left layout mirroring, flipped sidebar, repositioned buttons, and all UI strings in Arabic.
Source files
gdtest_i18n_arabic/
__init__.py
"""أدوات تنسيق النصوص والقوالب."""
__version__ = "0.1.0"
__all__ = [
"Formatter",
"format_text",
"parse_template",
"escape_html",
]
class Formatter:
"""
تنسيق النصوص باستخدام القوالب.
يدعم استبدال العناصر النائبة، وترميز HTML،
وفواصل قابلة للتخصيص.
Parameters
----------
left_delim : str
الفاصل الأيسر للعناصر النائبة.
right_delim : str
الفاصل الأيمن للعناصر النائبة.
auto_escape : bool
ترميز HTML تلقائياً للقيم المستبدلة.
See Also
--------
format_text
تغليف النص بعرض سطر محدد.
escape_html
ترميز الأحرف الخاصة في HTML.
Examples
--------
>>> fmt = Formatter(left_delim="{{", right_delim="}}")
>>> fmt.render("مرحباً {{name}}!", name="World")
'مرحباً World!'
.. versionadded:: 0.1.0
"""
def __init__(
self,
left_delim: str = "{{",
right_delim: str = "}}",
auto_escape: bool = True,
):
self.left_delim = left_delim
self.right_delim = right_delim
self.auto_escape = auto_escape
def render(self, template: str, **kwargs: str) -> str:
"""
عرض القالب بالقيم المعطاة.
Parameters
----------
template : str
نص القالب.
**kwargs : str
القيم المسماة للاستبدال.
Returns
-------
str
النص المعروض.
"""
result = template
for key, value in kwargs.items():
placeholder = f"{self.left_delim}{key}{self.right_delim}"
result = result.replace(placeholder, str(value))
return result
def list_placeholders(self, template: str) -> list[str]:
"""
استخراج أسماء العناصر النائبة من القالب.
Parameters
----------
template : str
القالب المراد فحصه.
Returns
-------
list[str]
قائمة بأسماء العناصر النائبة الموجودة.
"""
return []
def format_text(text: str, width: int = 80) -> str:
"""
تغليف النص بعرض سطر محدد.
Parameters
----------
text : str
النص المراد تغليفه.
width : int
أقصى عرض للسطر.
Returns
-------
str
النص المُغلَّف.
See Also
--------
Formatter
تنسيق النصوص باستخدام القوالب.
parse_template
تحليل نص القالب إلى مكوناته.
.. versionchanged:: 0.1.0 أصبح العرض الافتراضي 80 حرفاً.
"""
return text
def parse_template(source: str) -> dict:
"""
تحليل نص القالب إلى مكوناته.
Parameters
----------
source : str
نص القالب الخام.
Returns
-------
dict
القالب المحلل مع مفاتيح 'text' و 'placeholders'.
"""
return {"text": source, "placeholders": []}
def escape_html(value: str) -> str:
"""
ترميز الأحرف الخاصة في HTML.
Parameters
----------
value : str
النص المراد ترميزه.
Returns
-------
str
نص آمن لاستخدامه في HTML.
See Also
--------
Formatter
تنسيق النصوص باستخدام القوالب.
format_text
تغليف النص بعرض سطر محدد.
.. deprecated:: 0.1.0
استخدم Formatter(auto_escape=True) بدلاً من ذلك.
"""
return (
value
.replace("&", "&")
.replace("<", "<")
.replace(">", ">")
)user_guide/
01-overview.qmd
---
title: "نظرة عامة"
guide-section: "الأساسيات"
---
# نظرة عامة
يوفر هذا الحزمة أدوات لتنسيق النصوص مع دعم
القوالب وترميز HTML.
## التثبيت
```bash
pip install gdtest-i18n-arabic
```
## مثال سريع
```python
from gdtest_i18n_arabic import Formatter
fmt = Formatter()
result = fmt.render("مرحباً {{name}}!", name="World")
print(result)
```02-templates.qmd
---
title: "القوالب"
guide-section: "الأساسيات"
---
# القوالب
تعلم كيفية استخدام نصوص القوالب مع العناصر النائبة.
## صيغة العناصر النائبة
```python
from gdtest_i18n_arabic import parse_template
result = parse_template("مرحباً {{name}}، أهلاً بك في {{place}}!")
print(result["placeholders"])
```
## ترميز HTML
```python
from gdtest_i18n_arabic import escape_html
safe = escape_html("<script>alert('test')</script>")
print(safe)
```03-table-explorer.qmd
---
title: "مستكشف الجدول"
guide-section: "الأساسيات"
---
# مستكشف الجدول
استخدم `tbl_explorer()` لاستكشاف بياناتك بشكل تفاعلي.
```{python}
#| echo: false
import tempfile
from great_docs import tbl_explorer
rows = "الاسم,العمر,المدينة,الدرجة\nأحمد,28,القاهرة,92.5\nفاطمة,35,الرياض,87.3\nخالد,22,دبي,95.1\nنور,41,بيروت,78.6\nسارة,30,الدار البيضاء,88.9\nعمر,27,تونس,91.2\nليلى,33,عمان,84.7"
tf = tempfile.NamedTemporaryFile(mode="w", suffix=".csv", delete=False)
tf.write(rows)
tf.close()
tbl_explorer(tf.name)
```README.md
# gdtest-i18n-arabic أدوات تنسيق النصوص والقوالب. ## الميزات - استبدال العناصر النائبة في القوالب - ترميز أحرف HTML الخاصة - فواصل قابلة للتخصيص ## الترخيص MIT
great-docs.yml
site: language: ar announcement: مرحباً! اطلع على دليل البدء السريع الجديد. github_url: "https://github.com/test-org/gdtest-i18n-arabic" dark_mode_toggle: true back_to_top: true copy_code: true page_metadata: true funding: name: مؤسسة البحث العلمي