Newbie's Hints

Textový editor

Zkrocení zlé shellmy

Co musíte znát

Důležité proměnné prostředí

SSH klient

tmux(1): Hodně terminálů, "napořád"

Problém: pracujete v terminálu a něco se stane:

Řešení: terminal multiplexer; client-server program, který drží spuštěné terminály na pozadí a klientovi je zobrazuje.

Spusťte:

$ tmux

tmux(1) se ovládá pomocí tzv. prefix key (standardně Ctrl+B). Zmáčkněte prefix key a potom to, co chcete udělat:

cvytvoří nové okno
dodpojí současného klienta
p/npřepne na předchozí/další okno
tzobrazí čas
PgUp/PgDnscrolluje v bufferu
^Bpošle ^B programu uvnitř tmuxu (napr. další tmux na jiném stroji)
"rozdělí okno horizontálně
%rozdělí okno vertikálně
šipkyvedlejší okna
^šipkyzvětšuje/zmenšuje
,přejmenuje okno (kdo chce 10× "ksh"?)

K už spuštěné session se připojíte příkazem

$ tmux attach-session
(nebo)$ tmux a

Někdy vam stačí jen přepis vaší konzole do souboru; k tomu použijete program script(1). Interaktivne vizte ascii.io.


Pro pokročilejší

Zkuste si pustit tři tmuxy v sobě (třeba na třech strojích). Kolikrát musíte zmáčknout ^B, abyste detachli ten nejvíc vevnitř? Proč?

Vyzkoušejte si copy/paste - ^B : (zadávátko příkazů pro tmux, kterým jsou přiřazované klávesy) :set-window-option mode-keys vi a potom prefixkey,[,],mezerník a enter. Rovnítko je "paste" s interaktivnim vyberem bufferu.

To si můžete dát do ~/.tmux.conf

Barvičkama odlište tmuxy na různých strojích, abyste na první pohled poznali, kde pracujete.

Můžete vyhledávat text ve všech otevřených oknech! ^B f by default.

Pomocí ^B : se dají zadávat příkazy (a doplňovat tabulátorem jednoznačné zkratky)

Můžete mít více sessions (i pojmenovaných přes :rename-session) a přepínat mezi nimi šipkami v ^B s (příkaz :choose-session), přejít na poslední použitou přes ^B L, případně z shellu otevřít přímo (tmux a -t pracovni)

tmux resurrect plugin

různé další OpenBSD tweaky

Pro pokročilejší

Na laptopu

# wsconsctl display.brightness=100
$ mixerctl outputs.master=160
$ mixerctl outputs.master.mute=off
$ sysctl hw.sensors
$ zzz -z
$ ZZZ