给 awesome-tray 增加了 RVM 支持.

大家有用 Emacs 和 RVM 一起做 Ruby 开发的, 可以拿去用.

呼叫 @manateelazycat, 如果可以被上游合并最好了.

我用rbenv

应该还是用 RVM 人多吧.

用 asdf 是不是没人权了 :joy:

rbenv更专业,问题更少

哦, 这个 … 个人喜好吧, 我用 Ruby 七八年了, 期间试过 rbenv, 感觉没啥不同, 就没有换.

而且, rbenv 更多的用在部署环境(因为他足够简单,切换只需要配置个环境变量就可以), 而本地开发, 大家都是用 RVM 的(我见过的基本上都是), 因为 RVM 更强大, 更专业, 虽然问题的确不少.

不过, 这个帖子讨论用 rbenv 还是 RVM 貌似偏离了主题. :smile:

这个 PR 有什么问题需要改正吗?

一个人不会同时使用 RVM 和 rbenv 的, 感觉之后再加个 rbenv 也没问题呀.

应该把模块功能分离出来,使用者想咋加咋加,为所欲为。

有道理. @manateelazycat, 你怎么考虑的? 如果有封装好的接口, 我也不需要直接改源码了.

其实我之前有考虑过自己改配置实现的, 但是源码中两个部分不好搞:

  • 那个 cond 语句不好搞.
  • awesome-tray-active-modules 则个列表的顺序不好搞(好吧, 我lisp 很烂, 嗯), 我要放到 mode-name 后面, 其他 location 前面date 后面 总感觉怪怪的.

的确, 我当时也考虑加一个显示buffer名字的功能, 这样我在使用profiler的使用, 就不会傻傻分不清哪个是cpu那个是内存的profiler了. 结果我一看源码是写死的, 加上awesome-tray和ranger会一起抢着minibuffer导致冲突, 后来我就渐渐转投doom-modeline了.

我今天一天都在外面浪,等我一会儿遛完狗回去看一下。

谢谢补丁, 但是我发送了一个修正补丁, 默认不激活 RVM 模块(因为不是每个 Emacser 都是Ruby程序员), 用户喜欢的应该自己添加到 awesome-tray-active-modules 选项中.

https://github.com/manateelazycat/awesome-tray/commit/0b3ce247b1f7ac9edb6e7a3bf391707667abaeef

今天看到这个,就八卦一下

rvm环境下执行 bundle install 命令会产生很多因为 C API 和 gem bundle 不兼容导致的安装失败的问题,

这种情况只在更换系统的情况下会发生, 例如: 我有好几个 Linux 发布版, Arch, OpenSUSE, Slackware, 共享 同一个 $HOME 分区, 当我一段时间想换系统时, 切换过去, 需要 RVM 重新安装 Ruby, 这个不频繁, 也不是大问题, 而且我不信 rbenv 没有这个问题.

比如 Rails 项目需要 ruby-2.3.7 的版本, rvm 则会返回 2.5.1 版本的 gem 路径.

这个比如, 老实讲, 和上面的那句话, 讲的完全不是一个东西嘛, 解决方案, .ruby-version 和 .ruby-gemset, 这是所有版本管理器都支持的, 如果你像我一样, 还有一切其他追求, 例如, 进某个项目, 执行某个 bash function, 还可以使用 RVM 自己支持的 .rvmrc, 这就是 bash 个脚本, 啥 bash 命令都可以写.

@manateelazycat, @cireu, 有不对请指出, 哈哈, 好歹我用 Ruby 七八半年了, 属于专业级 Ruby 程序员, 嗯.

作者:ManateeLazyCat 链接:https://www.jianshu.com/p/a14c09a915ae 來源:简书 简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

歪楼了啊, 不要在这里讨论这种问题, 哈哈哈