emacs - 在组织模式电子表格中显示千位分隔符

标签 emacs org-mode

有没有办法配置组织模式电子表格以显示千位分隔符?我希望 1000 显示为 1,000。

最佳答案

这是一个解决方案。首先定义函数群号 :

(defun group-number (num &optional size char)
    "Format NUM as string grouped to SIZE with CHAR."
    ;; Based on code for `math-group-float' in calc-ext.el
    (let* ((size (or size 3))
           (char (or char ","))
           (str (if (stringp num)
                    num
                  (number-to-string num)))
            ;; omitting any trailing non-digit chars
            ;; NOTE: Calc supports BASE up to 36 (26 letters and 10 digits ;)
           (pt (or (string-match "[^0-9a-zA-Z]" str) (length str))))
      (while (> pt size)
        (setq str (concat (substring str 0 (- pt size))
                          char
                          (substring str (- pt size)))
              pt (- pt size)))
      str))

来自:Emacs Cookbook - put commas in numbers
Next, use it in your formula:
|           |       |             |
|-----------+-------+-------------|
|      2000 |  3100 |       5,100 |
|        11 |    22 |          33 |
| 111221212 | 29996 | 111,251,208 |
|           |       |           0 |
#+TBLFM: $3='(group-number (+ $1 $2));N

这里我们使用 群号函数来格式化 emacs lisp 表单的结果 - 而不是使用 calc 公式语法。

关于emacs - 在组织模式电子表格中显示千位分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30140414/

相关文章:

emacs - 组织模式 LaTeX 导出 - 使待办事项变为红色

parsing - 如何通过 org-element 优雅地解析 org-mode

emacs - 如何在org-mode中添加一个可以正确导出到latex的℃

git - 在 git 中切换分支时,如何让 Emacs 恢复所有未更改的缓冲区?

linux - 在 Linux 上运行的基于文本的强大 Java IDE

emacs - 延迟加载emacs org-mode中的前N行

emacs - 如何在 Emacs 组织模式下查看新缓冲区中的 "Notes"?

emacs - 在 org 模式下使用 babel 捕获 shell 命令的输出

emacs - 如何在组织模式链接中转义方括号?

使用 Emacs 进行 Python 缩进