Legt die Standardsprache für Codeblöcke im orgmode fest

14

Gibt es eine Möglichkeit, eine Standardsprache für Codeblöcke im Organisationsmodus im Dokumentkopf festzulegen? Normalerweise verwende ich innerhalb eines Organisationsdokuments nur eine Programmiersprache, so dass es mühsam wird, immer zu schreiben

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

Es wäre schön, so etwas tun zu können

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

[...]

#+BEGIN_SRC
[...]
#+END_SRC

Gibt es eine Möglichkeit, dies zu erreichen?

andreas-h
quelle
2
Dies beantwortet nicht die Frage, wie die Standardsprache eingestellt werden soll, aber es erspart Ihnen definitiv viel Tipparbeit. Wenn Sie <sgefolgt von der TABTaste tippen python, wird die Blockstruktur des Quellcodes automatisch erweitert. Anschließend müssen Sie nur noch tippen , in die nächste Zeile wechseln und den Code eingeben.
Kaushal Modi
Schauen Sie sich orgmode.org/manual/… an . Scheint, als wäre die Sprachspezifikation erforderlich. Hast du auf der Organisationsliste gepostet? Wenn Sie das nicht getan haben, ist dies ein interessanter und wahrscheinlich allgemeiner Wunsch.
Grettke
Es gibt bereits zwei Antworten. lists.gnu.org/archive/html/emacs-orgmode/2015-02/msg00604.html
grettke
Vielen Dank, @grettke, dass Sie die Initiative ergriffen haben, um Beiträge auf die Mailingliste zu setzen.
andreas-h,
Der Hinweis von der Mailingliste oben (wenn man nach einer Lösung sucht, die nicht #+BEGIN_SRC pythonin der .orgDatei enthalten ist) ist wahrscheinlich, dass Sie org-babel-get-src-block-info so ändern müssen, dass es dort einen Standardwert zurückgibt ist nichts nach # + BEGIN_SRC
ShreevatsaR

Antworten:

10

Diese Antwort bietet eine praktikable Problemumgehung.

Der einfachste Weg, dies zu tun, wäre die Verwendung einfacher Vorlagen . Fügen Sie Ihre Vorlagen hinzu zu org-structure-template-alist:

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

Das Fragezeichen zeigt die Cursorposition an. Fügen Sie <pyin diesem Fall den Codeblock mit TAB ein.

mutbuerger
quelle
2
Ihre Antwort lautet, wie Sie neue Vorlagen für die Erweiterung hinzufügen und nicht die Sprache für einen Quellblock als Standard festlegen.
Grettke
Dies löst zwar das Problem, dass das Eingeben derartiger Blöcke vereinfacht wird, löst jedoch nicht das "Problem", das die Quelldatei noch enthält, #+BEGIN_SRC pythonsondern nur #+BEGIN_SRCdas, was das Lesen der Quelldatei beispielsweise ein wenig erschwert.
ShreevatsaR