Vector35 / Vector35/binaryninja-api

Support different colors for comments

Open
#5,251 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Component: Core Component: UI Effort: Low Impact: Low
Dominant language
C++
Stars
1.3k
Forks
298
Avg merge
5d 5h
Merged PRs (30d)
19

Description

Discussed in https://github.com/Vector35/binaryninja-api/discussions/5243

Originally posted by utkonos April 6, 2024
As I go through my RE process, I make comments about what I think the malware sample is doing. The first pass is typically heavy with hypotheses rather than definitive descriptions of what the malware capabilities and behavior are. As my process advances, I return to older comments and edit, tighten, adjust, and finalize them.

Today, all comments are the same color.

It would be helpful to be able to change the color of a particular comment. I would be able to have a "draft/hypothetical" comment color which I would have as the default color. And then I would be able to change the color of comments that I have finalized. Having multiple colors would make differentiating among comment types much easier.

Thougts on implementation:

  1. There should be a configuration setting for the default color. The default would be today's comment color so as to not interrupt any other users' processes and expectations.
  2. One wants comments to be visually unobtrusive like comments are now. Therefore the color palate for comments should only be slightly different than the color they are now. It should be just enough for visual differentiation but not so much that they distract from the disassembly or IL etc.
  3. In the Enter Comment popup, at the bottom, there should be a color selector. The selector would be set to the configuration's default set in Preferences. One can change the selector to a different color for the comment being edited.
  4. There should be API extensions (optional parameters to current functions) for creating and editing a comment via API. This would allow me to make right click plugin menu items like "Finalize Comment" that fit my process, allowing me to change the color of a comment however I need.

Thoughts?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points; start by locating comment creation and editing, Preferences, and the Enter Comment popup in the Binary Ninja API and UI. Done would require configurable and per-comment colors plus the proposed API support, while preserving the current default appearance.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
api, desktop-dev, reverse-engineering
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.