Skip to content

feat(notification): allow customizable notification message #6

@CalvinAllen

Description

@CalvinAllen

Summary

Allow users to customize the notification message text via settings, with support for placeholder variables.

Motivation

Different developers have different preferences:

  • Some want minimal: "BP Hit"
  • Some want detailed: "Breakpoint triggered - time to check the debugger!"
  • Some want context: "{file}:{line} - Breakpoint Hit"

Implementation

Add a settings field for custom message format with placeholder support.

Available Placeholders

Code context:

  • {file} - File name (e.g., "UserService.cs")
  • {filepath} - Full file path
  • {line} - Line number
  • {method} - Method name
  • {class} - Class/type name
  • {namespace} - Namespace
  • {project} - Project name

Breakpoint metadata:

  • {hitcount} - How many times this breakpoint has been hit this session
  • {condition} - The condition expression (if conditional breakpoint)
  • {label} - User-assigned breakpoint label/name

Session/timing:

  • {time} - Current time (HH:mm:ss)
  • {elapsed} - Time since debug session started
  • {delta} - Time since last breakpoint hit

Process/thread:

  • {process} - Process name
  • {pid} - Process ID
  • {thread} - Thread name or ID

Environment:

  • {solution} - Solution name
  • {config} - Build configuration (Debug/Release)
  • {branch} - Current git branch

Default

Breakpoint Hit! (current behavior)

Example Custom Formats

  • {file}:{line} → "UserService.cs:42"
  • Breakpoint in {method} → "Breakpoint in GetUserById"
  • [{time}] BP: {file}:{line} → "[14:32:05] BP: UserService.cs:42"
  • [{branch}] {class}.{method} → "[feature/auth] UserService.GetUserById"
  • Hit #{hitcount}: {file}:{line} → "Hit Welcome to VS-BreakpointNotifier Discussions! #3: UserService.cs:42"

Considerations

  • Gracefully handle missing placeholder values (show empty string or placeholder name)
  • Provide a reasonable default
  • Works in combination with notification style toggle (MessageBox/Toast/Both)
  • Depends on Show file and line number in breakpoint notification #5 for extracting contextual info

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions