# Befehlszeilen-Snippet-Manager

Sie können den QOwnNotes-Befehlszeilen-Snippet-Manager (opens new window) verwenden, um Befehlsschnipsel, die in Notizen in QOwnNotes gespeichert sind, über die Befehlszeile auszuführen.

qc

Sie können Notizen mit einem speziellen Schlagwort verwenden, um Befehls-Snippets zu speichern, die Sie **über den Befehlszeilen-Snippet-Manager ausführen ** können.

commands

# Installation

Besuchen Sie die Seite mit der neuesten Version (opens new window) und laden Sie die gewünschte Version herunter.

TIP

Wenn Sie jq (opens new window) installiert haben, können Sie dieses Snippet auch verwenden, um beispielsweise das neueste Linux AMD64 AppImage unter /usr/local/bin/qc herunterzuladen und zu installieren:

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

# Abhängigkeiten

fzf (opens new window) (fuzzy search) oder peco (opens new window) (älter, aber eher standardmäßig installiert) müssen installiert sein, wenn in der Befehlszeile nach Befehlen gesucht werden soll.

TIP

Standardmäßig wird fzf für die Suche verwendet, aber Sie können peco verwenden, indem Sie es mit qc configure einstellen.

# Setup

socket-server-token

Bevor Sie den Snippet-Manager verwenden, müssen Sie den Socket-Server (2) in den Einstellungen Browsererweiterung / Befehlsschnipsel (1) in QOwnNotes aktivieren.

Dann müssen Sie das Sicherheitstoken vorzeigen (3) und kopieren (4).

Öffnen Sie nun die Konfigurationsdatei des Snippet-Managers mit:

# Konfigurieren Sie den Snippet-Manager
qc configure
1
2

Und fügen Sie das Sicherheitstoken in das Attribut token ein:

[QOwnNotes]
token = "yourtokenhere"
1
2

TIP

In den QOwnNotes-Einstellungen können Sie auch festlegen, welches Notiz-Schlagwort verwendet werden soll, um in Notizen nach Befehlen zu suchen. Standardmäßig wird das Tag commands verwendet.

# Syntax von Befehlsschnipseln

Sie können ungeordnete Listen mit Inline-Codeblöcken verwenden, um Befehlsausschnitte zu speichern. Alle Notizen mit dem Tag commands werden nach Befehlsschnipseln durchsucht.

Wenn Sie vor dem Inline-Codeblock ein cmd: hinzufügen, wird der Befehl auch in der aktuellen Notiz gefunden, unabhängig von Notiz-Tags.

- `Echo Ich bin ein Befehl` Ich bin eine Beschreibung #tag1 #tag2 #tag3
* `Echo Ich bin auch ein Befehl` Ich bin eine Beschreibung #tag3 #tag4 #tag5
- cmd: `echo I wird in der aktuellen Notiz gefunden` Dieser Befehl wird in der aktuellen Notiz unabhängig von Notiz-Tags gefunden

<!-- Beispiel für das Abfragen von Benutzereingaben -->

- `read -p "PR ID: " id && git holt den Ursprung pull/$id/head:pull-$id && git checkout pull-$id` Fragen Sie nach der Pull-Request-ID und Checkout-Pull-Request
1
2
3
4
5
6
7

Bash- oder Shell-Codeblöcke, denen eine Überschrift 2 oder höher als Beschreibung vorangestellt ist, können auch für Befehlsschnipsel verwendet werden. Tags werden auch unterstützt, wenn sie sich zwischen der Überschrift und dem Codeblock befinden.

## Tun Sie dies mit einem "Bash" -Codeblock

- dieser Text wird ignoriert Text
- aber Tags können verwendet werden: #tag1 #tag2

```bash
Echo mach das
 Echo mach das
```


## Mach etwas anderes mit einem "sh" Codeblock

```sh
Echo mach was anderes
 echo mach was anderes
```

Das obige Beispiel führt zu zwei Befehlsschnipseln, dem ersten mit den beiden Tags tag1 und tag2.

# Verwendung

# Befehlsschnipsel suchen und ausführen
qc exec
1
2
# Befehlsausschnitte suchen und drucken
qc-Suche
1
2

# Aufbau

Führen Sie qc configure aus.

[General]
  editor = "vim"            # Ihr Lieblingstexteditor
  column = 40               # Spaltengröße für Listenbefehl
  selectcmd = "fzf"         # Selektorbefehl für Editierbefehl (fzf oder peco)
  sortby = ""               # Geben Sie an, wie Snippets sortiert werden (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

# Shell-Vervollständigung

Sie können Shell-Vervollständigungscode für Ihre Shell mit qc-Vervollständigung <shell> generieren.

Für die Fischschale können Sie beispielsweise verwenden:

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