You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Mar 12, 2023. It is now read-only.
Copy file name to clipboardexpand all lines: website/docs/commands/exit.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -7,4 +7,4 @@ slug: exit
7
7
| ------- | ------------------- | ----- |
8
8
|`exit`|||
9
9
10
-
Exit the execution of the program. Interally, when `jard` receives this command, it removes all debugging hooks, and triggers `::Kernel.exit`. Some long-running processes like `puma` or `sidekiq` may capture this event, treat it as an error, and recover to keep the processes running. In such cases, it's recommended to use [continue](/docs/commands/continue) instead.
10
+
Stop the execution of the program. Interally, when `jard` receives this command, it removes all debugging hooks, and triggers `::Kernel.exit`. Some long-running processes like `puma` or `sidekiq` may capture this event, treat it as an error, and recover to keep the processes running. In such cases, it's recommended to use [continue](/docs/commands/continue) instead.
Copy file name to clipboardexpand all lines: website/docs/commands/filter.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ import {LinkedImage} from '../../src/components/LinkedImage'
12
12
|`jard filter clear`|||
13
13
|`jard filter switch`|||
14
14
15
-
Ruby Jard has a strong filtering system. This system consists of a filter mode, included list, and excluded list. Filter mode is how Ruby Jard reacts to control flow commands. See [filter](/docs/guides/filter) for more information.
15
+
Ruby Jard has a powerful filtering system. This system consists of a filter mode, include list, and exclude list. Filter mode is how Ruby Jard reacts to control flow commands. See the [filter docs](/docs/guides/filter) for more information.
Copy file name to clipboardexpand all lines: website/docs/commands/frame.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -7,9 +7,9 @@ slug: frame
7
7
| ------- | ------------------- | ----- |
8
8
|`frame [-h] [frame_id]`|||
9
9
10
-
Explore a particular frame with id `<frame_id>`. It's faster than `up` and `down`. See [up](/docs/commands/up) for more information.
10
+
Explore a particular frame with id `<frame_id>`. This is faster than `up` and `down`. See the [up docs](/docs/commands/up) for more information.
11
11
12
-
[up](/docs/commands/up), [down](/docs/commands/down), and [frame](/docs/commands/frame) commands correlates to[filter](/docs/guides/filter). All hidden frames are ignored, all C frames are ignored too.
12
+
[up](/docs/commands/up), [down](/docs/commands/down), and [frame](/docs/commands/frame) commands respect[filter](/docs/guides/filter). All hidden frames are ignored, all C frames are ignored too.
Copy file name to clipboardexpand all lines: website/docs/commands/list.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,6 @@ import {LinkedImage} from '../../src/components/LinkedImage'
8
8
| ------- | ------------------- | ----- |
9
9
|`list`| F5 |`l`, `whereami`|
10
10
11
-
Refresh the whole terminal UI. This command doesn't move you to other steps, nor change any data in your session. It is useful (or the only way) to get back the beautiful UI if you type too much in the REPL console.
11
+
Refresh the whole terminal UI. This command doesn't move you to other steps or change any data in your session. It is the only way to reset the UI if you type too much in the REPL console.
Copy file name to clipboardexpand all lines: website/docs/commands/next.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ slug: next
7
7
| ------- | ------------------- | ----- |
8
8
|`next`| F8 |`n`|
9
9
10
-
Continue to the next line in the current frame, by pass any steppable method call or blocks in the mid way unless they contains dynamic breakpoint or any`jard` attachment command. If the current frame already reaches the end, it continues to the next line of upper frame and so on.
10
+
Continue to the next line in the current frame. Bypasses any steppable method call or block in between unless they contain a dynamic breakpoint or a`jard` attachment command. If execution has reached the end of the current frame, next continues to the next line of the parent frame and so on.
Copy file name to clipboardexpand all lines: website/docs/commands/output.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ import {LinkedImage} from '../../src/components/LinkedImage'
8
8
| ------- | ------------------- | ----- |
9
9
|`jard output`|||
10
10
11
-
Show all the program output in a pager, allowing navigation, searching (powered by GNU Less). Note that the output are only captured only after Jard already started. All the previous output could not be captured.
11
+
Show all program output in a pager, allowing navigation and searching (powered by GNU Less). Note that only the output emitted after Jard has started is captured. All the previous output will not be captured.
Copy file name to clipboardexpand all lines: website/docs/commands/show.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ slug: show
7
7
| ------- | ------------------- | ----- |
8
8
|`jard show [screen]`|||
9
9
10
-
Show a particular screen on the current interface. This option correlates to recent layout's screens. If a screen is not available in current layout, it won't be shown.
10
+
Show a particular screen in the current interface. This option correlates to recent layout's screens. If a screen is not available in current layout, it won't be shown.
Copy file name to clipboardexpand all lines: website/docs/commands/skip.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -8,10 +8,10 @@ import {LinkedImage} from '../../src/components/LinkedImage'
8
8
| ------- | ------------------- | ----- |
9
9
|`skip [-a -all]`|||
10
10
11
-
Continue the execution of your program to the end, and skip one, or more next breakpoints it meets. This command is useful when you puts `jard` command in an iteration or a nested method calls.
11
+
Continue the execution of your program to the end, and skip one or more next breakpoints along the way. This command is useful when you put the `jard` command in an iteration or a nested method call.
12
12
13
13
**Note:**
14
-
Ruby Jard resets skipping list in next attachment, or when your program exits. If you are running a web server, or background jobs that prevent your program from stopping, and you already skip all breakpoints, your program may not stop, and requires a restart to attach again.
14
+
Ruby Jard resets the skip list in the next attachment or when your program exits. If you are running a web server or a background job that prevents your program from stopping (and you have already skipped all breakpoints), your program may not stop and may require a restart to attach again.
15
15
16
16
**Examples:**
17
17
@@ -21,7 +21,7 @@ skip # Continue and skip the first breakpoint
Copy file name to clipboardexpand all lines: website/docs/commands/step.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ slug: step
7
7
| ------- | ------------------- | ----- |
8
8
|`step`| F7 |`s`|
9
9
10
-
Detect and step into a method call or block in the current line. If there isn't anything to step in, the program continues to next line. In case there are multiple methods on the same line, Jard hornors Ruby's execution order.
10
+
Detect and step into a method call or block on the current line. If there isn't anything to step into, the program will continue to the next line. If there are multiple methods on the same line, Jard hornors Ruby's execution order.
Copy file name to clipboardexpand all lines: website/docs/commands/step_out.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -8,9 +8,9 @@ import {LinkedImage} from '../../src/components/LinkedImage'
8
8
| ------- | ------------------- | ----- |
9
9
|`step-out`| Shift + F7 |`so`|
10
10
11
-
The opposite of step. This command is used to finish the execution of current frame, and jump to the next line of upper frame. In other words, this command is equivalent to the sequence `up` and `next`. If the neighbor frame already finishes, it continues with even higher frame.
11
+
The opposite of step. This command is used to finish the execution of the current frame and jump to the next line of the parent frame. In other words, this command is equivalent to the sequence `up` and `next`. If the parent frame has already finished, Jard continues to the next line in that frame's parent and so on.
12
12
13
-
This command is useful when you loose your interest in frame, and want to quickly go up again. One example is that you accidentally step into a longgggg loop with nothing useful. Another example is that you step into the library source code and don't really care what it does underlying.
13
+
This command is useful when you lose interest in a frame and want to easily return to the parent. For example, you might have accidentally stepped into a longgggg loop or into library source code.
Copy file name to clipboardexpand all lines: website/docs/commands/up.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -8,11 +8,11 @@ import {LinkedImage} from '../../src/components/LinkedImage'
8
8
| ------- | ------------------- | ----- |
9
9
|`up`| F6 ||
10
10
11
-
Explore the upper frame. When you use this command, all associated displaying screens will be updated accordingly, but your program current position is still at the latest frame. This command is mostly used to explore, and view the trace, input parameters, or how your program stops at the current position. When use this command, you should have a glance at Variable panel, and Source panel to see the variables at destination frame.
11
+
Explore the parent frame. When you use this command, all associated display screens will be updated accordingly, but your program's current position is still the latest frame. This command is mostly used to explore and introspect the stack, input parameters, or how your program has stopped at the current position. When using this command, take a look at the Variable and Source panels to see the variables defined in the current frame.
12
12
13
-
You can combine with `next` or `step` to perform powerful execution redirection at the destination frame. Let's look at an example. You are debugging a chain of 10 rack middlewares, you go deep into the #9 middleware, found something, then want to go back to #5middleware. It's pretty boring and frustrated to just use `next` or `step-out` and hope it eventually goes back. Now use`up`for some times (or `frame`, described below) to go to your desired frame, and use `next` there. Tada, it's magical, just like teleport.
13
+
You can combine `up`with `next` or `step` to perform powerful execution redirection at from the current frame. Let's look at an example. You are debugging a chain of 10 rack middlewares and you go deep into the ninth middleware. You find something and want to go back to the fifth middleware. It's pretty tedious and frustrating to use `next` or `step-out` and hope you eventually end up in the right place. Consider using`up`a few times (or `frame`, described below) to go to the desired frame, then use `next`. Tada! It's magical, like teleporting yourself to the right position.
14
14
15
-
[up](/docs/commands/up), [down](/docs/commands/down), and [frame](/docs/commands/frame) commands correlates to [filter](/docs/guides/filter). All hidden frames are ignored, all C frames are ignored too.
15
+
[up](/docs/commands/up), [down](/docs/commands/down), and [frame](/docs/commands/frame) commands respect [filter](/docs/guides/filter). All hidden frames and C frames are ignored.
This screen describes the current backtrace of the current thread your program is stopping. Each line of this screen describes the current Frame. What is frame and backtrace by the way? Let's step back a little bit at how Ruby executes your code. Internally, Ruby uses an interpreter to read and execute your code, line by line (technically, YARD instructions, but let's go with a simple version). When it meets a chunk of code that needs to open a new scope, like method calls or inline-block call, the interpreter creates a new structure to store the current context so that it can link to the next scope and go back later. This data structure is call Frame. The interpreter pushes frame into a stack, called backtrace (or stack trace, or call stack, whatever), and continues to execute your code. Each thread has a separate backtrace. To understand deeply, you may be interested in this wonderful slide: [Grow and Shrink - Dynamically Extending the Ruby VM Stack](https://www.slideshare.net/KeitaSugiyama1/grow-and-shrink-dynamically-extending-the-ruby-vm-stack).
10
+
This screen describes the backtrace of the current thread your program has stopped in. Each line of this screen describes the current Frame. What are frame and backtrace by the way? Let's step back a little bit and look at how Ruby executes your code. Internally, Ruby uses an interpreter to read and execute your code, line by line (technically it executes YARV instructions, but let's keep things simple). When it encounters a chunk of code that opens a new scope like a method call or inline block call, the interpreter creates a new structure to store the current context so that it can link to the next scope and go back later. This data structure is called a Frame. The interpreter pushes the frame onto a stack called the backtrace (or stack trace, or call stack, etc), and continues to execute your code. Each thread has a separate backtrace. To understand more deeply, you may be interested in this wonderful slide deck: [Grow and Shrink - Dynamically Extending the Ruby VM Stack](https://www.slideshare.net/KeitaSugiyama1/grow-and-shrink-dynamically-extending-the-ruby-vm-stack).
11
11
12
-
Overall, the whole backtrace screen lets you know where you are stopping at, the trace of how your program is running. When combining with other tools and other screens, you will be surprised by how much information the bugger can help you when you encounter your bugs.
12
+
Overall, the whole backtrace screen lets you know where you've stopped, and shows you the trace of how your program is running. When combined with other tools and screens, you'll be surprised by how much information the debugger can give you when you're trying to track down a challenging bug.
13
13
14
14
Each frame includes the following information:
15
15
16
-
- Frame ID: incremental, can be used to jump to an arbitrary frame with frame command.
16
+
- Frame ID: incremental, can be used to jump to an arbitrary frame with the frame command.
17
17
- Location label: a class name and method name of the method covers its frame.
18
18
- Physical location: exact file name and line number.
19
19
- If a frame is allocated in a gem, the physical location shows a gem name and version only. For example: `Calendar::GeneratedAssociationMethods in events in <activerecord 6.0.3.1>`.
20
-
- If there is a `[c]` prefix in front of a class name, it means that the method is provided by Ruby, implemented in C, and impossible to peek, for example. For example: `[c] Range in each at test5.rb:11`.
21
-
- If a frame is from standardlib, the location has `stdlib` prefix. For example: `Random::Formatter in uuid in <stdlib:securerandom>`
20
+
- If there is a `[c]` prefix in front of a class name, it means that the method is provided by Ruby, implemented in C, and impossible to peek at. For example: `[c] Range in each at test5.rb:11`.
21
+
- If a frame is from standard library, the location has the`stdlib` prefix. For example: `Random::Formatter in uuid in <stdlib:securerandom>`
22
22
23
-
If a frame is filtered out, it won't be displayed. The top title displays overall hidden frames. To navigate through the backtrace, you can use [filter feature](/docs/guides/filter)combine with [up command](/docs/commands/up), [down command](/docs/commands/down), and [frame command](/docs/commands/frame).
23
+
If a frame is filtered out, it won't be displayed. The top title displays overall hidden frames. To navigate through the backtrace, you can use the [filter feature](/docs/guides/filter)combined with the[up command](/docs/commands/up), [down command](/docs/commands/down), and [frame command](/docs/commands/frame).
24
24
25
25
<LinkedImagelink="/img/guides/backtrace-screen-2.gif"alt="Navigate and explore backtrace"/>
Copy file name to clipboardexpand all lines: website/docs/guides/color_schemes.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -3,10 +3,10 @@ id: Color schemes
3
3
slug: color-schemes
4
4
---
5
5
6
-
Ruby Jard bundles 6 built-in schemes, 4 dark ones, and 2 light ones. You can use [color scheme commands](/docs/commands/color-scheme) to up the flight, or define in [configuration file](/docs/guides/configurations).
6
+
Ruby Jard bundles 6 built-in schemes: 4 dark ones and 2 light ones. You can use [color scheme commands](/docs/commands/color-scheme) to set the current scheme, or define in [configuration file](/docs/guides/configurations).
7
7
8
8
### 256
9
-
Default scheme, 256 basic colors, supported by all terminals
9
+
Default scheme. 256 basic colors, supported by all terminals
10
10
11
11

12
12
@@ -33,7 +33,7 @@ Light 256 basic colors
33
33
34
34
### Your custom theme
35
35
36
-
Add those lines into your [configuration file](/docs/guides/configurations). Ruby Jard supports two types of colors: 24-bit color or[ANSI 8-bit color](https://en.wikipedia.org/wiki/ANSI_escape_code).
36
+
Add these lines into your [configuration file](/docs/guides/configurations). Ruby Jard supports two types of colors: 24-bit color and[ANSI 8-bit color](https://en.wikipedia.org/wiki/ANSI_escape_code).
Copy file name to clipboardexpand all lines: website/docs/guides/configurations.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -3,19 +3,19 @@ id: Configurations
3
3
slug: configurations
4
4
---
5
5
6
-
Ruby Jard supports customization via pre-loaded configuration files. You can configure Jard both globally, and per-project.
6
+
Ruby Jard supports customization via preloaded configuration files. You can configure Jard both globally and on a per-project basis.
7
7
8
-
- If `JARD_CONFIG_FILE` environment variable is available, Jard uses that file.
8
+
- If the `JARD_CONFIG_FILE` environment variable is available, Jard uses that file.
9
9
- The global configuration file is located at `~/.jardrc`.
10
-
- The project configuration file is located at `.jardrc` in working directory when you start Ruby Jard. Per-project ones override the global one.
10
+
- The project configuration file is located at `.jardrc` in the current working directory when you start Ruby Jard. Per-project configs override the global one.
|`color_scheme`| Choose your favorite color scheme. See [color schemes page](/docs/guides/color-schemes) for more information.|`256`| See [color-scheme command](/docs/commands/color-scheme)|
17
17
|`layout`| By default, Ruby Jard chooses the layout based on current window size. This option allows you to force a layout. |`nil`|`nil`, `tiny`, `wide`, `narrow-vertical`, `narrow-horizontal`|
18
-
|`enabled_screens`| Force display a subset of screens. This option correlates with recent layout's screens. |`[]`|`backtrace`, `menu`, `source`, `threads`, `variables`|
18
+
|`enabled_screens`| Force display of a subset of screens. This option correlates with the recent layout's screens. |`[]`|`backtrace`, `menu`, `source`, `threads`, `variables`|
19
19
|`filter`| Filter mode. See [filter page](/docs/guides/filter) for more information |`:application`|`:everything`, `:gems`, `:application`, `:source_tree`|
20
20
|`filter_included`| Filter included pattern. See [filter page](/docs/guides/filter) for more information |`[]`||
21
21
|`filter_excluded`| Filter excluded pattern. See [filter page](/docs/guides/filter) for more information |`[]`||
0 commit comments