Org mode 表格像素对齐

请问下,这种情况为什么会对不齐? 不加*title的时候是可以对齐的,加上就这样了。

image

难道也是上面说的indent mode的问题?

你禁用indent mode,试试看。

确实是org-indent-mode的问题,关了就好了。

楼主的干劲令我望尘莫及。 :+1:

想到一个问题,就是这种视觉上的东西好像不好自动测试,容易发生 regression ,不知道有什么好的方法没有。

我们这么多人天天用,不就是人肉的回归测试么,哈哈

1 个赞

一个空文件 a.org 里插入如下表格

| Variable                                   | Default | Description                                                       |
|--------------------------------------------+---------+-------------------------------------------------------------------|
| evil-collection-company-use-tng            | t       | Set up autocompletion to be similar to Vim's YouCompleteMe.       |
| evil-collection-outline-bind-tab-p         | nil     | Enable <tab>-based bindings in Outline mode.                      |
| evil-collection-term-sync-state-and-mode-p | t       | Synchronize insert/normal state with char/line-mode in term-mode. |
| evil-collection-setup-minibuffer           | nil     | Set up Vim style bindings in the minibuffer.                      |
| evil-collection-setup-debugger-keys        | t       | Set up debugger keys for certain modes.                           |

然后将它完整复印一份的时候,CPU利用率又瞬间到 100% 了.

附视频:

CPU 100%

output

我试了一下,然后emacs就卡死了。我发现只要是在valign-mode开启时粘贴非美化后的表格形式(横线为虚线)都会导致emacs卡死。还有在关闭了valign-mode后创建的表格不能正常使用,横线仍为实线且不能对齐。也就说关闭valign-mode后未能完全恢复到原始的表格操作和显示状态,应该是valign-mode的代码的问题。

我刚刚又试了一下,粘贴美化过后的表格(横线为实线)也会导致 Emacs 卡死。 而且在 evil-modeemacs-state 下都测试过,都有这个问题

这种我没有问题诶。感觉不是很稳定,刚刚又试了一下,又都没有问题了。问题出现在打开或关闭valign-mode之后的一些情况中。还是前面说的,valign-mode在开启和关闭的一段时间内,表格不能正常的渲染和恢复,导致了emacs卡死。举个不恰当的例子,就像缓存一样,新的东西在新的模式下与旧的缓存冲突了。

厉害厉害,支持 :+1:

emmm我试不出来,我把我用的开发版分支推到master了,看看这个你能复现出来么?

最新的 commit 是 6578fe4 吗?这个好像是4天前的,似乎没有 push 成功。

在这个 commit 下测试的效果与上面的一样,都会出现 CPU 100% 的情况

奇怪……可能我遗漏了什么细节导致不能触发。能不能详细讲讲怎么复现的?会不会和Emacs版本和你用的其他包有关系?

我在 Vanilla Emacs 下是这样测试的:

emacs -Q -l valign.el /tmp/a.org

/tmp/a.org的内容为:

| Variable                                   | Default | Description                                                       |
|--------------------------------------------+---------+-------------------------------------------------------------------|
| evil-collection-company-use-tng            | t       | Set up autocompletion to be similar to Vim's YouCompleteMe.       |
| evil-collection-outline-bind-tab-p         | nil     | Enable <tab>-based bindings in Outline mode.                      |
| evil-collection-term-sync-state-and-mode-p | t       | Synchronize insert/normal state with char/line-mode in term-mode. |
| evil-collection-setup-minibuffer           | nil     | Set up Vim style bindings in the minibuffer.                      |
| evil-collection-setup-debugger-keys        | t       | Set up debugger keys for certain modes.                           |

然后M-x valign-mode, 选中这个表格,然后复制,就会出现 CPU 100% 的情况。

Emacs 版本为 28.0.50

复现视频

我发现 Firefox 77 下提示这个文件损坏,实际没有,而在 Chromium 下能够正常播放。Firefox 用户还是直接

mpv 'https://fars.ee/hemz'

我编译了master,还是不能复现,你的Emacs现在在哪个commit?

这个 commit 上,Linux 下

GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.20, cairo version 1.17.3) of 2020-06-19

还是不行,可能是因为我用的mac?明天在Linux上试试。

反应一个情况.

默认开启了 valign-mode 的情况下, 一打开 .org 文件表格是不对齐的. 在表格上按一下 TAB 键才对齐了

这很正常吧,就算是全部英文也需要按一下tab呢,因为表格不是实时渲染的。

我这边不需求按tab 啊 一打开都是对齐的。org-indent-mode 要关闭