سؤال كيف يمكنني تحويل تخفيضات Github بالنكهة إلى PDF


لقد بدأت مؤخراً تعلم Markdown للاستخدام مع الوثائق ، وتحتاج إلى طباعة بعض صفحات Markdown الخاصة بي. أرغب في استخدام الأداة المساعدة لسطر الأوامر ، Terminal ، إلخ التي تسمح لي بتحويل Marked Markdown إلى Gitub إلى PDF. يجب أن يكون هناك تسليط الضوء على تركيب صحيح ويجب ألا تبدو مروعة. شكرا على اي مساعدة.


113
2017-12-16 11:52


الأصل


التلوين في بناء الجملة على GitHub ليس جزءًا من GitHub Flavored Markdown. على الأقل بقدر ما أعرف. - Der Hochstapler
OliverSalzburg يستخدم Github لغوي لتوفير تسليط الضوء على بناء الجملة. - DanteTheEgregore
dillmo ، تحويل إلى HTML أولا، ثم استخدم Chrome للطباعة إلى pdf. - Pacerier


الأجوبة:


لقد نجحت في استخدام قبضة لعرض تخفيض السعر في Chrome ثم استخدم خيار "حفظ كـ PDF" في Chrome في مربع الحوار "طباعة".

pip install grip  
grip your_markdown.md

سيؤدي الإمساك إلى خفض السعر على المضيف المحلي: 5000 - فقط قم بتحرير المتصفح وتحديثه. الطباعة عندما تكون جاهزة.

هذا أعطى تمثيل أكثر موثوقية من pandoc وكان أخف وزن من تركيب latex (مطلوب من قبل pandoc لتوليد pdf).

لا تمثل الطباعة سطر الأوامر في هذه الإجابة ، ولكنها لا تزال تجد هذا أسهل / أكثر موثوقية (بدا 100٪ مثل جيثب لوثيقة طويلة تتضمن صورًا مرتبطة نسبياً وتسليط الضوء على التعليمات البرمجية).


114
2018-02-27 13:55



هذا سهل بما فيه الكفاية. - s2t2
grip your_markdown.md --export your_markdown.html هو خيار مفيد هنا. يتم تصديره إلى ملف html ، والذي يمكن طباعته من سطر الأوامر باستخدام أمر مثل wkhtmltopdf. - Luke Exton
لسوء الحظ يحتاج قبضة الوصول إلى جيثب. لا يعمل دون اتصال - nowox
بدلا من ذلك يمكنك تحميل (مجانا!) أتوم (atom.io) ، افتح ملفك في Atom ، واستخدم control + shift + M لعرضه في المعاينة ، وحفظه بتنسيق html ، ثم افتح html في متصفح Chrome واحفظه بتنسيق pdf. - Andrew Carter
هذا لا يأتي مع إطار تشبه Github حوله. هل هناك طريقة للطباعة إلى PDF ، وإزالة شريط الحدود / العنوان (أي طباعة كل شيء داخل الإطار)؟ - Joost


يمكنك أيضًا استخدام Node.js تخفيض السعر، قوات الدفاع الشعبي

npm install -g markdown-pdf
markdown-pdf /path/to/markdown

41
2018-04-16 01:52



هذا رائع جدا وسهل حقا. تأتي مشكلة الرابط من ملف cml print الخاص بنصوص html5 التي يمكنك فقط التعليق عليها أو تجاوزها في ورقة الأنماط الخاصة بك. - Robert Went
نود أن نضيف أن هذا لديه دعم يونيكود خارج مربع ، وهو لطيف جدا. - Niek
يمكنك أيضا تثبيت جيثب-تخفيض السعر-المغلق إذا كنت ترغب في استخدام ملف CSS الخاص بـ GitHub. - jpmc26
@ jpmc26 كيف يمكنك استخدامه ، وأنا لا أعرف من جافا سكريبت أو الآلية الوقائية الوطنية؟ - Abhishek Bhatia
AbhishekBhatia هذه هي النتيجة الأولى عندما أقوم بـ Google "مقدمة npm": smalljs.org/package-managers/npm. إنه مجرد ملف مدفون في node_modules بمجرد تثبيته. - jpmc26


