الرياضيات والرموز

MathJax

MathJax هو نظام صف حروف حديث، يعمل في متصفحات الويب، ويستخدم للمعادلات الرياضية والكيميائية. لا يتطلب تنصيب أي برامج إضافية، لذلك فإنه سهل الاستخدام وينصح به لمعظم المستخدمين.

يُدعَم MathJax بدون إعداد يدوي في أنكي 2.1+، أنكي موبيل، وأنكي درويد 2.9+.

لتجربته:

  1. أدخل التالي في حقل:
    \sqrt{x}
  1. حدد النص الذي أدخلته.

  2. اضغط الزر في أقصى اليمين في المحرر، واختر «MathJax مضمَّن» من القائمة. سيحول أنكي النص إلى التالي:

    \(\sqrt{x}\)
  1. إذا ضغطت زر «بطاقات...»، سترى معاينة لما ستبدو عليه المعادلة عندما تراجع البطاقة.

يتوقع MathJax في أنكي أن يكون المحتوى بصيغة TeX. إذا لم تكن صياغة TeX مألوفة لك، انظر هذا المرجع. لاحظ أن النقطة 2 لا تنطبق على أنكي، لأنه يستخدم \( و \) للمعادلات المضمنة، و \[ و \] لمعادلات العرض.

إذا أردت استخدام رموز نهاية السطر في عبارة MathJax، استخدم Shift+Enter بدلًا من Enter، لأن رمز نهاية السطر العادي يعيق MathJax من العمل بشكل صحيح.

يتضمن أنكي دعمًا جاهزًا لـ mhchem لمعالجة المعادلات الكيميائية. انظر https://mhchem.github.io/MathJax-mhchem/ لمزيد من المعلومات.

يمكن تخصيص بعض الإعدادات.

LaTeX

LaTeX هو نظام صف حروف فعال، يستخدم للمعادلات الرياضية والكيميائية، والرموز الموسيقية وما إلى ذلك. يوفر أنكي بعض الدعم لـ LaTeX، حيث يسمح بإدخال أكواد LaTeX في ملحوظاتك. عندما تراجع بطاقة، يستدعي أنكي LaTeX لتوليد صورة ويظهر الصورة المولًّدة.

يحتاج LaTeX بعض العمل لضبطه، ويمكن توليد الصور في نسخة الحاسوب من أنكي فقط - لكن بعد أن تولّد، يمكن أن تعرض الصور من قبل تطبيقات المحمول. بسبب التعقيد الإضافي الذي يضيفه LaTeX، فهو مفضل فقط للمستخدمين الذي يريدون ميزات أكثر مما يوفره MathJax.

معرفة مفترضة

لا يأتي دعم LaTeX في أنكي جاهزًا: يُفترض أنك تعرف كيف تستخدم LaTeX بالفعل، وأنك نصبته من قبل. إذا لم تكن لديك خبرة مع LaTeX، اطلع على واحد من الدلائل الكثيرة المتوفرة على الإنترنت. إذا كانت لديك مشكلة مع بعض أكواد LaTeX، الرجاء السؤال في منتدى لـ LaTeX.

لتنصيب LaTeX، في ويندوز استخدم MiKTeX؛ في أو إس إكس استخدم MacTex، وفي لينكس استخدم مدير الحزمات الخاص بتوزيعتك. يجب تنصيب Dvipng أيضًا.

في ويندوز، اذهب إلى قائمة صيانة MikTek، وتأكد من أن خيار "Install missing packages on the fly" مضبوط لـ "No"، وليس "Ask me first". إذا ما زلت تواجه مشاكل، فقد أبلغ مستخدم أن تشغيل أنكي كمسؤول حتى تُنزَّل كل الحزم ساعد على حل المشكلة.

في أو إس إكس، تم اختبار LaTeX مع MacTex و BasicTex فقط. إذا كنت تستخدم BasicTex، فعليك تنصيب dvipng بشكل منفصل باستخدام الأمر التالي:

sudo tlmgr update --self; sudo tlmgr install dvipng

قد لا يكون الأمر في المسار، لذلك فقد تحتاج إلى توفير المسار كاملًا، مثل /usr/local/texlive/2014basic/bin/x86_64-darwin/tlmgr.

إذا لم تكن تستخدم حزم LaTeX المذكورة في الأعلى، فسيتوجب عليك استخدام إضافة edit LaTeX لتحديد المسار الكامل إلى LaTeX و dvipng.

