说,我有一个foo.txt指定N参数的文件
arg1
arg2
...
argN
Run Code Online (Sandbox Code Playgroud)
我需要传递给命令 my_command
如何使用文件的行作为命令的参数?
设置使用eval-after-load和使用模式挂钩的模式之间有区别吗?
我已经看到一些代码在define-key主模式钩子中使用,而其他一些代码define-key在eval-after-load形式中使用.
更新:
为了更好地理解,下面是使用带有org-mode的eval-after-load和mode钩子的示例.该代码可以运行之前 (load "org")或(require 'org)或(package-initialize).
;; The following two lines of code set some org-mode options.
;; Usually, these can be outside (eval-after-load ...) and work.
;; In cases that doesn't work, try using setq-default or set-variable
;; and putting them in (eval-after-load ...), if the
;; doc for the variables don't say what to do.
;; Or use Customize interface.
(setq org-hide-leading-stars t) …Run Code Online (Sandbox Code Playgroud) 我正在阅读subr.el并看到这段代码:
(defalias 'backward-delete-char 'delete-backward-char)
(defalias 'search-forward-regexp (symbol-function 're-search-forward))
Run Code Online (Sandbox Code Playgroud)
有趣的是,第一行不使用符号函数,而第二行不使用符号函数.我知道的使用defalias的这两种方式的唯一区别是,向后删除炭(第一个)的帮助下将显示这是删除后向焦炭的别名而对于搜索前进,正则表达式的帮助,没有按"吨.
有没有第二种方式比第一种方式更好的情况?
网上是否有一个很好的表格或备忘单来比较emacs正则表达式和PCRE的sytax?
当我使用emacs正则表达式时,我必须记住要逃避分组括号和括号以及其他差异,这一切都令人困惑,语法比较表可以最大限度地减少混淆.
当我按C-x s(save-some-buffers)或C-x C-c(save-buffers-kill-terminal)时,Emacs逐个显示修改的缓冲区的名称,并询问如何处理每个(save,diff,pass,...).y逐个按下很慢.按下!不会让您看到正在保存的缓冲区.
如何首先显示所有已修改缓冲区的名称,以便我可以标记其中一些并快速保存所有其他缓冲区?
当我输入以下内容(BASH)时:
rdesktop -r disk:bacon=~/bacon host
Run Code Online (Sandbox Code Playgroud)
它没有扩展到
rdesktop -r disk:bacon=/home/me/bacon host
Run Code Online (Sandbox Code Playgroud)
似乎"磁盘:"部分是问题,如下所示:
$ echo bacon=~/bacon disk:bacon=~/bacon
bacon=/home/me/bacon disk:bacon=~/bacon
Run Code Online (Sandbox Code Playgroud)
如何使波浪扩展?
我想知道是否有人可以权衡Emacs不同拼写模式的优缺点.Emacswiki-CategorySpelling 提到三种拼写检查模式:
我也感兴趣的是,这些模式中的哪一种为拼写检查器提供了一种方法,可以根据语法跳过部分缓冲区(例如,为了跳过LaTeX文档中的数学模式部分,在AUCTEX中突出显示为棕色模式).Flyspell似乎没有这样做
我认为这会奏效:
(defun my-node ()
(interactive)
(pop-to-buffer (make-comint "my-node" "node")))
Run Code Online (Sandbox Code Playgroud)
但是当我这样做M-x my-node并进入1+1comint缓冲区时,它不会显示任何输出.
这是在Windows 7上的Emacs 24.0.50.1中安装的NodeJS没有任何特殊配置.
以非交互方式调用node.js,因为M-x compile RET node hello-world.js RET工作正常.node交互式运行cmd工作正常.
这可能是相关的:当我运行M-x shell并输入nodeshell缓冲区然后输入时1+1,它不会显示结果.我必须遗漏一些非常基本的东西.
更新:
可能相关:emacs/Python:在行缓冲与块缓冲模式下运行python-shell - Stack Overflow
Regexp反斜杠 - GNU Emacs手册说,\<在单词的开头匹配,在单词\>的结尾处\b匹配,并匹配单词边界.\b就像在其他非Emacs正则表达式中一样.但似乎\<和\>特定于Emacs的正则表达式.是否在某些情况下,\<和\>需要的不是\b?例如,\bword\b将匹配相同\<word\>,唯一的区别是后者更具可读性.
Mx grep,Mx lgrep,Mx rgrep对我来说在EmacsW32中不起作用.
我做Mx lgrep,它说grep不是命令:
grep -i -n "hello" * NUL
'grep' is not recognized as an internal or external command,
operable program or batch file.
Grep finished with no matches found at Sun Jan 31 05:59:06
Run Code Online (Sandbox Code Playgroud)
还有什么是NUL的东西?EmacsW32主页说它附带了Gnuwin32实用程序,但似乎配置实际使用Gnuwin32 grep的工作留给了用户.
如何配置它以使用随附的Gnuwin32 grep或cygwin grep?都好吗?