Markdown Görüntüleyici


154

Markdown ile formatlanmış bir dosya buldum. Bu tür dosyaları görüntülemek için hangi görüntüleyiciyi kullanabileceğimi önerebilir misiniz? Umarım bir gui olmadan bir (mümkünse)

Güncelleme Aslında herhangi bir dönüşüme ihtiyaç duymayan markdown dosya biçimini ayrıştırabilecek bir görüntüleyici arıyordum. Ama buna yakın bir şey iyi olmalı.


5
Bir markdown dosyası sadece bir editörde açtığınızda okunabilir, okumak için gerçekten fantezi araçlara ihtiyacınız yoktur. Ne için istiyorsun / hangi formatta olmasını istiyorsun?
kasterma

1
"Markdown" un birçok sürümü var . Teknik olarak, LaTeX, HTML italik kalın cesur italik ve USE linkleri gibi dikkat
çekicidir

1
github şimdi retext @Fran olarak tavsiye
Dr. Beco

15
@vonbrand LaTeX ve HTML işaretlemek vardır yukarı dilleri. Markdown, "dili" biçimlendiren belirli bir metindir (buna benzer Stack Exchange sitelerinde kullanılanlar da dahil olmak üzere bir dizi değişken olduğu konusunda haklısınız). Markdown'un adı bir şakadır, çünkü metninize "işaretlemeden" (yani, etiketler eklemek) olmadan (çoğu zaman) bir işaretleme diliyle yapılabilecek birçok şeyi yapmanıza olanak tanır.
Laurence Gonsalves

Yanıtlar:


37

Aşağıdaki web sitesi markdown'ı HTML'e çevirecek bir araç sunmaktadır:

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

Dosyayı HTML'ye dönüştürdükten sonra, dosyayı görüntülemek için kullanılacak çok sayıda komut satırı aracı vardır. Biçimlendirilmiş metin biçimlendirme içeren bir sınama dosyası kullanarak, aşağıdakileri güzel çalıştığını gördüm.

$ 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 , html biçimli metni komut satırından görüntülemek için kullanabileceğiniz birçok araçtan biridir. Başka bir seçenek, biraz daha iyi çıktı istiyorsanız, lynx kullanmak olacaktır :

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

Eğer bir emacs kullanıcısıysanız, biri burada bulunan markdown için bir mod yazmıştır: http://jblevins.org/projects/markdown-mode/ . Bu, web sitesindeki ekran görüntüsünde görülebileceği gibi güzel sözdizimi vurgulaması sağlar.

Bu araçların tümü slackware için uygun olmalıdır.


8
VIM'de, tanınmıyorsa işaretlemeyi işaretlemek için elle ayarlayarak sözdizimini vurgulayabilirsiniz. :set syntax=mkd
Gert

1
-stdinGerçekten zekice ve tam ihtiyacım olanı kullanmayı ve vaşağı kullanmayı asla düşünmezdim .
NickO

1
Bunu test ettim ve Linux üzerinde çalıştığını doğrulayabilirim, ancak ilginç bir şekilde man sayfası böyle bir özelliğin yalnızca UNIX için geçerli olduğunu bildirmektedir. -stdin read the startfile from standard input (UNIX only).
sherrellbc

98

Geçici dosyalar oluşturmadan pandoc ve lynx kullanmak:

pandoc file.md | lynx -stdin

