Stack OverflowのマークダウンのEmacsモード


96

EmacsでOrg-modeを使用して、すべての技術ドキュメントを処理しています。Emacsを使用して、Stack Overflowに関する質問を準備したいと思います。そのためのEmacsモード、またはそれ以上に、スタックオーバーフローのフォーマットを処理するOrg-modeの拡張機能はありますか?理想的には、スタックオーバーフローの質問/コメントバッファーで使用されるマークダウン構文でサポートされるすべてのフォーマットオプションを含める必要があります。


この質問を読んでいる人は、SX — Emacs用のスタック交換に
Sean Allred、

回答:


144

EmacsとStack Overflowの統合

前述のように、markdown-modeを使用できます。マークダウンモードをスタックオーバーフローと統合するには、FirefoxプラグインのIt's All Textを使用して、外部エディターでテキストエリアを編集できます。設定方法は次のとおりです。

  1. markdown-modeをインストールします。DebianまたはUbuntuを使用している場合は、次のコマンドを発行してインストールできます。

    sudo apt-get install emacs-goodies-el

    または、emacs 24(またはemacs 23にpackage.elがある)とMarmaladeまたはMelpaを使用している場合は、

    M-x package-install RET markdown-mode
  2. インストールはすべてのテキストです。

  3. Emacsを使用するには、[すべてのテキスト]の設定を行います。実行可能ファイル(例:/ usr / bin / emacs)またはemacsclientに設定できます。
  4. 以下を.emacsに追加して、Stack OverflowおよびStack Exchangeテキストエリアのマークダウンモードを有効にします。

    ;; Integrate Emacs with Stack Exchange https://stackoverflow.com/a/10386560/789593
    (add-to-list 'auto-mode-alist '("stack\\(exchange\\|overflow\\)\\.com\\.[a-z0-9]+\\.txt" . markdown-mode))

    または、as-external-alistが定義されている場合M-x describe-variable RET as-external-alist-失敗しない場合-はおそらくをオーバーライドしますauto-mode-alist。これは少し異なる形式(コンスセルのリストではなくペアのリストです)なので、これは機能します。

    (add-to-list 'as-external-alist '("stack\\(exchange\\|overflow\\)\\.com\\.[a-z0-9]+\\.txt" markdown-mode))
  5. テキストエリアの右下にある青い編集ボタンを押して、emacsで編集します。青い編集ボタンは次のスクリーンショットに示されています。

    このテキストエリアの右下にある青い編集ボタンのスクリーンショット

    次のスクリーンショットは、この投稿を編集するマークダウンモードのEmacsバッファです。

    この投稿を編集するマークダウンモードのEmacsバッファーのスクリーンショット

  6. Emacsでの編集が完了したら、バッファを保存してFirefoxに送信します。

他のドメインでこの機能が必要な場合は、上記の正規表現を変更する必要があります。以下は、Stack Exchange、Stack Overflow、Ask Ubuntuおよびスーパーユーザーを認識します。

;; Integrate Emacs with Stack Exchange https://stackoverflow.com/a/10386560/789593
(add-to-list 'auto-mode-alist '("\\(stack\\(exchange\\|overflow\\)\\|superuser\\|askubuntu\\)\\.com\\.[a-z0-9]+\\.txt" . markdown-mode))

Org-modeでのmarkdown-modeの使用

