Emacs

使用,扩展或开发Emacs的人员的问答

1
让组织报告:“鲍勃21岁生日”就像进口日记条目一样
当你有: (setq org-agenda-include-diary t) 设置,然后在~/diary文件中输入以下内容: %%(org-anniversary 1950 02 14) Bob's %d%s birthday 显示为: Diary: Bob's 65th birthday 在组织议程中。 我如何获得相同的效果-使用.org文件中的常规Org语法报告重复次数(以年或天或以天为单位进行度量)- 这样我还可以利用其他组织功能(例如TODO等)? 以下内容均不会扩展%d或%s: * Bob's %d%s birthday <1950-02-14 Tue +1y> * Bob's %d%s birthday <%%(org-anniversary 1950 02 14) Bob's %d%s birthday> * Bob's %d%s birthday <%%(org-anniversary 1950 02 14)> Bob's %d%s birthday

1
使用组织模式以其他语言生成输出
鉴于以下旨在生成C ++代码: #+BEGIN_SRC python :exports both :results output code print "struct Whatever{};" #+END_SRC 结果插入如下: #+RESULTS: #+BEGIN_SRC python struct Whatever{}; #+END_SRC 显然,该格式未格式化为C ++。我如何获得它,以便组织生成以下内容: #+RESULTS: #+BEGIN_SRC c++ struct Whatever{}; #+END_SRC 谢谢

2
Git:是否可以直接从文件缓冲区暂存选定区域?
使用Magit,您可以打开magit状态缓冲区,按TAB展开差异(或调RET出单独的差异缓冲区),标记块的一部分,然后按s或u登台/取消登台。非常好。 我想知道是否可以: 编辑档案 在文件缓冲区内选择一个区域,一个块或几个块 登台/非登台所选区域或环绕点
14 magit  git 

1
将锁定文件保存到目录中,而不是禁用它们
Emacs 24引入了禁用臭名昭著的.#file-name锁定文件创建的功能。 评估以下lisp格式将完全禁用Emacs锁定文件以防止并发更改的功能。 有没有一种方法可以将Emacs设置为将锁定文件保存在专用目录中,类似于自动保存和备份文件会发生什么? (setq create-lockfiles nil)

3
找出用于公司完成的后端
使用自定义company后端时,company-complete由于后端的行为不正确,最终不会返回任何补全。在这种情况下,了解使用哪个公司后端生成完成列表将很有帮助。company-complete调用后如何获取此信息?

