IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]emacs org-mode table样式管理

    sheismylife发表于 2015-04-25 21:05:50
    love 0

    表格名称

    #+CAPTION: 出厂/供应链/销售/售后

    导出HTML表格后,会在表格正上方出现如下表格名称

    Table 1: 出厂/供应链/销售/售后


    水平分隔线

    |-

    可以用来添加水平分隔线, 用在第一行和第二行之间,第一行字体变粗黑和居中。



    快捷键

    C-c C-c 自动格式化表格

    Tab 跳到下一个字段

    S- Tab 注意,用右Shift建,跳到前一个字段

    M-a 和 M-e 跳到字段开头或者结尾

    S-M- 下方向键,在当前行之前插入一行


    导出为HTML table风格设置

    #+ATTR_HTML: :border 2 :rules all :frame border

    这里可以指定html table的属性,比如rules all代表表格会显示横竖分隔线。可以查找html table属性。


    列的编辑

    指定列的宽度

    有时候,列的内容特别长,影响到emacs编辑table的时候视觉对齐效果,可以通过增加一行,专门指定各列的宽度。超出宽度的部分会用=>表示. 如果想看到全部值,需要鼠标移动到该字段会出现文本提示信息。如果想要编辑,需要按下C-c ` ,会打开另一个buffer让你编辑, 用C-c C-c提交编辑内容。

    效果如下:





    列中文字对齐方式

    沿用前面限定宽度的方式,不过需要添加r,c,l字符分别表示右、中和左对齐。这样会改变导出到html table的对齐方式。

    比如:



    列的分组

    这里分组的指导出到html后的效果,比如:

    Table 1: DAU统计
    日期新增日活VV
    2015-05-01102025
    2015-05-04112226

    新增和日活都是用户指标,所以放在一起,用垂直线把它们和其他指标比如VV分开。为了达到这个效果,不能使用html table的属性rules all。具体emacs中编辑的代码如下:

    #+CAPTION: DAU统计
    | 日期   | 新增  | 日活  | VV |
    |--------+-------+-------+----|
    | <6>    |   |   |    |
    | /      | <     | >     |    |
    | 2015-05-01 | 10    | 20    | 25 |
    | 2015-05-04 | 11    | 22    | 26 |

    这里专门用一行表示列的分组,/开头,< >表示这两列是一组。


    多行

    用excel的人常会用到一个cell对应多行,org table没有开发相应的标签,但是可以用如下方法简单模拟,先看效果:
    Table 2: 组织架构
    一级部门二级部门人数
    AA.15
    A.26
    BB.17
    B.23


    就是用多个|-组成的行分隔线来模拟
    #+CAPTION: 组织架构
    | 一级部门 | 二级部门 | 人数 |
    |----------+----------+------|
    | A        | A.1      | 5    |
    |          | A.2      | 6    |
    |----------+----------+------|
    | B        | B.1      | 7    |
    |          | B.2      | 3    |


    另外一个多行的方法是用html标记,因为orgi支持嵌入html标记,可以添加html换行符来实现。

     | a                                      | b  | c  |
     |----------------------------------------+----+----|
     | aaa @@html:
    @@ bbb @@html:
    @@ ccc | b1 | c1 |

    这里,html
    标签被包在@@html: ... @@里面。

    效果如下:

    abc
    aaa
    bbb
    ccc
    b1c1

    嵌入HTML标记

    从前面多行的i方式,可以看到,如果是导出为HTML文件,可以嵌入任意的HTML tag,的确很方便。

    具体官方文档参考:

    http://orgmode.org/manual/Quoting-HTML-tags.html#Quoting-HTML-tags



沪ICP备19023445号-2号
友情链接