Markdow-modeをOrg-modeで使用するには、その機能を使用してソースコードを操作できます。これを使用すると、マークダウンのブロックをマークダウンモードで編集できる組織モードバッファー内に含めることができます。次のように使用できます。

  1. Org-modeバッファに入っ<sているとき、改行を入力してを押しTabます。これは

    #+begin_src 
    
    #+end_src
  2. あなたが持っているようにmarkdown後に入る#+begin_src

    #+begin_src markdown
    
    #+end_src
  3. (間のソースブロック内場合#+begin_src markdown#+end_srcプレス)C-c 'マークダウンモードでソースブロックを編集します。

  4. マークダウンモードでソースブロックを編集します。

  5. を押しC-c 'てOrg-modeバッファに戻り、編集を挿入します。これは、次のスクリーンショットが示すもののようになります。

    この投稿のマークダウンコードのブロックを編集する組織モードバッファー


2
あなたがいる場合にas-externalインストール(またはnxhtml-modeそのインストールas-external)それは完全にあなたの調整を無視するかもしれないauto-mode-alist、あなたが変更したい変数、その後はありますas-external-alist
quodlibetor

@quodlibetor as-external-alistでは、まったく同じ方法で変更しますか?
NN

:私はこれとそれは私のために働いてきた、@NNは、それはほとんど同じだが、あなたは内部細胞の期間を取る必要がある(add-to-list 'as-external-alist '("stack\\(exchange\\|overflow\\)\\.com\\.[a-z0-9]+" markdown-mode))
quodlibetor

おそらく、この回答を更新してSXについて言及することができます
。Emacsの

1
All Textはサポートされなくなり、Firefoxの最新バージョン(57+)では動作しません
Iain

14

マークダウンモードがあります:http : //jblev​​ins.org/projects/markdown-mode/

カスタマイズについては、http://emacswiki.org/emacs/MarkdownModeを参照してください

そして、ここに新しいエクスポートエンジンのマークダウンバックエンドがあります:http : //orgmode.org/w/?p=org-mode.git ;a=blob_plain; f=contrib / lisp / org-md.el ; hb=頭

contrib/lisp/ディレクトリをに追加してくださいload-path

その後(require 'org-export)(require 'org-md)

M-x org-md-export-to-markdown RET マークダウンにエクスポートします。



基本的なorg- markdown
Nate Parsons

4

@NNの答えはChromeにも当てはまりますが、これらの詳細が変更されています。

ChromeにはEmacs拡張機能付きのEditがあり、これはすべてのテキストに似ています。インストールした後、拡張オプションのページから詳細な手順を確認できます。

edit-serverオプションを含むemacsカスタマイズグループがあり、最も重要なのは、サイトごとのメジャーモードの変更が@NNの回答とは異なる方法で構成されていることです。

(add-to-list 'edit-server-url-major-mode-alist
             '("^stackoverflow" . markdown-mode))

また、編集サーバーが端末emacsで機能するためには、edit-server-new-frameオプションを無効にする必要がありました。


1

Pandocは、org-modeのサブセットの読み取りをサポートしており、マークダウンを出力できます。

つまり、/このようにイタリックを書くことを含め、org-modeで書き続けてから、markdownにエクスポートできます。emacsから、リージョンを選択してCu MS- \を押し、pandoc -r org -t markdownと入力して、次のような出力を取得することで、マークダウンに変換できます。

In other words, you can keep writing in org-mode, including writing italics *like this*, and then export to markdown.

または、ファイルを保存してコマンドラインで変換することもできます。


0

Chrome Tooでも簡単

これは、Edit with Emacs chromeプラグインと、 Stackoverflow(および私が使用する他のStackexchangeサイト)にmarkdown -mode を使用するように構成されたEmacs Edit Serverを使用する私のソリューションのテストよりも回答が少ない です。拡張機能をインストールしてMELPAパッケージを設定した後に私がしなければならなかったすべて

(setq edit-server-url-major-mode-alist
             '(("mail.google.com" . org-mode)
               ("stackoverflow\\.com" . markdown-mode)
               (".*\\.stackexchange\\.com" . markdown-mode)
               ("github\\.com" . markdown-mode)))

Gmailメッセージサポート

上記の設定では、Gmailメッセージにorg-modeを使用していることに注意してください。ここでも少し作業を行う必要がありますが、少しの労力で、org-modeを使用してgmailメッセージをドラフトし、org-mimeを使用して組織構造化テキストからhtmlを生成することができます。マークダウンとマークダウンからHTMLへの変換を使用できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.