Jak drukować z GitHub


99

Jeśli chcę wydrukować plik Markdown z GitHub, tak jak pojawia się na ekranie, na przykład: https://github.com/RestKit/RestKit/blob/master/Docs/Object%20Mapping.md

Więc jak mogę to osiągnąć? Jaki kod muszę zmienić na powstałej stronie github html (którą zapisuję), aby wydruk był zgodny z wyglądem przeceny?

Jak dotąd jedyną wskazówką, jaką mam, jest ta: https://makandracards.com/makandra/4947-how-to-print-github-wiki-pages Ale jest to bardziej utylitarne (nieprogramowe) obejście, które nie robi ' naprawdę działa, ponieważ używany interpreter przecen nie jest tak wyrozumiały jak ten, który działa w witrynach GitHub, więc się gubi.

Odpowiedzi:


34

Korzystanie z GitPrint to świetny sposób na bezpośrednie drukowanie plików z Github.


7
Wydaje się, że GitPrint obsługuje puste pliki pdf. Może to być problem tymczasowy, ale mimo to narzędzie jest bezużyteczne, jeśli nie jest niezawodne.
Ragnar123

21
pamiętaj, że ta opcja nie zadziała, jeśli próbujesz drukować z prywatnego repozytorium Github.
Jason Wheeler

3
GitPrint zmienia również formatowanie, renderując (przepraszam za kalambur) bezużyteczne.
jzions

7
GitPrint nie działa. Istnieje wiele otwartych problemów dotyczących po prostu nie rozwiązywania problemów z
githubem

5
Mogę potwierdzić, że GitPrint już nie działa = (
Madeo

65

Oto bookmarklet, który działa idealnie dla mnie:

  1. Skopiuj zawartość bookmarkletu Gist, przedstawioną poniżej jako kopię zapasową.
  2. Utwórz nową zakładkę na pasku narzędzi przeglądarki, nadaj jej odpowiednią nazwę.
  3. Umieść tę jedną linię kodu w polu adresu URL.

Jeśli teraz przejdziesz do strony Markdown na Github i klikniesz zakładkę, ponownie sformatujesz stronę i zmieni CSS, tak aby wyglądał tak samo jak na ekranie podczas drukowania. Teraz po prostu wydrukuj stronę.

Zawartość zakładki:

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
Zauważyłem, że ten bookmarklet nie usuwał poprawnie nagłówka Github dla zalogowanych użytkowników, więc zaktualizowałem go w zaktualizowanym
skrócie

2
zepsuty od czasu nowego projektu github
zsitro

Czy istnieje nieskompresowana wersja tego pliku na wypadek, gdyby chciał wypróbować jakieś zmiany? Obecnie jest to skompresowany / zaszyfrowany kod.
Anmol Saraf

Odpowiedź została zaktualizowana o najnowszą wersję od @randomor
Cosmo Harrigan.

6
Dodałem dalsze ulepszenia, aby usunąć metadane nagłówka, akcję nagłówka, pasek po prawej stronie i stopkę (październik 2014): gist.github.com/BenjaminKlatt/fefb0c53fbe16bc537c3
Benjamin

13

Oto super proste rozwiązanie: po prostu zaznacz cały tekst w pliku Readme, który chcesz wydrukować, a następnie wydrukuj i wybierz opcję „Tylko zaznaczony tekst”.

To działało doskonale w Chrome (w tym obrazy) i nie wymagało javascript ani zewnętrznych witryn ani pobierania lub tworzenia oprogramowania.

Oto, co przetestowałem na: https://github.com/kroitor/gjk.c/blob/master/README.md


2
Miły! Ta opcja w Chrome nazywa się teraz More settings- Selection only. Obsługuje formatowanie i nie wymaga dodatkowego oprogramowania ani pobierania pliku przeceny.
Jerry101

W przypadku drukowania z przeglądarki Firefox wybierz treść, którą chcesz wydrukować, przejdź do opcji „Drukuj” z menu „Plik” (lub naciśnij ctrl + p), a następnie wybierz opcję „Wybór”.
myesain

8

Jeśli jesteś użytkownikiem komputera Mac, kolejną wspaniałą możliwością jest skorzystanie z funkcji „Reader” w przeglądarce Safari.

Po prostu otwórz plik znacznika i kliknij przycisk „Czytnik” w prawym górnym rogu.

Następnie wydrukuj stronę za pomocą polecenia „CMD + P”.

Działa jak marzenie.


Wydaje się, że to już nie działa na najnowszym iOS / Safari :(
Mauricio Morales

8

Inną opcją jest pandoc . Po zainstalowaniu (obsługuje systemy Windows, Linux i Mac OS), polecenie byłoby podobne do pandoc file.md -f markdown --smart -s -o file.pdf

Następnie wydrukuj wynikowy plik PDF.


Jest też ten konwerter online, który wyprodukował dla mnie najładniejszy wynik: http://www.markdowntopdf.com/

Pandoc ma również demo online.


5

Znalazłem niesamowite narzędzie, które osiąga wyniki drukowania, o które prosiłem: http://plessl.github.com/wkpdf/

Oto cytat z jej witryny internetowej: „ Jeśli chcesz wyrenderować witrynę z wszystkimi lukami graficznymi, aby dokładnie pasowały do ​​widoku w przeglądarce, możesz wyraźnie wymusić użycie arkusza stylów ekranu CSS i włączyć drukowanie obrazów tła, jak w następujący przykład ...

Więc pobiegłem:

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

i to było magiczne!


6
Wady: działa tylko na OS X, drukuje bezużyteczny nagłówek i stopkę (prawda? Nie mogę wypróbować tego narzędzia, ponieważ jestem na Linuksie)
Giovanni Cappellotto

Ze względu na zmiany w OS X firmy Apple, autor nie zajmuje się już wkpdf.
Chris Miller,

4

Stworzyłem rozszerzenie do Chrome, które robi właśnie to: GitHub Markdown Printer . Jest to rozwiązanie do drukowania plików Markdown dokładnie tak , jak wyglądają w GitHub za jednym kliknięciem .

Kroki:

  1. Zainstaluj rozszerzenie do Chrome
  2. Przejdź do dowolnej strony w GitHub / GitHub Enterprise z podglądem przeceny
  3. Kliknij ikonę GMP, aby otworzyć okno dialogowe drukowania i wydrukuj lub zapisz jako PDF

Sprawdź repozytorium, aby uzyskać więcej informacji.


Rozszerzenie czyta i zapisuje na wszystkich odwiedzanych stronach. Nie jestem pewien, czy to jest bezpieczne
Vikram Khemlani

2
@VikramKhemlani To ważna obawa, ale zapewniam, że nie robię nic złośliwego. Uprawnienie do odczytu jest wymagane, aby sprawdzić, czy 1) jesteś na githubie i 2) czy istnieje poprawny podgląd przeceny. Uprawnienie do zapisu jest wymagane, aby dodać niestandardowy arkusz stylów w celu usunięcia dodatkowych elementów podczas drukowania. Projekt jest open-source, a kod źródłowy można znaleźć tutaj: github.com/jerry1100/github-markdown-printer/tree/master/src . Jeśli nadal masz wątpliwości, możesz otworzyć kartę sieciową w swoich chrome devtools i stwierdzić, że nigdzie nie wysyłam żadnych danych.
Jerry Wu


