例如,在Vim中,如果当前缓冲区包含单词“Random”,并且我键入“random”然后按Ctrl-n,它将更改为“Random”。
但在emacs中,它表示“没有动态扩展”随机“发现”。
无论如何我能达到同样的效果吗?
答案 0 :(得分:0)
你不会说你是如何试图扩展这个词的。我假设您使用dabbrev-expand
( M-/
)或dabbrev-completion
( M-C-/
)。< / p>
如果不是,请尝试设置变量 case-fold-search
,这是控制区分大小写的主要变量。有关控制区分大小写的更多信息,请参阅Emacs手册。在手册中,使用 i
查找以case
开头的索引条目,例如:
case conversion
case in completion
case-fold-search
case-replace
case-sensitivity and completion
case-sensitivity and tags search
假设您使用的是dabbrev:
查看变量dabbrev-case-fold-search
和dabbrev-case-replace
。使用C-h v
查看其文档:
dabbrev-case-fold-search
是dabbrev.el
中定义的变量。其值为
case-fold-search
当用作文件局部变量时,此变量可能存在风险。
文档:
控制dabbrev搜索是否应忽略大小写。
值
nil
表示案件很重要。值为
case-fold-search
表示如果case-fold-search
为nil
则情况重要。任何其他非
nil
版本意味着案件并不重要。您可以自定义此变量。
dabbrev-case-replace
是dabbrev.el
中定义的变量。其值为
case-replace
当用作文件局部变量时,此变量可能存在风险。
文档:
dabbrev是否将缩写&n的案例模式应用于扩展。
值
nil
表示保留扩展的案例模式。值
case-replace
表示case-replace
为nil
时保留该值。任何其他非
nil
值表示修改扩展 通过应用缩写的案例模式。此变量仅在值为的时有效
dabbrev-case-fold-search
指定忽略大小写。您可以自定义此变量。
在此处发表评论后更新 -
我认为你说你想要完成&#34;或&#34;扩展&#34;您的输入random
至Random
。 IOW,你想要从已经在缓冲区中的内容克隆案例。我不认为dabbrev就是这样的。
但是,标准库completion.el
(包含在Emacs中)也提供了类似dabbrev的行为选项,它至少根据您的输入提供了案例强制(即反过来)。以下是图书馆评论所说的内容:
STRING CASING
Completion is string case independent if case-fold-search has its
normal default of T. Also when the completion is inserted the case of the
entry is coerced appropriately.
[E.G. APP --> APPROPRIATELY app --> appropriately
App --> Appropriately]