博客終於開通,試一試格式是否優美

歡迎使用 Cmd Markdown 編輯閱讀器

[TOCM]javascript

咱們理解您須要更便捷更高效的工具記錄思想,整理筆記、知識,並將其中承載的價值傳播給他人,Cmd Markdown 是咱們給出的答案 —— 咱們爲記錄思想和分享知識提供更專業的工具。 您可使用 Cmd Markdown:html

  • 整理知識,學習筆記
  • 發佈日記,雜文,所見所想
  • 撰寫發佈技術文稿(代碼支持)
  • 撰寫發佈學術論文(LaTeX 公式支持)

cmd-markdown-logo

除了您如今看到的這個 Cmd Markdown 在線版本,您還能夠前往如下網址下載:java

Windows/Mac/Linux 全平臺客戶端

請保留此份 Cmd Markdown 的歡迎稿兼使用說明,如需撰寫新稿件,點擊頂部工具欄右側的 新文稿 或者使用快捷鍵 Ctrl+Alt+N

什麼是 Markdown

Markdown 是一種方便記憶、書寫的純文本標記語言,用戶可使用這些標記符號以最小的輸入代價生成極富表現力的文檔:譬如您正在閱讀的這份文檔。它使用簡單的符號標記不一樣的標題,分割不一樣的段落,粗體 或者 斜體 某些文字,更棒的是,它還能夠python

1. 製做一份待辦事宜 Todo 列表

  • [ ] 支持以 PDF 格式導出文稿
  • [ ] 改進 Cmd 渲染算法,使用局部渲染技術提升渲染效率
  • [x] 新增 Todo 列表功能
  • [x] 修復 LaTex 公式渲染問題
  • [x] 新增 LaTex 公式編號功能

2. 書寫一個質能守恆公式1

單行公式顯示效果ios

$$E=mc^2$$c++

行內的公式 $$E=mc^2$$ 行內的公式,行內的$$E=mc^2$$公式。算法

我也是個行內公式 $$\sum_{i}^Nmc^2=f(N)$$ 行內公式用雙$符號包圍.編程

$$x > y$$瀏覽器

$$\(\sqrt{3x-1}+(1+x)^2\)$$安全

$$\sin(\alpha)^{\theta}=\sum_{i=0}^{n}(x^i + \cos(f))$$

$$\sum\_{k=1}^n a\_k b\_k ^2$$

我是行內公式$$d\_i=\sum\_{j=1}^n \omega_{ij}$$, (⊙o⊙)

上述單行公式的寫做方法:

多行公式顯示效果:

\displaystyle
\left( \sum\_{k=1}^n a\_k b\_k \right)^2
\leq
\left( \sum\_{k=1}^n a\_k^2 \right)
\left( \sum\_{k=1}^n b\_k^2 \right)
\displaystyle 
    \frac{1}{
        \Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{
        \frac25 \pi}} = 1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {
        1+\frac{e^{-6\pi}}
        {1+\frac{e^{-8\pi}}
         {1+\cdots} }
        } 
    }
f(x) = \int_{-\infty}^\infty
    \hat f(\xi)\,e^{2 \pi i \xi x}
    \,d\xi

上述多行公式的寫做方法:

3. 高亮一段代碼2

@requires_authorization
class SomeClass:
    pass

if __name__ == '__main__':
    # A comment
    print 'hello world'
class ArticleUpdate(LoginRequiredMixin,View):
    def get(self,request,pk):
        article = get_object_or_404(Article, pk=pk)
        if not request.user == article.user:
            return render(request,'ai-300.html')
        artform = ArticleForm(instance=article)
        artform.fields['category'] = forms.ModelMultipleChoiceField(
                                        label='我的分類',
                                        queryset=Category.objects.filter(Q(blog=request.user.myblog)),
                                        required = False,
                                        widget = forms.CheckboxSelectMultiple(attrs={"class": "form-controlx art-create-category"}))
        editor = request.GET.get('editor') or article.editor
        tempname = 'blog-article-update-%s.html' % editor
        return render(request, tempname, {'artform': artform, 'article': article})
#include <iostream>
using namespace std;
 
