如何查看和编辑大的分隔符分隔值文件?


14

我一直csv-mode在修改中小型CSV文件,但是最近我正在处理包含40,812个条目的大文件。csv-mode难以对齐和导航表,并且太慢而无法按原样使用。相比之下,LibreOffice Calc可以浏览文件。

有没有简单的方法可以csv-mode处理大表,还是有更好的方法可用?

我知道一个相关的堆栈溢出问题。它的解决方案是仅在可见窗口中对齐缓冲区的一部分,但这并不能解决我的问题。

这是一个示例文件。 我试图将其放大,但不会太大,以至于无法在较旧的计算机上冻结Emacs。


3
表格编辑不是Emacs当前的优势之一。我希望是。我宁愿永远不必使用专用的电子表格。
wdkrnls

2
这不是一个短期的答案,但是您可能想要解决M-x report-emacs-bug这个问题,理想情况下,可以使用一种配方来重现减速。可能还有很多改进的空间csv-mode
Stefan 2014年

3
您是否有一个演示问题的示例文件?
Wilfred Hughes 2014年

是的,是的。添加到问题。
holocronweaver 2014年

Answers:


12

随着csv-mode我可以看到一些滞后与您的文件,但只有高亮启用语法。禁用字体后,M-x font-lock-mode它可以正常工作。

要永久禁用它以csv-mode添加到您的配置中:

(add-hook 'csv-mode-hook (lambda () (font-lock-mode -1))

或者,如果您是使用包用户:

(use-package csv-mode
  :mode ("\\.csv\\'" . csv-mode)
  :init (add-hook 'csv-mode-hook (lambda () (font-lock-mode -1)))
  :ensure t)

2
停用font-lock-modecompany-mode和其他几个次要模式后,速度有了很大提高!我认为这是一个重大成功。
holocronweaver 2014年

5
我什至会考虑将其包装成仅适用于大文件:(when (> (point-max) some-large-number) (font-lock-mode -1))
肖恩·阿雷德
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.