English | čeština | Deutsch | 中文 (简体中文, 中国) | 中文 (繁體, 台灣) | العربية
ان Saber هو تطبيق ملاحظات مصمم للكتابة اليدوية.
تم تصميمه ليكون بسيطًا وسهل الاستخدام قدر الإمكان، مع تقديم ميزات فريدة ستستخدمها بالفعل. بالإضافة إلى ذلك، يتوفر Saber على جميع أجهزتك، سواء الكبيرة أو الصغيرة، ويتزامن بينها بسلاسة.
أحد أبرز ميزاته هو القدرة على عكس ألوان الملاحظات عند استخدام وضع الظلام. هذا يتيح لك الكتابة بالحبر الأبيض على خلفية سوداء، مما يسهل القراءة في البيئات ذات الإضاءة المنخفضة، مثل عندما يقوم المعلم بإطفاء الأضواء في الفصل. يتم أيضًا عكس الصور وملفات الـ PDF، حتى تتمكن من استخدام المطبوعات الرقمية أو الكتب المدرسية بدون أي تعقيدات.
يستخدم Saber نظام حماية بكلمتي مرور لحماية ملاحظاتك من أي شخص غيرك، حتى لو كان لديه سيطرة كاملة على الخادم. يمكنك تخزين ملاحظاتك بأمان على الخادم الرسمي لـ Saber، أو على خادم آخر، أو حتى استضافة الخادم الخاص بك!
التطبيق مفتوح المصدر تمامًا، مما يسمح لأي شخص بمراجعة الكود وفهم كيفية عمله وكيفية تعامله مع بياناتك. العديد من تطبيقات تدوين الملاحظات الأخرى مغلقة المصدر وخاصة، مما يعني أن طريقة عملها تعتبر غامضة للجمهور.
بصفتي شخصًا يدرس الرياضيات، كان تمييز المعادلات متعددة الأسطر دائمًا أمرًا مزعجًا في التطبيقات الأخرى، حيث كان لون القلم الفسفوري يتغير عند تداخله مع نفسه. مشكلة أخرى واجهتها كانت في بعض التطبيقات، حيث يتم تمييز النص ويصبح باهتًا، مما يجعل من الصعب قراءته. قلم التمييز في Saber لا يعاني من مثل هذه المشاكل. فهو يستخدم تقنية تركيب اللوحات (Canvas Compositing) لرسم القلم بطريقة تتوافق أو تتفوق على الورق التقليدي، حيث يتعامل مع التداخلات ويحافظ على ثبات اللون.
يحتوي Saber على كل ما تحتاجه لتنظيم ملاحظاتك. يمكنك إنشاء مجلدات داخل مجلدات داخل مجلدات بدون حد لعدد المجلدات المتداخلة. وحتى لو كانت الملاحظة مدفونة بعمق داخل مجلد متداخل، لا يزال بإمكانك الوصول إليها بسهولة مع عرض أحدث ملاحظاتك دائمًا على الشاشة الرئيسية.
اكتشف طريقة جديدة تمامًا لالتقاط وتنظيم أفكارك مع Saber. سواء كنت طالبًا أو محترفًا أو ذو فكر إبداعي، فإن Saber هو رفيقك الموثوق للكتابة اليدوية الرقمية. قم بتنزيله الآن ودع أفكارك تتدفق بحرية!
يرجى الاطلاع #1 Saber progress.
اضغط لعرض/اخفاء تعليمات التنزيل
خيارات:
1- تحميل من متجر Play.
2- تحميل من F-Droid.
لاحظ أن إصدار F-Droid غير مُحسّن لأجهزة Onyx Boox لأن ذلك يتطلب اعتماديات خاصة من Onyx.
3- قم بتنزيل وتثبيت Saber_{version}.apk
من أحدث اصدار.
الخيار 1 (موصى به): قم بتثبيت الحزمة المسطحة من Flathub باستخدام : flatpak --user install com.adilhanney.saber
.
الخيار 2:
قم بتنزيل Saber-{version}-x86_64.AppImage
من اخر اصدار,
واجعله قابلاً للتنفيذ باستخدام chmod +x Saber-*-x86_64.AppImage
, ثم قم بتشغيله.
الخيار 3:
هناك حزمة snap غير رسمية متوفرة بفضل @soumyaDghosh.
باستخدام sudo snap install saber
الخيار 4:
There's an unofficial Fedora Copr [repo][copr] available thanks to @jyo64.
sudo dnf copr enable jyo64/Saber && sudo dnf install saber
قم بتنزيل وتثبيت SaberInstaller_{version}.exe
من أحدث اصدار.
إذا ظهرت لك أخطاء بسبب ملفات dll المفقودة، تأكد من تثبيت Visual C++ Redistributable .
قم بتنزيل Saber من متجر التطبيقات App Store.
البناء من المصدر اضغط لعرض/إخفاء تعليمات البناء
https://docs.flutter.dev/get-started/install
git clone https://github.com/saber-notes/saber.git
flutter pub get
يمكن تلخيص إعداد الحزمة super_clipboard كالاتي:
- قم بتثبيت Rust
- قم بتثبيت NDK 26.1.10909125 إذا كنت تقوم بالبناء لنظام Android
sudo apt install libsecret-1-dev libjsoncpp-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev webkit2gtk-4.1-dev
flutter build linux
هذا يكفي لاستخدام التطبيق على جهاز الكمبيوتر الخاص بك، ولكن إذا كنت ترغب في توزيع بنائك، عليك استخدام بيئة قابلة للتنبؤ: استنسخ هذا repo واستخدم GitHub Action البناء باستخدام لينيكس بدلا من ذلك.
flutter build apk
قد تحتاج إلى إنشاء شهادة توقيع وإنشاء ملف android/key.properties. المزيد من المعلومات هنا: https://docs.flutter.dev/deployment/android#create-an-upload-keystore
ملاحظة: يتم بناء الإصدارات مفتوحة المصدر FOSS/F-Droid بطريقة مختلفة قليلاً:
./patches/remove_proprietary_dependencies.sh
flutter build apk
flutter build windows
تم إنشاء مثبت ويندوز باستخدام Inno Setup. لإنشاء المثبت الخاص بك، قم بتشغيل أمر البناء أعلاه، ثم قم بتعديل وتشغيل installers/desktop_inno_script.iss باستخدام Inno Setup Compiler.
إذا كنت تمتلك جهاز macOS، يمكنك
البناء لنظام iOS
باستخدام الامر flutter build ipa
او
البناء لنظام macOS
باستخدام flutter build macos
.
إذا لم يكن لديك جهاز macOS، استنسخ هذا repo واستخدم GitHub Action Build for macOS and iOS. بدلاً من ذلك، اتبع هذا الفيديو التعليمي على اليوتيوب How to compile a flutter application to iPhone with no mac (free | no jailbreak) للبناء يدويًا باستخدام Codemagic.
جميع الترجمات مصدرها المجتمع. حتى الآن تم ترجمة تطبيق Saber إلى:
- الانجليزية (en)
- العربية (ar)
- التشيكية (cs)
- الالمانية (de)
- الاسبانية (es)
- الفارسية (fa)
- الفرنسية (fr)
- العبرية (he)
- الهنغارية (hu)
- الايطالية (it)
- اليابانية (ja)
- البرتغالية البرازيلية (pt_BR)
- الروسية (ru)
- التركية (tr)
- الصينية المبسطة (zh_Hans_CN)
- الصينية التقليدية (zh_Hant_TW)
قوم حاليًا بتجربة استخدام Weblate لترجمة التطبيق من قبل المجتمع. مزيد من المعلومات قريبًا.
تحقق من _missing_translations.yaml لمعرفة ما إذا كانت هناك أي ترجمات مفقودة.
- استخدم هذا الرابط
لتعديل
_missing_translations.yaml
. - قم بتحديث ملف
_missing_translations.yaml
الخاص بك مع الترجمات، على سبيل المثال تحديث اللغة الألمانية (de):de: editor: newerFileFormat: title: Diese Notiz wurde mit einer neueren Version von Saber bearbeitet subtitle: Wenn du diese Notiz bearbeitest, können Daten verloren gehen. Möchtest du die Notiz trotzdem öffnen? openAnyway: Trotzdem öffnen cancel: Abbruch # ignore the other languages...
- قم بعمل pull request انا سأقوم بالباقي!
- ابحث عن كود اللغة الخاص بك هنا, ثل hi للهندية، fr للفرنسية، bn للبنغالية، ar للعربية، إلخ
- استخدم هذا الرابط
لإنشاء ملف جديد في
lib/i18n/
يدعىstrings_XX.i18n.yaml
حيث يمثلXX
كود اللغة الخاصة بك. - انسخ محتويات ملف موجود مثل
lib/i18n/strings.i18n.yaml
وقم باستبدال الترجمات بترجماتك الخاصة. إذا كنت لا تعرف الترجمة لعبارة ما، فقط احذف السطر. - قم بعمل pull request!
انظر ايضا slang
's Getting Started للحصول على مزيد من المعلومات.
لدينا صيغتان لأوصاف متجر التطبيقات:
-
F-Droid/Play Store:
-
قم بفتح
metadata/en-US/
وانسخ الملفاتfull_description.txt
وshort_description.txt
الى مجلدmetadata/XX/
حيثXX
هو كود اللغة الخاصة بك. ثم قم بترجمة محتويات الملفات. -
يتم ترجمة التغييرات تلقائيًا من النسخة الإنجليزية. إذا لاحظت خطأ، يرجى تعديل السجل المترجم في
metadata/XX/changelogs/<version-code>.txt
حيثXX
كود اللغة الخاصة بك.
-
-
لينيكس Linux .desktop file:
- افتح
flatpak/com.adilhanney.saber.desktop
وأضف سطرًا للمفتاحComment
بالتنسيق التالي حيث يمثلXX
كود اللغة الخاصة بك.
Comment[XX]=Your translation
- افتح
إذا كنت بحاجة أيضًا إلى ترجمة المفتاح Name
, قم بنفس الاجراء .
-
(اختياري) Flathub :
1.نظرًا لأن هذا أكثر تقنية، يمكنك تخطي جزء Flathub إذا كنت ترغب في ذلك وسأقوم بنسخ الترجمات من القسم أعلاه.
- في
flatpak/com.adilhanney.saber.metainfo.xml
قبل وسم الإغلاق</description>
,أضف سطرًا للترجمة بالتنسيق التالي حيث يمثلXX
كود اللغة الخاصة بك:
<p xml:lang="XX">Your translation</p>
- في نفس الملف، يمكنك ترجمة التغييرات بنفس الطريقة داخل وسوم
<release>
قبل وسم</description>
.
- في
If you like Saber, please consider supporting it by: -نشر الكلمة! -إضافة نجمة للمشروع على GitHub
- رعايتي على GitHub Sponsors
- التبرع عبر PayPal
- شراء المزيد من مساحة التخزين على خادم Nextcloud: انظر الاسعار
إظهار/إخفاء ملاحظات التطوير
- عند تحديث اصدار التطبيق:
- قم بتشغيل
./scripts/bump_version.sh <version-name> <version-code>
(قم بتشغيل./scripts/bump_version.sh --help
لمزيد من المعلومات) - عند تحديث إصدار التطبيق:
metadata/en-US/changelogs/
وflatpak/com.adilhanney.saber.metainfo.xml
, ثم قم بتشغيلdart scripts/translate_changelogs.dart
كما يوجهك سكريبت الاوامر.
- قم بتشغيل
- عند تحديث **الايقونات **, قم بتشغيل الأوامر التالية:
- عام:
dart run icons_launcher:create
- ايقونات Flatpak :
cd assets/icon && ./resize-icon.sh
- عام:
- عند تحديث الترجمات...
-قم بتشغيل الأوامر التالية:
dart run slang apply --locale=XX
اذا كنت تريد تطبيق _missing_translations.yamldart run slang
dart run slang analyze --full
- إذا كنت تضيف لغة جديدة، قم بتحديث:
CFBundleLocalizations
فيios/Runner/Info.plist
CFBundleLocalizations
فيmacos/Runner/Info.plist
android/app/src/main/res/xml/locales_config.xml
lib/data/locales.dart
README.md
في الاعلى في قسم "Translating" .- ثم قم بتشغيل
dart scripts/translate_changelogs.dart
لترجمة سجل التغييرات.