起因
写个了递归函数,打印出一万七千多行的 results。
#+begin_src python :results output
# 大写 65-91 小写 97-123
def test():
for i in range(97, 123):
for j in range(97, 123):
for k in range(97,123):
print("C-%s %s %s" %(chr(i), chr(j), chr(k)), end="\n")
test()
# print("Hello World!")
#+end_src
然后把 results 折叠成一行之后用 C-k 删除,发现每次都能把 Emacs 搞崩。
过程
尝试写了个最小配置,发现 Org Mode 完全 hold 的住这个小场面啊。
然后就挨个儿把挂在 org 上的 minor mode 关掉,凭直觉先关掉了提示操作的 goggles 和给中英文之间加空格的 pangu-spacing,发现没变化,然后就是 git-gutter,发现问题果然出在 git-gutter 身上。
为了确定,重启了三四次,虽然搞不明白,但能绝对肯定是 git-gutter 的问题了。
后续
发现问题之后马上去 GitHub 提 issue,写完 issue 才后知后觉的发现这是被收录在 emacsorphanage 里的。
正好此时网络连接问题把我在浏览器里写好的 issue 清空了,我也懒得再写第二遍了。
结论
马上换 diff-hl 重新走了一遍流程,完全没问题。推荐大家尽早弃用 git-gutter 保平安。
碎碎念
忘了之前是怎么在 diff-hl 和 git-gutter 中选择后者的了,可能是因为对 Sublime Text 莫名的好感?虽然也没怎么用过……