Markdown Viewer

154

J'ai trouvé un fichier formaté avec Markdown. Pourriez-vous suggérer quel lecteur je pourrais utiliser pour voir ce type de fichiers? Espérons un sans gui (si c'est possible)

Mise à jour Je cherchais en réalité un lecteur capable d'analyser le format de fichier Markdown ne nécessitant aucune conversion. Mais quelque chose de proche de ça devrait aller.

amree
la source
5
Un fichier de démarquage peut simplement être lu lorsque vous l'ouvrez dans un éditeur, vous n'avez pas vraiment besoin d'outils sophistiqués pour le lire. Que voulez-vous / dans quel format voulez-vous qu'il soit?
Kasterma
1
Il existe de nombreuses versions de "markdown". Techniquement, LaTeX, HTML sont des démarques, de même que les italiques gras, gras, italiques et USE ...
vonbrand
1
retexte maintenant sur github comme @Fran recommandé
Dr Beco
15
@vonbrand LaTeX et HTML sont des langages de balisage . Markdown est un "langage" de formatage de texte spécifique (bien que vous ayez raison de dire qu'il existe un certain nombre de variantes, y compris celle utilisée sur les sites Stack Exchange tels que celui-ci). Le nom de Markdown est une blague, car il vous permet de faire un grand nombre de choses qui pourraient être faites avec un langage de balisage, sans réellement "baliser" (c.-à-d: ajouter des balises) à votre texte (pour la plupart).
Laurence Gonsalves

Réponses:

37

Le site Web suivant fournit un outil qui traduira le démarquage en HTML:

http://daringfireball.net/projects/markdown/

Une fois que vous avez converti le fichier en HTML, vous pouvez utiliser un certain nombre d’outils de ligne de commande pour afficher le fichier. En utilisant un fichier de test contenant du texte formaté Markdown, j’ai trouvé ce qui suit fonctionnait bien.

$ wget http://daringfireball.net/projects/downloads/Markdown_1.0.1.zip
$ unzip Markdown_1.0.1.zip
$ cd Markdown_1.0.1/
$ ./Markdown.pl ~/testfile.markdown | html2text

html2text est l'un des nombreux outils que vous pouvez utiliser pour afficher du texte au format HTML à partir de la ligne de commande. Une autre option, si vous voulez une sortie légèrement plus agréable serait d’utiliser lynx :

$ ./Markdown.pl ~/testfile.markdown | lynx -stdin

Si vous êtes un utilisateur emacs, quelqu'un a écrit un mode pour markdown disponible ici: http://jblevins.org/projects/markdown-mode/ . Cela fournit une belle coloration syntaxique comme on peut le voir sur la capture d'écran de ce site.

Tous ces outils devraient être disponibles pour le slackware.

Steven D
la source
8
Dans VIM, vous pouvez surligner la syntaxe en définissant manuellement la syntaxe sur markdown si elle n'est pas reconnue. :set syntax=mkd
Gert
1
Je n'aurais jamais pensé utiliser -stdinet lynx, très intelligent et juste ce dont j'avais besoin.
NickO
1
J'ai testé cela et je peux vérifier qu'il fonctionne sous Linux, mais il est intéressant de noter que la page de manuel indique qu'une telle fonctionnalité ne s'applique qu'à UNIX. -stdin read the startfile from standard input (UNIX only).
sherrellbc
98

Utilisation de pandoc et de lynx sans créer de fichiers temporaires:

pandoc file.md | lynx -stdin
cercle de confusion
la source
7
(note: Pandoc est dans haskell)
fche
10
Ou tout simplementpandoc -t plain file.md | less
Adriano P
7
puis ajoutez ceci à .bashrc: md() { pandoc "$1" | lynx -stdin; }
HDave
Après quelques retouches, je me suis décidé, par défaut, à lire "README.md", ce que je fais habituellement: function mdless {/ usr / bin / pandoc-t plain "$ {1: -README.md} "| / usr / bin / less; }
bgvaughan
Pour la solution de @ HDave, procédez comme suit defining function based on alias 'md': Vérifiez à quoi il sert (par exemple, avez-vous besoin / utilisez-vous? ): which md(Le mien était réglé sur mkdir -p). Non? Puis ajouter cette dessus de la ligne: unalias md. Reçu cette erreur lors de l'utilisation zshsur Ubuntu 18.
Pivot
44

J'ai écrit un visualiseur de terminal léger en python, pour CLI ou en tant que lib:

Il prend en charge, par exemple, des tableaux, des avertissements et des tonnes de thèmes de couleurs.

Usage:
mdv [-t THEME] [-T C_THEME] [-x] [-l] [-L] [-c COLS] [-f FROM] [-m] [-M   DIR] [-H] [-A] [MDFILE]

Options:
MDFILE    : Path to markdown file
-t THEME  : Key within the color ansi_table.json. 'random' accepted.
-T C_THEME: Theme for code highlight. If not set: Use THEME.
-l        : Light background (not yet supported)
-L        : Display links
-x        : Do not try guess code lexer (guessing is a bit slow)
-f FROM   : Display FROM given substring of the file.
-m        : Monitor file for changes and redisplay FROM given substring
-M DIR    : Monitor directory for markdown file changes
-c COLS   : Fix columns to this (default: your terminal width)
-A        : Strip all ansi (no colors then)
-H        : Print html version

   entrez la description de l'image ici

Pilule rouge
la source
J'aime beaucoup cela, mais il manque certaines fonctionnalités d’utilisation simples, telles que: ne pas afficher le thème par défaut lorsqu’il est exécuté en tant qu’application (je me fiche de savoir quel thème est utilisé, laissez-moi en définir un dans mon alias, puis affichez simplement le balisage s'il vous plaît), justifiant le texte du paragraphe (sans demander ici une césure avancée mais au moins un retour à la ligne), et il ne semble pas non plus gérer correctement les sauts de paragraphe pour une raison quelconque. C'est un très bon début et offre de nombreuses fonctionnalités utiles, telles que la coloration syntaxique du code, mais il est fondamentalement inutilisable dans son état actuel, dommage, car il s'est rapproché.
Thomas
Salut merci! Btw: après seulement 10 ans ou plus, j'ai corrigé ces choses ob. Si cela vous intéresse toujours, jetez un coup d'œil sur les problèmes de GH et donnez-leur vos commentaires.
Pilule rouge
Hey, qu'en est-il de cette version de Python 3?
Lucas Soares
fera dès AP3 est prêt à Posix thoughtstreams.io/ncoghlan_dev/...
Red Pill
Dommage qu'il ne supporte toujours pas le fond clair. (installé avec pipcomme suggéré dans le fichier Readme)
Ruslan
42

