好吧,没玩过ios,但貌似emacs也有xcode的package
但其实,这里只说到编码,app的提交审核、签名之类的,那只能算是xcode的“套件”吧,就好比,可以用emacs写vhdl,仿真还是得上xlinx之类厂家的仿真器
其实Swift的语言支持Emacs做的也不好……
坐等LSP统一天下吧……
我是很理解你遇到一个据说能提高效率的工具,然后被它深深恶心了一回的心情的,开源,免费软件里这种情况太多了,开源,免费常常意味着 no warranty。我是站在你这边的。
- Emacs 的各种配置文件如果用不了就放弃,可以借鉴这些配置文件里的代码或者结构。
- 尽量不使用所谓的配置文件发行版(Spacemacs: A community-driven Emacs distribution ),这些配置文件的发行版之间的区别就好比 Debian 和 Ubuntu 的区别,Ubuntu 的 Bug 总是比 Debian 的多。
- 不论配置有多少功能,使用到的总是很小一部分,所以配置会越来越精简,比如 GitHub - bbatsov/emacs.d: My personal Emacs configuration ,有一篇文章写得很好 software that sucks less | suckless.org software that sucks less
成为一个工具的专家是一件不足挂齿的事情,但是掌握一个工具确实要付出努力,比如学会使用Shell,Git,Docker等工具,仍然要去看文档,去实际使用积累经验。
有些不方便的地方也确实是有问题。自以为是的傲慢和思想习惯的惰性使人麻木,我觉得矫枉必须过正,不过 Emacs 似乎缺少有魄力的开发者(比如 Linus)。
Emacs大多数的实际问题,还是起源于FSF的理念和思想与现代软件开发的主流思想完全不一样……FSF是一个追求全工具链自由 (Free / Libre)的组织,如果某个技术/实现与FSF的意识形态不符,即使再好用,FSF也不会采纳。
所以除非Emacs不再由FSF领导开发,这些问题才能改善吧
然而看了26之后我真的发现这种情况有愈演愈烈之势。
所以与其说Emacs Lisp这门语言承载不了一个现代化的Emacs,还不如说FSF的思想和理念承载不了一个现代化的Emacs。如果“意识形态大于实用性”的理念一直存在下去,那么我相信Emacs也不会有什么太大的改变。
然而这真的不好吗?
其他的情况不知道,emacs长寿是肯定的,估计可以坚持到我们这一批人老死,我们就可以在墓碑上刻一个 emacser
现在软件行业的蓬勃发展,和FSF这种坚持是分不开的.有所得就有所失,正常现象.
另外关于什么是"现代化"其实是一个带有一定误导成分,隐含这政治正确的说法,如果"流行"就是"现代化,那就没什么话可说了.
http://www.ruanyifeng.com/blog/2010/10/why_lisp_is_superior.html
emacsist
26有什么问题?
一直很认同GNU和emacs的哲学和理念, 做基础而通用和够用的功能, 不做太花哨的功能, 花哨的功能往往寿命不长, 实在想做可以自己写扩展. 正是这样才能有这么悠久的历史.
人家本来的目标不是IDE, 只不过扩展功能太强, 被很多人用作了IDE, 而很多用户的问题都在扩展的功能上, 而且很多用户的需求也是IDE, 这样的话用IDE就行了.
不过, 现在有了language server, 普通编辑器也看到了春天, 能实现跟IDE差不多的功能了, 比较完美的开发工具方案.
感觉emacs的问题不在语言上, 而在架构和性能上, 单线程或者说不能并发是个巨大的瓶颈, 影响很多高级复杂功能的扩展, 也导致自身某些基本功能的性能问题.
另外很多所谓语言问题, 都不是语言问题, 可以用一个框架来解决, 比如java里面的众多框架.
您又不是给 Emacs 搞底层的,怕啥意識形態问題?
我不是给Emacs搞底层的没错,但是我是搞意识形态的啊……虽然我也不搞Emacs的意识形态……
我只是看到了一个越来越贴近“Emacs-Lisp 解释器”的Emacs……
然後还有人要 Lisp Machine
基础功能, 无可厚非, 就比如你是ios开发者, emacs是ios系统, 系统肯定要专注系统的功能.
不知道你需要的是什么.
所以我并没有反对这一点啊,相反我觉得Emacs想要生存下去,应该继续贯彻这一点。只提供一个基本的框架,其它高级功能都由插件和配置完成。
否则跟一众“现代”编辑器还有什么区别?
我最烦的是四不像的那种,既没有做到开箱即用,也没有做到完全可配置……虽然我也不知道我说的是谁……
另外我不是iOS开发,只是个半吊子……不然也不会写这么愚蠢的回复了……
好吧, 原来是自己人, 哈哈
emacs和linux kernel有一些共同点的,都是开源的形式开发(大教堂与集市)
有时候,坚持玩emacs,使用linux,也许有些所谓的情怀在里面,你觉得linux内核就一定是最NB的吗,不然,还有很多优秀的os内核,发展到如今,linux内核已经很臃肿了,一层层的抽象,就好比现在的android,当然,linux的语言集成度更高(只使用c和asm)
emacs也是如此,如果以一个现代软件的角度来看待,lisp不论性能上还是语法上,不一定都是最优秀的,但作为一个emacs user,我觉得适合自己、够用就可以了
再多说几句,可能只是个人的一些体会:
1、现在很多语言,都不再是刚开始创建PL那样了,那个时代只有Fortran和lisp,现代的语言已经慢慢的开始融合各种特性了,尤其是FP方面,不管是语言形式上,还是语法糖上面
2、现代有一些语言也在借鉴成功的大项目的风格,比如go,go的defer,其实很像linux内核里面的goto错误处理,当然,将参数类型放在后面,似乎有种haskell的风格
3、而现在有些语言的函数操作符前缀形式,似乎也是在模仿lisp
上面说的不一定对,仅仅只是我自己的一些体会,说的不对的地方,欢迎指出来😊
linux内核,至少在GUI方面,是无法和某些架构相比的,也因此,linux很大一部分只是存在server端而已,android,算是比较特殊的一个吧