الويب/المحمول

عندما تراجع بطاقة تحتوي كود LaTeX، يولد أنكي صورة لذلك الكود ويضعها في مجلد الوسائط للاستخدام في المستقبل. تطبيقات الويب والمحمول ستظهر هذه الصور إذا كانت موجودة، لكنها لا تستطيع توليد الصور بنفسها.

لتجنب الحاجة إلى مراجعة كل بطاقاتك مرة على الأقل قبل أن تستطيع دراستها في التطبيقات الأخرى، يستطيع أنكي توليد الصور دفعة واحدة. لتوليد كل الصور، استخدم أدوات>فحص الوسائط. بعد ذلك، يجب أن ترفع المزامنة الوسائط المولدة إلى أنكي ويب والتطبيقات الأخرى.

مثال

الطريقة الأعم لإدخال محتوى LaTeX هي بإحاطته بـ [latex][/latex]. هناك زر لهذا موثق في قسم المحرر.

يجب أن تستخدم علامات [latex] داخل حقل - وضعها في قالب البطاقة يسبب مشاكل.

مثلًا، إدخال التالي في مقدمة بطاقة:

Does [latex]\begin{math}\sum_{k = 1}^{\infty}\frac{1}{k}\end{math}[/latex] converge?

سينتج التالي عندما تظهر البطاقة:

convergence question

تدعى الصيغة في هذا المثال «صيغة نص»، لأنها تظهر داخل النص غير الرياضي. على العكس من ذلك، يظهر المثال التالي «صيغة معروضة»:

Does the sum below converge?

[latex]\begin{displaymath}\sum_{k = 1}^{\infty}\frac{1}{k}\end{displaymath}[/latex]

convergence question 2

«صيغ النص» و«صيغ العرض» هي الأنواع الأكثر شيوعًا لعبارات LaTeX، لذلك يوفر أنكي صيغ مختصرة لها. الصيغ بالشكل:

[latex]\begin{math}...\end{math}[/latex]

يمكن اختصارها إلى

[$]...[/$]

والصيغ بالشكل

[latex]\begin{displaymath}...\end{displaymath}[/latex]

يمكن اختصارها إلى

[$$]...[/$$]

مثلًا، مقتطفتا LaTeX التان عُرضِتا سابقًا تكافئان

Does [$]\sum_{k = 1}^{\infty}\frac{1}{k}[/$] converge?

و

Does the sum below converge?

[$$]\sum_{k = 1}^{\infty}\frac{1}{k}[/$$]

بهذا الترتيب.

الحزم

يسمح لك أنكي بتخصيص مقدمة LaTeX بحيث تستطيع استيراد حزم مخصصة للكيمياء، والموسيقا، وما إلى ذلك. مثلًا، لنقل أنك وجدت ملفًا نموذجيًا لـ chemtex على الإنترنت:

\documentclass[a4paper,12pt]{report}
\usepackage{chemtex}
\begin{document}

\initial
\begin{figure}[h]\centering
\parbox{.3\textwidth}{\ethene{H}{H$_3$C}{CH$_3$}{Br}}
\hfil
\parbox{.3\textwidth}{\cbranch{H}{S}{H}{S}{C}{S}{}{S}{H}
  \xi=-200 \cright{}{Q}{C}{D}{O}{S}{OH}}
\hfil
\parbox{.3\textwidth}{\hetisix{Q}{Q}{Q}{Q}{Q}{Q}{O}{Q}{O}
  \xi=-171 \fuseup{Q}{Q}{Q}{Q}{D}{Q}{D}{Q}{D}}
\caption{Chemie mit {\tt CHEMTEX}\label{a1}}
\end{figure}

\end{document}

أولًا، اتبع تعليمات التوثيق للحزمة و MiKTeX/MacTex لتنصيب الحزمة. للتحقق من عمل الحزمة، فسترغب في وضع كود مثل الأعلى في ملف .latex

وتجربة ما إذا كان يمكنك بناؤه من سطر الأوامر. بعد التأكد من أن الحزمة متوفرة وتعمل، تستطيع تضمينها في أنكي.

لاستخدام الحزمة مع أنكي، اضغط «إضافة» في النافذة الرئيسية، ثم اضغط زر تحديد نوع الملحوظة. اضغط زر «إدارة»، ثم اختر نوع الملحوظة الذي ترغب في استخدامه واضغط «خيارات». تُعرض مقدمة LaTeX وهامشه. ستبدو المقدمة كالتالي:

\documentclass[12pt]{article}
\special{papersize=3in,5in}
\usepackage{amssymb,amsmath}
\pagestyle{empty}
\setlength{\parindent}{0in}
\begin{document}

لاستخدام chemtex، ستضيف سطر usepackage في المثال السابق، لتبدو المقدمة كالتالي:

\documentclass[12pt]{article}
\special{papersize=3in,5in}
\usepackage{amssymb,amsmath}
\usepackage{chemtex}
\pagestyle{empty}
\setlength{\parindent}{0in}
\begin{document}

بعد ذلك، يجب أن تصبح قادرًا على تضمين سطور مثل التالي في بطاقاتك:

[latex]\ethene{H}{H$_3$C}{CH$_3$}{Br}[/latex]

تعارضات القوالب

ابتداءً من أنكي 2.1.20 / أنكي موبيل 2.0.56 / أنكيدرويد 2.13، ليس هذا الحل ضروريًا بعد الآن، لأن نص {{field}} داخل الحقول لم يعد يسبب مشاكل. إذا أردت دعم أنكي درويد أو إصدارات قديمة من أنكي وتريد الاستمرار باستخدام هذه الصيغة، تأكد من وضع نص {{=<% %>=}} في أعلى القالبين الأمامي والخلفي، لأن إصدارات أنكي الحديثة لن تتعرف عليه إلا في البداية.

للإصدارات القديمة:

من الشائع ظهور {{ and }} في أكواد LaTeX عند كتابة المعادلات الرياضية. للتأكد من أن معادلات LaTeX لا تتعارض مع استبدالات الحقول في أنكي، من الممكن تغيير الرمز الفاصل إلى رمز آخر.

على سبيل المثال، إذا كان لديك قالب كالتالي:

{{latex field}}

فتغييره إلى التالي سيجعل من غير المرجح تعارضه مع LaTeX:

{{=<% %>=}}
<%latex field%>

تعارضات عبارات ملء الفراغات

تُنهى عبارات ملء الفراغات بـ }}، والذي قد يتعارض مع }} المستخدم في أكواد LaTeX. لمنع كود LaTeX من أن يُؤوَّل كعلامة إغلاق عبارة ملء الفراغات، تستطيع وضع مسافة بين أي أقواس إغلاق مزدوجة لا تشير إلى نهاية عبارة ملء فراغات. لذلك:

{{c1::[$]\frac{foo}{\frac{bar}{baz}}[/$] blah blah blah.}}

لن يعمل، لكن

{{c1::[$]\frac{foo}{\frac{bar}{baz} }[/$] blah blah blah.}}

سيعمل (ويتجاهل LaTeX المسافات في وضع الرياضيات، لذلك ستُعالج معادلتك بالطريقة نفسها). إذا كنت تريد تجنب إضافة مسافة إضافية في النص المعالج (مثلًا، عندما تصنع عبارات ملء فراغات لتعلم لغات برمجة)، كخيار آخر، تستطيع استخدام تعليق HTML عند تحرير البطاقة في وضع HTML:

{{c1::[$]\frac{foo}{\frac{bar}{baz}<!-- -->}[/$] blah blah blah.}}

تستطيع استخدام أي من هذه الحلول إذا أردت استخدام سلسلة حروف :: في النص المحذوف في عبارة ملء الفراغات. البطاقة الأولى المولدة لنص الملحوظة التالية سيكون [type] in C++ is a type-safe union:

{{c1::std:<!-- -->:variant::~type~}} in C++ is a {{c2::type-safe union}}

أوامر غير آمنة

يمنع أنكي بعض الأوامر مثل \input أو \def

من أن تستخدم في البطاقات أو القوالب، لأن السماح بها قد يؤدي إلى أن تلحق الرزم المشتركة الخبيثة الضرر إلى نظامك. (لتكون بأمان أكثر، هذه الأوامر ممنوعة حتى في التعليقات، لذلك فإذا كنت تواجه هذا الخطأ لكنك لا تعتقد أنك تستخدم أمرًا من هذه الأوامر، الرجاء التحقق من أي تعليقات في مقدماتك، والقوالب، والبطاقات). إذا كنت تحتاج إلى استخدام هذه الأوامر، الرجاء إضافتها إلى حزمة واستيراد هذه الحزمة كما شرحنا في القسم السابق.