Як друкувати з GitHub


98

Якщо я хочу надрукувати файл розмітки з GitHub, як він з’являється на екрані, наприклад: https://github.com/RestKit/RestKit/blob/master/Docs/Object%20Mapping.md

Тоді як я можу це досягти? Який код мені потрібно змінити на отриманій html-сторінці github (що я зберігаю), щоб роздруківка вшановувала вигляд та відчуття розмітки?

Поки єдина підказка у мене є ця: https://makandracards.com/makandra/4947-how-to-print-github-wiki-pages Але це скоріше утилітарний (непрограматичний) спосіб вирішення, який не має значення " t дійсно працює, тому що використовується інтерпретатор розмітки не такий прощаючий, як той, що працює на веб-сайтах GitHub, тому він роздувається.

Відповіді:


34

Використання GitPrint - це чудовий спосіб безпосередньо друкувати файли з Github.


7
GitPrint, здається, обслуговує порожні PDF-файли. Це може бути тимчасовим питанням, але все-таки інструмент марний, якщо він не є надійним.
Ragnar123

21
зауважте, що ця опція не працюватиме, якщо ви намагаєтеся надрукувати з приватного репортажу Github.
Джейсон Уілер

3
GitPrint теж маніпулює форматуванням, роблячи (вибачте за каламбур) його марним.
jzions

7
GitPrint не працює. Існує кілька відкритих питань про те, як просто не працювати над їхніми проблемами github
CodingYourLife

