| الملخص | عرض دفاتر hledger كوحة تحكم حية في المنشور الأول لموضوع. | |
| المستودع | gitea.kosmos.org/raucao/discourse-hledger | |
| دليل التثبيت | README |
الميزات
ضع دفتر hledger في كتلة hledger محاطة بعلامات (fenced code block) في المنشور الأول لموضوع، وسيتم استبداله بلوحة تحكم تحتوي على خمسة تقارير، يتم توليدها عند الطلب بواسطة برنامج hledger المنفّذ على الخادم:
-
الحسابات — شجرة الأرصدة الكاملة، مع توسيع كل حساب أب. -
الميزانية العمومية — الأصول والالتزامات وحقوق الملكية، مجمّعة في أقسام. -
الإيرادات والمصروفات (P&L) — الإيرادات والمصروفات. -
حقوق الملكية — توزيع لكل سلعة من رأس المال المُساهم. -
الدفتر — سجل معاملات مع كل قيد. -
يمكن تصفية التقارير حسب نطاق تاريخ من/إلى؛ تاريخ النهاية مُشمل.
-
مقاطع الحسابات المكتوبة على شكل
@username(مثلequity:@alice) تصبح
روابط ذكر (mention) في Discourse مع بطاقة الملف الشخصي المعتادة؛ يتم ربط
المستخدمين الموجودين فقط. -
يتم توليد التقارير عند الطلب وتخزينها مؤقتاً لكل مراجعة من منشورات، لذا فإن تحرير
الدفتر يحدّثها.
مثال على الكتلة
```hledger
2024-01-01 Opening balances
assets:bank:checking 1000.00 EUR
equity:alice -600.00 EUR
equity:bob -400.00 EUR
```
لقطات شاشة
المتطلبات
- برنامج
hledgerالمنفّذ على الخادم (تم الاختبار مع hledger 1.32.3). - Discourse 2.7.0 أو أحدث.
مع تثبيت Docker القياسي، ثبّت الإضافة وحزمة hledger من خلال ملف app.yml لديك وأعد البناء:
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://gitea.kosmos.org/raucao/discourse-hledger.git
- exec:
cd: $home
cmd:
- apt-get update
- DEBIAN_FRONTEND=noninteractive apt-get install -y hledger
الإعدادات
- فعّل الإضافة في
Admin > Settings > Plugins(hledger enabled). - أضف دفتر hledger إلى المنشور الأول لموضوع.
- اختياريًا، اضبط
hledger pathإذا لم يكن البرنامج المنفّذ علىPATHالافتراضي.
الإعدادات
| الاسم | الوصف |
|---|---|
hledger enabled |
تفعيل الإضافة. |
hledger path |
المسار إلى برنامج hledger المنفّذ (الافتراضي hledger). |
hledger max journal bytes |
الحد الأقصى لحجم الدفتر المقبول، بالبايت (الافتراضي 262144). |
hledger max journal lines |
الحد الأقصى لعدد الأسطر في الدفتر (الافتراضي 5000). |
hledger timeout seconds |
الحد الزمني الفعلي لكل استدعاء لـ hledger (الافتراضي 10). |
hledger max output bytes |
الحد الأقصى للإخراج الملتقط من hledger (الافتراضي 1048576). |
hledger memory limit mb |
حد الذاكرة لعملية hledger؛ 0 يعطّله (الافتراضي 256). |
hledger global rate limit per minute |
الحد الأقصى لتوليد التقارير عبر جميع المستخدمين؛ 0 يعطّله (الافتراضي 120). |
الأمان
الدفاتر مدخلات غير موثوقة. تعمل الإضافة على hledger كعملية فرعية غير مرمّزة بصلاحيات، مع بيئة مُنظّفة، ومجلد عمل خاص، ووقت انتهاء صارم، وحدود لمعالج/حجم الملفات/الذاكرة، وحد للإخراج، وترفض تعليمات include. لا تُعاد التقارير إلا للمواضيع التي يمكن للمشاهد رؤيتها، وتُقيّد الطلبات حسب عنوان IP (30/دقيقة) وعالميًا.
التوافق والترخيص
- ترخيص MIT
- نرحّب بالملاحظات وتقارير الأخطاء والترجمات في هذا الموضوع أو عبر البريد الإلكتروني، أو وسائل التواصل الاجتماعي (ActivityPub/Nostr)، أو الدردشة (XMPP) على raucao@kosmos.org


