Porovnat / Diff¶
Porovnejte dva soubory (nebo soubor s jeho neuloženým bufferem) a uvidíte přesně, co se změnilo — řádek po řádku i znak po znaku — v zobrazení vedle sebe; pak jednotlivé změny přeneste na druhou stranu a výsledek uložte.
Spuštění porovnání¶
Všechny způsoby porovnání bydlí v nabídce nejvyšší úrovně Porovnat:
| Příkaz | Porovnává |
|---|---|
| Porovnat ▸ Porovnat dva soubory… | Dva soubory, které vyberete z disku. |
| Porovnat ▸ Porovnat s uloženou verzí | Aktivní buffer (vaše neuložené úpravy) proti verzi na disku. |
| Porovnat ▸ Porovnat se souborem… | Aktivní dokument proti souboru, který vyberete. |
| Porovnat ▸ Porovnat s ▸ | Aktivní dokument proti jiné otevřené kartě — podnabídka vypisuje každý další otevřený dokument (* značí neuložené změny) a porovnává živé buffery, není nutné ukládat. |
| Porovnat ▸ Porovnat složky… | Dva adresářové stromy — poskytuje zásuvný modul Porovnání složek. |
OctoEdit --diff a b (příkazová řádka) |
Dva soubory v samostatném okně prohlížeče — propojení s git difftool. |
Oznámení o změně souboru v editoru také nabízí tlačítko Porovnat, takže si můžete externí změnu prohlédnout ještě před znovunačtením.
Soubory se dekódují podle svého rozpoznaného kódování (UTF-8 s BOM nebo bez něj, UTF-16 LE/BE, nebo systémová kódová stránka ANSI), takže se soubory mimo UTF-8 porovnají správně — a uložení sloučené strany ji zakóduje zpět do původního kódování souboru, včetně BOM.
Čtení výsledku¶
Porovnání se otevře v nové kartě se dvěma soubory vedle sebe a oba panely se posouvají společně.
- Přidané / odebrané / změněné řádky dostanou barevný podklad celého řádku a odpovídající proužek vedle čísel řádků.
- Blok dvou nebo více řádků, který byl přesunut (smazán na jednom místě, beze změny vložen jinde — na změně odsazení nezáleží), se na obou stranách zobrazí modře místo prosté zelené a červené, aby se přeskupení nezaměnilo za úpravu.
- Uvnitř dvojice změněných řádků jsou přesné znaky, které se liší, orámovány výraznější zvýrazňovací barvou, takže úprava jediného slova v dlouhém řádku je na první pohled zřejmá. Zvýraznění se, kde je to možné, zarovná na hranice slov.
- Všechny tyto barvy se řídí aktivním motivem a lze je pro každý motiv upravit (viz Editor motivů); pro světlou i tmavou variantu jsou vestavěné rozumné výchozí hodnoty.
- Změna provedená v Předvolbách, zatímco je porovnání otevřené, se do něj dostane okamžitě: písmo editoru, motiv (a s ním odstíny rozdílů) i pomůcky zobrazení se uplatní na oba panely, aniž byste kartu zavírali a znovu otevírali. Jedinou výjimkou je zalamování řádků — oba panely musí mít shodnou geometrii řádků, aby zůstaly zarovnané, takže se zde neuplatní.
Velmi rozsáhlá porovnání (nad ~1 MB) se počítají na pozadí — panely se objeví ihned se souhrnem »Porovnávání…« a značky dosednou, jakmile se rozdíl dopočítá.
Úpravy ▸ Kopírovat a Vybrat vše (i jejich zkratky) působí na panel, v němž právě je kurzor — klikněte do panelu a zvolíte tak zdroj kopírování.
Ovládací prvky lišty¶
| Prvek | Co dělá |
|---|---|
| ↓ Další / ↑ Předchozí | Skočí oběma panely na následující/předchozí rozdíl (umístěný asi do třetiny zobrazení). Také Alt+Dolů / Alt+Nahoru, pokud má karta porovnání zaměření. |
| Ignorovat bílé znaky | Považuje řádky lišící se jen mezerami za shodné. |
| Ignorovat velikost písmen | Považuje rozdíly ve velikosti písmen za shodné. |
| Zarovnané (výchozí zapnuto) | Doplní kratší stranu každé změny prázdnými výplňovými řádky, aby si odpovídající oblasti seděly přesně vedle sebe v celé viditelné oblasti. Samotné soubory se nikdy nemění. |
| Prohodit strany | Vymění obě strany (názvy, obsah, čekající kopie a všechno ostatní) a porovná znovu v opačném směru. |
| Uložit vlevo / Uložit vpravo | Zapíše text dané strany zpět do jejího souboru poté, co jste do ní zkopírovali změny. Dostupné jen tehdy, má-li strana neuložené kopie; u strany existující pouze v paměti je skryté. |
Souhrn ukazuje počet rozdílů; u shodných souborů se navíc zobrazí vystředěná vrstva »Soubory jsou shodné«, kterou nelze přehlédnout.
Přehledové pravítko¶
Úzký sloupec u pravého okraje ukazuje celé porovnání jedním pohledem — jednu barevnou rysku na rozdíl (zeleně přidáno, červeně odebráno, oranžově změněno, modře přesunuto), umístěnou úměrně jejímu místu v dokumentu. Kliknutím na rysku (nebo kamkoli ve sloupci) skočíte rovnou na nejbližší rozdíl.
Slučování: kopírování změny na druhou stranu¶
Klikněte pravým tlačítkem do některého panelu a pracujte s rozdílem pod kliknutím:
| Položka nabídky | Co dělá |
|---|---|
| Kopírovat / Vybrat vše | Obvyklé operace se schránkou pro panely jen ke čtení. |
| Kopírovat změnu doprava | Nahradí blok této změny na pravé straně blokem ze strany levé. |
| Kopírovat změnu doleva | Totéž v opačném směru. |
| Zpět kopírování | Vrátí nejnovější kopírování (také Ctrl+Z, má-li karta porovnání zaměření). |
Poznámky:
- Oba směry fungují bez ohledu na to, ve kterém panelu změny kliknete pravým tlačítkem — včetně »prázdné« strany čistého vložení nebo smazání.
- Zkopírované řádky přebírají konce řádků cílového souboru, takže sloučení mezi souborem s CRLF a s LF nikdy nevede k míchání konců řádků.
- Po zkopírování se porovnání ihned přepočítá; obě zobrazení zůstanou tam, kde byla.
- Strana upravená kopiemi zobrazuje aktivní tlačítko Uložit vlevo/vpravo; uložení zapíše soubor atomicky a zruší příznak změny. Kopírovat do strany, která nemá soubor na disku (například strana neuloženého bufferu u Porovnat s uloženou verzí), nelze — nebylo by kam ji uložit.
- Zavření karty porovnání s neuloženými kopiemi se před jejich zahozením zeptá.
Obnovuje se s vaší relací
Porovnání souboru se souborem se zapamatuje a při dalším spuštění znovu otevře. Porovnání proti neuloženému bufferu obnovit nelze (strana v paměti je po ukončení pryč) a neuložené kopie se neuchovávají — uložte je nejprve.