emacs minibuffer中搜索/替换字符串的不同面

emacs minibuffer中搜索/替换字符串的不同面,emacs,emacs-faces,Emacs,Emacs Faces,当我使用query replace替换时,比如说,用“def”替换“abc”,然后再次调用query replace,我得到一个小缓冲区,看起来像这样,都在同一个面上: Query replace (default abc -> def): 如果“abc”和“def”显示在不同的面上,则更容易阅读这一行。如果搜索或替换字符串中包含空格、括号或箭头,所有这些都会与它们周围的提示混合在一起,则这种情况会更加明显。默认情况下,我希望搜索和替换字符串提供不同的外观。但是,我在文档中找不到任何

当我使用
query replace
替换时,比如说,用“def”替换“abc”,然后再次调用
query replace
,我得到一个小缓冲区,看起来像这样,都在同一个面上:

  Query replace (default abc -> def):
如果“abc”和“def”显示在不同的面上,则更容易阅读这一行。如果搜索或替换字符串中包含空格、括号或箭头,所有这些都会与它们周围的提示混合在一起,则这种情况会更加明显。默认情况下,我希望搜索和替换字符串提供不同的外观。但是,我在文档中找不到任何允许单独自定义用于显示搜索和替换字符串的面。有人能给我提供一些我可以用来做这件事的代码吗?

使用库--描述

另请参见Emacs,这是一个相关的增强请求。问题是,用户目前只能决定整个提示是否有一张脸。(如果是这样的话,他们可以自定义该面。)所需要的是这样做的能力,但也可以让该面对可能已经提供给提示字符串特定部分的任何面退居其次

库在整个提示上关闭面,并在不同面(当然可以自定义)中突出显示提示的重要部分(正是您请求的部分)。如果实现了增强请求,则提示的其余部分可以保留在正常提示面中(
minibuffer prompt


很难相信在Emacs中这种设计是如此短视,但事实确实如此。而且它是用C代码实现的,因此不太适合用户改进。让我们期待一个解决方案。同时,通过加载
replace,您可以得到您所要求的,但不会在提示符的其余部分使用
minibuffer-prompt
.el

听起来不错。你为什么不建议将其作为Emacs的一个补充。我相信你可以使用“帮助”->“发送错误报告”菜单项来实现这一点。@Alan:你不是在说迷你缓冲区而不是modeline吗?问题的函数是
替换.el
中的
查询替换读取自
。还有,是的,@TacticalCoder是正确的——迷你缓冲区是有问题的,而不是modeline。应该可以对从读取的
查询替换的不同元素使用字体锁定,或者类似覆盖/文本属性的东西。也可以修改布局的格式。我们已经知道可以更改
迷你缓冲区的字体er提示符
,并通过输入/退出迷你缓冲区设置设置迷你缓冲区默认字体;因此,应该可以执行您的建议。