代码之家  ›  专栏  ›  技术社区  ›  auramo

仅在GUI模式下运行某些emacs init命令

  •  10
  • auramo  · 技术社区  · 14 年前

    只有当我处于GUI模式而不是终端模式时,才能运行某些命令(从init.el)。我想在运行GUI版本时设置一个特定的颜色方案,但是这个方案严重破坏了终端窗口的颜色。我在找一些变量/函数,看起来像这样:

    (if gui-mode (color-scheme-blah))
    

    或:

    (unless terminal-mode (color-scheme-blah))
    
    3 回复  |  直到 14 年前
        1
  •  19
  •   Kilian Foth    14 年前

    你想要类似的东西

    (if window-system (color-scheme-blah))
    

    window-system 可以是 'x 'mswindows 或者可能是其他价值观,但它总是 nil 当你在终点站的时候。

        2
  •  4
  •   Make Mark    14 年前

    要通常测试图形显示,您需要使用以下内容:

    (display-graphic-p &optional DISPLAY)

    如果显示为图形显示,则返回非零。例如使用 window-system 变量也可以工作,但要求您引用特定的环境(如X或Microsoft Windows)。

        3
  •  1
  •   Community skywinder    7 年前

    当使用emacsclient和frames时,GUI或终端模式不一定是全局概念。看到我问题的非常有用的答案 https://superuser.com/questions/165335/how-can-i-show-the-emacs-menu-in-gui-emacs-frames-but-not-in-tty-frames-when-usin .