文本编辑器哪个支持脚本功能的?

版上编程大神众多,请教下:文本编辑器哪一个支持脚本功能?就像Word里面可以写VBA一样。在下多年前开始用的一个叫 Komodo Edit 的,可以用js写脚本,太懒一直没换过,但是这东西太小众且限制太多,打算换一个。谢谢!

外部脚本那就和编辑器本身没什么关系对吧,我就嫌那样麻烦。我就希望像在 Word 里面写 VBA一样,一个软件里面就搞定。现在用的 Komodo Edit 就是,可以在里面写 js脚本,还有树形结构可以管理这些脚本,并且脚本还可以做成按钮。可是这个东西市场太小几年前就停止维护了。 vscode 可以 像在 Word 里面写 VBA一样写脚本并且直接运行吗?谢谢

我不是要写VBA啊,不可能那Word来处理100M的文本文件对吧 :grinning:

1 个赞

你们用 文本编辑器主要用来浏览文本文件和手动用正则表达式查找替换,如果要编程处理就在外部用 python 写好程序直接对目标 txt 文件进行处理,我的理解对吧?

多谢!看来真是相当out了,你这里提到的每一个我要去仔细研究下!Komodo Edit 基本上就是个古董,当初看一本python的教材推荐这玩意,结果被带到沟里去混了好多年,攒下一堆东西都得转换平台,悲催

同时感谢 @douglarek

(既然你能看懂方块字,我就不费那个劲写蝌蚪文了 :grinning:

vba是宏吗?好多人在用EmEditor

1 个赞

vba是office套件专用的宏/脚本语言。从你的截屏看 EmEditor 也是支持可以写宏/脚本的,看来支持这个的编辑器还不少,回头瞧瞧,谢谢!

1 个赞

Vim支持脚本功能, mdxsourcebuilder 就是它的应用案例。

1 个赞

谢谢!看来真是孤陋寡闻 :sweat_smile:

@Vim 原来你还做了一个这么好的项目,一个脚本能直接生成图片词典,真是不错,找时间研究下。“图片词典”这个东西是你发明的?以前还真没想到过会有这个东西

还有个问题想不通,象 Vim/NeoVim 这两个编辑器脚本用的似乎都是自创的专用语言,岂不是又得学门新语言?为啥不像很多软件一样,脚本都基于已有的通用语言向 Python/VB/JS这样的?(这个问题似乎已经有答案 https://www.zhihu.com/question/445290918)

不是。关于图片词典,这里有些介绍

Vim、Python都同时诞生于1991年。

1 个赞

个人对图片词典虽无迫切需要,但相信对它的需求是存在的。原创和你的工作都有独特的创新之处,相当不错!

Vim的专门脚本语言口碑似乎不错,由于不是靠这个吃饭,还是打算看看Python能否实现其全部主要功能,毕竟精力有限学新语言能避免就避免。谢谢提供这么多有用的信息!

嗯,两者定位很不同,按需,我这里只是提供一种可能性。

  • Vim主要定位于文本编辑,让我们可以“以思维的速度来编辑文本”,适合文字工作者。Vim脚本所扮演的角色:”Vim脚本让我们可以给Vim添加新的功能,或是改变其已有的功能。“我主要用Vim做笔记,免费又强大(Markdown + Wiki + Diary + GTD + Tag之类),“永远”不用担心其他商业笔记收费、倒闭、转换数据、数据安全等烦恼。
  • Python主要定位于编程,而且有超丰富的Library,可以解决很多常见或专业的应用,适合程序员。

对不起没说清楚,我的意思是想直接 Python 写 Vim 的脚本,而不用 Vim 本身的专用脚本语言。因为很多软件都支持多种语言写脚本,我想 Vim 可能也会支持吧。多学一门语言找bug是很痛苦的事情

用Vim做笔记?还能干这个?Vim 能管理大量的独立富格式文本?你是说你这么做?

  • 可以的,Vim的很多插件都是python写的,最好的案例就是国人写的LeaderF,超强大。
  • 最新的 Vim9 Script:A secondary goal is to avoid Vim-specific constructs and get closer to commonly used programming languages, such as JavaScript, TypeScript and Java.
  • 不过你若不想接触Vim原生脚本,或许连Vim本身都玩不转。还是建议放弃。

纯文本(支持markdown等简单的格式,不能算富文本)。只有你想不到,没有做不到。

VimDemo

1 个赞

不抛弃不放弃 :joy: 我还是决定先弄python看看,不行再学原生的。不过据说 NeoVim先进一点,我打算弄这个,弯道超车 :joy:

多谢大神分享这么牛叉的工具!

不好意思,再请教你个问题。如果你用 Vim 替代通用的笔记软件如印象笔记,假设你有10万条笔记,这是不是意味着你将有10万个独立的 html 文件?还是说你把10万条笔记塞到一个上G的文件中,用 Vim 来读写这个文件?如果是后者那岂不相当于你自己在Vim里面写一系列插件重做了一个Vim版的印象笔记?

1 个赞

独立的多个纯文本文件,md格式或其他格式。笔记文件重要的是互相关联和跳转,否则没有意义,因此,具体的文件数量,取决于你如何关联和整理:想独立就独立;不想独立,就在一个文件中分节;再添加必要的目录、Tag等页面。我用过很长时间的OneNote等,最后使用这个自定义方案,核心原因是笔记会随着你的认识更新而被不断整理,现有的商业方案都很难做到这一点(批量处理),最后大都成为垃圾,而我这个自定义方案由于极强的灵活性而获得“永生”,越用越好用,基本每天电脑打开的第一程序大都是Vim。

image

根据需求定义功能,用现成的Vim插件或自定义部分脚本,FYI:

大概明白你的意思了。我相信你用Vim能做到这些,但是这有点像自己造辆车,虽然控制权都在你手里,但是性能和现成的通用软件恐怕还是无法比啊,当年的印象笔记可是拿了几亿美金的风投才干出来的活,就那样也还没舒坦几年

我用印象笔记的,也没有很多人说的那么不堪,它的备份格式非常透明,内容可以轻松提取出来

你把它想复杂了。要知道,我根本就不是程序员,我仅仅是普通用户而已,想明白了就能轻松做到。

不知道你如何定义“性能”。若论速度性能或编辑功能,还没发现哪个编辑器能超过Vim(或许有一两个,但肯定少的可怜)。

缺点也是有的:

image

关于移动设备,我用iphone/Drafts,另一个神器,然后定期导入自己的笔记系统。

1 个赞