Какая библиотека gui используется sublime text editor?
Я скачал редактор 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
могу ли я найти информацию из имен файлов?
3 ответа:
Sublime Text 2 в основном кодируется на C++ и использует пользовательский инструментарий пользовательского интерфейса. Вот автор, Джон Скиннер, объясняя это: http://news.ycombinator.com/item?id=2822114.
Я продолжаю писать сообщение в блоге с некоторыми подробностями об этом, но как со многими вещами я обычно заканчиваю кодирование вместо этого. Возвышенное Текст 2 - почти полностью C++ (с небольшим количеством Objective C для какао и Python для плагинов). Кодирование, как правило, довольно прямо вперед: код на одной платформе (в основном Linux на данный момент, но я переключаюсь часто), а затем убедитесь, что он по-прежнему компилируется в другом месте. Возвышенный Сам текст 2 использует пользовательский инструментарий пользовательского интерфейса. Есть много приложений, где это может не иметь смысла, но это не такой уж неразумный выбор для Возвышенный текст, где я всегда знал, что многие элементы управления пользовательского интерфейса были придется быть пользовательским независимо от набора инструментов (например, текст элементы управления и вкладки). Инструментарий пользовательского интерфейса находится на вершине креста уровень абстракции платформы, который является скорее объединением платформы функциональность, а не самый низкий общий знаменатель.
немного Гугля предположил, что он использует Sublime GUI, который, судя по исходному пакету Debian, написан на C++.
затем снова, работает
strings
на Linuxsublime_text
binary показывает следующие общие библиотеки (эквивалент DLL Windows), которые могут предложить 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
это предлагает gtk.