代码之家  ›  专栏  ›  技术社区  ›  Android Eve

Emacs 23.2中不可读的缓冲区名称

  •  1
  • Android Eve  · 技术社区  · 14 年前

    我刚刚从Emacs 21.2升级到23.2(在Windows XP上),虽然我设法调整了我的.Emacs以适应新的更改,但我找不到解决无法读取的缓冲区名称的方法:

    你知道怎么解决吗?

    谢谢。

    更新:同样,所有缓冲区都会完美地显示(相同的字体)-即使语法高亮显示也是如此。包含 缓冲区名称 也要正确地显示所有内容, 除了缓冲区名称

    uniquify-buffer-name-style

    2 回复  |  直到 14 年前
        1
  •  1
  •   Gilles 'SO- stop being evil'    14 年前

    对于矩形最可能的解释是字体没有所需的字符。解决方法是选择不同的字体(或安装同一字体的更完整版本)。

    或者问题是Emacs假定文件名的编码错误?如果是这样,请提供更多信息,例如文件名的编码方式、Emacs将其解释为什么,以及工作和非工作文件名的示例。

        2
  •  1
  •   Android Eve    14 年前

    好的-在蒂姆X的帮助下gnu.emacs.帮助,我在我的.emacs中发现了破坏新版本的违规行(两个语句都需要注释掉!):

         (setq default-frame-alist
                (cons '(font . "-*-Lucida Console-normal-r-*-*-12-*-*-*-c-*-*-
    iso8859-1")
                      default-frame-alist))
         (set-default-font
          "-*-Lucida Console-normal-r-*-*-12-*-*-*-c-*-*-iso8859-1")
    

    根据Tim的建议,我使用Options菜单设置字体,然后将其保存到my.emacs。这导致附加以下两行单语句:

    (custom-set-faces
    '(default ((t (:inherit nil :stipple nil :background
    "Black" :foreground "LightGray" :inverse-video nil :box nil :strike-
    through nil :overline nil :underline nil :slant normal :weight
    normal :height 90 :width normal :foundry "outline" :family "Lucida
    Console")))))
    

    通过这样做,我不确定我的.emacs是否能继续在Linux中工作(就像以前一样-我的.emacs以前是100%跨平台的)。