正如你從過去的文章中看到的,在這裡,我們是馬克down的粉絲。通過學習這種簡單直觀的格式,您可以輕鬆地創建美觀的輸出。從PDF到網頁,簡陋的純文本文件變成了複雜的文檔。
但降價不是鎮上唯一的遊戲。有許多其他所謂的輕量級標記語言類似於Markdown,但具有不同的特性集。其中之一就是Asciidoc。如果你喜歡Markdown,但正在尋找更多的引擎蓋下,這是值得考慮的。以下是一些原因。
標記語言是一組代碼,當應用於純文本時,允許您添加以下一個或多個屬性(以及其他屬性):
你每天遇到的一種標記語言(除非你是個隱士)是超文本標記語言,或HTML。網站和應用程序,帶給你新聞和顯示你的電子郵件是建立,至少部分,與HTML標記。HTML使用標記作為標記原始文本內容的機制。例如,考慮以下HTML片段:
<body><h1>Introducing HTML</h1><p>Here is a paragraph in HTML... we know it's a <strong>paragraph</strong>because the surrounding \<p\> tags define it as one.</p></body>在這裡,標記指定要跟隨的所有文本(直到結束標記)都是一個段落。從這個意義上說,它將文本定義為一個段落。
但也要注意標籤。。。這些通常用於定義網頁的佈局,例如屏幕側面的邊距。
標籤將用粗體字體裝飾“段落”這個詞,而標籤可以同時排列標題(將標題與周圍文本隔開)以及定義更大的字體。
一些標記語言(其中包括HTML)的問題是,手動鍵入這些標記是一件非常乏味的事情。對於其他語言(如XML),標記及其屬性在整個內容中所佔的比例要大於文本本身!請看以下DocBook片段,這是一種用於創建許多技術出版物的XML方言:
所有紫色的文本表示您需要自己鍵入的標記。第一段直到那幅畫的最下面才開始。如果沒有按照DocBook標準進行正確的操作,您將無法將其轉換為漂亮的PDF文檔,而這通常是最終目標。
如果您想利用標記語言,例如通過將HTML頁面發佈到web或將DocBook文件轉換為PDF以便打印,那麼您需要做以下兩件事之一。一方面,你可以把時間花在學習這些語言上,用手寫,然後三重檢查你的工作。或者你可以投資一個工具,為你管理這些複雜的。
謝天謝地,一些有進取心的開發商想出了第三種選擇。他們創建了新的標記語言,其中包含了許多(在某些情況下是大部分或全部)較重的對等語言的特性,但大大簡化了語法。這些“輕量級”語言包括熟悉的Markdown以及Asciidoc、Emac的組織模式格式和Mediawiki語法。
這些語言的一個特點是它們的“標籤”(比如它們)應該是直觀的。讓我們看一下前面的片段,這次是用Asciidoc編寫的:
Introducing Asciidoc--------------------Where are the *paragraph* tags? We dont need them... Asciidoc is **art enoughto realize this is a paragraph!更具可讀性,不是嗎?從頂部開始,我們可以將標題標識為帶有破折號的“下劃線”。你可以這樣做,如果你是手寫的,只要在你的筆記本標題下畫一個下劃線。也沒有段落標記——Asciidoc認為兩個空行之間沒有其他標記的任何內容都是“純”段落文本。最後,“段落”周圍的星號表示粗體。如果你在短信中這麼做的意思完全相同,請舉手。
“重量級”標記語言通常有一個專用的應用程序來為您解釋它們。在網絡上,是你的瀏覽器,也可能是網絡服務器將代碼轉換成華麗的網頁。對於XML格式的文檔,它可能類似於microsoftword,它讀寫DOCX格式(這是另一種XML方言)。因此,您永遠不必直接與這些文檔的源進行交互,只需應用程序顯示的漂亮外觀即可。
同時,用輕量級語言編寫的文檔在源代碼形式上是人類可讀的(另一個租戶),但只有真正的書呆子才會認為它們很漂亮。為了得到漂亮的輸出,你需要使用一個處理器。這些應用程序將逐行運行您的標記並將其轉換為其他看起來不錯的內容。開發語言本身的相同項目通常會產生一個與之配套的實用程序。Markdown項目提供了一個同名的Perl腳本,Asciidoc的配套程序是用Python編寫的。此外,其他轉換實用程序將包括對其中一些語言的支持。其中一個就是優秀的Pandoc,它將採取降價以及輕量級的標記,重構文本、Mediawiki和Org模式,並將它們轉換為PDF、DOCX、ODT等等。
其結果是輕量級標記語言允許您以純文本(地球上最可移植的數據格式)工作,但最終仍會產生好看的輸出。既然你確信它的優點,你應該選擇哪種語言?降價無疑是最受歡迎的,並且有它的優點(稍後將詳細介紹)。但特別是Asciidoc是一個有價值的選擇。在下一節中,我們將探討幾個原因。
創建Asciidoc格式是為了給DocBook帶來輕量級的簡單性,DocBook是長格式(尤其是技術性)寫作中比較常見的格式之一。它聲名鵲起的原因之一是它是一對一的翻譯,這意味著DocBook中的每一個元素,在Asciidoc中都有相應的表示。下面我們來看看Asciidoc與Markdown相比的優缺點。
Markdown從一開始的目標就是為網絡作者提供一種簡單的格式。因此,它所支持的編寫元素(至少是最初的實現,見下文)的重點是自動化編寫HTML的時間密集型方面(例如,除了每個項的標記之外,還需要or標記的列表)。
Asciidoc也包含這些元素,但也提供更高級的DocBook元素,如警告(例如“Note:”或“Info:”callout塊)和複雜的表佈局。這並不意味著你需要一直使用它們,但是如果你需要它們的話,它們會在那裡並且隨時可用。
當Markdown開始流行時,它的一些用戶開始遇到上面討論的一些缺點。因此,這些用戶開始開發自己的擴展來解決這些問題,例如添加表格或腳註/尾註的能力。很快就出現了許多降價的“味道”,其中包括:
結果是,您的文檔可能需要的元素並非全部由一種風格覆蓋。相比之下,Asciidoc目前並沒有受到碎片降價的影響。
Markdown是一個很好的方法,它可以讓你快速地把一篇博客文章從你的腦海中拿出來放到頁面上。但是開箱即用,它不是為構建更長的作品而構建的,比如一本書。Asciidoc就是為此而設計的,一個例子就是它的“include”函數。這些語句允許您將一個文件的所有內容包含在另一個文件中:
include::somefile.adoc這與主文檔在字處理器中的工作方式沒有什麼不同。例如,這允許您將每一章起草為一個單獨的文件,然後將它們全部“包含”到一個代表該書的文件中。當你處理那個“圖書文件”時,輸出就好像所有的章節都直接寫進了那個文檔。
降價涵蓋了大部分用戶的所有基礎。對於那些只想寫博客,或者以純文本格式打筆記的人來說,Markdown支持他們需要的所有元素。交叉引用對於只想創建簡單備忘錄或網頁的用戶來說意義不大。你甚至可以用減價法來處理一些簡單佈局的長篇作品,比如一本小說,最後你自己把它們組合起來。
由於Markdown滿足了更大部分用戶的需求,因此在以下方面得到了更好的支持:
雖然Markdown實際上是輕量級標記語言中的一種選擇,但Asciidoc包含所有相同的元素,然後是一些元素。額外的Asciidoc需要一些時間來學習,也許可以更好地為你準備更大,更復雜的寫作項目。
你怎麼認為?你滿足於降價的簡單嗎?或者,使用Asciidoc創建自己的多渠道發佈工作流是否具有吸引力?也許你討厭純文本,而它是你的一路文字?請在下面的評論中告訴我們!
關鍵區別–xml與xsd XML和XSD的主要區別在於,XML是一種標記語言,它是在不相容的系統上建立和共享資料的靈活方法,而XSD用於定義XML文件的結構和內容。 不同的組織使用不同的系統。一個挑戰是在這些不相容的系統之間交換...
...獲取資料。XML可以用來完成這項任務。它代表可擴充套件標記語言。使用XML的主要優點是傳輸資料。除此之外,它還可以用於配置框架和為android應用程式設計佈局。XML中使用的標記不是預定義的。程式設計師可以根據應用程式...
...vaScript、PHP等,其中web開發的基礎語言是HTML。它是一種由標記組成的標記語言。每個任務都有特定的標記。HTML可以用來改變網頁的結構。新增段落、更改標題、新增列表和表格是可以使用HTML執行的一些任務。HTML有幾種版本。最...
...提供資訊並瞭解市場趨勢。web開發的一種常見語言型別是標記語言。它是一種專門為**網頁而設計的語言。標記語言與級聯樣式表(CSS)和JavaScript相結合,使web頁面更具表現力和動態性。標記語言的主要任務是構建網頁所需的結...
... - json格式(json) vs. xml(xml) JSON和XML是流行的web技術。JSON是輕量級的,簡單易讀。它也更快。XML更具可擴充套件性和複雜性。JSON和XML的區別在於JSON是一種元語言,而XML是一種標記語言。通常JSON優於XML,因為XML比JSON更易於解析。在...
...字稿(typescript) JavaScript是一種建立***頁的語言。它是一種輕量級的解釋語言,易於與HTML和CSS整合。它對於表單驗證、動畫和向網頁新增多媒體功能非常有用。TypeScript是具有附加功能的JavaScript。JavaScript和TypeScript的區別在於JavaScri...
...然而,Markdown與這些標記語言的區別在於它被認為是一種輕量級語言。 很容易看到一個降價檔案,但仍然閱讀文字所說的。然而,對於像HTML這樣的“較重”的語言,一個人處理文字所說的內容並不是那麼容易,這意味著它不...
XML代表可擴充套件標記語言。它的目的是描述和構造網際網路、移動應用程式和其他地方的資料。您是否想知道這是如何工作的以及XML的用途?讓我們幫助你瞭解細節。 ...
...reball的johngruber建立了Markdown,一種用於在web上釋出內容的輕量級標記語言。它使用易於理解的純文字格式語法,透過使用簡單的Perl指令碼建立整潔的HTML或XHTML。 ...