diff --git a/capa/ida/explorer/model.py b/capa/ida/explorer/model.py index ba472644..69e91272 100644 --- a/capa/ida/explorer/model.py +++ b/capa/ida/explorer/model.py @@ -383,6 +383,8 @@ class CapaExplorerDataModel(QtCore.QAbstractItemModel): if isinstance(feature, string_view): # TODO: move string collection to item constructor if isinstance(feature, capa.engine.Regex): + # rstrip "matched="")" because data already displayed in interface + name = name.split(',')[0] + ')' return CapaExplorerStringViewItem(parent, name, ea, feature.match) if isinstance(feature, capa.features.Characteristic): diff --git a/capa/ida/ida_capa_explorer.py b/capa/ida/ida_capa_explorer.py index c322a274..fb2759ec 100644 --- a/capa/ida/ida_capa_explorer.py +++ b/capa/ida/ida_capa_explorer.py @@ -351,6 +351,8 @@ class CapaExplorerForm(idaapi.PluginForm): self._model_data.render_capa_results(rules, capabilities) self._render_capa_summary(rules, capabilities) + self._view_tree.sortByColumn(CapaExplorerDataModel.COLUMN_INDEX_RULE_INFORMATION, Qt.AscendingOrder) + logger.info('render views completed.') def _render_capa_summary(self, ruleset, results):