Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Bono [ Bookmarks + Notes ] ToolsNew to Visual Studio Code? Get it now.
Bono [ Bookmarks + Notes ] Tools

Bono [ Bookmarks + Notes ] Tools

HB24

|
2 installs
| (0) | Free
Bono - OverEngineered Extension for Bookmarks and Notes. Advanced bookmark manager with groups, colors, notes, drag-and-drop, gutter icons, line highlights, and tree view organization for VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Bono [Bookmarks + Notes] for VS Code

VS Code Compatibility Extension Type

Bono is a overengineered VS Code extension for bookmarking important code lines and attaching notes to them. It helps you organize bookmarks into groups and sub-groups, add workflow statuses to notes, customize gutter icons and line highlights, and navigate back to the correct code even after common edits and line shifts.


Features at a Glance

Feature What it does
Line bookmarks Mark important lines and jump back to them quickly.
Context-aware tracking Helps bookmarks follow code when lines move or files change.
Structural matching Improves tracking in XML, HTML, JSX/TSX, JSON, YAML, Markdown, and common code files.
Multi-line bookmarks Bookmark a block or multiple selected lines.
Diff editor bookmarks Bookmark lines in VS Code compare/diff editors and reopen the correct side.
Groups and sub-groups Organize bookmarks into folders like Todo, Fix, Review, or Feature/Auth/API.
Workspace-aware active groups In multi-root workspaces, each folder can keep its own active group.
Notes Attach notes to bookmarks and edit them in the Notes Manager or note preview.
Note statuses Mark notes as In Queue, WIP, Blocked, Completed, Drafted, or Deleted.
Drafts and recycle bin Preserve or recover note data based on your deletion policy.
Colors and gradients Use solid colors, CSS linear gradients, built-in themes, or custom palettes.
Custom gutter icons Choose built-in icons, 3D/outline/border variants, dynamic note overlays, or custom SVGs.
Pin and hide Pin important groups/bookmarks/notes or hide bookmark decorations temporarily.
Tree cut/paste and reordering Reorder and move bookmarks or groups from Bono tree views.
Undo/redo in tree views Undo and redo supported bookmark, group, and tree operations.
Export/import Backup and restore bookmarks and notes through JSON commands.

How to Use Bono

Toggle a Bookmark

  1. Open any file in VS Code.
  2. Put the cursor on the line you want to bookmark.
  3. Run BN: Toggle Bookmark from the Command Palette or press:
Windows/Linux macOS
Ctrl+Alt+K Cmd+Alt+K

Run the same command again on the bookmarked line to remove it.


Navigate Between Bookmarks

Use keyboard shortcuts:

Action Windows/Linux macOS
Next bookmark F8 F8
Previous bookmark Shift+F8 Shift+F8
Open selected bookmark from tree Enter Enter

Navigation can stay in the same file or jump across files depending on:

{
  "bonoExtension.allowCrossFileJump": true
}

Create and Use Groups

Groups let you organize bookmarks by task, feature, bug, review, or priority.

Common examples:

Todo
Fix
Review
Feature/Auth
Feature/Auth/API
Feature/Auth/UI

How to use:

  1. Open the Bookmarks view.
  2. Create a group using BN: Create Group.
  3. Select a group as active using BN: Set Active Group.
  4. New bookmarks are added to the active group.
  5. Use BN: Create Sub-group to create nested folders.
  6. Use move/rename/delete/pin/hide commands from the tree item context menu.

The active group is shown with the configured marker, default:

{
  "bonoExtension.activeGroupMarker": "⭐"
}

Move, Reorder, Cut, and Paste Tree Items

Inside Bono tree views:

Action Shortcut
Rename selected item F2
Delete selected item Delete
Cut selected item Ctrl+X / Cmd+X
Paste selected item Ctrl+V / Cmd+V
Undo tree operation Ctrl+Z / Cmd+Z
Redo tree operation Ctrl+Y or Ctrl+Shift+Z

Supported tree workflows include moving bookmarks between groups, reordering bookmarks, reordering groups, and working with nested group folders.


Add Notes to Bookmarks

A bookmark can have a note attached to it.

Common ways to work with notes:

  1. Select a bookmark in the tree.
  2. Run BN: Open Notes Manager (Bookmark).
  3. Add or edit the note text.
  4. Set a workflow status such as WIP, Blocked, or Completed.
  5. Use the Notes Manager to search, filter, edit, restore, or delete notes.

Notes can be edited inline in the sidebar preview or in a side-by-side editor depending on:

{
  "bonoExtension.notesEditMode": "inline"
}

Use Note Statuses

Default note statuses:

Value Label Abbreviation Meaning
inQueue In Queue Q Queued for future work.
wip WIP WIP Work in progress.
blocked Blocked BLK Waiting on dependency or decision.
completed Completed OK Finished.
drafted Drafted DRF Detached note saved for recovery.
deleted Deleted DEL Deleted or no longer active.

Useful status settings:

{
  "bonoExtension.notes.defaultStatus": "inQueue",
  "bonoExtension.notes.enableStatus": true,
  "bonoExtension.notes.statusDisplay": "abbreviation"
}

Recover Notes with Drafts and Recycle Bin

Bono can protect note data when bookmarks or source lines are removed.

Deletion policy setting:

{
  "bonoExtension.notes.deletionPolicy": "preserveAndAutoRelink"
}

Options:

Policy Behavior
preserveAndAutoRelink Keeps note data as a recoverable draft and tries to reconnect it later.
moveToRecycleBin Moves note/bookmark data into the recycle bin.
deletePermanently Permanently removes the data.

Recycle bin retention:

{
  "bonoExtension.notes.recycleBinRetentionSeconds": 2592000
}

Set it to 0 to disable automatic recycle-bin cleanup.


Search Bookmarks

Use these commands:

Command What it searches
Search Active Group Bookmarks Bookmarks inside the active group view.
Search All Bookmarks Bookmarks across workspace/group views.

Shortcut in Bono tree views:

Windows/Linux macOS
Ctrl+F Cmd+F

Export and Import

Use export/import when you want to backup, transfer, or restore your bookmark and note data.

Command Purpose
Export Bookmarks Save bookmarks/groups/colors/order to JSON.
Import Bookmarks Restore bookmark data from JSON.
Export Notes Save note data to JSON.
Import Notes Restore note data from JSON.

Bookmark Tracking Settings

These settings control how Bono keeps bookmarks attached to the right line.

{
  "bonoExtension.bookmarkThisLine": true,
  "bonoExtension.bookmarks.smartStructuralContext": true
}
Setting Default Description
bonoExtension.bookmarkThisLine true Enables context-aware line tracking.
bonoExtension.bookmarks.smartStructuralContext true Uses structural identity matching for XML, HTML, JSX/TSX, JSON, YAML, Markdown, and code files.

Navigation Settings

{
  "bonoExtension.scrollAnimation": "all",
  "bonoExtension.horizontalScrollOnJump": "dynamic",
  "bonoExtension.flashHighlight": true,
  "bonoExtension.allowCrossFileJump": true
}
Setting Default Options
bonoExtension.scrollAnimation "all" "none", "sameFileOnly", "all"
bonoExtension.horizontalScrollOnJump "dynamic" "dynamic", "keep"
bonoExtension.flashHighlight true true, false
bonoExtension.allowCrossFileJump true true, false

Group and Tree Settings

{
  "bonoExtension.sidebarUI": "workspace",
  "bonoExtension.viewLocation": "sidebar",
  "bonoExtension.activeGroupMarker": "⭐",
  "bonoExtension.hiddenGroupDisplay": "both",
  "bonoExtension.treeIndent": 8
}
Setting Default Description
bonoExtension.sidebarUI "workspace" Use "workspace" for a unified tree or "tree" for separate group/bookmark views.
bonoExtension.viewLocation "sidebar" Show Bono in the custom Activity Bar sidebar or in Explorer.
bonoExtension.activeGroupMarker "⭐" Marker shown next to the active group. Empty string hides it.
bonoExtension.hiddenGroupDisplay "both" Show hidden groups with icon, text, or both.
bonoExtension.treeIndent 8 Tree indentation in pixels. This uses VS Code's global tree indentation setting.

Default groups:

{
  "bonoExtension.defaultGroups": [
    { "name": "Todo", "color": "#29B6F6" },
    { "name": "Fix", "color": "#FF7043" },
    { "name": "Review", "color": "#AB47BC" }
  ]
}

Color and Theme Settings

Bono supports hex colors and CSS linear gradients.

{
  "bonoExtension.groupColors": {
    "Fix": "#FF7043",
    "Review": "linear-gradient(90deg, #7c4dff, #00b8d4)"
  },
  "bonoExtension.colorTheme.active": "none",
  "bonoExtension.colorTheme.showBuiltinThemes": true,
  "bonoExtension.colorTheme.updateDefaultColors": true
}
Setting Default Description
bonoExtension.groupColors {} Per-group color or gradient overrides.
bonoExtension.defaultColors Built-in palette Color sequence used for new groups.
bonoExtension.customColorThemes [] User-defined color themes.
bonoExtension.colorTheme.active "none" Active built-in color theme.
bonoExtension.colorTheme.showBuiltinThemes true Show built-in themes in the theme picker.
bonoExtension.colorTheme.updateDefaultColors true Applying a theme also updates future default group colors.

Built-in theme families include:

Default Pastels
Ocean Breeze
Sunset Glow
Forest
Galaxy
Neon Night
Monochrome
Candy
Fire & Ice
Aurora Borealis
Autumn Harvest
Tropical
Aurora Gradients
Sunset Gradients
Ocean Gradients

Line Highlight Settings

{
  "bonoExtension.lineHighlight": true,
  "bonoExtension.lineHighlightStyle": "outline",
  "bonoExtension.opacity": 0.3,
  "bonoExtension.opacityStep": 0.05
}
Setting Default Options
bonoExtension.lineHighlight true Enable or disable bookmark line highlighting.
bonoExtension.lineHighlightStyle "outline" "background", "left-border", "underline", "outline", "overview-ruler", "gutter"
bonoExtension.opacity 0.3 Highlight opacity from 0 to 1.
bonoExtension.opacityStep 0.05 Step used by transparency increase/decrease commands.

Commands:

Command Purpose
BN: Increase Bookmark Transparency Makes highlight more transparent.
BN: Decrease Bookmark Transparency Makes highlight less transparent.

Gutter Icon Settings

{
  "bonoExtension.gutterIcon.bookmark": "ribbon",
  "bonoExtension.gutterIcon.note": "note",
  "bonoExtension.gutterIcon.bookmarkWithNote": "dynamic-notes-icon",
  "bonoExtension.gutterIcon.customMode": "single",
  "bonoExtension.gutterIcon.customSvg": "",
  "bonoExtension.gutterIcon.customGroupSvgs": {}
}

Bookmark icon options:

ribbon
star
tag
heart
ribbon3d
star3d
tag3d
heart3d
ribbonOutline
starOutline
tagOutline
heartOutline
ribbonBorder
starBorder
tagBorder
heartBorder
custom

Note icon options:

note
note3d
noteOutline
noteBorder
custom
dynamic
dynamic-notes-icon

Bookmark-with-note icon options include the bookmark icon options plus:

dynamic
dynamic-notes-icon

Custom SVG example:

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="16" height="16">
  <path fill="{color}" d="M12 2l3.09 6.26L22 9.27l-5 4.87L18.18 22 12 18.56 5.82 22 7 14.14l-5-4.87 6.91-1.01z"/>
</svg>

Use {color} to inject the group color.


Tree Icon and Hover Settings

{
  "bonoExtension.showBookmarkIconInTree": true,
  "bonoExtension.showGroupIconInTree": true,
  "bonoExtension.showBookmarkHover": true
}
Setting Default Description
bonoExtension.showBookmarkIconInTree true Show bookmark icons in tree views.
bonoExtension.showGroupIconInTree true Show group icons in tree views.
bonoExtension.showBookmarkHover true Show note/actions hover on bookmarked editor lines.

Inline Action Settings

Choose which buttons appear inline on tree items. Actions not shown inline remain available from menus/commands.

{
  "bonoExtension.bookmarkInlineActions": ["rename", "delete"],
  "bonoExtension.groupInlineActions": ["moveUp", "moveDown", "hide"]
}

Bookmark inline action options:

notes
delete
rename
moveUp
moveDown
hide

Group inline action options:

moveUp
moveDown
hide
rename
delete
notes
color

Notes Manager Settings

{
  "bonoExtension.notesEditMode": "inline",
  "bonoExtension.autoSaveNotes": false,
  "bonoExtension.notes.lineHighlight": true,
  "bonoExtension.notes.cursorHighlight": false,
  "bonoExtension.notesManager.showLocation": true,
  "bonoExtension.notesManager.showLinkedLine": true,
  "bonoExtension.notesManager.showCodePreview": true,
  "bonoExtension.notesManager.showCardShadows": true,
  "bonoExtension.notesManager.hoverColor": "blue",
  "bonoExtension.notesManager.saveCodeLensStyle": "autosave"
}
Setting Default Options / Description
bonoExtension.notesEditMode "inline" "inline" or "sideBySide".
bonoExtension.autoSaveNotes false Save note changes while typing.
bonoExtension.notes.lineHighlight true Show editor line highlight for Notes Manager notes.
bonoExtension.notes.cursorHighlight false Highlight bookmarked line under cursor when enabled.
bonoExtension.notesManager.showLocation true Show source file and line information.
bonoExtension.notesManager.showLinkedLine true Show linked line reference and content preview.
bonoExtension.notesManager.showCodePreview true Show code preview inside expanded cards.
bonoExtension.notesManager.showCardShadows true Enable note card shadows.
bonoExtension.notesManager.hoverColor "blue" "blue" or "group".
bonoExtension.notesManager.saveCodeLensStyle "autosave" "autosave", "universal", "individual", "both".

