# Gestor de fragmentos de órdenes de terminal

Puede utilizar el Administrador de fragmentos de la línea de comandos de QOwnNotes (opens new window) para ejecutar fragmentos de comandos almacenados en notas en QOwnNotes desde la línea de comandos.

qc

Puede utilizar notas con una etiqueta especial para almacenar fragmentos de código, que puede ejecutar desde el administrador de fragmentos de línea de comandos.

commands

# Instalación

Visite la página del último lanzamiento (opens new window) y descargue la versión que necesite.

TIP

Si tiene jq (opens new window) instalado, también puede usar este fragmento para descargar e instalar, por ejemplo, la última AppImage de Linux AMD64 en /usr/local/bin/qc:

curl https://api.github.com/repos/qownnotes/qc/releases/latest | \
jq '.assets[] | select(.browser_download_url | endswith("_linux_amd64.tar.gz")) | .browser_download_url' | \
xargs curl -Lo /tmp/qc.tar.gz && \
tar xfz /tmp/qc.tar.gz -C /tmp && \
rm /tmp/qc.tar.gz && \
sudo mv /tmp/qc /usr/local/bin/qc && \
/usr/local/bin/qc --version
1
2
3
4
5
6
7

# Dependencias

fzf (opens new window) (fuzzy search) or peco (opens new window) (más antiguo, pero es más probable que se instale de forma predeterminada) debe instalarse para buscar comandos en la línea de comandos.

TIP

De forma predeterminada, fzf se usa para buscar, pero puede usar peco configurándolo con qc configure.

# Configuración

socket-server-token

Antes de usar el administrador de fragmentos, debe habilitar el servidor de socket web (2) en la configuración de fragmentos de comando/extensión del navegador (1) en QOwnNotes.

Luego, debe mostrar la ficha de seguridad (3) y copiarla (4).

Ahora abra el archivo de configuración del administrador de fragmentos con:

# Configurar el administrador de fragmentos
qc configure
1
2

Y coloque la ficha de seguridad en el atributo token:

[QOwnNotes]
token = "su_ficha_aquí"
1
2

TIP

En la configuración de QOwnNotes, también puede establecer qué etiqueta de nota se debe usar para buscar comandos en las notas. De forma predeterminada, se utiliza la etiqueta commands.

# Sintaxis de fragmentos de comando

Puede usar listas desordenadas con bloques de código en línea para almacenar fragmentos de comandos. Todas las notas con la etiqueta comandos se buscan fragmentos de comandos.

Si agrega un cmd: antes del bloque de código en línea, el comando también se encontrará en la nota actual independientemente de las etiquetas de nota.

- `echo Soy un comando` Soy una descripción #etiqueta1 #etiqueta2 #etiqueta3
* `echo Tambien soy un comando` Soy una descripcion #etiqueta3 #etiqueta4 #etiqueta5
- cmd: `echo Seré encontrado en la nota actual` Este comando se encontrará en la nota actual independientemente de las etiquetas de nota

<!-- Ejemplo para solicitar la entrada del usuario -->

- `read -p "PR ID: " id && git fetch origin pull/$id/head:pull-$id && git checkout pull-$id` Preguntar por el ID del pull request y realizar checkout al pull request
1
2
3
4
5
6
7

Los bloques de código bash o shell, precedidos por un encabezado 2 o superior como descripción, también se pueden usar para fragmentos de comando. Las etiquetas también son compatibles si se encuentran entre el encabezado y el bloque de código.

## Haz esto con un bloque de código "bash"

- este texto será ignorado
- pero se pueden usar etiquetas: #etiqueta1 #etiqueta2

```bash
echo haz esto
 echo haz eso
```


## Realizar otra cosa con un bloque de código "sh"

```sh
echo haz otra cosa
 echo haz algo más
```

El ejemplo anterior dará como resultado dos fragmentos de comando, el primero con los dos etiquetas etiqueta1 y etiqueta2.

# Uso

# Buscar y ejecutar fragmentos de comandos
ejecutivo de control de calidad
1
2
# Buscar ejecutar y fragmentos de comandos ejecutivos de control de calidad
1

# Configuración

Ejecute qc configure.

[General]
  editor = "vim"            # your favorite text editor
  column = 40               # column size for list command
  selectcmd = "fzf"         # selector command for edit command (fzf or peco)
  sortby = ""               # specify how snippets get sorted (recency (default), -recency, description, -description, command, -command, output, -output)

[QOwnNotes]
  token = "MvTagHXF"        # your QOwnNotes API token
  websocket_port = 22222    # websocket port in QOwnNotes
1
2
3
4
5
6
7
8
9

# Completamiento de la consola

Puede generar un código de finalización de shell para su consola con el completado de qc <shell>.

Por ejemplo, para la consola Fish puede usar:

qc completion fish > ~/.config/fish/completions/qc.fish
1