Ethan Lin
Ethan Lin
事实上我总觉得应该有更快捷的方式,这个网站被使用的情况有什么? - 查询用。此时步骤是:打开浏览器,打开 intellij.linesh.tw,找到对应的快捷键,这还是以上三个操作都经过了优化的情况 - 快速学习用。此种情况,应该说这份表还是有其价值的。不过真正用户的反馈是怎么样呢? - 也有可能是,根本就没有用,很少有人会看到这个表,更别说会定期来学习一下? 快速学习方面,这个精简的资源应该是有它的作用。不过在备查方面,这样的流程显然太过繁琐。备查方面,最快的应该就是⇧+⌘+A了,理论上,如果只是要备查,只提供这个快捷键就够了;其他选择如下: - Key Promoter。缺点是,你无法知道你不知道的快捷键,只能通过点已有的元素; - 开发 Alfred 插件。你不知道的键、action 依然无法查到。除非你的插件提供中文支持,可是又感觉使用场景是很低的; 似乎最好的,就是⇧+⌘+A了,搜快捷键,按照 action 名模糊搜索,如果能支持按快捷键相似键位搜索就更好了(前提是真的有这个需求)。 欢迎使用者的任何使用体验、反馈、吐槽等。
全自动化
本项目是快速撸出来的,快速撸意味着,是将数据写死到HTML中,HTML也直接写死的方式。这样,数据更新无法自动同步,HTML的结构也无法适应新的变化。因此,自动化这些工作,是以后对此项目进行改版必要的铺垫。 几个事情要自动化: 1. [源仓库快捷键表](https://github.com/linesh-simplicity/gitbook-elegant-mac-tools-system-closure/blob/master/publish/development-tools/intellij-shortcuts.md)更新的自动监听。 2. 将数据转成合适的json schema,供本仓库使用 3. 将更新的json schema自动渲染到index上,自动进行一次提交,做到本仓库无需手动更新
这个精简子集是自己的一个感性总结,有数据的支持则更好,看起来也更新鲜。 数据方面,有两个方案: 1. 现成的,Intellij会统计你最常使用的特性,并将数据存储到`~/Library/Preferences/IntelliJIdea2016.1/options/`路径下,文件为`feature.usage.statistics.xml`,里面可以直接拿到数据来分析。缺点是这里的数据只到“特性”层级,与快捷键不是完全一一对应的关系。因此,拿到的数据还要归类、mapping一下,工作量不一定小。 2. 自己写插件搜集数据。快捷键按键收集理论上是可做的,比如fork的这个[Key Promoter](https://github.com/linesh-simplicity/key-promoter-fork)项目的源码,阅读一下IDEA提供的[API](http://www.jetbrains.org/intellij/sdk/docs/)或[official help](https://intellij-support.jetbrains.com/hc/en-us/community/topics/200366979-IntelliJ-IDEA-Open-API-and-Plugin-Development)(比如事件模型,什么时候能捕获用户按键并获得数据,编写插件基本的模型等),然后应该也就可以了。 更偏向于第二个。 样式方面,可以使用一些CSS progress bar/percentage bar。如何与现有主页样式兼容并更好看,需要小学习。 Dependent on #4
本项目写了一个css样式、处理markdown header的脚本、各种开发笔记,这部分是可重用的,最重要的是要把其中的变化点抽取出来,形成 **可配置** 的config。像吕靖一开始在提他的博客一样。 像[这个Spring boot仓库](https://raw.githubusercontent.com/qibaoguang/Spring-Boot-Reference-Guide/master/SUMMARY.md)也是使用gitbook发布的,写作/发布环境(gitbook)、写作工具(markdown)、主页样式、markdown预处理(header调整、link调整、tooltip调整)等阶段与本仓库都是一致的,只不过发布平台可以不一致。这个我自己在用七牛,如果要数out-of-the-box的支持,我觉得gh-page可以说是最快的。 再想疯狂一些,这个过程,我们想变的是 **发布环境gitbook** 这个变量,写作工具(markdown)是一样的,整个流程是 **以某种形式组织的markdown** -> **一个有主页文档样式的网站** 这样一个输入输出,是否可能把项目做成许多翻译项目都能一键即用的样式转换器?甚至样式都可以考虑自动从原网站抓取,版权问题使用者自己注意。这样去解放样式对翻译者带来的困扰,让你只需要专注在内容的翻译上。 当然我作为一个捣鼓者。 = = 就在我要开工的时候,Atom的字体挂了,变得奇丑无比…然后我就又不想干活了…