# Command-line Snippet Manager

Możesz użyć Menedżera fragmentów wiersza polecenia QOwnNotes (opens new window) do wykonywania fragmentów poleceń zapisanych w notatkach w QOwnNotes z wiersza poleceń.

qc

Możesz używać notatek ze specjalnym tagiem do przechowywania fragmentów poleceń, które możesz wykonywać z poziomu menedżera fragmentów wiersza poleceń.

commands

# Instalacja

Odwiedź latest release page (opens new window) i pobierz potrzebną wersję.

TIP

Jeśli masz zainstalowane jq (opens new window), możesz również użyć tego fragmentu kodu, aby pobrać i zainstalować na przykład najnowszą aplikację Linux AMD64 AppImage do /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

# Zależności

fzf (opens new window) (wyszukiwanie rozmyte) lub peco (opens new window) (starsze, ale z większym prawdopodobieństwem zostaną zainstalowane domyślnie) muszą być zainstalowane, aby wyszukiwać polecenia w wierszu poleceń.

TIP

Domyślnie do wyszukiwania używane jest fzf, ale możesz użyć peco, ustawiając go za pomocą qc configure.

# Organizować coś

socket-server-token

Przed użyciem menedżera fragmentów kodu musisz włączyć serwer gniazd sieciowych (2) w ustawieniach Rozszerzenie przeglądarki / fragmenty poleceń (1) w QOwnNotes.

Następnie musisz pokazać token bezpieczeństwa (3) i skopiować go (4).

Teraz otwórz plik konfiguracyjny menedżera snippetów za pomocą:

# Skonfiguruj menedżera fragmentów
qc configure
1
2

I umieść token bezpieczeństwa w atrybucie token:

[QOwnNotes]
token = "yourtokenhere"
1
2

TIP

W ustawieniach QOwnNotes możesz również ustawić, jaki znacznik notatki ma być używany do wyszukiwania poleceń w notatkach. Domyślnie używany jest tag polecenia.

# Składnia fragmentów poleceń

Możesz używać list nieuporządkowanych z wbudowanymi blokami kodu do przechowywania fragmentów poleceń. Wszystkie notatki z tagiem polecenia są przeszukiwane pod kątem fragmentów poleceń.

Jeśli dodasz cmd: przed blokiem kodu w wierszu, polecenie zostanie również znalezione w bieżącej notatce, niezależnie od tagów notatek.

- `echo I am a command` I am a description #tag1 #tag2 #tag3
* `echo I am also a command` I am a description #tag3 #tag4 #tag5
- cmd: `echo I will be found in the current note` This command will be found in the current note regardless of note tags

<!-- Example for asking for user input -->

- `read -p "PR ID: " id && git fetch origin pull/$id/head:pull-$id && git checkout pull-$id` Ask for pull request ID and checkout pull request
1
2
3
4
5
6
7

bash or shell code blocks, poprzedzone nagłówkiem 2 lub wyższym jako opis, mogą być również używane we fragmentach poleceń. Tagi są również obsługiwane, jeśli znajdują się między nagłówkiem a blokiem kodu.

## Zrób to z blokiem kodu "bash"

- ten tekst zostanie zignorowany
- ale można używać tagów: #tag1 #tag2

```bash
echo zrób to
 echo zrób to
```


## Zrób coś innego z blokiem kodu „sh”

```sh
echo zrób coś innego
 echo zrób coś innego
```

Powyższy przykład da w wyniku dwa fragmenty poleceń, pierwszy z dwoma tagami tag1 i tag2.

# Stosowanie

# Wyszukaj i wykonaj fragmenty poleceń
qc exec
1
2
# Wyszukaj i wydrukuj fragmenty poleceń
wyszukiwanie qc
1
2

# Konfiguracja

Uruchom konfigurację qc.

[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

# Zakończenie powłoki

Możesz wygenerować kod uzupełniania powłoki dla swojej powłoki za pomocą uzupełniania qc <shell>.

Na przykład do muszli rybnej możesz użyć:

qc zakończenie ryba > ~/.config/fish/completions/qc.fish
1