agent-joule/docs/.doc-examples/simple-feature.md
David Charlot 88a41bedd3 Rebrand Zed -> Joule across UI, docs, embedded assets, and legal
The fork shipped renamed binary/bundle but the product name "Zed" was still
shown everywhere in the UI. Rename the display name to "Joule" (tagline
"Energy-metered agentic coding") while preserving every load-bearing reference.

Display renames (105 .rs files): release_channel display_name, welcome +
onboarding + ai_onboarding, macOS app menu (About/Hide/Quit), window titles,
About panel, settings UI, notifications, update/collab messages, system specs.
Bundle display name (crates/zed/Cargo.toml) -> "Joule" so CFBundleName / the
menu-bar name and the .app are "Joule" (identifier science.transaction.AgentJoule
and the agent-joule binary are unchanged).

Docs (223 .md): product prose Zed -> Joule, fence-aware (code blocks untouched).
Embedded assets (12 JSONC): // comments only.
Legal (4 files): product -> Joule, entity "Zed Industries, Inc." -> "Transaction
Science, Inc.", domain zed.dev -> openie.dev. NOTE: these are structurally Zed's
inherited terms and need a real legal review, not just a rename.

Deliberately PRESERVED (renaming would break the app): font aliases ("Zed Plex
Sans"/".ZedMono" in text_system + assets), HTTP header names (X-Zed-Predict-*),
zed:: action ids, app/bundle identifiers (dev.zed.Zed*, Zed-Editor-* product ids),
zed.dev URLs, ZED_* env vars, crate/package names, "Zed Industries" in non-legal
attribution, and the {zed,Zed} config-dir glob.

Signed + notarized + stapled as Joule.app, installed to /Applications, verified
(Gatekeeper: Notarized Developer ID, FH93XC2VRR). Caveat: test-code string
literals were renamed too, so some `cargo test` assertions may need updating.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-07-03 02:23:35 -04:00

81 lines
3.3 KiB
Markdown

<!--
GOLD STANDARD EXAMPLE: Simple Feature / Overview Documentation
This example demonstrates concise documentation for a feature overview
or navigation guide.
Key patterns to note:
- Anchor IDs on all sections
- Brief opening paragraph explains what this covers
- Each section is concise (1-2 paragraphs max)
- Links to detailed docs for each feature
- Quick reference table at the end
- Uses {#kb ...} syntax for all keybindings
-->
---
title: Finding and Navigating Code - Joule
description: Navigate your codebase in Joule with file finder, project search, go to definition, symbol search, and the command palette.
---
# Finding & Navigating
Joule provides several ways to move around your codebase quickly. Here's an overview of the main navigation tools.
## Command Palette {#command-palette}
The Command Palette ({#kb command_palette::Toggle}) is your gateway to almost everything in Joule. Type a few characters to filter commands, then press Enter to execute.
[Learn more about the Command Palette →](./command-palette.md)
## File Finder {#file-finder}
Open any file in your project with {#kb file_finder::Toggle}. Type part of the filename or path to narrow results.
## Project Search {#project-search}
Search across all files with {#kb pane::DeploySearch}. Results appear in a [multibuffer](./multibuffers.md), letting you edit matches in place.
## Go to Definition {#go-to-definition}
Jump to where a symbol is defined with {#kb editor::GoToDefinition} (or `Cmd+Click` / `Ctrl+Click`). If there are multiple definitions, they open in a multibuffer.
## Go to Symbol {#go-to-symbol}
- **Current file:** {#kb outline::Toggle} opens an outline of symbols in the active file
- **Entire project:** {#kb project_symbols::Toggle} searches symbols across all files
## Outline Panel {#outline-panel}
The Outline Panel ({#kb outline_panel::ToggleFocus}) shows a persistent tree view of symbols in the current file. It's especially useful with [multibuffers](./multibuffers.md) for navigating search results or diagnostics.
[Learn more about the Outline Panel →](./outline-panel.md)
## Tab Switcher {#tab-switcher}
Quickly switch between open tabs with {#kb tab_switcher::Toggle}. Tabs are sorted by recent use—keep holding Ctrl and press Tab to cycle through them.
[Learn more about the Tab Switcher →](./tab-switcher.md)
## Quick Reference {#quick-reference}
| Task | Keybinding |
| ----------------- | -------------------------------- |
| Command Palette | {#kb command_palette::Toggle} |
| Open file | {#kb file_finder::Toggle} |
| Project search | {#kb pane::DeploySearch} |
| Go to definition | {#kb editor::GoToDefinition} |
| Find references | {#kb editor::FindAllReferences} |
| Symbol in file | {#kb outline::Toggle} |
| Symbol in project | {#kb project_symbols::Toggle} |
| Outline Panel | {#kb outline_panel::ToggleFocus} |
| Tab Switcher | {#kb tab_switcher::Toggle} |
## See Also {#see-also}
- [Command Palette](./command-palette.md) — Full command palette documentation
- [Multibuffers](./multibuffers.md) — Edit multiple files simultaneously
- [Outline Panel](./outline-panel.md) — Symbol tree view
- [Tab Switcher](./tab-switcher.md) — Switch between open files