int main ()
{
   double* pvalue  = NULL; // 初始化爲 null 的指針
   pvalue  = new double;   // 爲變量請求內存
 
   *pvalue = 29494.99;     // 在分配的地址存儲值
   cout << "Value of pvalue : " << *pvalue << endl;
 
   delete pvalue;         // 釋放內存
 
   return 0;
}
<script type="text/javascript">
    $(".course-dtbox-keep").click(function () {
        var optbtn = this;
        var optstr = this.id.split("-");
        var optid = optstr[optstr.length-1];
        var opttype = optstr[optstr.length-2];
        var optobj = optstr[optstr.length-3];
        $.post("{% url 'course:course-keep' %}",{"optid":optid,"opttype":opttype,"optobj":optobj,"csrfmiddlewaretoken":"{{ csrf_token }}"},function(ret){
            if (ret["suc"]==1){
                $(optbtn).find("i").removeClass("fa-heart-o").addClass("fa-heart").html("&nbsp;已收藏");
            } else if (ret["suc"]==-1){
                $(optbtn).find("i").removeClass("fa-heart").addClass("fa-heart-o").html("&nbsp;收藏");
            } else if (ret["suc"]==0) {
                $(optbtn).find("i").html(ret["msg"]);
            }
        });
    });
</script>
class ThreadDemo extends Thread {
   private Thread t;
   private String threadName;
   
   ThreadDemo( String name) {
      threadName = name;
      System.out.println("Creating " +  threadName );
   }
   
   public void run() {
      System.out.println("Running " +  threadName );
      try {
         for(int i = 4; i > 0; i--) {
            System.out.println("Thread: " + threadName + ", " + i);
            // 讓線程睡醒一會
            Thread.sleep(50);
         }
      }catch (InterruptedException e) {
         System.out.println("Thread " +  threadName + " interrupted.");
      }
      System.out.println("Thread " +  threadName + " exiting.");
   }
   
   public void start () {
      System.out.println("Starting " +  threadName );
      if (t == null) {
         t = new Thread (this, threadName);
         t.start ();
      }
   }
}
 
public class TestThread {
 
   public static void main(String args[]) {
      ThreadDemo T1 = new ThreadDemo( "Thread-1");
      T1.start();
      
      ThreadDemo T2 = new ThreadDemo( "Thread-2");
      T2.start();
   }   
}

4. 高效繪製 流程圖

st=>start: Start
op=>operation: Your Operation
cond=>condition: Yes or No?
e=>end

st->op->cond
cond(yes)->e
cond(no)->op

4.1 我是第四級標題

山有山的故事,水有水的故事,由於相遇,咱們也將開啓一段故事! 這是一段事關寫做的故事,每個字流露着美感、包含有熱情、激盪着思想,這就是咱們,你,我之間的寫做故事!快開始吧……

4.2 我也是第四季標題

山有山的故事,水有水的故事,由於相遇,咱們也將開啓一段故事! 這是一段事關寫做的故事,每個字流露着美感、包含有熱情、激盪着思想,這就是咱們,你,我之間的寫做故事!快開始吧……

5. 高效繪製 序列圖

Alice->Bob: Hello Bob, how are you?
Note right of Bob: Bob thinks
Bob-->Alice: I am good thanks!

6. 高效繪製 甘特圖

title 項目開發流程
    section 項目肯定
        需求分析       :a1, 2016-06-22, 3d
        可行性報告     :after a1, 5d
        概念驗證       : 5d
    section 項目實施
        概要設計      :2016-07-05  , 5d
        詳細設計      :2016-07-08, 10d
        編碼          :2016-07-15, 10d
        測試          :2016-07-22, 5d
    section 發佈驗收
        發佈: 2d
        驗收: 3d

7. 繪製表格

項目 價格 數量
計算機 &dollar;1600 5
手機 &dollar;12 12
管線 &dollar;1 234

8. 更詳細語法說明

想要查看更詳細的語法說明,能夠參考咱們準備的 Cmd Markdown 簡明語法手冊,進階用戶能夠參考 Cmd Markdown 高階語法手冊 瞭解更多高級功能。

總而言之,不一樣於其它 所見即所得 的編輯器:你只需使用鍵盤專一於書寫文本內容,就能夠生成印刷級的排版格式,省卻在鍵盤和工具欄之間來回切換,調整內容和格式的麻煩。Markdown 在流暢的書寫和印刷級的閱讀體驗之間找到了平衡。 目前它已經成爲世界上最大的技術分享網站 GitHub 和 技術問答網站 StackOverFlow 的御用書寫格式。


什麼是 Cmd Markdown

您可使用不少工具書寫 Markdown,可是 Cmd Markdown 是這個星球上咱們已知的、最好的 Markdown 工具——沒有之一 :)由於深信文字的力量,因此咱們和你同樣,對流暢書寫,分享思想和知識,以及閱讀體驗有極致的追求,咱們把對於這些訴求的迴應整合在 Cmd Markdown,而且一次,兩次,三次,乃至無數次地提高這個工具的體驗,最終將它演化成一個 編輯/發佈/閱讀 Markdown 的在線平臺——您能夠在任何地方,任何系統/設備上管理這裏的文字。

1. 實時同步預覽

