3 votes

Comment envoyer des fichiers Markdown rendus à l'imprimante à partir de la ligne de commande ?

J'ai écrit un fichier Markdown que je souhaite imprimer. La version rendue, pas la version brute.

L'impression dans l'interface graphique fonctionne correctement. Je souhaite formater les fichiers Mardown avec mdcat et envoyer le résultat/la sortie à l'imprimante.

lpc status
HP_ENVY_5540_series:
    printer is on device ‘dnssd’ speed -1
    queuing is enabled
    printing is enabled
    no entries
    daemon present

mdcat example.md | lp
request id is HP_ENVY_5540_series-47 (0 file(s))

mdcat example.md | lp -d HP_ENVY_5540_series
request id is HP_ENVY_5540_series-48 (0 file(s))

Ces commandes n'ont pas fonctionné.

Modification, après le premier commentaire :

brew info mdcat
mdcat: stable 0.22.2 (bottled)
Show markdown documents on text terminals
https://github.com/lunaryorn/mdcat
/usr/local/Cellar/mdcat/0.22.2 (8 files, 5.4MB) *
  Poured from bottle on 2021-01-02 at 08:42:16
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/mdcat.rb
License: MPL-2.0
==> Dependencies
Build: cmake , rust 
==> Analytics
install: 336 (30 days), 1,518 (90 days), 10,040 (365 days)
install-on-request: 335 (30 days), 1,517 (90 days), 10,027 (365 days)
build-error: 0 (30 days)

Le logiciel nécessite-t-il une assistance quelconque ? Peut-être que je ne me souviens pas bien, mais vous pouvez envoyer n'importe quelle commande à lp dans Linux. Il n'y a pas de support nécessaire pour les imprimantes dans la commande avant pipe.

4voto

nohillside Points 82672

TL;DR Vous avez besoin d'un moteur de rendu markdown qui crée des fichiers Postscript ou PDF en sortie. Comment convertir un fichier Markdown en PDF ? est peut-être un peu ancienne, mais elle présente quelques options pour y parvenir.


Tout périphérique de sortie (qu'il s'agisse d'un terminal ou d'une imprimante) utilise des codes de contrôle dans les données à afficher afin de les restituer correctement, ces codes de contrôle étant généralement différents pour chaque périphérique. Parfois (par exemple pour Postscript ou PDF), ils constituent même un langage à part entière.

Maintenant lp s'appuie sur CUPS pour communiquer avec l'imprimante, CUPS ne sait généralement que gérer directement les fichiers texte, PostScript, PDF et image. Vous pouvez donc cat foo.md | lp / lp foo.md o cat foo.pdf | lp / lp foo.pdf pour imprimer le fichier markdown simple ou n'importe quel PDF. Si vous envoyez du texte formaté pour une sortie terminal (comme mdcat le fait), il n'aboutira pas au résultat escompté (pas plus que l'exécution de man lp | lp habituellement).

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X