【问题标题】:how to put elscreen tabs on the top only?如何仅将 elscreen 选项卡放在顶部?
【发布时间】:2012-11-01 12:14:00
【问题描述】:

我在我的 GNU Emacs 24.2.1 中使用 elscreen 目前,当我拆分窗口时,每一半都有一个相同的选项卡面板: elscreen http://i.zlowiki.ru/121101_0f30ebba.png/800 请注意,较低的两个窗口与最大的窗口具有相同的选项卡。

如何删除这两个重复项,只保留最上面的一个?

如果太难了,还有什么替代方案可以用于 GNU 屏幕?

【问题讨论】:

  • 至少你可以完全禁用标签显示:(setq elscreen-display-tab nil)。它们不是很有用并且会占用空间。您可以使用 C-z T 切换此设置。此外,如果您将底部缓冲区更改为与顶部缓冲区不同的内容,选项卡就会消失。
  • 为了更好地理解header-line-formatelscreen.eltabbar.el 中的工作原理,我们可以在任何缓冲区中评估一行简单的代码:(set (make-local-variable 'header-line-format) "Hello World")。原始海报在三个不同的窗口中显示相同的缓冲区。由于header-line-format 是在每个缓冲区的基础上使用的,相同的缓冲区在逻辑上显示相同的header-line-format。不同的缓冲区可以显示不同的header-line-format,但同一个缓冲区不能在多个窗口中显示。
  • 如何改变背景的文字颜色?它看起来像黑色的蓝色一样弱。

标签: emacs elisp gnu-screen


【解决方案1】:

从技术上讲,这里有一些事情可以按照您的要求进行:

(setq elscreen-display-tab nil) ; disable tabs display

;; get-alist was removed somewhere along the line
;; You can try substituting all instances of get-alist with assoc-default
;; instead of using defalias and see if that works; I haven't tried.
(defalias 'get-alist 'assoc-default) ; get-alist is gone

;; Put tabs display in your frame title bar instead.
(defun elscreen-frame-title-update ()
  (when (elscreen-screen-modified-p 'elscreen-frame-title-update)
    (let* ((screen-list (sort (elscreen-get-screen-list) '<))
           (screen-to-name-alist (elscreen-get-screen-to-name-alist))
           (title (concat "| " (mapconcat
                   (lambda (screen)
                     (format "%d%s %s |"
                             screen (elscreen-status-label screen)
                             (get-alist screen screen-to-name-alist)))
                   screen-list " "))))
      (if (fboundp 'set-frame-name)
          (set-frame-name title)
        (setq frame-title-format title)))))

(eval-after-load "elscreen"
  '(add-hook 'elscreen-screen-update-hook 'elscreen-frame-title-update))

我确定这不是您的想法,但是,嘿,它现在处于非常高的位置,而且仅处于顶部。

【讨论】:

    【解决方案2】:

    看看http://www.emacswiki.org/emacs/ElscreenSeparateBufferLists对elscreen的操作稍有借鉴escreen的修改。它允许选项卡列表在每个缓冲区上有所不同。

    【讨论】:

      【解决方案3】:

      使用elscreen-tab插件怎么样?

      创建此插件是为了解决您的烦恼。

      您可以通过 melpa 安装。

      【讨论】:

        猜你喜欢
        • 2016-10-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-08
        • 2023-03-25
        相关资源
        最近更新 更多