Reading a 2,000-line script you didn't write
The scripts that matter are rarely tidy. The one you inherit is two thousand lines long, defines forty functions, and was organized by appending. DetentShell’s navigation features exist for that file.
The Functions dropdown sits above the tabs and is parsed from the buffer’s syntax tree, so nested and strangely formatted definitions show up too. Pick a name, land on the definition. For the inherited script this is the table of contents it never had, and it re-parses as you edit, so a function you wrote a minute ago is already listed.
Go To Line, Ctrl+G, earns its keep because every PowerShell error record carries a line number. The dialog turns the number into a location. Type a line past the end of the file and it clamps to the last line, since the intent of “go to line 5000” in a 400-line file is obviously the end.
Go to Match, Ctrl+], jumps between paired braces. In deeply nested code, a process block inside a function inside a class, each level with its own try/catch, “which closing brace is this” stops being answerable by looking. The jump answers it structurally, and pressing it again brings you back.
Ctrl+F opens the search panel with incremental highlighting. F3 and Shift+F3 walk the matches without the panel needing focus. Ctrl+H adds replace, and Replace All rewrites the buffer directly rather than making you confirm each hit.
Folding is navigation wearing a display feature’s clothes. Brace blocks and #region sections get fold triangles; collapse everything with Ctrl+M and the two-thousand-line file becomes an outline of its forty functions, the dropdown’s view but spatial. Scripts organized with regions, a habit worth stealing from the module world, open like a book with chapters. If folding isn’t your temperament, the View menu and Settings both turn it off.
None of this is novel, deliberately. These are the standard navigation verbs, present and wired to the real syntax tree instead of approximations. The inherited script is still two thousand lines. It stops being trackless.