組織モードでコードブロックのデフォルト言語を設定する


14

文書ヘッダーの組織モードコードブロックのデフォルト言語を定義する方法はありますか?通常、1つの組織文書内では1つのプログラミング言語しか使用しないため、常に書くのは面倒です

#+BEGIN_SRC python
[...]
#+END_SRC

次のようなことができるといいですね

#+PROPERTY: header-args :session *mysession* :tangle yes :results silent :language python

[...]

#+BEGIN_SRC
[...]
#+END_SRC

これを達成する方法はありますか?


2
これは、デフォルト言語の設定方法に関する質問には答えませんが、間違いなく多くの入力を節約できます。タイピング<sに続いてTABキーが自動ソースコードのブロック構造に展開し、次に、あなたは単に入力する必要がありpython、コードの次の行との塗りつぶしに行きます。
カウシャルモディ

orgmode.org/manual/…をチェックしてください。言語仕様が必要なようです。組織リストに投稿しましたか?あなたがそうしなかったなら、私はそうします、これは面白くておそらく一般的な願望です。
-grettke


@grettke、メーリングリストへの投稿を主導してくれてありがとう。
アンドレアスh

上記のメーリングリストのヒント(ファイルに含ま#+BEGIN_SRC pythonれないソリューションを探している場合.org)は、おそらくorg-babel-get-src-block-infoを変更して、デフォルトが返されるようにする必要があることです。 #+ BEGIN_SRC後の何物でもありません
ShreevatsaR

回答:


10

この回答は実行可能な回避策を提供します。

これを行う最も簡単な方法は、簡単なテンプレートを使用することです。にテンプレートを追加しますorg-structure-template-alist

(add-to-list 'org-structure-template-alist
         '("py" "#+BEGIN_SRC python :results output\n?\n#+END_SRC" ""))

疑問符はカーソルの位置を示します。<pyこの場合、TABを使用してコードブロックを挿入します。


2
あなたの答えは、ソースブロックの言語をデフォルトにするのではなく、拡張用の新しいテンプレートを追加する方法です。
-grettke

これにより、そのようなブロックを入力しやすくするという問題は解決しますが、ソースファイルに含まれる「問題」は解決され#+BEGIN_SRC python#+BEGIN_SRC、ソースファイルが少し読みにくくなります。
シュ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.