Org 使用内置的表格编辑器。可以进行简单的表格编写和计算。 Org中的表格 第一个非空字符“|” 视为表格的起始位置,后面的“|” 视为字段分隔符。

3.1 生成表格

编写表格时,可以将字段先写好,以“|”开头和分隔,如: |Name|Phone|Age| 然后 C-c RET, 然后会在下一行新增两行,一行类似结构“|—+—|”,导出时为一条横线,另一行以“|”开头和分隔,为新一行表格结构。 自动生成如下格式。 C-c RET 在任意一行都可以使用。都是相同的效果。

| name | phone | age |
|------+-------+-----|
| | | |

3.2 为表格添加说明

在表格上方,我们可以为表格添加说明。格式如下:

#+caption: 表格说明

3.3 操作说明

Table 1: 表格的基本操作
操作   说明
C-c |   生成表格,在buffer区域会提示输入N*M,代表N列M行的表格
|- TAB   生成一行 |—+----| 结构
C-c C-c org-table-align 表格对齐
TAB   从左到右,光标从前一个字段跳到下一个字段
S+TAB   从右到左,光标从后一个字段跳到前一个字段
RET   光标移动到下一行。如果下一行还没有表格结构,则新增一行
Table 2: column and row editing
操作 命令 说明
C-c space org-table-blank-field 清空当前格
M-a org-table-beginning-of-field 移动到当前表格的第一个格,或者移动前到一个格
M-e org-table-end-of-field 光标移动到当前格的尾部或者移到下一格的尾部。
M-left org-table-move-column-left 向左移动当前列,如果快捷键效果不对,可以使用前面的命令
M-right org-table-move-column-right 向右移动当前列,如果快捷键效果不对,可以使用前面的命令
M-S-left org-table-delete-column 删除光标所在列。如果快捷键效果不对,可使用前面命令
M-S-rigth org-table-delete-column 在光标所在位置插入一列,如果快捷键效果不对,可使用命令
M-up org-table-move-row-up 将光标所在行向上移一列。即与上一行替换位置
M-down org-table-move-row-down 将光标所在行与下一行互换位置。
M-S-up org-table-kill-row 删除当前行
M-S-down org-table-insert-row 插入一行
C-c - org-table-insert-hline 在下一行插入 |---------| 结构,导出时,会转换为一条直线
CC    
C-c RET org-table-hline-and-move 添加一行 |–+--\vert结构 并新增一行表格
C-c ^ org-table-sort-lines 将最近的两条横线之间的区域进行排序,或者是整张表。如果光标在第一
    个格之前,则会提示输入要排序的列。命令方式,会提示排序方式:
    alphabetically,numberically,or by time.可以升序或者降序排列,也可
    以按照自己想要的规则,比如提供给org一个处理函数。大小写严格区分
     
Table 3: regions
操作 命令 说明
C-c C-x M-w org-table-copy-region 复制一个长方形区域至Emacs剪切版。长方形的范围由光标和mark标记来确定
C-c C-x C-w org-table-cute-region 剪切一个长方形区域至Emacs剪切版。
C-c C-x C-y org-table-paste-rectangle 按原有的列数与行数粘贴一个长方形区域至表中。此操作,忽略横向分隔线。
    如果表格行列数不足,则自动补充。
     

