~ruther/qmk_firmware

21799be1caa72bc8770143e9f83e1b8d55812dfd — Erovia 5 years ago 5cfc3ce
Make dedicated sections for user/dev commands in docs
1 files changed, 65 insertions(+), 70 deletions(-)

M docs/cli_commands.md
M docs/cli_commands.md => docs/cli_commands.md +65 -70
@@ 1,40 1,6 @@
# QMK CLI Commands

# CLI Commands

## `qmk cformat`

*(dev mode)*

This command formats C code using clang-format. 

Run it with no arguments to format all core code that has been changed. Default checks `origin/master` with `git diff`, branch can be changed using `-b <branch_name>`

Run it with `-a` to format all core code, or pass filenames on the command line to run it on specific files.

**Usage for specified files**:

```
qmk cformat [file1] [file2] [...] [fileN]
```

**Usage for all core files**:

```
qmk cformat -a
```

**Usage for only changed files against origin/master**:

```
qmk cformat
```

**Usage for only changed files against branch_name**:

```
qmk cformat -b branch_name
```
# User Commands

## `qmk compile`



@@ 138,18 104,6 @@ This command lets you configure the behavior of QMK. For the full `qmk config` d
qmk config [-ro] [config_token1] [config_token2] [...] [config_tokenN]
```

## `qmk docs`

*(dev mode)*

This command starts a local HTTP server which you can use for browsing or improving the docs. Default port is 8936.

**Usage**:

```
qmk docs [-p PORT]
```

## `qmk doctor`

This command examines your environment and alerts you to potential build or flash problems. It can fix many of them if you want it to.


@@ 184,63 138,105 @@ Creates a keymap.c from a QMK Configurator export.
qmk json2c [-o OUTPUT] filename
```

## `qmk kle2json`
## `qmk list-keyboards`

*(dev mode)*
This command lists all the keyboards currently defined in `qmk_firmware`

This command allows you to convert from raw KLE data to QMK Configurator JSON. It accepts either an absolute file path, or a file name in the current directory. By default it will not overwrite `info.json` if it is already present. Use the `-f` or `--force` flag to overwrite.
**Usage**:

```
qmk list-keyboards
```

## `qmk list-keymaps`

This command lists all the keymaps for a specified keyboard (and revision).

**Usage**:

```
qmk kle2json [-f] <filename>
qmk list-keymaps -kb planck/ez
```

**Examples**:
## `qmk new-keymap`

This command creates a new keymap based on a keyboard's existing default keymap.

**Usage**:

```
$ qmk kle2json kle.txt 
☒ File info.json already exists, use -f or --force to overwrite.
qmk new-keymap [-kb KEYBOARD] [-km KEYMAP]
```

---

# Developer Commands

## `qmk cformat`

This command formats C code using clang-format. 

Run it with no arguments to format all core code that has been changed. Default checks `origin/master` with `git diff`, branch can be changed using `-b <branch_name>`

Run it with `-a` to format all core code, or pass filenames on the command line to run it on specific files.

**Usage for specified files**:

```
$ qmk kle2json -f kle.txt -f
Ψ Wrote out to info.json
qmk cformat [file1] [file2] [...] [fileN]
```

## `qmk list-keyboards`
**Usage for all core files**:

This command lists all the keyboards currently defined in `qmk_firmware`
```
qmk cformat -a
```

**Usage**:
**Usage for only changed files against origin/master**:

```
qmk list-keyboards
qmk cformat
```

## `qmk list-keymaps`
**Usage for only changed files against branch_name**:

This command lists all the keymaps for a specified keyboard (and revision).
```
qmk cformat -b branch_name
```

## `qmk docs`

This command starts a local HTTP server which you can use for browsing or improving the docs. Default port is 8936.

**Usage**:

```
qmk list-keymaps -kb planck/ez
qmk docs [-p PORT]
```

## `qmk new-keymap`
## `qmk kle2json`

This command creates a new keymap based on a keyboard's existing default keymap.
This command allows you to convert from raw KLE data to QMK Configurator JSON. It accepts either an absolute file path, or a file name in the current directory. By default it will not overwrite `info.json` if it is already present. Use the `-f` or `--force` flag to overwrite.

**Usage**:

```
qmk new-keymap [-kb KEYBOARD] [-km KEYMAP]
qmk kle2json [-f] <filename>
```

## `qmk pyformat`
**Examples**:

*(dev mode)*
```
$ qmk kle2json kle.txt 
☒ File info.json already exists, use -f or --force to overwrite.
```

```
$ qmk kle2json -f kle.txt -f
Ψ Wrote out to info.json
```

## `qmk pyformat`

This command formats python code in `qmk_firmware`.



@@ 252,8 248,6 @@ qmk pyformat

## `qmk pytest`

*(dev mode)*

This command runs the python test suite. If you make changes to python code you should ensure this runs successfully.

**Usage**:


@@ 261,3 255,4 @@ This command runs the python test suite. If you make changes to python code you 
```
qmk pytest
```