2

sklonuj repozytorium

gem install bluecloth
  • renderuj pliki markdown do html
  • otwórz plik w systemie plików w przeglądarce
  • drukować z przeglądarki

http://deveiate.org/projects/BlueCloth

przykłady api można znaleźć tutaj: 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()) }mam stronę HTML do obejrzenia, ale nie ma żadnego formatowania ani kolorowania z GitHub. To jest kluczowa część drukowania ładnej wersji, którą widzę w mojej przeglądarce, czy BlueCloth jest do tego odpowiednim narzędziem? Jak to?
pulkitsinghal

2

Polecam zrobić zdjęcie za pomocą http://awesomescreenshot.com/ , a następnie przyciąć zdjęcie i wydrukować (właśnie to zrobiłem i u mnie zadziałało :).


Nie jest jeszcze obsługiwany w mojej przeglądarce, z pewnością przetestuję poprawność tego rozwiązania, gdy będzie dostępne i zagłosuję, jeśli faktycznie działa.
pulkitsinghal

1

Super łatwy sposób, który nie wymaga niczego więcej niż Chrome:

Możesz sfałszować klienta użytkownika, mówiąc, że jesteś urządzeniem mobilnym, aby uzyskać ładną wersję do druku.

Sposób, w jaki to robię - jest wiele sposobów - używam Chrome, funkcji „Emulacja” programu Chrome devTools do emulacji urządzenia z Androidem, np. Samsung Note 3, a następnie w podsekcji ekranu usuwam „Emuluj ekran”, aby uzyskać w pełnej rozdzielczości, potem drukuję.


1

Innym sposobem jest po prostu pobranie przeceny z GitHub lub Bit Bucket i otwarcie go za pomocą eclipse. Otrzymasz kartę podglądu w okienku edytora. Z menu Plik wybierz Drukuj. Prosty sposób, jednak pozwalam sobie na założenie, że masz już zainstalowane eclipse, zwykle większość programistów je ma.

BR


1

Spróbuj przyczepności.

pip install grip
grip markdown.md

Następnie jest hostowany na porcie lokalnym. Następnie możesz drukować lub zapisywać w formacie PDF za pomocą natywnego okna dialogowego drukowania systemu operacyjnego z ulubionej przeglądarki.

Zobacz tutaj .



0

Jeśli masz konto Instapaper , przejdź do pliku README.md, zapisz łącze w Instapaper, a następnie otwórz opcję „tekst” w Instapaper na tym łączu. Większość „bałaganu” zostaje usunięta, a strona dobrze się drukuje.


0

Prosty hack:

Otwieram plik przecen w czymś takim jak Marked lub w narzędziu online Dillinger, a następnie stamtąd drukuję. Niektóre z tych narzędzi pozwalają ustawić formatowanie na Github lub inne style.

Lepszy sposób:

Odkąd po raz pierwszy napisałem powyższą odpowiedź, znalazłem lepszy sposób:

Odkryłem lepszy sposób niż to, co powiedziałem wcześniej.

  1. Git sklonuj swoją wiki do katalogu lokalnego
  2. Użyj konwertera ebooków gitbook i Calibre, aby wygenerować plik PDF zgodnie z instrukcjami na https://github.com/GitbookIO/gitbook

    • Na komputerze Mac, przed uruchomieniem polecenia gitbook pdf, musisz połączyć symboliczne konwersję ebooka z katalogu /Application/calibre.app do odpowiedniego miejsca, używając polecenia takiego jak:

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


0

Użyłem MarkdownPad i wydrukowałem HTML do pisarza PDF. Jeśli masz wersję Pro, możesz bezpośrednio eksportować do formatu PDF.


0

Działa dla przeglądarek Chromium i "aktualnej" struktury strony html GitHub

  1. Utwórz zakładkę
  2. W polu Adres wpisz:
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();

Wybiera tekst Wiki, usuwa i formatuje spis treści, zastępuje treść i wywołuje drukarkę.



0

Po prostu przekonwertuj plik MD do formatu PDF

Możesz pobrać plik .md i przesłać go tutaj, aby przekonwertować go na plik pdf. Które możesz łatwo wydrukować.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.