我正在研究基于可可的文本编辑器。我应该将其基于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. 基于文本的选项选择器
- 2. 日期选择器文本框编辑不可编辑
- 3. 可编辑QComboBox:与项目文本同步编辑文本
- 4. 基于列表的可编辑gridview
- 5. 基于文本文件的文本编辑器链接
- 6. 基于浏览器的可视化编辑器/设计器?
- 7. 可编辑动态js中的文本选项
- 8. 多行可编辑的文本片段:可编辑的UILabel?
- 9. 富文本编辑基于Rails的CMS
- 10. 有没有可以用于vue.js的文本编辑器?
- 11. GuidedStepFragment选项默认是可编辑的
- 12. 首选项中的可编辑列表
- 13. 如何使eclipse编辑器的标题文本可选?
- 14. 禁用可编辑文本 - 它不应该是可编辑的
- 15. 围绕Java中的不可编辑文本编辑可编辑的JTextArea
- 16. 可选但不可编辑的html文本字段
- 17. 如何使可编辑的textarea文本不可选
- 18. TinyMce编辑器中的普通文本编辑器和富文本编辑器选项
- 19. 基于Web的PDF文档编辑器
- 20. 可自定义的基于Web的编辑器?
- 21. 基于数据属性的X可编辑选择
- 22. 基于PSD的文件的基于Web的油漆编辑器
- 23. 关于文本编辑器和html输出的基本信息
- 24. 基本的基于网络的视频编辑的当前选项是什么?
- 25. 可编辑(jQuery就地编辑器):如何使文本没有被选中,可编辑
- 26. 可编辑文本字段
- 27. 可编辑文本高亮
- 28. 可编辑文本框
- 29. 可编辑文本块
- 30. Popover可编辑文本
谢谢。我有一种感觉,我是过度思考的事情 – Bret 2010-04-05 14:56:07