Last active
August 29, 2015 14:00
-
-
Save jindraj/11267393 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{{{ Zkratky | |
C control | |
M meta (Alt, option) | |
E Escape (meta) | |
E / = M-/ (escape a meta jsou zamenitelne - rozdil je v tom ze meta se musi drzet | |
}}} | |
{{{ Troubleshooting | |
Kdyz vam neco nebude fungovat muze to byt starsi verzi interpretu nebo readline | |
System wide konfigurace od package maintaineru | |
Polykání zkratek Konsole, gnome-terminal nebo windowmanagerem | |
}}} | |
{{{ Doplnovani bash-completion | |
* doplnovani k ~200+ balikum | |
* sikovny (vetsinou pomaha dobre) | |
* nejde doplnovat vse vsude, cesta nebo username | |
* git, aliasy completion? | |
* ssh hash known_hosts nastavit na false aby to uměl číst | |
* fish - shell co umi doplnovat fakt hodne (naseptava prepinace s napovedou atd) | |
* Tomas Hegenbart vyzkoušel a už to používá všude kde může :) | |
}}} | |
{{{ readline | |
Podpora shelly/interprety s readline (nektere maji horsi, nektere lepsi) | |
* MySQL, PostgreSQL, Redis, MongoDB, sqlite | |
* ruzné clička jako ftp | |
* bash, python, php | |
* nektere ncurses hračky | |
Modes | |
* emacs | |
* vi | |
V emacs modu funguji nasledujici zkratky (ve vim modu se to muze chovat jinak | |
{{{Pohyb (obecně Ctrl = znaky nebo celá řádka, Meta = slova) | |
C-f pohyb o znak dopredu | |
C-b pohyb o znak zpet | |
M-f pohyb o slovo dopredu | |
M-b pohub o slovo zpet | |
C-a skok na zacatek radky | |
C-e skok na konec radky | |
C-xC-x skok mezi kurzorem a koncem (set-mark (C-@, M-<space>) ) | |
C-] najit znak a skocit vpred na pozici | |
M-C-] najit znak a skocit zpet na pozici | |
}}} | |
{{{Upravy (obecně Ctrl = znaky, Meta = Slova) | |
C-t prohodi znak pod kurzorem s predchazejicim | |
M-t prohodi slovo pod kurzorem s predchazejicim | |
C-_ undo. Popr. C-xC-u | |
M-r vrátí změny na řádce (vhodné při úpravě příkazu z historie) | |
M-u uppercase slova od pozice kurzoru | |
M-l downcase slova od pozice kurzoru | |
M-c kapitalizuje slovo od pozice kurzoru | |
}}} | |
{{{Kill & Yank | |
killing | |
C-k kill od kurzoru na konec radky | |
C-u kill od kurzoru na zacatek radky | |
C-w kill slova od kurzoru zpet | |
M-d kill slova od kurzoru vpred | |
C-xC-w kill casti filenamu (viz nize) | |
yanking | |
C-y yank posledního itemu z killringu | |
M-y rotuje v histirii killringu (C-y M-y M-y M-y) | |
}}} | |
{{{Naseptavani a doplnovani (obecně Ctrl našeptává, Meta doplňuje) | |
C-x! naseptava commandy | |
M-! doplnuje commandy | |
C-x / naseptava jmena souboru | |
M-/ doplnuje jmena souboru | |
C-x @ naseptava jmena hostu | |
M-@ doplnuje jmena hostu (/etc/hosts) | |
C-x ~ naseptava usery | |
M-~ doplnuje usery | |
M-= našeptává vse. popr M-? | |
M-, doplňuje vse. | |
M znak doplnuje | |
C-x znak naseptava | |
case sensitivity, -_ insensitivity (completion-ignore-case yes/no) | |
}}} | |
{{{Historie | |
historii se vyhneme, to by bylo na extra prednasku :) | |
per-application history funguje stejne jako v bashi C-r, C-n, C-p, C-o, Metasračky M-< M-> M-. atd | |
Mé oblíbené: | |
* C-p listování v historii zpět | |
* C-n listování v historii vpřed | |
* C-j | |
}}} | |
{{{Makra | |
C-( zacne nahravani makra | |
C-) ukonci nahravani makra | |
C-x e spusti makro (M-123 C-e : spusti makro 123x) | |
}}} | |
{{{Ostatni | |
C-xC-e open current command line in $EDITOR and execute after closing (ve vi modu "M-v") | |
C-l vycisti obrazovku - takovej clrscr :)) | |
M-# prefixuje řádku komentářem a odentruje | |
C-xC-r reload ~/.inputrc | |
}}} | |
{{{~/.inputrc | |
skip-completed-text (readline-6.1) | |
doplnovani s přepisem: "ssh hostname.example.com" vs "ssh hostname.example.com.com" (pokud doplnuju tabem pred .com) | |
nikdy nenasralo? neverim :) | |
show-mode-in-prompt (>=readline-6.3) | |
zobrazi znak aktualiniho readline modu jako prefix PS1: | |
@ emacs | |
+ vi-insert (: vi-command) | |
colored-stats | |
(>=bash-4.3-alpha,readline-6.3) - na linuxu bere z environmentu LS_COLORS (dircolors), Mac OS X - LSCOLORS | |
obarvene naseptavani (soubory, symlinky, adresare (+ sufix /) | |
visible-stats | |
appenduje @% atd podle filetypu pri naseptavani | |
blink-matching-paren (>=readline-4.2) | |
problikne párovou závorku "([{" při psaní ")]}" | |
známe z vimu a jiných editorů. must have pokud píšete nějaká závroková pekla. LDAP filtery apod. | |
completion-prefix-display-length 10 | |
nahradi spolecny prefix (delsi nez hodnota) pri doplnovani za ... | |
je fajn kdyz naseptava, ale kdyz je na vyber moc podobne pojmenovanych souboru a ani nevite co za pismenko doplnit. | |
unix-filename-rubout - maze casti filenamu smerem <--. Jako separator pouziva " " a "/" - neni by default nabindovany | |
"\C-e\C-w": unix-filename-rubout | |
nemaze slova, ale celá jména souborů/adresářů | |
makra | |
* definování maker. globální / per application | |
vyvarovat se bindovani na C-a cokoliv a C-b cokoliv kvuli screen/tmuxu | |
mozne nastavit v souboru (INPUTRC env var), nebo příkaz set (temporary) | |
bind (bash built-in) vam pomuze s informacema co mate a nemate zapnute, nabindovane atd | |
}}} | |
}}} | |
{{{ ~/.bashrc | |
* shopt -s cdspell | |
* promine preklep pri změně adresáře - nepomáhá když jste moc opilí | |
* shopt -s autocd | |
* dobolí udělat cd bez příkazu cd. viz: (nefunguje když je název adresáře shodný s příkazem, funkcí atd) | |
$ cd / | |
$ pwd | |
/ | |
$ var | |
$ pwd | |
/var | |
}}} | |
{{{ Zdroje | |
`man bash` sekce READLINE | |
`info rluserman` je tam vesmes totez co man bash | |
dokumentace/changelog readline | |
github dotfiles repositories. moje je https://github.com/jindraj/dotfiles | |
google :) | |
}}} | |
{{{ tmux | |
screen vs tmux: | |
* screen umí telnet a serial console | |
* z tmuxu se nezblázníte, je stále vy vývoji. | |
* sessions, windows, panes | |
* sessions | |
* jednotlivá sezení, stejně jako ve screeni. Možnost mít jich více. Možnost se mezi nimi přepínat (no detach). | |
* windows | |
* stejné jako ve screen | |
* panes | |
* podobné jako iTerm split panes. | |
* Screen umí také splity = nepříjemné na používání, pouze horizontální (vertikální potřebují patch) | |
Pro začátek jediná zkratka: | |
* C-b ? vypíše nápovědu, nápovědu čerpá i z vašeho configu. Neexistuje že by byla definovaná zkratka a k ní jiný popisek | |
}}} | |
{{{ memes :) | |
readline: http://cdn.meme.am/instances/55558687.jpg | |
screen?: http://cdn.meme.am/instances/58616121.jpg | |
Typical tmux user: http://fc04.deviantart.net/fs71/i/2011/029/8/3/emacs_user_at_work_by_earlcolour-d38aj2x.jpg | |
Tmux není takhle těžký: http://cdn.meme.am/instances/500x/60584312.jpg | |
tmux inside tmux: http://cdn.meme.am/instances/500x/56002545.jpg | |
http://cdn.meme.am/instances/55501453.jpg | |
http://i.stack.imgur.com/tIGSX.jpg | |
}}} | |
# vim:foldmethod=marker:foldlevel=0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment