当前位置:  开发笔记 > 运维 > 正文

跨平台编辑器控制

如何解决《跨平台编辑器控制》经验,为你挑选了0个好方法。

我需要一个跨平台的编辑器控件,以便在内部工具中用作GUI部件.控制可能是商业性的,但价格合理.

所需功能:

平台:Win32,OS X,Linux

UTF-8支持

对文本样式(或至少颜色)进行细粒度的运行时控制

漂亮的低级普通C API没有通常可怕的膨胀

不应该阻止我拥有这些功能(即使我必须自己实现):

撤销重做

复制粘贴

上下文菜单,取决于文本中的单击位置

工具栏,取决于文本中的光标位置

侧栏面板,取决于文本中的光标位置

实际上上面不需要简单的控制,而是整个跨平台的GUI库.

丢弃的选项:

Scintilla和后代

FLTK

福克斯的工具包

gtksourceview

更新:

注意:我在这里写了一些半写的丢弃推理,我道歉.Scintilla确实可以在OS X上运行.但是,如果我能正确使用它,Scintilla的API就是用C++编写的.

用例:

我的用例是编写自定义的"半刚性"逻辑编辑器,用户可以自由地复制粘贴,在他希望的地方添加注释,甚至可以直接输入文本.但是文本结构是逻辑树的一种严格的自然语言表示(在某种程度上类似于AST).我打算写一些类似intellisense(或类似代码模板)的东西用作主要的创作工具(而不是手工输入逻辑).

顺便说一句,存储格式不是纯文本,而是提到的逻辑树的内部表示(带有注释和空格等元数据).

因此,我拥有所有必要的信息来自己呈现所需颜色的文本.我不需要任何外部词法分析器等.

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有