3.4 表格格式化

  • 设置字符位置 字段中字符的位置有偏左,偏右,居中。 在表示一个表格的两个'|' 之间使用<c|r|l> 来表示,其中c 代表center,r 代表right,l代表left 示例:

    |<c> |<l> |<r> |
    |----+----+----|
    |居中|居左|居右|
  • 设置单个表格宽度 宽度指的是字符数,表格中的一列中单行显示最大字符数。比如<4>代表该列,每行最多显示4个字符,如果超过4个字符会 被隐藏。

    |<4> |<2>|<10>|
    |----+---+----|
    | | | |

    要查看被自动隐藏的字符怎么办呢?光标移动格内,输入C-c `, 会打开一个buffer,在这个buffer 内可以查看完整内容, 也可以进行编辑。编辑结束,使用C-c C-c 结束编辑和查看。

3.5 表格计算

示例:

 1: | 数量 | 单价 | 总价 |
2: | <c> | <c> | <c> |
3: |------+------+------|
4: | 6 | 18 | |
5: | 5 | 19 | |
6: | 4 | 20 | |
7: | 3 | 21 | |
8: | 2 | 22 | |
9: | 1 | 23 | |
10: #+TBLFM: $3=$1*$2::@6$3=$2-$1::@4$3=$1+$2

数值的计算,需要在表格下方使用标签 #+TBLFM: ,标签后写说明方法:
'$' 代表列
'@' 代表行
'::' 当有多个表达式时,使用两个冒号进行分隔

将表达式应用到表格中,使用快捷键: C-ucc . 结果如下:

数量 单价 总价
6 18 108
5 19 95
4 20 80
3 21 18
2 22 44
1 23 22

可以验证,第6行, 计算方式为第二列减去第一列的值,即21-3=18,第三列得出的值与验证是一致的。而第三列其他行的值 都是前两列的乘积。

Emacs Org-mode 3 表格的更多相关文章

  1. [Emacs] Org-mode下表格内中英文不对齐的解决方案

    ;; Setting for English font (set-default-font "monospace-15") ;; Setting for Chinese font ...

  2. [emacs] Drawing uml under emacs org-mode using plantUML - 类图

    [emacs] Drawing uml under emacs org-mode using plantUML - 类图 // */ // ]]>   [emacs] Drawing uml u ...

  3. Emacs Lisp 功能扩展集锦

    http://docs.huihoo.com/homepage/shredderyin/emacs_elisp.html Emacs 具有超强的扩展性.这是当今没有任何其它编辑器可以比拟 的强大特点. ...

  4. Emacs Org-mode 1 下载、安装、基本使用

    1.1 总述 Org 是一种帮助我们做笔记.日常事件或者项目计划的快速高效的文本格式系统. Org 有以下特点: Org mode 基于组织结构(outline-mode)对文本进行组织.具有良好的快 ...

  5. emacs安装及配置

    目录 平台 安装 基本配置 配置文件结构 elpa仓库管理 主题配色 字体显示配置(解决中文卡顿) 插件配置 markdown 简介 markdown-mode markdown-toc org导出m ...

  6. [转载]生活在 Emacs 中

    Brian Bilbrey2002 年 8 月 20 日发布 教程简介 本教程讲什么? Emacs 是一个流行的无模式文本编辑器,有许多强大的功能.本教程将教您使用 Emacs 的基础知识.为了让您很 ...

  7. [emacs] org-mode的一些小技巧

    Table of Contents 1 快速输入 #+BEGIN_SRC … #+END_SRC 2 代码按语法高亮 3 导出成HTML时的一些问题和技巧 3.1 生成目录表 3.2 为每个分节的标题 ...

  8. Emacs Org-mode中英文字体设置

    Emacs Org-mode中英文字体设置 Table of Contents 1. 缺省字体存在的问题 2. 解决方法 2.1. 环境说明 2.2. 思路和方法 2.3. emacs设置代码 2.4 ...

  9. Emacs 笔记二

    Emacs 笔记二 Table of Contents 1. 前言 2. emacs基本操作(常用快捷键) 3. emacs模式讲解 4. emacs缓冲区 5. org mode 5.1. 列表 5 ...

随机推荐

  1. docker下载镜像received unexpected Http status:500 Internal Server Error

    解决办法 1.就是网上说的 关闭selLinue ,但是对我就没用 2.就是不使用镜像加速 ,但是出现连接超时 3.就是加上具体版本号 结果就成功了 [root@localhost ~]# docke ...

  2. CodeSmith如何生成实体类 ,完善版

    <%-- Name: Database Table Properties Author: Paul Welter Description: Create a list of properties ...

  3. vue路由嵌套,vue動態路由

    https://www.cnblogs.com/null11/p/7486735.html https://www.cnblogs.com/goloving/p/9271501.html https: ...

  4. Vue.js指令实例

    v-if  v-else  v-show v-if 根据表达式的值的真假条件渲染元素. v-else 不需要表达式.前一兄弟元素必须有 v-if 或 v-else-if v-show 根据表达式之真假 ...

  5. CentOS_7升级系统内核

    最近,在虚拟机中安装docker成功之后,尝试运行docker run hello-world时出现以下错误: $ sudo docker run hello-world Unable to find ...

  6. [Nmap] Regular script

    out of date: TCP:nmap.exe -sC -sS -sV -p 1-65535 -A -v -v -oX filename.xml ip UDP:nmap.exe -sC -sU - ...

  7. es上的的Watcher示例

    Watcher插件配置(创建预警任务) watcher目前是沒有界面配置的,需要通过Resfulapi调用创建.管理.更新预警任务 创建一个Watcher任务的流程是怎样的? 我们先来看下创建一个预警 ...

  8. javascript: Element.getBoundingClientRect() 获取元素在网页上的坐标位置

    来自:https://blog.csdn.net/weixin_42895400/article/details/81811095?utm_source=blogxgwz1 Element.getBo ...

  9. GWAS: 曼哈顿图,QQ plot 图,膨胀系数( manhattan、Genomic Inflation Factor)

    画曼哈顿图和QQ plot 首推R包“qqman”,简约方便.下面具体介绍以下. 一.画曼哈顿图 install.packages("qqman") library(qqman) ...

  10. HashMap底层结构、原理、扩容机制

    https://www.jianshu.com/p/c1b616ff1130 http://youzhixueyuan.com/the-underlying-structure-and-princip ...