ApolloNvim2025/tutorials/11. Gitsigns drobné vylepšení git v Neovim.md

83 lines
3.0 KiB
Markdown
Raw Permalink Normal View History

2025-02-05 10:53:48 +01:00
# 11. Gitsigns drobné vylepšení git v Neovim
2025-02-04 22:56:03 +01:00
Skvělá věc při kódování je vidět smazané či upravené řádky v reálném čase.
2025-02-05 10:53:48 +01:00
Neovim toto standardně nepodporuje, takže použijeme gitsigns:
2025-02-04 22:56:03 +01:00
V našem init.vim přidáme:
```
call plug#begin('~/.config/nvim/plugged')
" gitsigns
Plug 'lewis6991/gitsigns.nvim'
call plug#end()
```
Poznámka: gitsigns vyžaduje `nvim-lua/plenary.nvim `. Protože jsme ho nainstalovali pomocí `telescope` [04. Jak nainstalovat Telescope do editoru Neovim](https://github.com/LukasKanka/ApolloNvim/blob/main/readme/04.%20Jak%20nainstalovat%20Telescope%20do%20editoru%20Neovim.md), jsme pokryti.
2025-02-04 22:56:03 +01:00
2025-02-05 10:53:48 +01:00
Už víte, co máte dělat Uložit, zdroj a `:PlugInstall`.
2025-02-04 22:56:03 +01:00
2025-02-05 10:53:48 +01:00
Gitsigns vyžaduje volání a setup ve vaší konfiguraci, aby to fungovalo. Vytvořme `gitsigns.lua` soubor v našem jmenném adresáři:
2025-02-04 22:56:03 +01:00
`nvim ~/.config/nvim/lua/tvůj-adresář/gitsigns.lua`
A uvnitř tohoto souboru začneme:
```
require('gitsigns').setup {}
```
2025-02-05 10:53:48 +01:00
Pokud nezadáte žádné možnosti, plugin se spustí s výchozím nastavením.
2025-02-04 22:56:03 +01:00
Nyní přidáme gitsigns.luado našeho adresáře jmenného prostoru init.lua soubor:
```
require('tvůj-adresář/telescope')
require('tvůj-adresář/lightline')
require('tvůj-adresář/gitsigns')
```
Můj vypadá takto:
```
require('kankys/telescope')
require('kankys/lightline')
require('kankys/gitsigns')
```
Obnovíme zdroj tohoto souboru pomocí příkazu :source. Gitsigns můžete vidět v akci, když přejdete na projekt na vašem počítači, který je řízen pomocí git. Jakýkoli sledovaný soubor, který byl upraven, zobrazí tuto modifikaci .
Ačkoli to je technicky to, co chceme, umístění nápisu je trochu mimo. Je to proto, že musíme říct Vimovi, aby zobrazoval diagnostické znaky ve sloupci s číslem, nikoli nalevo od čísla. Otevřete svůj init.vim soubor a přidejte nový nastavení:
```
" ... general settings
set signcolumn=number
```
Ulož a obnov zdrouj `:source` init.vim souboru. Nyní by se vaše znaky měly zobrazovat ve sloupci čísel, nikoli vlevo. Chcete-li se dozvědět více o signcolumn spusťte v Neovimu následující příkaz:
``:h signcolumn``
V VSCode je funkce, kterou v Neovim zoufale postrádám. Když jste v projektu, který používá Git, ponecháte kurzor na řádku po určitou dobu způsobí, že se nějaký virtuální text zobrazí v matné barvě. Text bude číst jméno vývojáře, který naposledy upravil řádek, datum modifikace a zprávu odevzdání.
2025-02-05 10:53:48 +01:00
Tuto funkci miluji. `vim-fugitive` má příkaz `:Git blame` příkaz, který řeší stejný případ použití, ale preferuji virtuální text. Chcete-li to povolit, jednoduše přidejte do konfigurace značek Git následující:
2025-02-04 22:56:03 +01:00
```
require('gitsigns').setup {
-- signs config
current_line_blame = true,
current_line_blame_opts = {
virt_text_pos = 'right_align'
}
}
```
2025-02-05 10:53:48 +01:00
A to je vše!
<div style="text-align: center;">
Copyright © 2024 - 2025 🚀 ApolloNvim / Lukáš Kaňka
</div>>