Note : crédits à la réponse de @ Joe dans Stack Overflow.


Vous pouvez utiliser Grip , qui rend le Markdown exactement comme le ferait GitHub (il utilise l’ API GitHub Markdown ).

Installez-le avec pip:

pip install grip

Pour rendre un fichier example.md:

grip -b example.md

A quoi ça ressemble:

entrez la description de l'image ici

Peque
la source
1
Utilisateurs Arch Linux: Grip est un package différent. Faire à la pip install gripplace.
Ave
Fonctionne comme un charme. Je recommande ceci
Some_guy632
30

Est un programme graphique, mais je trouve utile pour cette tâche ReText , qui est un éditeur pour Markdown et reStructuredText avec un mode de prévisualisation:

ReText capture d'écran

Cependant, si vous avez besoin de voir le fichier ReText depuis un terminal, une option peut être de convertir le marddown en HTML avec pandocet voir la copie html dans lynx:

pandoc file.mkd > file.html ; lynx file.html

Modifier

Il existe quelques autres éditeurs gratuits avec aperçu pour les systèmes * nix. Certains dans les dépôts officiels, d'autres pas, et chacun avec leurs propres forces et faiblesses, mais en tant que téléspectateurs appropriés, je voudrais souligner ceux-ci:

  • Typora : Il est toujours en phase bêta, mais c'est gratuit entre-temps (on ne sait pas comment la licence de la version stable sera concédée sous licence). Bien qu’il ne s’agisse pas d’un FOSS, il est parfait comme visualiseur de démarques car il fonctionne par défaut presque comme un éditeur WYSIWYG ("mode de prévisualisation en direct") avec un panneau Contour (table des matières) très pratique pour les fichiers volumineux. Les "modes de code source" ont un surlignage syntaxique, y compris des polices plus grandes pour les en-têtes et des italiques pour l’accentuation. Et pas seulement exporter en HTML, ODT et PDF. Peut également importer-exporter vers plusieurs formats via l' pandocintégration.

  • Ghostwriter : aperçu HTML uniquement (non modifiable), mais aussi un panneau de contour et une syntaxe intéressantes. Sans options d'importation, mais exportez vers plusieurs formats avec les processeurs pandoc et autres (MultiMarkdown, Discount ou cmark) et effectuez une vérification orthographique en direct via hunspell/ myspell.

  • MdCharm : Similaire à Retext, mais supporte les démarques de démarque (Markdown extra) et MultiMarkdown. Afficher également un panneau de contour (ToC).