7
(not: pandoc haskell'dadır)
fche

10
Veya sadecepandoc -t plain file.md | less
Adriano P

7
sonra şunu ekleyin .bashrc: md() { pandoc "$1" | lynx -stdin; }
HDave

Bir kaç kez kontrol ettikten sonra, varsayılan olarak "README.md" yi okumak için hazırladım, ki genelde ne yapıyorum: function mdless {/ usr / bin / pandoc -t plain "$ {1: -README.md} "| / usr / bin / daha az; }
bgvaughan

@ HDave'in çözümü için, eğer elde ederseniz defining function based on alias 'md', şunu yapın: Ne olduğunu kontrol edin (örneğin, ihtiyacınız var mı / kullanıyor musunuz? ): which md(Benimki için ayarlanmış mkdir -p). Hayır? Sonra çizgisinin üzerinde bu ekleyin: unalias md. zshUbuntu 18’de kullanıldığında bu hatayla karşılaşıldı .
döner

44

CLI veya lib olarak python'da hafif bir terminal markdown görüntüleyicisi yazdım:

Örneğin masaları, tavsiyeleri ve tondaki renk temalarını destekler.

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

   görüntü tanımını buraya girin


Bundan gerçekten hoşlanıyorum, ancak bazı temel kullanılabilirlik özelliklerinden yoksundur, örneğin: bir uygulama olarak çalıştırıldığında temanın varsayılan olarak gösterilmemesi (hangi temanın kullanıldığını gerçekten umursamıyorum, takma adımda birini tanımlamama izin verin ve sonra paragraf metnini gerekçe göstererek (lütfen burada gelişmiş tireleme talep etmiyor, ancak en azından kelime sargısını istiyoruz) yalnızca aşağı doğru işaretleyin lütfen) ve paragraf sonlarını bir tuhaf nedenden dolayı doğru şekilde ele almıyor gibi görünüyor. Bu gerçekten iyi bir başlangıç ​​ve kod sözdizimi vurgulama gibi birçok kullanışlı özelliğe sahip, ancak şu anki haliyle kullanılamıyor, üzücü çünkü çok yaklaştı.
Thomas

Merhaba teşekkürler! BTW: Sadece 10 yıl sonra, o şeyleri düzelttim. Eğer hala ilgini çekiyorsa, GH ile ilgili bir görüş ve geri bildirim sorun.
Kırmızı Hap

Hey, peki Python 3 versiyonu?
Lucas Soares

Py3 POSIX için hazır olacak en kısa zamanda yapacağız thoughtstreams.io/ncoghlan_dev/…
Red Pill

Çok kötü, hala açık arka planı desteklemiyor. (Benioku'da pipönerildiği şekilde kuruldu )
Ruslan

42

Not : kredi için Joe'nun cevap @ yığın taşması içinde.


Sen kullanabilirsiniz Kavrama Markdown vermektedir tam GitHub'dan olarak (kullandığı olur GitHub markdown API ).

Şununla yükleyin pip:

pip install grip

Bir dosyayı oluşturmak için example.md:

grip -b example.md

Bu nasıl görünüyor:

görüntü tanımını buraya girin


1
Linux kullanıcıları kemer: Grip farklı bir pakettir. Do pip install gripyerine.
Ave,

Tıkır tıkır çalışıyor. Bunu tavsiye ederim.
some_guy632

30

Bir GUI programı, ancak bu görev için faydalı buluyorum , ReText , Markdown ve reStructuredText için bir önizleme modu olan bir editör:

ReText ekran görüntüsü

Ancak, bir terminalden ReText dosyasını görmeniz gerekiyorsa, seçeneklerden biri marddown'u html'ye çevirip pandochtml kopyasını görmek olabilir lynx:

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

Düzenle

* Nix sistemlerinde önizleme özellikli birkaç ücretsiz markdown editörü vardır. Bazı resmi depolarda, bazıları değil, her biri kendi güçlü ve zayıf yönlerine sahip, ancak uygun izleyiciler olarak, bunları vurgulamak isterim:

  • Typora : Hala beta aşamasında, ancak bu arada ücretsiz (kararlı sürümün nasıl lisanslanacağı belli değil). FOSS olmasa da, işaretleme görüntüleyicisi olarak mükemmeldir, çünkü varsayılan olarak büyük dosyalar için çok uygun olan bir Anahat paneliyle (içindekiler tablosu) varsayılan olarak neredeyse bir WYSIWYG editörü ("canlı önizleme modu") olarak çalışır. "Kaynak kod modu", başlıklar için daha büyük yazı tipleri ve vurgu için italik gibi sözdizimi vurgulama özelliğine sahiptir. Ve yalnızca HTML, ODT ve PDF'ye dışa aktarma. Ayrıca pandocentegrasyon yoluyla çeşitli biçimlerde ithalat-ihracat yapabilir .

  • Ghostwriter : Yalnızca HTML önizlemesi (düzenlenebilir değil), aynı zamanda hoş bir taslak paneli ve sözdizimi vurgusu da var. İçe aktarma seçenekleri olmadan, pandoc ve diğer işlemcilerle (MultiMarkdown, Discount veya işaret) çeşitli biçimlerde dışa aktarın ve hunspell/ üzerinden canlı bir yazım denetimi yapın myspell.

  • MdCharm : Retext'e benzer, ancak markdown (markdown extra) ve MultiMarkdown'ı destekler. Ayrıca bir anahat (ToC) paneli göster.

R MarkdownKullanıcılar için editR'den de bahsetmeliyim . Bir program değil, bir tarayıcıdaki R Markdown / html önizlemesini düzenlemek için bir R paketidir. R Commander ve RStudio ayrıca HTML, PDF veya Word'de kolay önizlemeye izin verir.


Sadece retext kullanıyorum. Beni henüz başarısızlığa uğratmadı ama o zaman diğerlerinin de olduğu kadar yaygın bir şekilde kullanmadım. Sadece (ne yazık ki markdown kullanıyor) github ile ilgili sorunlar çıkarmak için kullanıyorum ve bunun için GUI yok.
Aralık'ta

Fran, bahsettiğim şey için teşekkürler. ReText'in şu ana kadar eksik olduğunu fark ettiğim tek şey bir yenileme ya da "değişiklik yükü" özelliği, böylece diğer düzenleyicilerle birlikte kullanabilirsiniz.
Ash,

Çok güzel bir ipucu. Ayrıca burada tavsiye edilir: softwarerecs.stackexchange.com/a/17740 Depo, github olarak değiştirildi: github.com/retext-project/retext
Dr Beco

12

W3m tercih edenler için (vi tarzı ciltler):

pandoc file.md | w3m -T text/html

Bunu bir komut dosyasına, mdview.sh dosyasına koydum ve yoluma koydum:

#!/bin/sh
pandoc "$1" | w3m -T text/html

GUI'siz en iyi sürüm: rendering, terminal renklerini tutar ve lessrenklendirmeyle basit bir komut gibi görünür .
Ulysse BN


4

Ayrıca indirim, David Parsons'un John Gruber'in Markdown metninin html diline uygulaması. İndirim birkaç komut satırı araçları da dahil olmak üzere oluşur markdown, mkd2html, makepage, mktagsvetheme .

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

Ek olarak, bir PEG dilbilgisi kullanarak, C'de bir markdown uygulaması vardır.

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

Mac OS X'te ayrıca qlmarkdownMarkdown dosyaları için bir QuickLook oluşturucusuna da bakabilirsiniz .


3

GUI olmayan bir uygulamayı tercih ettiğinizi biliyorum, ancak şu anda bunu yapan DownMarker adlı bir GUI uygulaması üzerinde çalışıyorum. Kaynağı burada ticari bir depoda bulabilirsiniz . Burada mono veya .NET ile çalışacak bağımsız bir çalıştırılabilir dosya bulabilirsiniz .

Uyarı: Bitmiş olmaktan çok uzaktır ve sadece linux / mono üzerinde test edilmiştir. Yaptığım son test Mono 2.6'da yapıldı. Kendinizi oluşturmak istiyorsanız, depoyu klonlamak için mercurial'ın son sürümüne ve uygulamayı derlemek için MonoDevelop'a ihtiyacınız olacak.


1
Windows 7 makinemde 64 bit açıyor, ancak md belgesini göstermiyor, sadece kaynağı gösteriyor. Yine de, mono bir uygulamanın makinemde bir çökme olmadan çalışması çok şaşırtıcı. :)
GmonC


3

Birkaç yorum, bir tarayıcı eklentisi kullanma olasılığını sordu veya bahsetti. Bu yaklaşımı seviyorum çünkü markdown dosyalarını herhangi bir Linux metin editöründe (nanodan vim'den Kate'e) düzenleyebilir ve dosyaları Firefox'ta (tercih edilen tarayıcım) görüntüleyebilirim.

Bu Firefox eklentisini basitçe yükledim ve Kubuntu 12.04 ve Firefox 33.0'daki kutudan çıktı. Tweaks gerekmez.

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

(ReText'ten de hoşlanıyorum, ancak ReText'in Kate için bir eklenti olarak uygulandığı bir şey görmeyi tercih ederim. ReText, Kate gibi olgun editörlerle rekabet edebilecek çok fazla özellikten yoksundur.)


Soru GUI'siz bir izleyici istedi, ama ben şahsen bu çözümü çok beğendim.
sauerburger

3

Şu anda kullanarak mdpiçinde Arch Linux ve Termux android, bir markdown sunum aracı üzerinde.

görüntü

kullanım

$ mdp {file}.md

Kaygan diğer ad

md() {
  fileName=${1:-"README.md"}
  mdp "$fileName"
}

2

Html'nin neye benzediğini görmek istediğinizi varsayalım: Görüntüleyici olarak bir web tarayıcısı (eklentili) kullanın.

Örneğin, Google Chrome için, dosyaları doğrudan tarayıcıda düzenlemenize ve canlı bir önizleme görmenize olanak sağlayan TextDown var .

Eklemeden sonra, ayrıca chrome: // chrome / extensions / adresine gitmeniz ve yerel dosyaları açabilmeniz için "dosya URL'lerine erişime izin ver" seçeneğini işaretlemeniz gerekir. Yine de bir uyarı: Kaydederseniz (shift-ctrl-s) TextDown, açtığınız dosyaya değil, indirme klasörünüze de kaydeder.


Orada da bu daha sonra takip ederek çalışan alabilirsiniz Firefox için uzatma bu .
Wilf

2

Atom'a bir göz atmanızı öneririm . Dahili etiketleme önizlemesi ile mükemmel bir metin editörüdür. Önizleme bölümünde genellikle etiketleme önizleme modunu kullanmıyorum, çünkü ciddi bir hata satırı kesmesi (bir <p>etiketin içeriğini gösteren çiftler halinde olmadıkça ) korunuyor. Ancak sözdizimi vurgulama modu çok iyidir (Markdown, insan tarafından okunabilecek şekilde optimize edildiğinden ve Atom'un renklendirilmesi mükemmel olduğundan), genellikle kaynak görünüm modunda markdown dosyalarını okudum.