إلقاء نظرة على pandoc. لديها تسليط الضوء على بناء الجملة. قد يتطلب الأمر إجراء تغييرات (ثانوية) على المستند الخاص بك نظرًا لأنه يتمتع بنكهة خاصة به من تخفيض السعر ولا أعلم كيف يتطابق تمامًا مع نكهة GitHub.


32
2018-02-11 12:22



شكر. جري pandoc -h لم يعودوا يدعمون برنامج تخفيض السعر GitHub Flavored Markdown ، لذلك أضع علامة على هذا السؤال على أنه حل. - dillmo
حاولت تثبيت pandoc على فيدورا لينكس وركض كابوس التبعية - لا سيما المرتبطة LaTex. ستكون نصيحتي تخطي pandoc ومحاولة الخيارات الأخرى أولاً - IanB
بالنسبة لأولئك الذين يستخدمون أحرفًا غير ASCII ويفقدونها: أضف خيارات الخط إلى pandoc، مثل هذه: --variable mainfont="Liberation Serif" --variable sansfont="Liberation Sans" - gluk47
إذا كان شخص ما يبحث عن الأوامر فقط: sudo apt install pandoc texlive-latex-recommended texlive-xetex texlive-luatex pandoc-citeproc etoolbox wkhtmltopdf (على أوبونتو ، ربما ليس كل ما هو ضروري) ، ثم pandoc --variable urlcolor=cyan myfile.md -o myfile.pdf - Tor Klingberg
TorKlingberg شكرا ، أعتقد أن هذا هو أفضل إجابة! - thc


إذا تمت استضافة ملف تخفيض السعر في مستودع github ، gitprint هو خيار مثير للاهتمام لإنشاء قوات الدفاع الشعبي / الطباعة.

كل ما عليك القيام به هو استبدال github.com بواسطة gitprint.com في عنوان URL. هنا مثال من الصفحة الرئيسية gitprint.

لسوء الحظ ، إنه لا يعمل على قوائم القطع ، ويعمل فقط مع ملفات تخفيض السعر في المستودع.


11
2017-08-08 02:44



