我正在研究基于可可的文本编辑器。我应该将其基于NSTextView还是有更高效的选项?请记住,我计划支持制表符,以便可以同时打开许多编辑器。基于可可的文本编辑器的选项
回答
我正在研究基于可可的文本编辑器。我是否应该将其基于NSTextView
是的。
还是有更高效的选择?
没有,假设“效率”包括您自己的时间和精力权衡功能设置要支持,可可的文字系统确实很多你,你会被扔掉,如果你滚你拥有。
一些例子:
- 撤消支持
- 高级编辑(emacs的键)
- 支持输入经理/输入法
- 支持所有Unicode的
- 鼠标选择
- 键盘选择
- 多选 种
- 字体
- 颜色
- 图片
- 听起来
- 查找
- 查找和替换
- 拼写检查
- 语法检查
- 文本替换
- 无障碍
如果你推出自己的产品,你会花费几个月的时间重新开发和调试一些,如果不是大多数(如果不是全部)那些车轮。我称之为效率低下。
与此同时,您已经拥有的文字系统几乎都是快速的。你需要长长的线条(或者许多嵌入的图像/声音)的巨大文本来阻止它。
请记住,我计划支持选项卡,以便可以同时打开许多编辑器。
除非用户打算一次输入所有这些数据,否则我不会看到这会导致性能问题。 0%CPU×N或N-1视图= 0%CPU。
可能有一个问题是内存使用情况,如果文件都很大。他们必须两者都处于极端,因为现在即使是一个普通的Mac也有1吉比特的内存,文本也不重要。
如果是这种情况,那么您只能将最近使用的N个未修改文本保留在内存中,否则只记住选择范围的数组。但99%的时间,交换文本会比将它们全部留在内存中昂贵得多。
NSTextView可能是最简单的方法,如果你想获得大量免费的漂亮功能。它不能做任何事情,但这是一个非常棒的开始。
谢谢,这只是我一直在阅读你应该如何避免为提高效率而创建太多NSView的子类。 – Bret 2010-04-03 22:05:09
user308444:要么你没有看到上下文,要么就是错误。除开发人员时间以外,子类除了开发人员时间以外不需要花费任何成本,除非您(1)在早期iPhone-OS硬件上运行或(2)创建数千个实例。更不用说,当您使用NSTextView时,您不会创建NSView的子类;实际上,任何“更有效的选择”都可能是一个新的子类。更重要的是,正确的顺序是写入,然后配置文件,然后进行优化。优化首先会导致错误的决策和不必要的复杂代码。 – 2010-04-04 05:42:34
- 1. 可编辑QComboBox:与项目文本同步编辑文本
- 2. 基于文本文件的文本编辑器链接
- 3. 基于浏览器的可视化编辑器/设计器?
- 4. 富文本编辑基于Rails的CMS
- 5. 有没有可以用于vue.js的文本编辑器?
- 6. 首选项中的可编辑列表
- 7. GuidedStepFragment选项默认是可编辑的
- 8. TinyMce编辑器中的普通文本编辑器和富文本编辑器选项
- 9. 基于数据属性的X可编辑选择
- 10. 基于PSD的文件的基于Web的油漆编辑器
- 11. 基本的基于网络的视频编辑的当前选项是什么?
- 12. 关于文本编辑器和html输出的基本信息
- 13. 可编辑(jQuery就地编辑器):如何使文本没有被选中,可编辑
- 14. 可编辑文本框
- 15. 可编辑文本高亮
- 16. Popover可编辑文本
- 17. 简单的文本编辑器的JRuby调试器选项
- 18. 是否有基于自举的可视化网页编辑器?
- 19. 关于FCK编辑器的许可证
- 20. 使JTable单元格编辑器值可选,但不可编辑?
- 21. 什么Windows工具/编辑器可用于编辑CWEB文档?
- 22. 可编辑的ListView项目
- 23. 可编辑列的ASP.Net MVC gridView的可能选项
- 24. 独立编辑器,用于编辑Windows/Internet Explorer上的维基文本
- 25. TinyMce编辑器文本框不可编辑
- 26. 文本字段使可编辑,不可编辑使用jquery
- 27. UWP中可编辑的MIDI编辑器
- 28. 基于AJAX的远程在线文本编辑器
- 29. 实时基于Web的富文本编辑器
- 30. 可可文本编辑组件(适用于程序员)
谢谢。我有一种感觉,我是过度思考的事情 – Bret 2010-04-05 14:56:07