【问题标题】:Code blocks inside tables for org-modeorg-mode 表内的代码块
【发布时间】:2014-07-24 12:01:31
【问题描述】:

我喜欢org-tables,我用它们来记录各种事情。我现在正在为 Nix 记录一些单行代码(在阅读了 Domen Kožar 的 excellent guide 后,在 this year's EuroPython 给出),我遇到了一些问题:

* NIX Oneliners

|------------------+---------------------------------------------+------------------------------|
| DATE             | COMMAND                                     | DESCRIPTION                  |
|------------------+---------------------------------------------+------------------------------|
| <2014-07-24 Thu> | curl -L http://git.io/nix-install.sh § bash | Install nix                  |
| <2014-07-24 Thu> | nix-env -qaP § grep python3-3               | search for python3-3 package |
|------------------+---------------------------------------------+------------------------------|

命令实际上应该是curl -L http://git.io/nix-install.sh | bashnix-env -qaP | grep python3-3,但是由于管道破坏了整个东西,我需要使用另一个字符(在这种情况下是§

我的问题是:我如何告诉 org-mode 以 字面意思 获取区域中的文本?我不想use a escape sequence for the pipe,因为我想从我的文档中轻松复制粘贴到 shell。

我想要的是类似于markdown中的代码块:

`do | not | care | about | this`

org-mode 中是否存在这种情况?

编辑

事件 using = this | trick = 在表格中不起作用。

【问题讨论】:

    标签: org-mode


    【解决方案1】:

    你不能这样做:你不能逃避“|”表条目中的字符:您能做的最好的事情就是用看起来像它的东西替换它。 ML 上有几个关于这个的问题,最好的答案似乎是 #xa6 (¦) 处的 Unicode 字符 - 参见例如this message 和封闭线程。

    但是,您可以在表中存储指向代码块的链接。在代码块内,您可以有任意代码,因此那里的特殊字符没有问题,并且作为奖励,您可以执行代码块。

    类似这样的:

    * Table of code blocks
    
    | Name | Code block |
    |------+------------|
    | foo  | [[foo][foo]]        |
    | bar  | [[bar][bar]]        |
    
    
    #+name: foo
    #+begin_src bash
    echo "Foo"
    #+end_src
    
    #+RESULTS: foo
    : Foo
    
    #+name: bar
    #+begin_src bash
    echo "Bar"
    #+end_src
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多