有没有一个库可以提供对几乎所有 mode 都适用的 thing?

比如说有 forward-list,就有 list, 可以 (thing-at-point 'list)。 但是有很多语言这方面的支持就很差了。比如说 elixir,

def foo(a, b) do
  fn x -> x + 1 end
end

像这样的语言里面的块,从 do/-> 到 end 就不能支持。 或是像 Python 或 Haskell 当中使用缩进的情况。

这方面有没有现成的扩展呢?

1赞

不清楚是不是你想要的:expand-region

感觉还不太一样。不过很接近了。

非 lisp 语言太不规整了,ThingAtPoint 增强扩展基本都是围绕着 lisp 转: https://www.emacswiki.org/emacs/ThingAtPoint

一些重构类的扩展倒是部分增强了 ThingAtPoint 对其他语言的支持:

2赞