5
Я можу підтвердити, що GitPrint більше не працює = (
Madeo

65

Ось закладка, яка ідеально працює для мене:

  1. Скопіюйте вміст закладу закладок, відтворений нижче як резервну копію.
  2. Створіть нову закладку на панелі інструментів свого веб-переглядача, дайте їй відповідне ім’я.
  3. Поставте цей рядок коду в поле URL.

Якщо зараз перейти на сторінку Markdown на Github і натиснути закладку, вона переформатує сторінку та змінить CSS, щоб він виглядав таким же, як на екрані під час друку. Тепер просто надрукуйте сторінку.

Вміст закладок:

javascript:(function(e,a,g,h,f,c,b,d)%7Bif(!(f=e.jQuery)%7C%7Cg%3Ef.fn.jquery%7C%7Ch(f))%7Bc=a.createElement(%22script%22);c.type=%22text/javascript%22;c.src=%22http://ajax.googleapis.com/ajax/libs/jquery/%22+g+%22/jquery.min.js%22;c.onload=c.onreadystatechange=function()%7Bif(!b&&(!(d=this.readyState)%7C%7Cd==%22loaded%22%7C%7Cd==%22complete%22))%7Bh((f=e.jQuery).noConflict(1),b=1);f(c).remove()%7D%7D;a.documentElement.childNodes%5B0%5D.appendChild(c)%7D%7D)(window,document,%221.3.2%22,function($,L)%7B$('%23header,%20.pagehead,%20.breadcrumb,%20.commit,%20.meta,%20%23footer,%20%23footer-push,%20.wiki-actions,%20%23last-edit,%20.actions,%20.header,.site-footer,.repository-sidebar,.file-navigation,.gh-header-meta,.gh-header-actions,#wiki-rightbar,#wiki-footer,.commit-tease').remove();%20$('%23files,%20.file').css(%7B%22background%22:%22none%22,%20%22border%22:%22none%22%7D);%20$('link').removeAttr('media');%7D); var removeMe = document.getElementsByClassName("file-header")[0]; removeMe.parentNode.removeChild(removeMe);

2
Я виявив, що цей закладка не видалив належним чином заголовок Github для ввійшли користувачів, тому я оновив його тут оновленим суттю
JKnight

2
зламаний з моменту нового дизайну github
zsitro

Чи є десь нестиснена версія цього файлу на випадок, якщо я хочу спробувати деякі зміни? Це весь стислий / зашифрований код у суті в даний момент.
Anmol Saraf

Відповідь було оновлено останньою версією від @randomor
Cosmo

6
Я додав подальшого вдосконалення для видалення метаданих заголовка, дії заголовка, правої бічної панелі та нижнього колонтитула (жовтень 2014 р.): Gist.github.com/BenjaminKlatt/fefb0c53fbe16bc537c3
Бенджамін

13

Ось надзвичайно просте рішення: Просто виберіть весь текст у readme, який ви хочете надрукувати, а потім надрукуйте та виберіть "Тільки вибраний текст".

Це прекрасно працювало в Chrome (включаючи зображення) і не вимагало JavaScript або зовнішніх сайтів, не завантажувало або створювало програмне забезпечення.

Це те, що я перевірив на: https://github.com/kroitor/gjk.c/blob/master/README.md


2
Приємно! Тепер опція в Chrome називається More settings- Selection only. Він підтримує форматування і не потребує додаткового програмного забезпечення або завантаження файла розмітки.
Джеррі101

Під час друку з Firefox виберіть вміст, який ви хочете надрукувати, перейдіть до параметра "Друк" у меню "Файл" (або натисніть ctrl + p), а потім виберіть опцію "Вибір".
myesain

8

Якщо ви користувач Mac, ще одна чудова можливість - використовувати функцію "Reader" -функціональність у веб-браузері Safari.

Просто відкрийте розмітку-Файл і натисніть кнопку "Читач" -Кнопка у верхньому правому куті.

Потім просто надрукуйте сторінку командою "CMD + P".

Працює як шарм.


Схоже, це вже не працює над останнім iOS / Safari :(
Mauricio Morales

8

Ще один варіант - pandoc . Після встановлення (він підтримує Windows, Linux та Mac OS) команда буде відповідати рядкам pandoc file.md -f markdown --smart -s -o file.pdf

Потім роздрукуйте отриманий PDF-файл.


Є також цей онлайн-конвертер, який дав найкращий вихід для мене: http://www.markdowntopdf.com/

Pandoc має також демонстрацію в Інтернеті.


5

Знайдено дивовижний інструмент, який дозволяє досягти результатів друку, про які я попросив: http://plessl.github.com/wkpdf/

Ось цитата з його веб-сайту: " Якщо ви хочете, щоб веб-сайт із усією графічною глазур'ю точно збігався з переглядом у веб-переглядачі, ви можете явно змусити використовувати таблицю стилів екрану CSS та включити друк фонових зображень, як у наступний приклад ... "

Тому я побіг:

wkpdf --source https://github.com/RestKit/RestKit/blob/master/Docs/Object%20Mapping.md
      --stylesheet-media screen
      --print-background yes
      --output printIt.pdf

і це було магічно!


6
Мінуси: він працює лише на OS X, він друкує непотрібні колонтитули та колонтитули (чи не так? Я не можу спробувати цей інструмент, тому що я в Linux)
Джованні Капеллотто

І через зміни в OS X від Apple, wkpdf більше не підтримується автором.
Кріс Міллер

4

Я зробив розширення для Chrome, яке робить саме це: принтер GitHub Markdown . Це рішення одним натисканням кнопки для друку файлів розмітки , як саме вони відображаються на GitHub.

Кроки:

  1. Встановіть розширення Chrome
  2. Перейдіть на будь-яку сторінку GitHub / GitHub Enterprise з попереднім попереднім переглядом
  3. Клацніть піктограму GMP, щоб відкрити діалогове вікно друку та друкувати або зберігати як PDF

Перегляньте репо для отримання додаткової інформації.


Розширення читає і записує на всі відвідувані вами сторінки. Не впевнений, наскільки це безпечно
Vikram Khemlani

2
@VikramKhemlani Це справжнє занепокоєння, але я запевняю, що я не роблю нічого шкідливого. Дозвіл на читання потрібен, щоб побачити, чи 1) ви перебуваєте в github і 2) чи є дійсний попередній попередній перегляд розмітки. Дозвіл на запис необхідний для додавання користувальницької таблиці стилів для видалення зайвих елементів під час друку. Проект є відкритим кодом, і ви можете знайти тут вихідний код: github.com/jerry1100/github-markdown-printer/tree/master/src . Якщо ви все ще сумніваєтесь, можете відкрити вкладку мережі у своїх хромованих розробниках і виявити, що я нікуди не надсилаю жодних даних.
Джеррі Ву


2

клонувати репо

gem install bluecloth
  • перенесіть розмітки файлів у HTML
  • відкрити файл у вашій файловій системі у вашому браузері
  • друк із браузера

http://deveiate.org/projects/BlueCloth

ви можете знайти приклади api тут: http://deveiate.org/projects/BlueCloth/browser/spec/bluecloth_spec.rb


File.open("/path/to/output.html", 'w') {|f| f.write(BlueCloth.new(File.read("/path/to/input.md")).to_html()) }у мене з'явилася HTML-сторінка для перегляду, але жодного форматування або забарвлення від GitHub немає. Це головна частина роздруківки гарної версії, яку я бачу у своєму браузері, чи BlueCloth є відповідним інструментом для цього? Як так?
pulkitsinghal

2

Рекомендую сфотографуватись з http://awesomescreenshot.com/ , потім обрізати зображення та друкувати (я щойно це зробив, і це працювало на мене :).


Його ще не підтримується в моєму браузері, я обов'язково перевіряю дійсність цього рішення, коли воно стане доступним, і проголосую, якщо воно справді працює.
pulkitsinghal

1

Супер простий спосіб, який не потребує нічого, крім Chrome

Ви можете підробити користувальницький агент, повідомивши, що ви мобільний пристрій, щоб отримати гарну версію для друку.

Як я це роблю - існує безліч способів - я використовую Chrome Chrome devTools "Емуляція" для емуляції пристрою Android, наприклад, Samsung Note 3, потім у підрозділі екрана видаляю "Емуляція екрана", щоб отримати повна роздільна здатність, тоді я друкую.


1

Інший спосіб - просто завантажити розмітку з GitHub або Bit Bucket і відкрити її затемненням. Ви отримаєте вкладку попереднього перегляду на панелі редактора. У меню файлів виберіть друк. Простий спосіб, проте я смію вважати, що у вас вже встановлено затемнення, як правило, у більшості розробників.

BR


1

Спробуйте захват.

pip install grip
grip markdown.md

Потім він розміщується в місцевому порту. Потім ви можете надрукувати чи зберегти у PDF через свій улюблений браузер із діалоговим вікном друку ОС.

Дивіться тут .


0

http://github.com/github/markup

Ви не згадуєте про перевагу мови, але це саме бібліотека Ruby, яку GitHub використовує для візуалізації файлів розмітки. Він має перевагу в підтримці різних націнок на підтримку GitHub (текстиль, rdoc тощо). Відображення файлів .markdown залежить від аналізатора розмітки redcarpet:

http://github.com/tanoku/redcarpet


0

Якщо у вас є обліковий запис Instapaper , перейдіть до файла README.md, збережіть посилання на Instapaper, а потім відкрийте опцію "текст" у Instapaper на цьому посиланні. Більша частина «захаращеності» видаляється, а сторінка добре друкується.


0

Simple Hack:

Я відкривав файл розмітки в чомусь на кшталт Marked або в онлайн-інструменті Dillinger, а потім друкую звідти. Деякі з цих інструментів дозволяють встановити форматування у Github чи інших стилях.

Кращий спосіб:

Оскільки я вперше написав вищезгадану відповідь, я знайшов кращий спосіб:

Я відкрив кращий спосіб, ніж те, що я казав раніше.

  1. Git клонує свою вікі до локального каталогу
  2. Використовуйте електронну книгу-перетворювач gitbook & Calibre для створення PDF-файлу відповідно до інструкцій https://github.com/GitbookIO/gitbook

    • На комп'ютері Mac ви повинні символізувати перетворення електронних книг з каталогу /Application/calibre.app в те місце, яке підходить до запуску команди gitbook pdf, з такою командою, як:

    ln -s /Applications/calibre.app/Contents/console.app/Contents/MacOS/ebook-convert / usr / local / bin


0

Я використав MarkdownPad і надрукував HTML на PDF-письменнику. Якщо у вас є Pro, ви можете експортувати в PDF безпосередньо.


0

Працює для браузерів Chromium та "поточної" HTML-сторінки GitHub

  1. Створіть закладку
  2. У поле Адреса введіть:
javascript:var content = document.querySelector('.repository-content'); 
var toc = document.querySelector('#wiki-rightbar');
toc.innerHTML = '';
var wb = document.querySelector('.has-rightbar .wiki-body');
wb.style.marginRight = '0px';
var body = document.querySelector('body'); 
body.innerHTML = ''; 
body.appendChild(content);
window.print();

Вибирає текст Wiki, видаляє та форматує зміст, замінює вміст корпусу та викликає принтер.


0

Я використовую цю сторінку http://www.markdownprint.com , дуже просту у використанні і виробляє розмітку за допомогою стилю github (що виглядає дуже добре). Дуже рекомендую!


0

Просто конвертуйте MD-файл у PDF

Ви можете завантажити .md файл та завантажити його сюди, щоб перетворити його у pdf-файл. Який ви можете легко роздрукувати.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.