Pour les R Markdownutilisateurs, je devrais aussi mentionner editR . N’est pas un programme, mais un paquet R pour éditer / aperçu HTML de R Markdown dans un navigateur. R Commander et RStudio permettent également une prévisualisation facile en HTML, PDF ou Word.

Fran
la source
J'utilise exclusivement du texte. Cela ne m'a pas encore échoué, mais je ne l'ai pas utilisée aussi souvent que d'autres. Je l'utilise exclusivement pour faire des problèmes dans github (qui utilise malheureusement Markdown) et n'a pas d'interface graphique pour cela.
Shirish
Merci pour le conseil Fran, exactement ce que je cherchais. La seule chose que j'ai remarquée jusqu'à présent dans ReText est une fonction d'actualisation ou de "charge à la modification", qui vous permet de l'utiliser conjointement avec d'autres éditeurs.
Cendres
Très bon conseil. Également recommandé ici: softwarerecs.stackexchange.com/a/17740 Le référentiel a été remplacé par github: github.com/retext-project/retext
Dr Beco, le
12

Pour ceux qui préfèrent w3m (liaisons de style vi):

pandoc file.md | w3m -T text/html

Je l'ai mis dans un script, mdview.sh, et mis dans mon chemin:

#!/bin/sh
pandoc "$1" | w3m -T text/html
Neildaemond
la source
De loin la meilleure version sans interface graphique: le rendu conserve les couleurs du terminal et ressemble à une simple lesscommande avec coloration.
Ulysse BN
4

Il existe également Discount, mise en œuvre de David Parsons du texte Markdown de John Gruber en langage HTML. Remise se compose de plusieurs outils de ligne de commande , y compris markdown, mkd2html, makepage, mktagset theme.

http://www.pell.portland.or.us/~orc/code/discount/

De plus, il existe une implémentation du démarquage en C, utilisant une grammaire PEG.

https://github.com/jgm/peg-markdown

Sous Mac OS X, vous pouvez également consulter qlmarkdownun générateur QuickLook pour les fichiers Markdown.

carlo
la source
3

Je sais que vous avez dit que vous préfériez une application non graphique, mais je travaille actuellement sur une application graphique appelée DownMarker qui le fait. Vous pouvez trouver la source dans un référentiel mercurial ici . Vous pouvez trouver un exécutable autonome à exécuter avec mono ou .NET ici .

Avertissement: il est loin d'être terminé et n'a été testé que de temps en temps sur linux / mono. Le dernier test que j'ai fait était sur Mono 2.6. Si vous voulez le construire vous-même, vous aurez besoin d’une version récente de mercurial pour cloner le référentiel et de MonoDevelop pour compiler l’application.

Wim Coenen
la source
1
Il ouvre dans ma machine Windows 7 64 bits, mais il ne rend pas le document md, il ne montre que la source. Néanmoins, il est étonnant qu'une application mono s'exécute simplement sans incident sur ma machine. :)
GmonC
3

Deux autres outils:
- Showdown est un port JavaScript ou Markdown: https://github.com/coreyti/showdown . Vous pouvez l'utiliser uniquement à partir du navigateur
- txt2tags peut lire le format Markdown, mais il ajoute de nombreuses nouvelles options et fonctionnalités: http://txt2tags.org/online.php

Communauté
la source
3