2

Bir IMHO yoğun olarak hafife alınmış komut satırı işaretleme görüntüleyicisi, işaretleme -kesimidir .

Kurulum

npm install markdown-cli --global

kullanım

markdown-cli <file>

Özellikleri

Muhtemelen fazla farkedilmedi, çünkü herhangi bir dokümanı kaçırıyor ...
Ama bazı örnek işaretleme dosyalarında, beni ikna eden bazı şeyleri anlayabildiğim kadarıyla:

  • hasta biçimlendirilmiş dosyaları daha iyi ele alır (örneğin, atom, github, vb.
  • başlıklar veya listelerde biçimlendirme ile daha kararlı (listelerdeki koyu metinler diğer bazı görüntüleyicilerdeki alt listeleri keser)
  • uygun tablo biçimlendirme
  • sözdizimi vurgulama
  • dipnot numarası yerine bağlantıyı göstermek için dipnot bağlantılarını çözer (herkes bunu istemeyebilir)

Ekran görüntüsü

example.png

Dezavantajları

Aşağıdaki sorunları farkettim

  • kod blokları düzleştirilir (tüm baştaki boşluklar kaybolur)
  • listelerden önce iki boş satır görünür

2

Markdown vurgulamalı ve katlamalı salt okunur Vim

İle um Markdown vurgulama ve katlama ve çalışan, en basit çözüm uyandırmak için vimokuma ya da sadece modunda vim -Rya da daha şık (en azından Ubuntu):

$ view filename.md

.vimrcDosyanızı en altına aşağıdakini ekleyin ve en sevdiğiniz sözdizimi vurgulamasının (yalnızca işaretleme için değil!) Ve katlamanın yararına viewolduğu gibi davranır less:

" 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

Daha titiz bir less.shsenaryo da var. Sistemimde paketlenmiş olarak geliyor vim. Bulmak için kullanın:

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

Ancak, yukarıda listelenen komut dosyasının aksine, katlama bununla çalışmaz less.sh.




0

Çoğu durum için kolay bir çözüm: etiketlemeyi "bulut" içerisindeki bir izleyiciye kopyalayın / yapıştırın. İşte iki seçenek:

  1. Dillinger.io
  2. dingus

Yüklenecek bir şey yok! Çapraz platform! Çapraz tarayıcı! Her zaman müsait!

Dezavantajları: büyük dosyalar, standart bulut uygulaması güvenlik sorunları için güçlük olabilir.


0

Bu, bir işlevi içeren bir takma addır:

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 '

açıklama

  • alias mdless='...' : için takma ad oluşturur mdless
  • _mdless() {...}; : sonradan çağrılacak geçici bir fonksiyon yaratır
  • _mdless : sonunda, onu çağır (yukarıdaki fonksiyon)

Fonksiyonun içinde:

  • if [ -n "$1" ] ; then : Eğer ilk argüman boş değilse, o zaman ...
  • if [ -f "$1" ] ; then : ayrıca, eğer dosya varsa ve düzenliyse ...
  • cat arg1 arg2 | groff...: cat, groff ile birleştirilmiş bu iki argümanı gönderir; Argümanlar:
    • arg1: <(echo ".TH $1 7date --iso-8601 Dr.Beco Markdown"): dosyayı başlatan ve groffüstbilgi ve altbilgi notları olarak anlayacak bir şey . Bu, boş başlığın yerine -sanahtarın yerini alır pandoc.
    • arg2: <(pandoc -t man $1): Dosyanın kendisi, tarafından filtre pandoc, çıkış olanağı mandosyasının stilini$1
  • | groff -K utf8 -t -T utf8 -man 2>/dev/null: elde edilen birleştirilmiş dosyayı aşağıdakilere pipingle bağlamak groff:
    • -K utf8yani groffgiriş dosya kodunu anlar
    • -t bu yüzden dosyada doğru tabloları görüntüler
    • -T utf8 bu yüzden doğru biçimde çıktı
    • -manbu yüzden kullandığı MAKRO dosyayı çıkarır paketi manformatında
    • 2>/dev/null hataları görmezden gelmek için (sonuçta, onun ham bir erkek tarafından elle dönüştürülmesiyle, dosyayı çok çirkin olmayan bir biçimde gördüğümüz sürece hataları önemsemeyiz).
  • | less: nihayet, paginasyonlu dosyayı gösterir less(bu boruyu kullanmak grofferyerine kullanmaktan kaçınmaya çalıştım groff, ama grofferbu kadar sağlam değil lessve bazı dosyalar askıda kalıyor veya hiç görünmüyor. , ne halt!

Şuna ekle ~/.bash_aliases(veya benzer şekilde)



0

Benim için en ağrısız yol Ruby'den mdless gem kullanmak .

  1. Yakut yüklemek

    sudo apt-get install ruby

  2. Mdless'i kurun

    sudo gem install mdless

  3. Dosyayı mdless ile aç

    mdless filename.md


1
mdlesszaten bir cevap olarak verildi.
Scott,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.