J'ai téléchargé un éditeur de sublimetext et je veux savoir quelle bibliothèque GUI y est utilisée.
Les noms de fichiers des fichiers qui se trouvent dans le répertoire des exécutables de l'éditeur sont:
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
Puis-je trouver les informations à partir des noms de fichiers?
Sublime Text 2 est principalement codé en C++ et utilise une boîte à outils d'interface utilisateur personnalisée. Voici l'auteur, Jon Skinner, qui l'explique: http://news.ycombinator.com/item?id=2822114 .
Je continue à vouloir écrire un article de blog avec quelques détails à ce sujet, mais comme pour beaucoup de choses, je finis généralement par coder à la place. Sublime Text 2 est presque entièrement C++ (avec une poignée d'Objective C pour Cocoa et Python pour les plugins). Le codage est généralement assez simple: coder sur une plate-forme (principalement Linux pour le moment, mais Je change souvent de place), puis je m'assure qu'il compile ailleurs. Sublime Text 2 lui-même utilise une boîte à outils d'interface utilisateur personnalisée. Il existe de nombreuses applications où cela peut ne pas avoir de sens, mais ce n'est pas un choix si déraisonnable pour Sublime Text, où J'ai toujours su que de nombreux contrôles de l'interface utilisateur devaient être personnalisés, quelle que soit la boîte à outils (par exemple, le contrôle de texte et les onglets). La boîte à outils de l'interface utilisateur se trouve au-dessus d'une couche d'abstraction multiplateforme, qui est plutôt une union de la fonctionnalité de la plateforme plutôt que du plus petit dénominateur commun.
un peu de recherche sur Google a suggéré d'utiliser l'interface graphique Sublime, qui, à en juger par le paquet source Debian, est écrite en C++.
puis à nouveau, en exécutant strings
sur Linux sublime_text
binaire affiche les bibliothèques partagées suivantes (équivalentes aux DLL Windows) qui pourraient suggérer 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
cela aussi suggère gtk.
Il pourrait ne pas être écrit en Python. La raison pour laquelle vous voyez Python est que les utilisateurs peuvent écrire des scripts/plugins en Pythons pour étendre Sublime Text. Je soupçonne qu'il est écrit en C++ avec GTK comme boîte à outils GUI.