عن المشروع

Arranger هو محرك محرر نصوص غني تصريحي مفتوح المصدر وبيئة واجهة مستخدم لـ Compose Multiplatform. يضعه ملف README كإطار أساسي لبناء تجارب تحرير نصوص كاملة الميزات على Compose، يمكن مقارنة دوره بـ ProseMirror أو Lexical. يوفر تنسيق الفقرات جاهزًا، واستراتيجيات ديناميكية لمفتاح الإدخال، واستعلامًا دلاليًا عن السمات، وتراجعًا/إعادة ذريًا، وقدرة قادمة على التشغيل البيني بين Markdown/WYSIWYG. المشروع موسوم صراحةً بأنه قيد التطوير: واجهات API غير مستقرة وقد تتغير دون إشعار؛ والملاحظات وطلبات الميزات وتقارير الأخطاء مرحّب بها عبر GitHub Issues. دعم المنصات: Android API Level 26+، وDesktop JVM على macOS وWindows وLinux، وiOS، والويب عبر WasmJs. تذكر المتطلبات Kotlin 2.4.10+. يُنشر Arranger إلى Maven Central تحت dev.mkeeda.arranger؛ وتشمل المخرجات arranger-richtext-editor وarranger-richtext وarranger-richtext-markdown وarranger-richtext-html وarranger-richtext-editor-material3 لحل أنماط Material 3. تشمل الإمكانات سمات مخصصة آمنة النوع مثل SpanStyle ومفاتيح مجال مثل Mention وHashtag وLinkKey؛ وسلوكيات محرر عالية المستوى تشمل العناوين والاقتباسات والمحاذاة والقوائم النقطية والمرقمة؛ وDSL تصريحي للتعديلات الخاصة بعمليات النص والتنسيق الذرية؛ وRuns دلالية للتكرار والبحث والتحرير الدفعي لمقاطع ذات سمات متطابقة؛ ومحوّلات استيراد/تصدير Markdown/HTML بين RichString وهذين التنسيقين. يفصل تكامل Compose بين RichTextState عديم الواجهة وعرض واجهة RichTextEditor عبر الأهداف المدعومة. تغطي أمثلة المحرر الكتابة الديناميكية التي تحافظ على المقاطع الموجودة، وتنسيق الفقرات المتقدم، والقوائم النقطية والمرقمة بعلامات وإزاحة تلقائية، وListMarkerResolver المخصص، وخيارات EnterKeyStrategy: InheritParagraphStrategy وListEnterStrategy وHeadingEnterStrategy. تستخدم الارتباطات التشعبية LinkKey مع التنسيق التلقائي والتنقل عبر LocalUriHandler، إضافة إلى UrlParser وdetectAndApplyLinks للربط التلقائي. يمكن ربط السمات المخصصة بأنماط Compose عبر AttributeStyleResolver. يستخدم البحث والتحرير الدفعي rangesOf وeditAll وruns(key) أو runs مع محمول. تُنفَّذ تعديلات مثل insert وdelete وreplace داخل RichTextState.edit مع إزاحة تلقائية للمقاطع. تشمل الاستخدامات المحتملة تحرير النص الغني، وتدوين الملاحظات، وتحرير المستندات، أو واجهات المراسلة المبنية بـ Compose Multiplatform. يتضمن README مقتطفات تثبيت لمشروعات Kotlin Multiplatform commonMain ومشروعات Android فقط، إلى جانب composables نموذجية وصور توضيحية. لا توجد أي ادعاءات أداء أو مقاييس أداء في README.