awesome-tab 1.0 发布, 开箱即用的Emacs标签插件


#102

今天添加了一个非常方便的函数: https://github.com/manateelazycat/awesome-tab/commit/d9add90ad21025e8da586b6eb9198dbb0ebbc9ec

awesome-tab-kill-other-buffers-in-current-group

有时候我们经常打开很多文件参考, 参考以后, 只想保留当前 buffer , 删除当前组的后台标签, 用上面的命令就非常方便的干这种活了.


#103

我想向楼主提个 feature request 不知可否?

因为 awesome-tab-mode 默认自动启用, 所以在 use-package 的 lazy load 功能下首次 invoke awesome-tab-mode 反而会 disable 掉 awesome-tab-mode。我在自己的配置里写了一个 toggle 来保证 awsome-tab-mode 的加载。

(use-package awesome-tab
  :commands (awesome-tab-mode)
  :init
  (progn
    (defun awesome-tab-mode-toggle ()
      (interactive)
      (if (bound-and-true-p awesome-tab-mode)
          (awesome-tab-mode -1)
        (awesome-tab-mode t)))))

请问楼主能不能加一个 variable awesome-tab-enable-on-init 从而即可保证自动启用,又可以让用户自行修改启动状态呢?


#104

我没有看懂, 你用标签为什么要 lazy load? 而不是默认就加载, 如果加载 awesome-tab 默认又不加载, 什么时候加载?

如果你真的要延迟加载, 可以用:

(run-with-idle-timer
   1 nil
   #'(lambda ()
       (require 'awesome-tab)
       ))

#105

我的意思是启用 awesome-tab-mode 的时机交由用户决定,而不是加载这个feature的时候就启用了, 也就是从用户角度相当于 (require 'awesome-tab') (awesome-tab-mode t) 这样的用法,或者是在 awesome-tab 的 library 这里 加个状态 (when awesome-tab-enable-on-init (awesome-tab-mode t)) 这样用户如果不想直接启用的话就在加载前在自己的配置里加上 (setq-default awesome-tab-enable-on-init nil)。当然我自己更偏好前一种做法。


#106

#107

启动加载,不显示啊,必须执行一次切换标签在显示


#108

我写了一个minor mode,开启的时候才会require awesome tab。


#109

今天用发现又有一些更新,多了minor-mode,标签切换函数也换了。


#110

有没有考虑过只为特定的buffer 启用tabbar ,其他buffer 则不显示tabbar 我原本的需求是 只想为eshell 或term-mode 的启用tabbar,其他buffer 则不启用

打算尝试用eshell 完全替换换iTerm,但是发现没有tab页的eshell 很不好用 才有此一问

另外本意是想eshell-mode term-mode 作为一个tab分组来显示的

  (add-to-list 'eshell-visual-commands  "zsh")

在eshell里运行zsh之后会打开一个term-mode的buffer,所以想把它们作为一组来显示

这个需求可以简化为: 不属于任何分组的buffer,则不显示header-line


#111

感觉这个主题还不错分享给大家,文件名区分的很清晰,当前选中的tab也很显眼

(custom-set-faces
 ;; custom-set-faces was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
 '(awesome-tab-selected ((t (:inherit awesome-tab-default :foreground "green3" :overline "yellow" :underline "yellow" :weight ultra-bold :width semi-expanded))))
 '(awesome-tab-separator ((t (:inherit awesome-tab-default :box (:line-width 2 :color "yellow" :style pressed-button) :height 0.1))))


#112

现在就只支持, 写自己的分组函数就可以了, 非常简单:

因为众口难调, 特殊需求自己改吧.