咱們將 Cmd Markdown 的主界面一分爲二,左邊爲編輯區,右邊爲預覽區,在編輯區的操做會實時地渲染到預覽區方便查看最終的版面效果,而且若是你在其中一個區拖動滾動條,咱們有一個巧妙的算法把另外一個區的滾動條同步到等價的位置,超酷!

2. 編輯工具欄

也許您仍是一個 Markdown 語法的新手,在您徹底熟悉它以前,咱們在 編輯區 的頂部放置了一個以下圖所示的工具欄,您可使用鼠標在工具欄上調整格式,不過咱們仍舊鼓勵你使用鍵盤標記格式,提升書寫的流暢度。

tool-editor

3. 編輯模式

徹底心無旁騖的方式編輯文字:點擊 編輯工具欄 最右側的拉伸按鈕或者按下 Ctrl + M,將 Cmd Markdown 切換到獨立的編輯模式,這是一個極度簡潔的寫做環境,全部可能會引發分心的元素都已經被挪除,超清爽!

4. 實時的雲端文稿

爲了保障數據安全,Cmd Markdown 會將您每一次擊鍵的內容保存至雲端,同時在 編輯工具欄 的最右側提示 已保存 的字樣。無需擔憂瀏覽器崩潰,機器掉電或者地震,海嘯——在編輯的過程當中隨時關閉瀏覽器或者機器,下一次回到 Cmd Markdown 的時候繼續寫做。

5. 離線模式

在網絡環境不穩定的狀況下記錄文字同樣很安全!在您寫做的時候,若是電腦忽然失去網絡鏈接,Cmd Markdown 會智能切換至離線模式,將您後續鍵入的文字保存在本地,直到網絡恢復再將他們傳送至雲端,即便在網絡恢復前關閉瀏覽器或者電腦,同樣沒有問題,等到下次開啓 Cmd Markdown 的時候,她會提醒您將離線保存的文字傳送至雲端。簡而言之,咱們盡最大的努力保障您文字的安全。

6. 管理工具欄

爲了便於管理您的文稿,在 預覽區 的頂部放置了以下所示的 管理工具欄

tool-manager

經過管理工具欄能夠:

發佈:將當前的文稿生成固定連接,在網絡上發佈,分享
新建:開始撰寫一篇新的文稿
刪除:刪除當前的文稿
導出:將當前的文稿轉化爲 Markdown 文本或者 Html 格式,並導出到本地
列表:全部新增和過往的文稿均可以在這裏查看、操做
模式:切換 普通/Vim/Emacs 編輯模式

7. 閱讀工具欄

tool-manager

經過 預覽區 右上角的 閱讀工具欄,能夠查看當前文稿的目錄並加強閱讀體驗。

工具欄上的五個圖標依次爲:

目錄:快速導航當前文稿的目錄結構以跳轉到感興趣的段落
視圖:互換左邊編輯區和右邊預覽區的位置
主題:內置了黑白兩種模式的主題,試試 黑色主題,超炫!
閱讀:心無旁騖的閱讀模式提供超一流的閱讀體驗
全屏:簡潔,簡潔,再簡潔,一個徹底沉浸式的寫做和閱讀環境

8. 閱讀模式

閱讀工具欄 點擊 或者按下 Ctrl+Alt+M 隨即進入獨立的閱讀模式界面,咱們在版面渲染上的每個細節:字體,字號,行間距,前背景色都傾注了大量的時間,努力提高閱讀的體驗和品質。

9. 標籤、分類和搜索

在編輯區任意行首位置輸入如下格式的文字能夠標籤當前文檔:

標籤: 未分類

標籤之後的文稿在【文件列表】(Ctrl+Alt+F)裏會按照標籤分類,用戶能夠同時使用鍵盤或者鼠標瀏覽查看,或者在【文件列表】的搜索文本框內搜索標題關鍵字過濾文稿,以下圖所示:

file-list

10. 文稿發佈和分享

在您使用 Cmd Markdown 記錄,創做,整理,閱讀文稿的同時,咱們不只但願它是一個有力的工具,更但願您的思想和知識經過這個平臺,連同優質的閱讀體驗,將他們分享給有相同志趣的人,進而鼓勵更多的人來到這裏記錄分享他們的思想和知識,嘗試點擊 (Ctrl+Alt+P) 發佈這份文檔給好友吧!


再一次感謝您花費時間閱讀這份歡迎稿,點擊 (Ctrl+Alt+N) 開始撰寫新的文稿吧!祝您在這裏記錄、閱讀、分享愉快!

做者 @ghosert
2016 年 07月 07日


  1. 支持 LaTeX 編輯顯示支持,例如:$$\sum_{i=1}^n a_i=0$$, 訪問 MathJax 參考更多使用方法。
  2. 代碼高亮功能支持包括 Java, Python, JavaScript 在內的,四十一種主流編程語言。
相關文章
相關標籤/搜索