[一个有点傻的问题]无配置或几乎无配置版本的 Emacs 适用于哪种场景?

如题。

换句话说,在哪些情况下不用配置、不用安装插件直接使用原始版 Emacs 比较好?

我试了一下不用org-mode/markdown写文章,体验并不好。特别是中文写作,和wps、Word没法比(当然,这样比较不公平),没有让人用的欲望。

提这个问题,主要是想拓宽一下自己使用 Emacs 的思路。欢迎各位道友赐教。

适用于 RMS

8 个赞

可以用来作为命令行编辑器 $EDITOR 和 git editor:

$ echo $EDITOR
~/.local/bin/emacs -nw -Q ...

$ git config --get core.editor
~/.local/bin/emacs -nw -Q ...

不过我还是有针对这两种场景的特别配置。

3 个赞

在服务器上用 wdired 和 kmacro 批量重命名剧集

1 个赞

在 Shell 中运行 .el 文件: emacs --script file.el

2 个赞

又不是不能用.jpg

2 个赞

适合当 nano 用

1 个赞

我觉得这恰恰证明了 Emacs 不是一个纯粹的编辑器更像一个操作系统:几乎没有人分享无插件配置或最小配置。 Vim 有人专门演讲过尽量不使用插件的用法,Neovim 有人在论坛分享 300 行以内的配置(有插件),Emacs 完全看不到轻量级的配置。

4 个赞

ITS 上的 emacs

HP49 计算器上的 emacs

图片

不是所有地方都有 vi 的,有时候就是只有 emacs 还算能用

5 个赞

跟没有任何配置没有语法高亮的vi使用场景差不多

不明白楼主的意思,org-mode 不是早就成为原生 Emacs 的一部分了吗(无需安装插件就可以使用),如果使用 org-mode 不算“无配置”,那么什么才算是“无配置”呢?

——————

假定楼主说的“无配置”就是指安装 Emacs 不做任何配置、不安装任何插件(也就是说 org-mode 还是可以用的),那么我家里一台 iMac 上的 Emacs 基本符合这个条件

我的主力操作系统是 Debian, 我的 Emacs 也是针对 Debian 而配置的,而这台 iMac 的操作系统是 Mac OS X, 我只是用来做一些编辑照片之类的杂事以及运行一些我不想运行在自己的主力机上的诸如 zoom 之类的非自由软件的,因此虽然安装了 Emacs, 但只做了很简单的配置

我的使用场景:

  1. 作为高级版「记事本」我觉得就挺好用的,比如远程会议时做笔记

    • 熟悉的快捷键
    • isearch
    • kmacro
    • rectangle edit
    • org-mode
    • (如果再加上 multiple-cursors 更好了)
  2. scratch 作为「计算器」的替代品

    • 可以很自然地记录每一个中间步骤和运算结果(我通常是输入一个算式,C-u C-x C-e, 换行,再输入下一个……),而不像很多普通计算器那样如果前面的输入有误就得重新来过
    • 前缀记法有时候能减少一些输入负担,比如对很多数进行相加操作时,只需要一个 + 号
  3. 用 dired 辅助管理文件,特别是需要大量重命名时

  4. 作为 terminal 替代品

    • 可以在 buffer 里编辑好,再切换到 shell 中运行
    • 运行的结果,可以很方便地查看(而不需要 XXX | less 之类的)、复制
  5. 偶尔用 tramp 远程编辑文件

    • 可以很自然地做到「边运行命令边编辑文档」之类的事,于我而言可以取代 screen, 而且更好用
  6. 偶尔用 woman 查看 manual

  7. 偶尔玩俄罗斯方块、五子棋……

  8. 最近玩 SDLPAL (仙剑奇侠传的重实现), 用 hexl-mode 修改了存档,小时候在 Windows 上是用 UltraEdit 做这类事

配置(以上几条无需这些配置也成立):

(setq scroll-step 3                   ; smooth scroll
      ring-bell-function 'ignore      ; prevent beep
      use-short-answers t             ; y or n instead yes or no, etc
      epa-pinentry-mode 'loopback     ; type epa password inside emac
      bookmark-save-flag t            ; save bookmark when emacs quits
      dired-listing-switches "-lFh1v" ; arguments for ls
      confirm-kill-processes nil      ; quit emacs anyway
      inhibit-startup-screen t        ; disable startup screen
      recentf-max-saved-items 256     ; remember more (default is 20) recent files
      backup-directory-alist '(("" . "~/.emacs.d/backup"))) ; avoid creating ~ backup files

(setq-default indent-tabs-mode nil     ; don't use tabs, insert by C-q
              tab-width 8)

(menu-bar-mode t)               ; show menu bar
(tool-bar-mode -1)              ; hide tool bar
(show-paren-mode t)             ; highlight matching parenthesis
(electric-pair-mode t)          ; auto close parens
(recentf-mode t)                ; keep a list of recently opened files
(delete-selection-mode t)       ; overwrite text by yank
(column-number-mode t)          ; show column number in mode line
(global-hl-line-mode t)         ; highlight current line
(winner-mode t)                 ; remember windows config

(add-hook 'find-file-hook #'view-mode)
(add-hook 'before-save-hook #'delete-trailing-whitespace)
5 个赞

可看下orgmode加pandoc,我现在基本用orgmode写,然后一键导出成word。不用考虑排版(pandoc支持固定样式),还可以使用emacs一堆好用功能。

3 个赞

我一直用这个方案,从懒猫大佬的Emacs配置那里抄了个函数:

(defun org-export-docx ()
    "Export current buffer to docx file with the template.docx."
    (interactive)
    (let ((docx-file (concat (file-name-sans-extension (buffer-file-name)) ".docx"))
          (template-file (expand-file-name "template.docx" no-littering-var-directory)))
      (shell-command (format "pandoc %s -o %s --reference-doc=%s"
                             (buffer-file-name) docx-file template-file))
      (message "Convert finish: %s" docx-file)))

可以自己指定 Word 模板,类似这个:

说 orgmode ,只是在举一个例子。退一步讲,使用orgmode/markdown都有学习语法的成本,如果不学习它们的语法(尽管简单),等于不使用它们。

作为高级的“记事本”,我很同意。而作为终端的替代品,我认为不配置的话,还是不行。

如果涉及到表格、图片、标准公文排版的话,就比较麻烦了。当然这样拿 emacs 和 Word 比较肯定是不公平的,也是没有必要的。所以,能用 Word 时,我就直接用 Word。(一个普通用户的心声)

测试的场景,自己的配置崩了或装了某个插件用不起来,可能是被自己配置的某个地方影响了,这时就用无配置版启动排查问题

orgmode表格我也觉得不好用。图片应该没什么问题,大多时候我是用org-download截图。标准公文你可以把模板设置好样式,排好版,导出时直接套用就行,没有什么障碍啊。

我这种不普通用户直接用 CSS paged media,开源商业实现皆有

Emacs 自带比较完善的 RelaxNG 支持,用来写 DocBook5 十分方便

1 个赞
alias vi='emacs -Q -nw'
2 个赞

emacs 默认会对编辑过的文件生成一个#filename# 的备份文件,感觉很烦。你是怎么解决的?