Quelques commentaires sur ou mentionnaient la possibilité d'utiliser un module complémentaire de navigateur. J'aime cette approche car je peux éditer des fichiers de démarques dans n’importe quel éditeur de texte Linux (de nano à vim en passant par Kate) et afficher les fichiers dans Firefox (mon navigateur de choix).

J'ai simplement installé cet add-on Firefox et tout fonctionnait parfaitement sous Kubuntu 12.04 et Firefox 33.0. Aucun ajustement requis.

Markdown Viewer :: Modules pour Firefox
https://addons.mozilla.org/en-us/firefox/addon/markdown-viewer/

(J'aime aussi ReText, mais je préférerais voir quelque chose comme ReText implémenté en tant que plugin pour Kate. ReText manque de fonctionnalités pour rivaliser avec des éditeurs matures comme Kate.)

MountainX
la source
La question demandait un spectateur sans interface graphique, mais personnellement, j'aime beaucoup cette solution.
Sauerburger
3

Un visualiseur de markdown en ligne de commande fortement sous-estimé est le markdown-cli .

Installation

npm install markdown-cli --global

Usage

markdown-cli <file>

Caractéristiques

Probablement pas remarqué beaucoup, car il manque toute documentation ...
Mais autant que je puisse comprendre par quelques exemples de fichiers de démarques, certaines choses qui m'ont convaincu:

  • gère beaucoup mieux les fichiers mal formatés (de la même manière que atome, github, etc.; par exemple, lorsqu'il manque des lignes vierges avant les listes)
  • plus stable avec la mise en forme dans les en-têtes ou les listes (le texte en gras dans les listes rompt les sous-listes dans d'autres visualiseurs)
  • formatage correct des tableaux
  • mise en évidence de la syntaxe
  • résout les liens de note de bas de page pour afficher le lien au lieu du numéro de note de bas de page (tout le monde ne voudra peut-être pas cela)

Capture d'écran

example.png

Désavantages

J'ai réalisé les problèmes suivants

  • les blocs de code sont aplatis (tous les espaces de début disparaissent)
  • deux lignes vides apparaissent avant les listes
Orzechow
la source
3

Utilise actuellement mdpdans Arch Linux et Termux sur Android, un outil de présentation de démarques.

image

Usage

$ mdp {file}.md

Slick alias

md() {
  fileName=${1:-"README.md"}
  mdp "$fileName"
}
A1rPun
la source
2

En supposant que vous souhaitiez voir à quoi ressemble le code HTML: Utilisez un navigateur Web (avec un addon) comme afficheur.

Par exemple, pour Google Chrome, TextDown permet également de modifier des fichiers directement dans le navigateur et de voir un aperçu en direct.

Après l'avoir ajouté, vous devez également accéder à chrome: // chrome / extensions / et cochez la case "autoriser l'accès aux URL de fichier" pour pouvoir ouvrir les fichiers locaux. Un avertissement cependant: si vous enregistrez (shift-ctrl-s), TextDown n'enregistre pas dans le fichier que vous avez ouvert, mais dans votre dossier de téléchargements.

PapaFreud
la source
Il y a aussi cette extension pour Firefox, que vous pouvez ensuite travailler en suivant ceci .
Wilf
2

Je suggère de regarder Atom . C'est un excellent éditeur de texte avec aperçu de démarquage intégré. Je n'utilise généralement pas le mode de prévisualisation markdown, car il a un problème sérieux: les sauts de ligne (sauf s'ils viennent par paires indiquant <p>le contenu d' une balise) sont conservés dans la prévisualisation. Mais le mode de surbrillance de la syntaxe est tellement bon (puisque Markdown est optimisé pour être lisible par l'homme et que la colorisation d'Atom est excellente), je finis généralement par lire des fichiers de démarques en mode vue source.

Wingedrhino
la source
2

Readonly Vim avec Markdown en surbrillance et pliage

Avec Vim Markdown mis en évidence et replié , la solution la plus simple consiste à évoquer vimen mode lecture seule avec l'un vim -Rou l'autre (ou du moins sur Ubuntu) avec plus d'élégance:

$ view filename.md

Ajoutez ce qui suit au bas de votre .vimrcfichier et vous viewobtiendrez le même lessavantage que votre mise en surbrillance de la syntaxe préférée (pas seulement pour le démarquage!) Et le pliage:

" less behaviour for view
" https://unix.stackexchange.com/a/314184/39845

" http://vim.wikia.com/wiki/Using_vim_as_a_syntax-highlighting_pager
function! LessBehaviour()
    if (!&modifiable || &ro)
        set nonumber
        set nospell
        set laststatus=0    " Status line
        set cmdheight=1
        set guioptions=aiMr    " No menu bar, nor tool bar
        noremap u <C-u>
        noremap d <C-d>
        noremap q :q<CR>
    endif
endfunction

" https://vi.stackexchange.com/a/9101/3168
augroup ReadOnly
    au!
    au VimEnter * :call LessBehaviour() 
augroup END

Il existe également un less.shscript plus rigoureux . Sur mon système, il est livré avec vim. Pour le trouver, utilisez:

$ find /usr/share/vim -name less.sh

Cependant, contrairement au script ci-dessus, le pliage ne fonctionnera pas avec cela less.sh.

Serge Stroobandt
la source
1

Vous pouvez jeter un oeil à mad qui est très facile à utiliser:

mad file.md
Thomas Baruchel
la source
0

Une solution simple pour la plupart des situations: copiez / collez le démarquage dans un visualiseur dans le "nuage". Voici deux choix:

  1. Dillinger.io
  2. Dingus

Rien à installer! Cross plate-forme! Navigateur croisé! Toujours disponible!

Inconvénients: problèmes de fichiers volumineux, problèmes de sécurité des applications cloud standard.

aap
la source
0

C'est un alias qui encapsule une fonction:

alias mdless='_mdless() { if [ -n "$1" ] ; then if [ -f "$1" ] ; then cat <(echo ".TH $1 7 `date --iso-8601` Dr.Beco Markdown") <(pandoc -t man $1) | groff -K utf8 -t -T utf8 -man 2>/dev/null | less ; fi ; fi ;}; _mdless '

Explication

  • alias mdless='...' : crée un alias pour mdless
  • _mdless() {...}; : crée une fonction temporaire à appeler après
  • _mdless : à la fin, appelez-le (la fonction ci-dessus)

À l'intérieur de la fonction:

  • if [ -n "$1" ] ; then : si le premier argument n'est pas nul alors ...
  • if [ -f "$1" ] ; then : aussi, si le fichier existe et est normal alors ...
  • cat arg1 arg2 | groff...: cat envoie ces deux arguments concaténés à groff; les arguments étant:
    • arg1: <(echo ".TH $1 7date --iso-8601 Dr.Beco Markdown"): quelque chose qui démarre le fichier et groffcomprendra les notes d'en-tête et de pied de page. Ceci remplace l'en-tête vide de la -sclé sur pandoc.
    • arg2:: <(pandoc -t man $1)le fichier lui-même, filtré par pandoc, affichant le manstyle du fichier$1
  • | groff -K utf8 -t -T utf8 -man 2>/dev/null: redirige le fichier concaténé résultant vers groff:
    • -K utf8groffcomprend donc le code du fichier d'entrée
    • -t il affiche donc correctement les tables dans le fichier
    • -T utf8 donc la sortie dans le bon format
    • -manil utilise donc le paquet MACRO pour sortir le fichier au manformat
    • 2>/dev/null ignorer les erreurs (après tout, c'est un fichier brut qui est transformé manuellement, nous ne nous en soucions pas tant que nous pouvons voir le fichier dans un format pas si laid).
  • | less: Enfin, montre le fichier paginant avec less(j'ai essayé d'éviter ce tuyau en utilisant à la grofferplace de groff, mais groffern'est pas aussi robuste que lesset certains fichiers le bloque ou ne le montre pas du tout. Alors, laissez-le passer par un autre tuyau , que diable!

Ajoutez-le à votre ~/.bash_aliases(ou semblable)

Dr Beco
la source
0

Le moyen le plus indolore pour moi est d’utiliser memless sans gêne de Ruby.

  1. Installer ruby

    sudo apt-get install ruby

  2. Installez mdless

    sudo gem install mdless

  3. Ouvrir le fichier via mdless

    mdless filename.md

Jonel Dominic Brave
la source
1
mdlessa déjà été donné comme réponse.
Scott