Emacs

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

3
Orgmode:是否可以在文件级别设置标签?
对于特定项目有一个文件,我希望该文件中的所有节点都具有一个标识该项目的标签,以便以后可以使用它为该项目创建议程视图。到目前为止,我所发现的只是#+TAGS: foo bar spam指定了该文件的标记自动完成中提供的标记的硬列表。 有谁知道类似#+XXX的指令来实现这一目标?
11 org-mode 


2
获取组织链接以自动插入链接描述?
问:如何获得自定义org链接功能以自动插入描述? 我想org将指向文件的链接存储在dired缓冲区中,但更希望链接描述为文件名没有路径,而不是报告完整路径,即: file:~/the/full/path/myfile.ext ; default, but no thanks myfile.ext ; what I want 现在:对org-store-link来自的链接dired进行硬编码以提供默认值。相反,我编写了一个自定义函数(从硬编码函数中复制)并将其添加到org-store-link-functions: (defun dired-store-link () (when (derived-mode-p 'dired-mode) (let ((file (dired-get-filename nil t))) (setf file (if file (abbreviate-file-name (expand-file-name file)) default-directory)) (org-store-link-props :type "dired" :link file :description (file-name-nondirectory file)) file))) (add-to-list 'org-store-link-functions #'dired-store-link) 到目前为止,一切都很好,并且可以按预期工作,但是有一点: org-insert-link使用内置的默认行为进行调用时,它只是插入链接而无需询问我任何描述。 当org-insert-link使用我的自定义函数进行调用时,它会提示我输入说明(正确地使用存储在:description属性中的文件名填充该说明)。 我希望每次都不会提示您输入描述,而是希望org-insert-link使用:description自定义函数集的值。 我如何说服自动org-insert-link使用:description而不提示我呢?
11 org-mode  elisp 

3
大型日志文件有不​​错的日志查看模式吗?
我正在使用的某些日志文件很大(> 200Mb),但是在Emacs中浏览它们会很好。目前,默认情况下,Emacs尝试启用log4j模式,这只会减慢所有速度。我真正需要的是一个轻量级的查看器: 禁用撤消模式 日志文件更新时可以自动还原 更新时可以跟随日志的尾部 理想情况下,浏览时只需映射日志文件的一小部分就很好。是否存在这样的日志模式?
11 logging 

2
仅当emacsclient没有框架时,才创建框架
emacsclient -a '' -n仅在还没有框架时,如何才能创建一个新框架? -c标志的问题是它每次都会创建一个新的帧。没有它的问题是,如果没有打开的框架,它将在命令行中打开。 如果可以从外壳检查是否有打开的Emacs框架,则可以-c根据需要进行调用,无论是否调用它,都可以得到所需的行为。我试过了: $ emacsclient -a '' --eval '(frames-on-display-list)' (#<frame F1 0xba2740>) 我总是得到相同的结果。 我可以使用临时文件或pgrep,但是这些方法很容易出错。 这类似于此问题,但不是重复的,因为OP对在调用之前必须打开框架感到满意emacsclient。

2
如何在MS-Windows上构建Emacs主分支(也称为主干)
我今天尝试了一下,开始着手为MS-Windows构建最新的Emacs master分支开发人员版本(又名Emacs Trunk)。 我找到了一个旧博客并执行了该过程,但遇到一条错误消息,告诉我不再支持特定方法。错误消息使我读到: .../emacs/nt/INSTALL。好吧,如果已经安装/配置了用于构建Emacs的基础架构,那就太好了。 如果有第1、2、3步描述所需的工具,以及如何着眼于在MS-Windows上构建Emacs的方式进行安装/配置,那肯定很方便。 如果有人想编写详细的论文,请随时发布答案。如果不是这样,一旦我弄清楚怎么做,我就会自己写一个。我遇到了其他障碍,并在此期间提交了错误报告-我尚不知道是我还是一个错误:https: //debbugs.gnu.org/cgi/bugreport.cgi? bug = 21582 我认为,如果有一个“备忘单”可以供初学者或像我这样的业余爱好者(不是行业上的程序员)使用,那么更多的人将倾向于构建自己的Emacs。

2
防止鼠标单击无效帧中的重新定位点
我要防止在非活动X窗口中单击框架上的“第一次”效果,而不是使框架处于活动状态。具体来说,我不想让它重新定位。 问题是,我似乎无法检测到他的帧是不活动的时候,我得到了鼠标点击。因此,以下代码始终显示"y": ;; detect if frame is active when clicking (defun my/mouse-drag-region (event) (interactive "e") (mouse-minibuffer-check event) (let* ((window (caadr event)) (frame (window-frame window))) (if (eql frame (selected-frame)) (print "y") (print "n")))) (global-set-key [down-mouse-1] 'my/mouse-drag-region) 我如何检测到该框架以前处于非活动状态? 或者,是否有人已经实现了我在其他地方想要做的事情? 注意:我要问的是与其他问题不同的东西,它是关于不活动的窗口,而不是不活动的框架。
11 frames  x11 

1
通过轮廓路径完成在点处插入组织ID链接
当前要插入内部org-mode org-id链接,我导航至标题或将其在议程视图中拉出(Ca s标题测试搜索RET),并将链接与Cl存储在一起(org-store-link),然后返回到我想插入链接,然后使用Cc Cl(org-insert-link)插入链接。 相反,我希望映射一个键,该键允许我使用类似于org-refile(Cc Cw)的制表符补全在当前点插入链接。预期结果将是以下形式的org-id内部链接: [[id:d7534b2f-c221-4dea-8566-d5ce3e4e1b78][Example Link]] 通过org-id.el查看,似乎org-id-get-with-outline-path-completion是为此目的而设计的。我试过了: (global-set-key "\C-ci" (lambda () (interactive) (org-id-get-with-outline-path-completion))) 但它没有按预期工作。 我的init.el文件中包含以下内容: ;; Use global IDs (require 'org-id) (setq org-id-link-to-org-use-id t) ;; Update ID file .org-id-locations on startup (org-id-update-id-locations) ;; Refile options (setq org-refile-targets (quote ((nil :maxlevel . 9) (org-agenda-files :maxlevel . 9)))) (setq org-refile-use-outline-path …
11 org-mode 



2
无输入时如何使用?
从文档字符串: 只要没有等待输入,就执行BODY。 如果输入到达,则结束BODY的执行,并while-no-input返回t。退出会使它返回nil。如果BODY完成,则while-no-input返回BODY产生的任何值。 如果我理解正确,则此宏允许我(尝试)执行大量计算而不会挂起接口。我肯定会觉得这是一个吸引人的概念,但是我想知道什么时候在实践中有用。 似乎可以随时中断计算,没有关于发生位置的信息,也没有以后恢复它的简便方法。这让我觉得毕竟可能没有那么有用... 有使用while-no-input宏的推荐方法吗? 有没有在野外使用此宏的示例用法?

3
如何在Python中转置函数的两个参数?
如何在调用Python函数时交换两个参数? 如果我point在这两个参数之间加上空格: self.assertEqual(json.loads(some.data), json_data) 然后M-t(transpose-words),我得到: self.assertEqual(json.loads(some.json), data_data) 另一方面,使用CMt(transpose-sexps),我得到: self.assertEqual(json.loadsjson_data, (some.data)) 我想要的是: self.assertEqual(json_data, json.loads(some.data)) 有命令可以做到这一点吗?

2
RefTex使用Helm搜索多篇文章
我最近开始使用Helm,现在真的很喜欢。但是,我使用emacs编写了很多LaTeX。当我引用文章时,我经常需要在同一引用宏中引用几篇文章-我可以使用RefTex轻松地在书目文件中搜索两个单独的条目: citekey1\|citekey2 但是,当启动掌舵模式时,此功能将不再起作用。我仍然可以搜索单个文章,但不能搜索多个文章。我该如何做以上掌舵?

1
搜索忽略新行的字符串
我习惯于编写将段落分为几行的文件,例如使用fill-column。当我搜索C-s诸如的字符串()时this is a long text,搜索结果不会返回该字符串出现的位置,并且在两个单词之间(例如this\nis a long text)之间有换行符。 是否有一条命令也会返回这些结果?
11 search  isearch 

1
如何将C- [真正绑定(这次是真正的绑定)
有什么方法可以绑定C-[到某个东西,而不会M-弄乱所有(元)绑定吗? 这不是第一次出现这个问题。不幸的是,上一个线程中提供的唯一解决方案是a)特定于Linux,b)需要与Emacs无关的外部工具(同样是特定于Linux)。同样,我本可以在OS X上使用诸如Karabiner之类的东西C-[在Emacs 掌握之前盗取序列,但这既笨重又昂贵。 鉴于这是Emacs的是坚持翻译C-[来ESC,C-i来TAB,可能别人我非常想打破这些关系,并获得宝贵的键序列回来。最近,我全力以赴地解决了这个问题,并指责了安静无辜的smartparens模式。 这里涉及到一个可能的解决方案,function-key-map并key-translation-map在这里进行了讨论,但可惜它要么不再起作用,要么首先就不起作用(或者我做错了什么)。我认为这是朝正确的方向发展。

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.