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
ファイル名から情報を見つけることができますか?
Sublime Text 2は、ほとんどがC++でコーディングされており、カスタムUIツールキットを使用しています。これを説明している著者のJon Skinnerが http://news.ycombinator.com/item?id=2822114 です。
私はこれについていくつかの詳細を記したブログ投稿を書くことを意味し続けていますが、多くのことと同様に、通常は代わりにコーディングすることになります。 Sublime Text 2はほぼ完全にC++です(CocoaのObjective Cの一部とPythonプラグインの場合)。コーディングは一般的にかなり単純です。1つのプラットフォーム上のコード(現時点ではほとんどLinuxですが、 Sublime Text 2自体はカスタムUIツールキットを使用します。これが意味をなさないかもしれないアプリはたくさんありますが、Sublime Textにとってそれほど不合理な選択ではありません。 UIコントロールの多くは、ツールキット(テキストコントロールやタブコントロールなど)に関係なくカスタムにする必要があることを常に知っていました。UIツールキットは、クロスプラットフォームの抽象化レイヤーの上にあります。最小公分母ではなくプラットフォーム機能の。
少しのグーグルは、Sublime GUIを使用していることを示唆しました。これは、Debianソースパッケージによる判断はC++で書かれています。
次に、Linuxでstrings
を実行しますsublime_text
バイナリは、gtkを示唆する可能性のある次の共有ライブラリ(Windows DLLと同等)を示します。
/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を提案します。
Pythonで書かれていない可能性があります。 Pythonコードが表示される理由は、ユーザーがPythonでスクリプト/プラグインを記述してSublime Textを拡張できるためです。GUIツールキットとしてGTKを使用したC++で記述されていると思われます。