Note Status Settings

You can customize the status list.

{
  "bonoExtension.notes.statuses": [
    {
      "value": "inQueue",
      "label": "In Queue",
      "icon": "circle-outline",
      "abbreviation": "Q",
      "symbol": "○",
      "color": "#78909c",
      "description": "Queued for future work."
    },
    {
      "value": "wip",
      "label": "WIP",
      "icon": "sync",
      "abbreviation": "WIP",
      "symbol": "↻",
      "color": "#ffb300",
      "description": "Work in progress."
    }
  ],
  "bonoExtension.notes.defaultStatus": "inQueue",
  "bonoExtension.notes.enableStatus": true,
  "bonoExtension.notes.statusDisplay": "abbreviation"
}

Status object fields:

Field Meaning
value Internal value stored on the note.
label Human-readable label.
icon VS Code codicon name without $().
abbreviation Short display text.
symbol Compact symbol.
color Hex badge color.
description Explanation shown in pickers/settings.

Display Template Settings

Bono lets you customize bookmark labels in tree views.

{
  "bonoExtension.workspaceBookmarkTemplate": "{ifText:{text}}{ifNotText:{fileName}:{lineNo} {content}} | {ifNote:📝 {note}}",
  "bonoExtension.activeBookmarkTemplate": "{prefix}{lineNo} {content} | {ifNote:📝 {note}}"
}

Placeholders:

Placeholder Meaning
{prefix} Line prefix such as ↳, L, or 📌.
{lineNo} Source line number or multi-line range.
{fileName} File basename.
{filePath} Workspace-relative path.
{content} Bookmarked source line text.
{text} Custom bookmark label.
{note} First line of the attached note.
{noteIcon} Note icon shorthand.

Conditional blocks:

{ifText:{text}}
{ifNotText:{fileName}:{lineNo} {content}}
{ifNote:📝 {note}}
{ifNotNote:No note}

Command Reference

