Lekce 2 - IntelliJ IDEA - Pokročilé vyhledávání a multikurzory
V minulé lekci, IntelliJ IDEA - Úvod do vývojového prostředí, jsme se seznámili s licencemi, instalací a prostředím IntelliJ IDEA.
V IntelliJ IDEA tutoriálu se mimo jiné naučíme efektivně používat pokročilé vyhledávací nástroje a multikurzor.
Režimy obrazovky
IntelliJ IDEA nabízí několik režimů, jak zobrazit okno aplikace. Režimy okna jsou následující:
- Presentation mode (prezentační mód) - Bude zobrazen pouze editor, který automaticky přejde na celoobrazovkový režim. Žádné další nástroje nebudou vidět. Velikost písma se automaticky zvětší.
- FullScreen mode (celoobrazový režim) - Zvětší hlavní okno přes celou obrazovku.
- Distraction-free mode (nerušivý mód) - Zobrazí se pouze editor, žádné další nástroje nebudou vidět.
- Zen mode - kombinace FullScreen a Distraction-free módů.
Níže vidíme (zleva) Presentation mode, Full screen mode a Distraction free mode:
Prezentační mód se přímo hodí k využití při online streamování kódu. FullScreen mód se může hodit, když máte k dispozici více monitorů. Na jednom monitoru poběží IntelliJ ve fullscreen módu a na druhém monitoru poběží další software, případně laděný program.
Synchronizace otevřeného souboru a stromové struktury souborů
Pokud pracujeme na velkém projektu, je velmi užitečné vidět v adresářové struktuře, v jakém souboru se zrovna nacházíme a jaké soubory jsou "kolem":
Funkci synchronizace lze aktivovat kliknutím na ozubené kolečko v záložce "Project" (1) a výběrem možností (2):
- První položka Open Files with Single Slick usnadní otevírání souborů na jedno kliknutí.
- Druhá položka Always Select Opened File nám zařídí synchronizaci.
Od teď, když budete přepínat mezi taby v editoru, budou se také automaticky přepínat vybrané soubory v záložce "Project".
Vyhledávání
Každé kvalitní vývojové prostředí nabízí propracované vyhledávání. V IntelliJ IDEA lze vyhledávat hned v několika módech. Nejdříve je ale třeba rozlišit, zdali vyhledáváme soubory nebo obsah v nich.
Vyhledávání všeho
V tomto módu lze vyhledávat vše, na co si uživatel vzpomene. Soubory (všeho druhu), nastavení, tabulky v databázi:
Nejuniverzálnější vyhledávání se aktivuje pomocí 2 stisknutí klávesy ShiftShift.
Vyhledávání konkrétního souboru/třídy/symbolu/akce
Pokud víme, o který druh vyhledávaného souboru se jedná, můžeme použít konkrétní vyhledávání:
- Vyhledávání tříd - Ctrl + N
- Vyhledávání souborů - Ctrl + Shift + N
- Vyhledávání symbolů - Ctrl + Alt + Shift + N
- Vyhledávání akce - Ctrl + Shift + A
Přepínač pro vyhledávání i v knihovnách
Po dvojitém stisknu klávesy Shift se aktivuje vyhledávání souborů pouze v rámci projektu.
Pokud budeme chtít prohledávat také obsah knihoven třetích stran, je třeba znovu 2x stisknout klávesu ShiftShift.
Aktuální mód je rozpoznatelný podle checkboxu "Include non-project items", který je zaškrtnutý, či nikoliv.
Vyhledávání obsahu v souborech
Když známe řetězec, který se objevuje v souborech, ale nevíme v kterých, sáhneme po této možnosti.
Pomocí klávesové zkratky Ctrl + Shift + F budeme prohledávat zadaný řetězec ve všech souborech, které jsou v projektu:
Vyhledávat lze ve třech režimech (na obrázku číslo 1), které lze vzájemně kombinovat:
- match case - Vyhledávaný podřetězec (ne)musí dodržet velká a malá písmena
- words - Vyhledávaný řetězec (ne)musí být nalezen jako samostatné slovo
- regex - Vyhledávaný řetězec (ne)musí odpovídat zadanému regulárnímu výrazu
Další možností je filtrovat soubory, ve kterých se bude prohledávat
(číslo 2 na obrázku). Je možné vybrat jednu z předpřipravených masek
(*.java
), nebo si přidat masku vlastní. Masku lze přidat
jednoduše zápisem do textového políčka s maskami.
Poslední možností filtrování je určení místa, ve kterém se prohledávané soubory nachází (číslo 3 na obrázku):
- in project - zahrnuje veškeré soubory v projektu
- module - zahrnuje jeden modul v projektu
- directory - uživatel může ručně vybrat složku, ve které se budou soubory prohledávat
- scope - uživatelem ručně definovaný prostor, ve které se budou soubory prohledávat (vysvětlíme si později)
Připnutí výsledků vyhledávání
Když už jsme spokojeni s nalezenými výsledky, můžeme si výsledky připnout do záložky.
K tomu slouží tlačítko "OPEN IN FIND WINDOW".
Po stisku tlačítka se vytvoří nová záložka (pokud předtím neexistovala) "Find", ve které budou taby pro jednotlivá vyhledávání:
Zachování předchozího výsledku vyhledávání
Výsledky vyhledávání se automaticky přepíší novým vyhledáváním. Abychom si zachovali předchozí výsledek, je třeba ho "připnout".
K připnutí tabu s výsledkem musíme kliknout na tab pravým tlačítkem myši a v kontextové nabídce zvolit možnost "Pin tab":
Multikurzory
Nyní se podívejme na jednu speciální vychytávku. Občas se nám stane, že potřebujeme na několika místech napsat nebo změnit ten samý text, např. jsme na koncích více řádků zapomněli středník. My jej ale můžeme napsat jen jednou a to pomocí multikurzorů, které umožňují editaci textu na více místech najednou:
Kurzory můžeme vytvořit několika způsoby.
Označením více řádků pomocí myši
Podržením kolečka myši a potáhnutím lze vytvořit více kurzorů.
Vytvoření více kurzorů pomocí šipek
Myš je užitečná věc, ale co se týká efektivity, tak tam to není moc dobré. Proto si ukážeme, jak vytvořit více kurzorů pouze za pomoci klávesnice.
Dvakrát stiskneme klávesu Ctrl (po druhé ji nepouštějte) a pak pomocí šipek (nahoru/dolů) vytvoříme nové kurzory.
Vytvoření více kurzorů nad celými řetězci
Vytvořit více kurzorů lineárně je dobrá věc, ale ne moc praktická. Proto si ukážeme postup, jak vytvořit více kurzorů tak, aby každý nový kurzor začínal u následujícího vybraného řetězce.
Vybereme řetězec, který se v otevřeném souboru vyskytuje vícekrát. Pomocí klávesové zkratky Alt + J vytvoříme nový kurzor. Přidáme-li stisk klávesy Alt, odebereme poslední přidaný kurzor. Přidáme-li ještě klávesu Shift, vytvoří se kurzor pro všechny nalezené řetězce.
V příští lekci, IntelliJ IDEA - Scopes, Live Templates, Databáze, Pluginy, na nás čekají scopes, live templates, SQL Explorer a pluginy.