问题标签 [emacs-helm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
emacs - Sublime Text 2 的 Emacs 的“Goto Anything”(或即时搜索)?
我最近试用了Sublime Text 2,我发现Goto Anything对于导航源代码非常有用(Ctrl-P file@symbol似乎工作得很好)。Emacs 有类似的东西吗?最好是可以正常工作的东西,没有大量的自定义 elisp。
到目前为止我已经尝试过:
我用过
multi-occur-in-matching-buffers
,但它似乎也无法满足“即时”标准。
我目前将 #2 和 #3 一起使用,作为 Goto Anything 的不良替代品。
如果不是 Goto Anything 的精确克隆,那么我可以使用一个简单的即时搜索解决方案(一种在所有打开的缓冲区中搜索给定字符串并动态显示结果的解决方案)。所以这也是可以接受的。
我使用 Emacs 24.2,所以任何仅 v24 的 elisp 也可以。
编辑:在event_jr 的建议下,我又给了 Helm 一次机会,我发现它确实支持跨所有开放缓冲区的即时搜索。helm-multi-occur
+helm-follow-mode
出乎意料地接近满足我的需求,唯一的小问题是(听起来很挑剔):
我还没有找到运行时(见下面的编辑#2)helm-follow-mode
自动开启的方法helm-multi-occur
。我必须手动调用它C-c C-f
。有人愿意用 elisp 的片段来尝试一下吗?它不像 ST2 的 Goto Anything 那样“智能”(即,它不理解源代码中的“符号”,就像 Goto Anything 那样)。
编辑#2:现在我已经掌握了大部分的 Goto 任何东西,这要感谢下面 event_jr 的回答(当然,还要感谢 Helm 的创建者Thierry Volpiatto)。我衷心推荐给任何寻找类似功能的人。以下是我目前正在使用的 elisp:
emacs - 如何使用本地定位数据库进行 emacs helm?
我创建了一个本地数据库updatedb -l 0 -o update.db -U .
现在,当我在 update.db 所在的目录或它下面的任何其他目录下时,我希望 helm-locate 使用 update.db
(就像崇高的文件夹一样)
我怎样才能做到这一点?
(我每次都必须转到包含 update.db 文件的目录)..
emacs - 寻找 helm-ls-git 教程 (emacs, helm)
https://github.com/emacs-helm/helm-ls-git
在谷歌上找不到它的教程。
这意味着它在我们的宇宙中不存在?
我正在寻找一种在 emacs 中查找文件和 grep 文件的方法。
希望像在 sublime 中一样简单project directory opened
。
(你的搜索会自动限制在你在 sublime 中指定的目录)
emacs - Emacs 和 Helm - 当我执行“kill-buffer”时如何不显示“buffer-history”
我使用helm
,每次执行C-x k( kill-buffer
) 时,它都会在顶部显示我的“kill-buffer History”。
有没有办法只显示“kill-buffer”部分?我根本不使用“kill-buffer History”。此外,当我试图杀死缓冲区时,Emacs 冻结了几次!所以我不再想要那个部分了:-)
配置方面,我只有:
没有其他的。
非常感谢!
emacs - 如何在 helm 中恢复 TAB 自动完成的类似行为?
这里提出了一个相关问题。但答案是要习惯 helm 中自动完成的新方式。我不能习惯它,这就是为什么。
说,我想打开一个文件/home/user/work/f.txt
。我愿意C-x C-f,它把我带到当前目录,比如说/current/dir/
。我点击Backspace并注意到自动完成不会让我 delete /
。好的,用 . 关闭自动完成C-Backspace。然后终止该行C-a C-k并开始输入。请注意,自动完成功能不起作用,请将其重新打开C-Backspace。通常我会输入我知道可能是唯一的部分,例如/hom
,然后点击Tab。
不在这里。一旦我输入/ho
,自动完成将其解析为/home/
,但由于我输入速度很快,我最终/home/m
会输入 ,并继续输入现在无意义的字符,直到我注意到它为止。很可能,到那时我已经自动完成到我无意去的目录中。
所以我必须经常观察自动完成在做什么,而不是依赖于我输入的内容,只在我点击时检查建议的完成Tab。
我还发现自己由于偶尔的拼写错误而进入了错误的目录,然后很难升级——邪恶的自动完成不会让你用几个Backspaces 来解决这个问题。
自动完成行为和Tab功能删除的这种交互完全扰乱了我的工作,以至于我决定问这个问题。我正在寻找:
- 恢复旧功能
- 学习如何以有意义的方式使用自动完成功能,或者
- 将 helm 配置C-x C-f为更像 linux 命令行
请帮忙。
emacs - Initialization error caused by helm-match-plugin
I'm running GNU Emacs Version 24.3 (9.0) on OS X Lion (obtained from http://emacsformacosx.com/). I'm relatively new to emacs, so I may be ignorant of a simple fix for my problem.
I recently expanded my use of helm-mode to include helm-locate and have helm offer extended-command suggestions. Unfortunately, I can't remember exactly how I activated these, but I think it must have been from the Customize Group interface, since my .emacs file doesn't have anything else about helm-mode except for binding C-x C-f to helm-find-files. Ever since I started using those features, when I open emacs I get the following error:
When I start emacs from the command line with the --debut-init flag, I get the following:
I can't deactivate helm-match-plugin from Customize Group and don't even know if this the problem. Any help would be greatly appreciated.
emacs - 如何将 helm-etags 与包含其他标签文件的 TAGS 文件一起使用?
我使用 exuberant ctags 创建带有--etags-include
选项的标签文件,我在主 TAGS 文件中看到包含的标签文件。但是当我尝试使用时helm-etags
,它并没有深入到包含的标签文件中。
甚至可能吗?
objective-c - Emacs 相当于 Xcode 的“快速打开”
我正在尝试让 Cocoa 开发环境在 Emacs 中工作,我已经完成了 80% 的工作。我想念的一个功能是 Xcode 的“快速打开”,它基本上执行您键入的字符串与 Xcode 工作区中引用的文件名和这些文件中定义的符号的模糊匹配。
我的问题是我们的项目很大:如果我使用 etags 为项目子目录中的.h
and文件生成一个 TAGS 文件,结果会超过一个 gig 并且 Emacs 抱怨“TAGS 文件很大。真的打开了吗?”,.m
如果我说是,那么 Emacs 就会挂起并且基本上无法使用。当然,这是在我考虑为系统库建立索引标签之前。我也尝试过projectile,但不幸的是,它在我的大小项目上同样无法使用(大约需要一分钟才能找到匹配项)。
我突然想到,我真正想要的所有索引信息都在 Xcode 项目本身中,所以如果我有一个可以解析它们并遍历它们的依赖项的 Emacs 包,那可能是一个开始,但我不知道有任何这样的包裹。
在这方面有什么建议/解决方案吗?
emacs - Emacs helm 完成:如何关闭 persistent-help_line?
我想helm
用作display-completion-list
. 唯一的问题是它在顶部显示这一行,这是我不想要的:
C-z: I don't want this line here (keeping session)
.
这是说明的代码:
我试过设置persistent-help
为零,或者根本不设置,但它仍然出现。我怎样才能关闭它?
emacs - 在哪里可以找到 Emacs Helm 文档
Helm是一个很好的选择和自动完成框架。阅读Emacs Wiki上的任何页面,我知道 Helm 是从任何东西演变而来的。该页面建议用户更新为与 Helm 一起使用的任何内容编写的扩展,但没有提供有关如何操作的说明。Helm wiki没有提供任何关于使用 Helm 框架编写扩展的有用信息(它甚至不是用户可编辑的,包含没有人修复或不接受拉取请求的语法错误,我觉得这真的不受欢迎)。我最近一直在广泛使用 Helm 并且非常喜欢它,并且我想编写一个备忘单(类似于优秀的Clojure 备忘单)来更好地服务于我的工作流程。所以我的问题是:
(过时的)任何文档是否适用于当前的 Helm?它的兼容性如何?
是否有任何关于 Helm 的有用文档解释了它的工作原理以及如何使用它编写扩展?我已经在谷歌上搜索了一段时间,但我找不到任何有用的东西。
我是一个 Lisper,我根本不介意阅读源代码。但是,这是一个耗时的过程,所以我只想在决定深入研究源代码之前先查找所有可用信息。