لا يعمل مع الصور سواء. :( - Adam Arold
... وتكوين سيئة :( - Moebius
خيار مثير للاهتمام. الايجابيات: يتم الحفاظ على الروابط الخارجية ويمكن الوصول إليها من المخرجات. السلبيات: الإخراج أبيض وأسود ، تتم إزالة روابط الربط ، ولا يتم الإشارة إلى الارتباطات الخارجية بصريًا لأنها b & w. - rodey


هناك محول على الانترنت متاح في http://www.markdowntopdf.com
هذا يوفر تسليط الضوء على بناء الجملة من خارج المربع ، وهو أبسط حل رأيته حتى الآن. كما أنه يعالج بشكل صحيح ميزات أخرى خاصة بـ GFM ، على سبيل المثال. الجداول.


7
2017-07-10 08:44



لا يعالج الصور في ملفات منفصلة. - Larry K
يعمل بشكل جميل - shadi


كما ذكرت في تعليقي ، يستخدم Github لغوي لتوفير تسليط الضوء على بناء الجملة. على Github ، يمكنك استخدام هذا لتحديد تمييز بناء الجملة كما يلي:

```ruby
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
```

للأسف ، لا توجد طريقة جيدة لتحويل Markdown مباشرة إلى ملف PDF مع تمييز بناء الجملة.

البدائل:

همة:

إذا كان لديك vim ، يمكنك بسهولة تحقيق تسليط الضوء على بناء الجملة من خلال تشغيل ما يلي من طرف:

vim -c hardcopy -c quit /path/to/file.ps

أو داخل vim:

:hardcopy >/path/to/file.ps

سيؤدي ذلك إلى إنشاء ملف PostScript يمكن تحويله إلى ملف pdf باستخدام ، على سبيل المثال ، ps2pdf:

ps2pdf /path/to/file.ps

مصدر الضوء:

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

هناك بعض الأمثلة على أوامر تمييز المصدر:

source-highlight -s java -f html -i Hello.java -o Hello1.html
source-highlight -s java -f html --input Hello.java --output Hello2.html --doc
source-highlight -s java -f html -i Hello.java -o Hello3.html --title "Happy Java with java2html :-)" --tab 3

عن طريق هذا ملف الإدخال

وكل إخراج ملف HTML الخاص بها:

Hello1.html
Hello2.html
Hello3.html 

يمكن العثور على مزيد من أمثلة استخدام تمييز المصدر هنا

شبابيك:

همة، ps2pdf (المقدمة من قبل غوستسكريبت) و مصدر الضوء كلها متاحة عبر سيغوين.


6
2017-12-16 14:08





لقد قمت مؤخرًا بإنشاء خدمة لتحويل مستندات تخفيض السعر إلى PDF. وهو يدعم تخفيضات النكهة جيثب فضلا عن تسليط الضوء على بناء الجملة. تقع الخدمة في: http://markdown2pdf.com


3
2017-08-27 03:55



لا يعمل مع ملف zip: تعذر العثور على ملف الشطب في الأرشيف أثناء وجود ملف. - Moebius
حصلت على "خطأ في التحويل إلى قوات الدفاع الشعبي". عن طريق markdowntopdf.com بدلا من kevgathuku - shadi


حل المنجم: تحويل السعر مع pandoc إلى أتش تي أم أل (لا تنسى استخدام برنامج css لـ pandoc لإظهار حدود الجدول)، ثم فتحه مع libreoffice، إختر خيار export as pdf.

NB: أيا من المذكور هنا وعلى حلول الإنترنت عملت بالنسبة لي: 1) الحلول المستندة إلى المتصفح (أي قبضة) تضيف معلومات زائدة ، مثل أرقام الصفحات ، والتي لم أتمكن من إزالتها ، 2) تحويل pandoc إلى pdf مكسورة ، بالنسبة لي أنه يولد جدول فارغ (ربما بسبب unicode ، ونعم ، أنا تكوينه لاستخدام xetex)، 3) الحلول القائمة على الموقع (على سبيل المثال gitprint.com) تضيف أيضا أشياء زائدة عن الحاجة ، مثل هوامش تشبه github ، في حين أنني بحاجة فقط إلى جدول بسيط أنا ولدت مع awk!


1
2017-09-10 09:56



pandoc يجب أن تعمل لك مع خيارات مثل --variable mainfont="Liberation Serif" --variable sansfont="Liberation Sans" - gluk47
@ gluk47 بارد ، وهذا يعمل! - Hi-Angel
يمكنني أن أوصي بهذه الصفحة لتحويل العلامة إلى PDF (أو للطباعة) markdownprint.com. - Johan O


لقد جربت العديد من الإضافات الكروم ومحولات الإنترنت.
MDtr2PDF هو الأفضل وهو يدعم Gitub-flavored-markdown و unicode.


1
2017-10-07 10:49



هل يدعم الصور المخزنة في ملفات أخرى؟ - Larry K


بالنسبة لأولئك مع لينكس ، استخدم pandoc.

التثبت:

sudo apt install pandoc texlive-latex-extra

نعم تحتاج -extra حزمة بسبب الخطوط.

تحويل:

pandoc --from markdown -o output.pdf my-file.md

1
2017-08-22 14:39





أنا المكرر هذا المقتطف لاحتياجاتي الشخصية:

# sudo apt install grip wkhtmltopdf

MD=${1:-README.md}
PDF=${2:-"$MD".pdf}
PORT=8971
DELAY=10

printf "Converting $MD to $PDF on port $PORT\n"
printf "Waiting $DELAY seconds for server to start...\n"

grip "$MD" localhost:$PORT &
sleep $DELAY
wkhtmltopdf http://localhost:$PORT "$PDF"
kill $(ps -eo pid,command | grep grip | grep -v grep | awk '{print $1}')

حفظ باسم /usr/local/bin/md2pdf و sudo chmod +x /usr/local/bin/md2pdf بعد ذلك.

الاستعمال:

  • md2pdf يحول README.md إلى README.md.pdf

  • md2pdf foo.md يحول foo.md إلى foo.md.pdf

  • md2pdf foo.md bar.pdf يحول foo.md إلى bar.pdf


0
2018-05-15 17:41