4
生成议程后不要打开组织议程文件
在Org-Mode(C-c a a)中生成今天的议程会在中打开文件org-agenda-files。我不希望Emacs打开这些额外的缓冲区。 有没有一种简单的方法来告诉Emacs不要打开这些缓冲区?(或有什么相同的功能,如果在调用议程之前未打开它们,则自动将其关闭?)。 更新: 这是@lawlist提供的解决方案的更紧凑版本: (require 'dash) (defun my-org-keep-quiet (orig-fun &rest args) (let ((buffers-pre (-filter #'get-file-buffer (org-agenda-files)))) (apply orig-fun args) (let* ((buffers-post (-filter #'get-file-buffer (org-agenda-files))) (buffers-new (-difference buffers-post buffers-pre))) (mapcar (lambda (file) (kill-buffer (get-file-buffer file))) buffers-new)))) (advice-add 'org-agenda-list :around #'my-org-keep-quiet) (advice-add 'org-search-view :around #'my-org-keep-quiet) (advice-add 'org-tags-view :around #'my-org-keep-quiet) 遗憾的是,这仍然不是完美的,因为现在单击议程中的事件无法打开相应的组织文件。

2
下等工序产生长线时,如何防止减速?
我将Emacs与Geiser结合使用以破解一些Scheme代码。当我在REPL中玩耍时,有时我会评估会产生大量输出的表达式,通常都是一行。 例如,我只是玩SRFI-41(流),并从一个大文件创建了一个字符流。然后我强制了流,Geiser将文件的全部内容作为字符流倒入了我的缓冲区。几乎立即,随着越来越多的字符附加到输出行,Emacs停顿了下来,无论我持续按下多长时间C-g还是C-c C-c无法使Emacs(或Geiser)停止。 这打断了我的整个Emacs会话,因为Emacs现在完全忽略了我的输入,认为它需要优先考虑将这一庞大的字符流全部打印到无响应的Geiser REPL缓冲区中。 有什么我可以保护我的Emacs会话免受破坏性好奇心的吗?(为什么在显示很长的行时Emacs为什么会变得这么慢?)我可以设置长行的限制并告诉Emacs根本不尝试显示很长的行是可以的吗?

4
当我已经可以粘贴文件名时,如何告诉Ido摆脱困境?
我正在尝试使自己使用Ido模式。有时候很好,但有时却非常愚蠢。这是我最大的失望。 我阅读了一些带有完整文件名的日志,然后复制了一个名称,然后尝试打开该文件。 没有Ido的方法是: C-aC-yC-kRET 对于Ido,存在两个主要问题: 如果我拥有完整的文件名,则无法输入(我必须删除第一个斜杠,否则即使按//也无济于事。 我无法编辑文件名的中间部分,其余部分保持不变。 可以吗
14 files  ido 

2
如何将段落分成每个句子一行,但仍保持视觉上的包裹?
这类似于使用每行一个句子(既有功能又有动机)来编辑文件,但是我希望有一个完整,流畅的段落,而不是每个句子都有视觉中断。 我希望有一个次要模式,该模式处于活动状态时,将在视觉上联接同一段落中的行(不用\n\nor paragraph-separate或... 分隔),然后激活行为(可能是from派生的visual-line-mode),该行为将换行而不实际插入\n。 是否存在这种模式?如果不是,我将如何更改段落的显示属性以实现结果?(毕竟,这是这种模式的症结所在,可以从摘要中开发出来。)

1
Ch f之后选择* Help *窗口缓冲区
我为emacs lisp函数做了很多“ Ch f”操作。我更喜欢选择显示“ 帮助”缓冲区的窗口(在Ch f之后),然后在完成关闭窗口时按“ q”。有没有办法做到这一点?
14 help-mode 

3
如何配置组织模式以遵守外部链接的系统特定的默认应用程序?
在组织模式下,我可以定义外部链接,例如 [[file+sys:path/to/document.pdf]] 然后,使用外部pdf查看器打开文件document.pdf。所述org-模式文档的权利要求是,该命令“打开[S]经由OS,如双击”。 但是,“双击”有所不同,因为我发现在我的设置中未使用系统特定的默认应用程序(用于文档,网站,视频等)。在Ubuntu 12.04上,默认的网页应用程序设置为Firefox,并且仅通过org-mode本地.html文件仍使用Chromium开放。 如何配置组织模式以遵守我的默认应用程序设置?
14 org-mode 

2
如何在输入法中添加字符?
我经常使用TeX输入法键入Unicode字符,例如λ,这非常方便。但是,某些类型的下标(如ᵢ),脚本字符(如𝒞)和其他各种符号(如⦅和⦆)不支持我要键入的某些字符。 如何延长TeX的输入法支持一些这些字符的自定义字符串(即_i对ᵢ)?

1
是否有用于视障人士的Emacs工具?
我有一个客户,博士。视觉障碍的计算化学候选人。他非常自给自足,并且通过直接阅读大多数文本的源(如果有),在学习内容方面取得了一些成功。他这样做是为了阅读LaTeX(使用时),以便理解数学。 他还尝试学习Python,它依靠缩进来识别代码块。我已经帮助他破解了python模式,每次他使用自动缩进时都会触发系统警报,现在看来这行之有效。 他在Windows客户端上工作,以访问unix服务器进行计算。通常,他的Emacs在服务器上运行,并且他正在通过X转发进行访问。 我遇到过Emacspeak,但它似乎是针对Linux机器的。Windows平台有多种文本到语音转换工具,我认为他更喜欢使用JAWS。这些工具很有用,但是当它们与各种应用程序的本机“教学”到“语音转换”功能竞争时,它们会使过程变得复杂。 除了Emacspeak,如果您有视力障碍,是否还有其他工具或技术可以有效地使用Emacs?为了从中受益,我是否需要了解有关Emacspeak的重要细节?


1
如何查看和编辑大的分隔符分隔值文件?
我一直csv-mode在修改中小型CSV文件,但是最近我正在处理包含40,812个条目的大文件。csv-mode难以对齐和导航表,并且太慢而无法按原样使用。相比之下,LibreOffice Calc可以浏览文件。 有没有简单的方法可以csv-mode处理大表,还是有更好的方法可用? 我知道一个相关的堆栈溢出问题。它的解决方案是仅在可见窗口中对齐缓冲区的一部分,但这并不能解决我的问题。 这是一个示例文件。 我试图将其放大,但不会太大,以至于无法在较旧的计算机上冻结Emacs。

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.