Command ID Title Use
bn.toggleBookmark BN: Toggle Bookmark Add/remove a bookmark on the current line.
bn.clearBookmarks BN: Clear All Bookmarks Clear bookmarks in the active group.
bn.clearWorkspaceBookmarks BN: Clear All Workspace Bookmarks Clear all workspace bookmarks.
bn.openBookmark BN: Open Bookmark Open selected bookmark.
bn.removeBookmark BN: Remove Bookmark Remove selected bookmark.
bn.setActiveGroup BN: Set Active Group Set selected group as active.
bn.createGroup BN: Create Group Create a group.
bn.createSubGroup Create Sub-group Create a nested group.
bn.renameGroup BN: Rename Group Rename a group.
bn.setGroupColor BN: Set Group Color or Gradient Set group color or gradient.
bn.pinGroup / bn.unpinGroup Pin Group / Unpin Group Pin or unpin group.
bn.deleteGroup BN: Delete Group Delete group.
bn.clearGroupBookmarks BN: Clear All Bookmarks in Group Clear bookmarks in a group.
bn.moveBookmarkToGroup BN: Send To... Move bookmark to another group.
bn.renameBookmark BN: Rename Bookmark Set custom bookmark label.
bn.pinBookmark / bn.unpinBookmark Pin Bookmark / Unpin Bookmark Pin or unpin bookmark.
bn.pinBookmarkNote / bn.unpinBookmarkNote Pin Note / Unpin Note Pin or unpin bookmark note.
bn.setNoteStatus BN: Set Note Status Change note status.
bn.nextBookmark / bn.prevBookmark BN: Next Bookmark / BN: Previous Bookmark Navigate between bookmarks.
bn.toggleCrossFileJump BN: Toggle Cross-File Jump Toggle cross-file navigation.
bn.increaseBookmarkTransparency BN: Increase Bookmark Transparency Increase highlight transparency.
bn.decreaseBookmarkTransparency BN: Decrease Bookmark Transparency Decrease highlight transparency.
bn.moveBookmarkUp / bn.moveBookmarkDown Move Up / Move Down Reorder bookmark.
bn.moveGroupUp / bn.moveGroupDown Move Group Up / Move Group Down Reorder group.
bn.hideBookmark / bn.unhideBookmark Hide Bookmark / Unhide Bookmark Hide/reveal bookmark.
bn.hideGroupBookmarks / bn.unhideGroupBookmarks Hide Bookmarks / Unhide Bookmarks Hide/reveal group bookmarks.
bn.toggleShowHiddenBookmarks Toggle Hidden Bookmarks Visibility Show/hide hidden bookmarks in views.
bn.exportBookmarks / bn.importBookmarks Export Bookmarks / Import Bookmarks Backup/restore bookmarks.
bn.exportNotes / bn.importNotes Export Notes / Import Notes Backup/restore notes.
bn.openNoteRecycleBin BN: Open Notes Manager (Recycle Bin) Open recycled notes.
bn.emptyNoteRecycleBin BN: Empty Note Recycle Bin Empty recycled notes.
bn.showAllBookmarks Search All Bookmarks Search all bookmarks.
bn.searchActiveGroupBookmarks Search Active Group Bookmarks Search active group bookmarks.
bn.addBookmarkNote BN: Open Notes Manager (Bookmark) Add/edit bookmark note.
bn.deleteBookmarkNote BN: Delete Note (Bookmark) Delete bookmark note.
bn.editActiveNote Edit Note Edit preview note.
bn.saveActiveNote Save Note Save preview note.
bn.cancelActiveNoteEdit Cancel Edit Cancel preview note edit.
bn.editNotesInFile BN: Edit Notes in Editor Edit notes in editor.
bn.saveBulkNote BN: Save Note in Editor Save one bulk note.
bn.saveAllBulkNotes BN: Save All Notes in Editor Save all bulk notes.
bn.applyColorTheme BN: Apply Color Theme Apply color theme.
bn.treeRename BN: Rename Selected (F2) Rename selected tree item.
bn.treeDelete BN: Delete Selected (Del) Delete selected tree item.
bn.treeCut BN: Cut Selected (Ctrl+X) Cut selected tree item.
bn.treePaste BN: Paste Here (Ctrl+V) Paste cut tree item.
bn.undo / bn.redo BN: Undo / BN: Redo Undo/redo tree operation.
bn.uploadCustomGutterIcon Customize Gutter Icons... Configure custom gutter icons.
bn.refreshDecorationsFromConfig BN: Refresh Decorations from Config Refresh icon/highlight settings.
bn.openBookmarkSettingsMenu BN: Open Bookmark Settings Menu Open bookmark settings menu.

Keyboard Shortcuts

Shortcut macOS Command Context
Ctrl+Alt+K Cmd+Alt+K Toggle Bookmark Editor
F8 F8 Next Bookmark Editor
Shift+F8 Shift+F8 Previous Bookmark Editor
Ctrl+F Cmd+F Search bookmarks Bono tree views
Enter Enter Open Bookmark Bono tree views
F2 F2 Rename selected item Bono tree views
Delete Delete Delete selected item Bono tree views
Ctrl+X Cmd+X Cut tree item Bono tree views
Ctrl+V Cmd+V Paste tree item Bono tree views
Ctrl+Z Cmd+Z Undo Bono tree views
Ctrl+Y / Ctrl+Shift+Z Cmd+Y / Cmd+Shift+Z Redo Bono tree views

Deprecated / Compatibility Settings

These settings still exist for compatibility, but new users should prefer the newer settings shown above.

Deprecated setting Prefer
bonoExtension.defaultIcon bonoExtension.gutterIcon.bookmark
bonoExtension.customGroupIconSvg bonoExtension.gutterIcon.customSvg or bonoExtension.groupIcons
bonoExtension.customIcon.bookmark bonoExtension.gutterIcon.customSvg
bonoExtension.customIcon.note bonoExtension.gutterIcon.customSvg
bonoExtension.customIcon.bookmarkWithNote bonoExtension.gutterIcon.bookmarkWithNote
bonoExtension.activeGroupInlineActions bonoExtension.bookmarkInlineActions
bonoExtension.workspaceInlineActions bonoExtension.bookmarkInlineActions
bonoExtension.bookmarkLineDeletionBehavior bonoExtension.notes.deletionPolicy
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft