Cómo imprimir desde GitHub


Si quiero imprimir un archivo markdown de GitHub como aparece en la pantalla, por ejemplo: https://github.com/RestKit/RestKit/blob/master/Docs/Object%20Mapping.md

Entonces, ¿cómo puedo lograr eso? ¿Qué código necesito cambiar en la página html de github resultante (que guardo) para que la impresión respete el aspecto y la sensación del markdown?

Hasta ahora la única pista que tengo es esta una: https://makandracards.com/makandra/4947-how-to-print-github-wiki-pages Pero es más una solución utilitaria (no programática) que realmente no funciona porque el intérprete de markdown en uso no es tan indulgente como el que se ejecuta en los sitios web de GitHub, por lo que falla.

Author: Pero P., 2012-04-03

19 answers

Usar GitPrint es una gran manera de imprimir directamente archivos desde Github.

 27
Author: Sourabh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-03-15 18:57:19

Aquí está un bookmarklet que funciona perfectamente para mí:

  1. Copie el contenido del Gist de bookmarklet, reproducido a continuación como una copia de seguridad.
  2. Crea un nuevo marcador en la barra de herramientas de tu navegador, dale un nombre apropiado.
  3. Ponga esa línea de código en el campo URL.

Si ahora vas a una página de Markdown en Github y haces clic en el marcador, reformateará la página y cambiará el CSS para que se vea igual que en la pantalla cuando imprimas. Ahora solo imprime pagina.

Contenido del Bookmarklet:

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);
 63
Author: Boris Terzic,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-01-22 08:12:15

Otra opción es pandoc. Después de la instalación (es compatible con Windows, Linux y Mac OS), el comando sería a lo largo de las líneas de pandoc file.md -f markdown --smart -s -o file.pdf

Luego imprima el archivo PDF resultante.


También hay este convertidor en línea, que produjo la salida más agradable para mí: http://www.markdowntopdf.com /

Pandoc también tiene una demo en línea.

 8
Author: kitsune,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-06-24 14:53:41

Si usted es un usuario de Mac, otra gran posibilidad es utilizar la funcionalidad "Lector"en el navegador web Safari.

Simplemente abra el archivo markdown y haga clic en el botón "Reader"en la esquina superior derecha.

A continuación, simplemente imprima la página con el comando "CMD + P".

Funciona como un encanto.

 6
Author: pmuens,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-02-17 19:13:11

Encontré una herramienta increíble que logra los resultados de impresión que pedí: http://plessl.github.com/wkpdf /

Aquí está una cita de su sitio web: "Si desea representar un sitio web con toda la guinda gráfica para que coincida exactamente con la vista en un navegador, puede forzar explícitamente el uso de la hoja de estilos de pantalla CSS y habilitar la impresión de imágenes de fondo como en el siguiente ejemplo ..."

Así que corrí:

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

Y fue mágico!

 5
Author: pulkitsinghal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-04 12:36:53

Aquí hay una solución súper simple: Simplemente seleccione todo el texto en el readme que desea imprimir, luego imprima y elija "Solo texto seleccionado".

Esto funcionó perfectamente en Chrome (incluidas las imágenes) y no requirió javascript o sitios externos o descargar o construir software.

Esto es lo que probé en: https://github.com/kroitor/gjk.c/blob/master/README.md

 4
Author: Srekel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-30 07:26:29

Estoy usando la extensión del navegador github-wiki-print para imprimir páginas wiki de GitHub.

Creo que podrías editar su manifiesto .archivo json para imprimir cualquier archivo markdown en los repositorios de GitHub.

 3
Author: Giovanni Cappellotto,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-02 09:46:22

Clonar el repositorio

gem install bluecloth
  • renderizar los archivos markdown en html
  • abra el archivo en su sistema de archivos en su navegador
  • imprimir desde su navegador

Http://deveiate.org/projects/BlueCloth

Puede encontrar ejemplos de la api aquí: http://deveiate.org/projects/BlueCloth/browser/spec/bluecloth_spec.rb

 2
Author: Jed Schneider,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-03 17:54:26

Recomiendo tomar una foto con http://awesomescreenshot.com / , luego recortar la imagen e imprimir (acabo de hacer esto y funcionó para mí :).

 2
Author: DTrejo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-18 01:42:10

Manera súper fácil que no requieren nada más que Chrome:

Puede falsificar el agente de usuario, diciéndole que es un dispositivo móvil, para obtener una buena versión imprimible.

La forma en que lo hago - hay un montón de maneras - Yo uso Chrome la Chrome DevTools "Emulación" característica para emular un dispositivo Android, por ejemplo, un Samsung Note 3, a continuación, en la pantalla sub-sección remove "Emular pantalla", para obtener una resolución completa, a continuación, imprimir.

 1
Author: Julien Bérubé,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-07-18 15:37:46

Otra forma es simplemente descargar el markdown de GitHub o Bit Bucket y abrirlo con eclipse. Obtendrá la pestaña vista previa en el panel editor. Desde el menú archivo seleccione imprimir. Manera simple, sin embargo me estoy tomando la libertad de asumir que ya tiene eclipse instalado por lo general la mayoría de los desarrolladores lo tienen.

BR

 1
Author: Jeet,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-05-22 16:46:05

Intenta agarrar.

pip install grip
grip markdown.md

Entonces se aloja en un puerto local. A continuación, puede imprimir o guardar en PDF a través del diálogo de impresión de su sistema operativo nativo desde su navegador favorito.

Ver aquí.

 1
Author: ozOli,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-20 10:18:16

Utilizo esta página http://www.markdownprint.com , muy simple de usar y produce markdown usando el estilo github (que se ve muy bien). Muy recomendable!

 1
Author: Johan O,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-29 07:44:57

Recientemente publiqué una extensión de Chrome que hace exactamente esto: GitHub Markdown Printer.

Pasos:

  1. Instalar la extensión de Chrome
  2. Vaya a cualquier página en GitHub / GitHub Enterprise con una vista previa de markdown
  3. Haga clic en el icono GMP para abrir el cuadro de diálogo imprimir e imprimir o guardar como PDF

Echa un vistazo al repositorio para obtener más información.

 1
Author: Jerry Wu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-09-09 20:10:04

Http://github.com/github/markup

No mencionas una preferencia de idioma, pero esta es la biblioteca Ruby que GitHub usa para renderizar los archivos de marcado. Tiene la ventaja de soportar los diversos markups soportes de GitHub (textil, rdoc, etc.). Representación .markdown files tiene una dependencia del analizador de markdown de redcarpet:

Http://github.com/tanoku/redcarpet

 0
Author: Pero P.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-04 00:38:03

Si tiene una cuenta Instapaper , vaya a la README.md archivo, guarde el enlace a Instapaper, luego abra la opción" texto " en Instapaper en ese enlace. La mayor parte del" desorden " se elimina y la página se imprime bien.

 0
Author: Ralph,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-02 11:35:50

Simple Hack:

He estado abriendo el archivo markdown en algo así como Marcado o la herramienta en línea Dillinger y luego imprimir desde allí. Algunas de estas herramientas le permiten establecer el formato en Github u otros estilos.

Una manera mejor:

Desde la primera vez que escribí la respuesta anterior encontré una mejor manera:

He descubierto una manera mejor de lo que dije antes.

  1. Git clona tu wiki a un local directorio
  2. Utilice el ebook-convert de gitbook y Calibre para generar el PDF según las instrucciones de https://github.com/GitbookIO/gitbook

    • En el Mac, tiene que enlazar simbólicamente el ebook-convert desde dentro de /Application/calibre.directorio de la aplicación a un lugar adecuado antes de ejecutar el comando gitbook pdf, con un comando como:

    Ln-s /Applications/calibre.app / Contenidos / consola.app / Contents/macOS /ebook-convertir/usr/local / bin

 0
Author: Robert J Berger,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-22 21:41:46

Usé MarkdownPad e imprimí el HTML en un escritor PDF. Si tienes Pro puedes exportar a PDF directamente.

 0
Author: Tobias,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-30 17:06:35

Funciona para los navegadores Chromium y la estructura de página html "actual" de GitHub

  1. Crear un marcador
  2. En el campo Dirección, escriba :
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();

Selecciona el texto del Wiki, elimina y formatea la tabla de contenido, reemplaza el contenido del cuerpo y llama a la impresora.

 0
Author: crocteamgg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-06-20 08:22:45