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

什么都自己改很浪费时间的

大神在这,有什么问题直接问作者就好了 :smile:

技巧太多了,学不完的

恩恩,是的,适度取舍一下,但其实久了发现用的就那些,之前装一堆,发现很多功能都没用过,太尴尬了

确实,还是得多写多用,形成肌肉记忆就好了。我也是很多插件有时候想不起来用,还是写的太少。我现在 spacemacs 加载 360+ 包。。。

@manateelazycat 现在的 awesome-tab 包里的自定义变量都是 tabbar 或者 helm 开头的,和 tabbar 的变量无法区分,是不是改成 awesome-tab 开头的会更好一些?如果需要我可以提交 PR

不用改吧,免得文档里面一会 awesome-tab的一会tabber的,把用户弄晕了。

本来就是基于tabber开发的,没啥原创性工作。

取名字只是方便区分项目,函数还是和tabber一致吧,顺便致敬一下。

谢谢你的建议哈

1 个赞

卧槽你360个包怎么搞出来的,我才六十多个……

懒猫独立出来一个repo就可以了,你可以用quelpa,用起来跟melpa基本一样。

quelpa 我也一直在用,但是有些时候需要修改一下 file header

file header是啥?为啥要修改file header?

修改File header 主要是为了通过 package lint,这样 quelpa 可以自动安装依赖,并且 byte-compile。这不是强制性的,我主要是为了方便管理我的包。我大部分的私有包都是用 quelpa 的 recipe local 来安装编译的。

而且这些包将来如果需要,很容易推送到 MELPA。

可以看作是一种洁癖吧

另外,byte-compile 可以容易看出自己写的包哪里存在问题

1 个赞

tabbar.el 的代码太变态了, 每敲击一个字符都会导致执行一次 tabbar-buffer-groups-function 函数, 加上 projectile-project-name 函数是一个非常耗时的操作.

如果有很多项目文件, 就会导致 tabbar-buffer-groups-function 特别卡.

今天推送了一个补丁, Use `tabbar-groups-hash' store every buffer's project name avoid perf… · manateelazycat/awesome-tab@418f59f · GitHub

用 Hash 来存储每个 buffer 的 project-name, 避免频繁的执行 projectile-project-name 导致的性能问题.

2 个赞

请问如何将 tabbar 显示在 childframe 中呢?

1 个赞

Tabbar 本质就是修改 buffer 的 headerline

make-frame 出来的默认就可以啊

1 个赞

我去看了一下 tabbar.el 的源码,发现似乎并没有那么简单。

我想要的实现是:

当前 buffer 的显示没有变化,headline 也没有变化,然后在顶部新出现一个 childframe ,里面的内容是 tabbar。

似乎按照 tabbar 的机制,难以做到。

@manateelazycat 你切换tab用的是哪个命令?

tabbar-backward-tab
tabbar-forward-tab
tabbar-backward-group
tabbar-forward-group

自己实现吧, 我不用 childframe

搞好了,这个真的太酷了 :smile:

哈哈哈, 喜欢就好.

大家终于不用浪费时间在 tabbar.el 上了.

2 个赞

我也发现样式没有生效,特别是非激活标签直接就是不可见的状态,下图前面实际上还有两个标签。

54

另外就是在浅色主题之下,会有下图的问题。

36