diff options
Diffstat (limited to 'browse_trace/Readme.md')
-rw-r--r-- | browse_trace/Readme.md | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/browse_trace/Readme.md b/browse_trace/Readme.md deleted file mode 100644 index 395058f1..00000000 --- a/browse_trace/Readme.md +++ /dev/null @@ -1,86 +0,0 @@ -### A debugging helper that lets you zoom in/out on a trace. - -To try it out, first create an example trace (from the top-level `mu/` -directory): - - ```shell - ./mu --trace nqueens.mu - ``` - -This command will save a trace of its execution in a file called `last_run`. -The trace consists of a series of lines, each starting with an integer depth -and a single-word 'label', followed by a colon and whitespace. - -Now browse this trace: - - ```shell - ./browse_trace/browse_trace last_run - ``` - -You should now find yourself in a UI showing a subsequence of lines from the -trace, each line starting with a numeric depth, and ending with a parenthetical -count of trace lines hidden after it with greater depths. - -For example, this line: - - ``` - 2 app: line1 (30) - ``` - -indicates that it was logged with depth 2, and that 30 following lines have -been hidden at a depth greater than 2. - -(As an experiment, hidden counts of 1000 or more are highlighted in red.) - -The UI provides the following hotkeys: - -* `q` or `ctrl-c`: Quit. - -* `Enter`: 'Zoom into' this line. Expand lines hidden after it that were at - the next higher level. - -* `Backspace`: 'Zoom out' on a line after zooming in, collapsing lines below - expanded by some series of `Enter` commands. - -* `j` or `down-arrow`: Move cursor down one line. -* `k` or `up-arrow`: Move cursor up one line. -* `J` or `ctrl-f` or `page-down`: Scroll cursor down one page. -* `K` or `ctrl-b` or `page-up`: Scroll cursor up one page. -* `h` or `left-arrow`: Scroll cursor left one character. -* `l` or `right-arrow`: Scroll cursor right one character. -* `H`: Scroll cursor left one screen-width. -* `L`: Scroll cursor right one screen-width. - -* `g` or `home`: Move cursor to start of trace. -* `G` or `end`: Move cursor to end of trace. - -* `t`: Move cursor to top line on screen. -* `c`: Move cursor to center line on screen. -* `b`: Move cursor to bottom line on screen. -* `T`: Scroll line at cursor to top of screen. - -* `/`: Search forward for a pattern. -* `?`: Search backward for a pattern. -* `n`: Repeat the previous `/` or `?`. -* `N`: Repeat the previous `/` or `?` in the opposite direction. - -After hitting `/`, the mini-editor on the bottom-most line supports the -following hotkeys: -* ascii characters: add the key to the pattern. -* `Enter`: search for the pattern. -* `Esc` or `ctrl-c`: cancel the current search, setting the screen back - to its state before the search. -* `left-arrow`: move cursor left. -* `right-arrow`: move cursor right. -* `ctrl-a` or `home`: move cursor to start of search pattern. -* `ctrl-e` or `end`: move cursor to end of search pattern. -* `ctrl-u`: clear search pattern before cursor -* `ctrl-k`: clear search pattern at and after cursor - -## wish list - -* Simple regular expression search: `.` and `*`. -* Expand into lower depths as necessary when searching. -* Zoom out everything. -* Zoom out lines around the cursor to the highest (or specified) depth. - Maybe a number followed by `]`? |