هذا إصلاح كبير لصورة thomasWeise/texlive . إنه يقع الآن في thomasweise/docker-pandoc ، والذي بدوره يعتمد على thomasweise/docker-texlive-full . هذا يعني أنه أصبح أكبر ، ولكنه يتميز الآن بأحدث إصدار من pandoc و TeX Live ، ويتضمن مرشحات Pandoc أكثر من ذي قبل. للإصدار الأصلي من الحاوية ، راجع العلامة 1.0.0.
هذه صورة Docker التي تحتوي على تثبيت TeX Live (الإصدار 2015.2016) مع العديد من البرامج النصية الدعم لتخفيف تجميع ملفات LaTeX إلى PDF. الهدف من ذلك هو توفير بيئة موحدة لتجميع مستندات اللاتكس بسلوك يمكن التنبؤ به وقابل للتكرار ، مع تقليل الجهد اللازم لتثبيت التثبيت اللاتكس والحفاظ عليه. تم تصميم هذه الصورة لتكون مناسبة بشكل خاص لجمهور صيني وتأتي مع العديد من الخطوط الصينية المفتوحة التي تم تثبيتها مسبقًا.
يمكن تثبيت Docker بعد الإرشادات أدناه:
curl -fsSL http://get.docker.com/ | sh على سطر الأوامر الخاص بك ويتم كل شيء تلقائيًا (إذا كنت قد تم تثبيت curl ، وهذا هو الحال عادة) ، أدناه ، نناقش المعلمات المختلفة التي يمكنك نقلها إلى هذه الصورة عند تشغيلها. إذا قمت بتثبيت Docker ، فأنت لا تحتاج إلى إجراء أي تثبيتات إضافية: في المرة الأولى التي تقوم فيها docker run -t -i thomasweise/texlive أو شيء من هذا القبيل (انظر أدناه) ، سيتم تنزيل الصورة وتثبيتها تلقائيًا من Docker Hub.
هناك حالتان للاستخدام الأساسيين لهذه الصورة:
بالإضافة إلى ذلك ، هناك طريقتان لتوفير البيانات للحاوية:
الشكل الشائع للأمر هو كما يلي:
docker run -v /my/path/to/document/:/doc/ -v /path/to/fonts/:/usr/share/fonts/external/ -t -i thomasweise/texlive COMMAND ARG1 ARG2...
أين
/my/path/to/document/ يجب استبداله بالمسار إلى المجلد الذي يحتوي على مستند LATEX الذي تريد تجميعه. سيتم توفير هذا المجلد كمجلد /doc/ داخل الحاوية. إذا كنت تستخدم الصورة بدون معلمات الأوامر (انظر أدناه) ، فستحصل على موجه أوامر Bash داخل هذا /doc/ Folder.-v /path/to/fonts/:/usr/share/fonts/external/ parmeter. هنا ، /path/to/fonts/ يجب استبداله بمسار إلى مجلد يحتوي على هذه الخطوط. إذا لم تكن بحاجة إلى خطوط إضافية ، فيمكنك ترك كل -v /path/to/fonts/:/usr/share/fonts/external/ بعيدا.COMMAND ARG1 ARG2... في سطر الأوامر أعلاه. إذا قمت بتحديد مثل هذا الأمر ، فسيبدأ الحاوية وتنفيذ الأمر ثم إيقاف تشغيله. إذا لم تقدم مثل هذا الأمر ، فستبدأ الحاوية وتوفر لك موجه Bash في المجلد /doc/ . لتجميع بعض المستندات المسماة myDocument.tex في المجلد /my/path/to/document/ مع xelatex.sh واستخدام خطوط إضافية في المجلد /path/to/fonts/ ، يمكنك كتابة شيء مثل الأمر أدناه إلى محطة عادية (Linux) ، أو محطة Docker QuickStart (Mac OS) أو مربع أدوات Dorker (Windows):
docker run -v /my/path/to/document/:/doc/ -v /path/to/fonts/:/usr/share/fonts/external/ -t -i thomasweise/texlive
xelatex.sh myDocument
exit
بدلاً من ذلك ، يمكنك القيام أيضًا
docker run -v /my/path/to/document/:/doc/ -v /path/to/fonts/:/usr/share/fonts/external/ -t -i thomasweise/texlive xelatex.sh myDocument
يبدأ الإصدار الأول الحاوية ويتركك في موجه الأوامر. يمكنك الآن تجميع المستند الخاص بك باستخدام البرنامج النصي Helper xelatex.sh ، ثم يمكنك exit الحاوية. في الإصدار الثاني ، يمكنك تقديم الأمر مباشرة إلى الحاوية. تقوم الحاوية بتنفيذها ثم تخرج مباشرة.
يجب أن يترك كلاهما ملف PDF المترجم في المجلد /my/path/to/document/ . إذا كنت لا تستخدم البرامج النصية المحددة مسبقًا للبناء (انظر أدناه تحت النقطة 3.1) ، أوصي بالقيام بـ chmod 777 myDocument.pdf بعد التجميع ، للتأكد من أنه يمكن الوصول إلى المستند المنتجة داخل مستخدم نظامك الحقيقي (المضيف) ، وليس فقط من حاوية Docker. إذا قمت بتوفير أمر واحد مباشرة للتنفيذ ، فإن الحاوية تحاول العثور على pdf المنتجة بشكل صحيح وضبط أذوناتها بشكل صحيح.
-v sourcepath:destpath اختيارية. إنها تتيح لك "تثبيت" مجلد ( sourcepath ) من نظامك المحلي إلى حاوية Docker ، حيث يصبح متاحًا كمسار destpath . يمكننا استخدام هذه الطريقة للسماح لمترجم اللاتكس الذي يعمل داخل الحاوية بالعمل على مستندات اللاتكس عن طريق تركيب المجلد في مجلد اسمه /doc/ ، على سبيل المثال. ولكن يمكننا أيضًا تركيب مجلد خارجي مع خطوط في بنية دليل خط Linux. لهذا الغرض ، يرجى دائمًا تثبيت دليل الخط المحلي في /usr/share/fonts/external/ .
إذا كنت ترغب فقط في استخدام (أو التطفل في) الصورة دون تثبيت المجلدات الخارجية ، فيمكنك تشغيل هذه الصورة باستخدام:
docker run -t -i thomasweise/texlive
مثال آخر لاستخدام بناء الجملة للمرور مباشرة في أمر واحد للتنفيذ هو تجميع أطروحة بناءً على قالب أطروحة USTC. يمكن تجميع هذه المستندات باستخدام make ، لذلك يمكنك فعل شيء مثل
docker run -v /path/to/my/thesis/:/doc/ -v /path/to/fonts/:/usr/share/fonts/external/ -t -i thomasweise/texlive make
تحتوي الصورة على المكونات التالية:
TeX Live 2015.2016ghostscript 9.18يمكنك بنائه مع
docker build -t thomasweise/texlive .
نحن نقدم مجموعة من البرامج النصية (في /bin/ ) التي يمكن استخدامها لتجميع مستندات اللاتكس:
عادةً ما يعني تجميع اللاتكس استدعاء برنامج برنامج التحويل البرمجي اللاتكس ، ثم bibtex ، ثم المترجم مرة أخرى ، ثم بعض برنامج التحويل من تنسيق إخراج البرمجيات المعني إلى PDF. باستخدام البرامج النصية للمترجم ، نحاول تكثيف هذه المكالمات في برنامج واحد للبرنامج.
latex.sh <document> تجميع LATEX <document> مع LATEX (أيضًا do bibtex)lualatex.sh <document> ترجمة اللاتكس <document> مع lualatex (أيضًا do bibtex)pdflatex.sh <document> تجميع اللاتكس <document> مع pdflatex (أيضا do bibtex)xelatex.sh <document> تجميع LATEX <document> مع XELATEX (أيضًا do bibtex)mintex.sh <document> <compiler1> <compiler2> ... يتيح لك استدعاء اختيار تعسفي لبرامج البرمجة المترجمة أعلاه لإنتاج أصغر pdf . على سبيل المثال ، سيقوم بعمل mintex.sh mydoc latex lualatex xelatex ، على سبيل المثال ، بتجميع mydoc.tex مع latex.sh و lualatex.sh و xelatex.sh والحفاظ على أصغر ملف pdf الناتج. نقدم أيضًا بعض البرامج النصية للمرافق للعمل مع ملفات PDF و PS و EPS .
eps2pdf.sh <document> تحويل ملف EPS <document> إلى PDFfilterPdf.sh <document> قم بتحويل مستند (إما في تنسيق PostScript/ PS أو EPS أو PDF ) إلى PDF وتضمين أكبر عدد من الخطوط المستخدمة داخل المستند في PDF النهائي. يسمح ذلك بإنتاج PDF من ملف .ps <document> الذي ينبغي عرضه بشكل صحيح على أكبر عدد ممكن من أجهزة الكمبيوتر.sudo هو أمر زائف- sudo : داخل حاوية Docker ، لا نحتاج إلى sudo . ومع ذلك ، إذا كان لديك برنامج نصي أو شيء يدعو sudo Plain (بدون وسيطات إضافية) فقط مع أمر محدد ، فإن هذا البرنامج النصي سيحاكي sudo . من خلال عدم القيام بأي شيء.downscalePdf.sh <document> {resolution} بتصنيع مستند PDF أصغر من خلال تقليل جميع الصور المضمنة (إلى الدقة المحددة).findNonASCIIChars.sh <document> يجد الأحرف غير ASCII في وثيقة. في مستندات .tex ، قد تشكل هذه الشخصيات مشاكل. هذه الصورة مرخصة بموجب الإصدار 3 ، 29 يونيو 2007 ، 29 يونيو 2007 ، والتي يمكنك العثور عليها في File Ricel.md. ينطبق الترخيص على الطريقة التي يتم بها بناء الصورة ، بينما تكون مكونات البرنامج داخل الصورة تحت التراخيص المعنية التي يختارها حاملي حقوق الطبع والنشر الخاصة بهم.
إذا كان لديك أي أسئلة أو اقتراحات ، فيرجى الاتصال بـ Thomas Weise من معهد التحسين التطبيقي لجامعة Hefei في Hfei ، Anhui ، الصين.