@ -7,21 +7,21 @@ Command mode can be activated by pressing `:`. The built-in commands are:
## Using variables in typed commands and mapped shortcuts
## Using variables in typed commands and mapped shortcuts
Helix provides several variables that can be used when typing commands or creating custom shortcuts. These variables are listed below:
Helix provides several variables that can be used when typing commands or creating custom shortcuts. These variables are listed below:
| Variable | Description |
| Variable | Description |
| --- | --- |
| --- | --- |
| `%{basename}` | The name and extension of the currently focused file. |
| `%{basename}`or `%{b}` | The name and extension of the currently focused file. |
| `%{dirname}` | The absolute path of the parent directory of the currently focused file. |
| `%{dirname}`or `%{d}` | The absolute path of the parent directory of the currently focused file. |
| `%{cwd}` | The absolute path of the current working directory of Helix. |
| `%{cwd}`| The absolute path of the current working directory of Helix. |
| `%{git_repo}` | The absolute path of the git repository helix is opened in. Fallback to `cwd` if not inside a git repository|
| `%{git_repo}`| The absolute path of the git repository helix is opened in. Fallback to `cwd` if not inside a git repository|
| `%{filename}` | The absolute path of the currently focused file. |
| `%{filename}`or `%{f}` | The absolute path of the currently focused file. |
| `%{filename:rel}` | The relative path of the file according to `cwd` (will give absolute path if the file is not a child of the current working directory) |
| `%{filename:rel}`| The relative path of the file according to `cwd` (will give absolute path if the file is not a child of the current working directory) |
| `%{filename:git_rel}` | The relative path of the file according to `git_repo` (will give absolute path if the file is not a child of the git directory or the cwd) |
| `%{filename:git_rel}`| The relative path of the file according to `git_repo` (will give absolute path if the file is not a child of the git directory or the cwd) |
| `%{ext}` | The extension of the current file |
| `%{ext}`| The extension of the current file |
| `%{lang}` | The language of the current file |
| `%{lang}`| The language of the current file |
| `%{linenumber}` | The line number where the primary cursor is positioned. |
| `%{linenumber}`| The line number where the primary cursor is positioned. |
| `%{cursorcolumn}` | The position of the primary cursor inside the current line. |
| `%{cursorcolumn}`| The position of the primary cursor inside the current line. |
| `%{selection}` | The text selected by the primary cursor. |
| `%{selection}`| The text selected by the primary cursor. |
| `%sh{cmd}` | Executes `cmd` with the default shell and returns the command output, if any. |
| `%sh{cmd}`| Executes `cmd` with the default shell and returns the command output, if any. |
### Example
### Example
```toml
```toml
@ -29,3 +29,4 @@ Helix provides several variables that can be used when typing commands or creati
# Print blame info for the line where the main cursor is.
# Print blame info for the line where the main cursor is.