我可以固定组织模式表中列的宽度吗?

Rya*_*yan 9 emacs org-mode

作为一名研究生,我使用 org-mode 来跟踪文章以进行评论。我喜欢他们组织的表格,但默认情况下 org-mode 会展开表格以适应其字段的内容。如果内容太长,如何修复列的宽度,使其不会扩展?

Rya*_*yan 11

根据org-mode manual,您可以通过<width>在该表中的某处放置一行来修复 org-mode 表列的宽度。我通常把它放在列标题正下方的一行中,但列中的任何地方都可以使用。

例如,这里是表格的前两行:

| Citekey | Topic | Results |
| <15>    | <20>  | <40>    |
Run Code Online (Sandbox Code Playgroud)

当列下次对齐时,这会将第一列的宽度固定为 15 个字符,第二个为 20 个字符,第三个为 40 个字符。超过列宽度的内容将被截断,=>以表示更多内容。将鼠标悬停在该字段上将显示完整内容。


Nav*_*dot 7

正如@Ryan 所提到的,您可以使用列宽 cookie <width>。但要使其在 Org 9.2+ 中工作,您必须将其放入#+startup: shrink文件顶部或设置变量org-startup-align-all-tables以默认在所有缓冲区中具有此行为。

(setq org-startup-align-all-tables t)

  • 为了使其生效,您需要使用“Mx revert-buffer”恢复(即重新加载)缓冲区,或者在“#+startup:shrink”行上按“Cc Cc”。 (2认同)
  • 这个答案有两个错误。1. `org-startup-align-all-table` 变量应为 `org-startup-align-all-tables` (注意复数) 2. 要使 org-mode 自动收缩表,需要设置 `org- startup-shrink-all-tables` 而不是 `org-startup-align-all-tables`。 (2认同)