崇高的文本编辑器使用什么gui库?

Fre*_*ind 60 python user-interface sublimetext

我已经下载了一个sublimetext的编辑器,我想知道那里使用的GUI库.

编辑器可执行文件目录中的文件的文件名是:

bz2.pyd
Microsoft.VC90.CRT.manifest   
msvcp90.dll
msvcr90.dll                   
PackageSetup.py
PackageSetup.pyc              
pyexpat.pyd                   
python26.dll
python26.zip                  
select.pyd
sublimeplugin.py              
sublimeplugin.pyc
sublimetext.exe               
unicodedata.pyd
unins000.dat                  
unins000.exe
_ctypes.pyd                   
_elementtree.pyd
_hashlib.pyd                  
_socket.pyd
_ssl.pyd     
Run Code Online (Sandbox Code Playgroud)

我可以从文件名中找到信息吗?

Hug*_*ugo 130

Sublime Text 2主要使用C++编写,并使用自定义UI工具包.以下是作者Jon Skinner解释它:http://news.ycombinator.com/item?id = 2822114.

我一直想写一篇博文,其中有一些细节,但与许多事情一样,我通常最终编码.Sublime Text 2几乎完全是C++(Cocoa的目标C和插件的Python很少).编码通常是相当简单的:一个平台上的代码(目前主要是Linux,但我经常切换),然后确保它仍在其他地方编译.Sublime Text 2本身使用自定义UI工具包.有很多应用程序可能没有意义,但对于Sublime Text来说,这不是一个不合理的选择,我总是知道很多UI控件都必须是自定义的,无论工具包如何(例如,文本控件和选项卡控件).UI工具包位于跨平台抽象层之上,它更像是平台功能的联合而不是最低的共同标准.

  • 来自Sublime 2的作者:_"Sublime Text 2本身使用自定义UI工具包"_,我们知道它是一个自定义UI.并且,基于Sublime 2库和错误消息,我们可以收集_"自定义UI"_基于GTK(至少部分). (11认同)
  • 几周前,我在 HackerNews 上读到(我认为是在 Sublime Merge 发布公告中),自定义 UI 工具包基于 [Skia](https://skia.org/)。 (2认同)

jco*_*ctx 25

一个小小的谷歌搜索建议它使用Sublime GUI,由Debian源代码包判断是用C++编写的.

然后再次,strings在Linux sublime_text二进制文件上运行显示以下共享库(相当于Windows DLL)可能建议gtk:

/lib/ld-linux.so.2
libgtk-x11-2.0.so.0
libgdk-x11-2.0.so.0
libatk-1.0.so.0
libgio-2.0.so.0
libpangoft2-1.0.so.0
libpangocairo-1.0.so.0
libgdk_pixbuf-2.0.so.0
libcairo.so.2
libpng12.so.0
libpango-1.0.so.0
libfreetype.so.6
libfontconfig.so.1
libgobject-2.0.so.0
libgmodule-2.0.so.0
libgthread-2.0.so.0
librt.so.1
libglib-2.0.so.0
libpthread.so.0
libdl.so.2
libutil.so.1
libm.so.6
libX11.so.6
libstdc++.so.6
libgcc_s.so.1
libc.so.6
libgio-2.0.so
libgio-2.0.so.0
module.so
Run Code Online (Sandbox Code Playgroud)

这也暗示了gtk.


jem*_*hsu 15

它可能不是用Python编写的.您看到Python代码的原因是用户可以在Pythons中编写脚本/插件来扩展Sublime Text.我怀疑它是用C++编写的,GTK是GUI工具包.