Tartalomjegyzék
Neovim
- Szerző: Sallai András
- Copyright © 2019, Sallai András
- Szerkesztve: 2024
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
Bevezetés
A Neovim a vim agresszív módon újraírt változata.
Beszerzés
Indítás
nvim
nvim .
Használat
Mozgás körbe:
Használhatjuk a kurzor billentyűket vagy a „h”-t a balra mozgáshoz, a „j”-t a lefele mozgáshoz, a „k”-t a felfelé mozgáshoz és „l”-t a jobbra mozgáshoz.
Ennek az ablaknak a bezárása:
:q<Enter>
Kilépés a szerkesztőből:
:qa!<Enter>
Vigyázat, minden változtatás törlődik.
Ugrás egy tárgyra:
- Pozíciónáld a kurzort egy tag-re, majd Ctrl+]
Fülek használata
Indításkor nyissunk meg egy fájlt:
vim .
Új fül megnyitása, fájlválasztással:
:tabe .
Váltás a fülek között:
:tabn :tabp
vagy:
gt gT
Fül bezárása:
:q
Ablak felosztása
:sp
Váltás:
Ctrl+w majd egy nyíl billentyűvel válasszunk részt
Vagy:
Ctrl+w majd w a következőre visz
Fájl megnyitása
:e .
Váltás a megnyitott fájlok között:
:b myfile
Utoljára megnézett fájl:
:b#
Új buffer
Új split ablak:
:new
Ugyanabban az ablakban:
:enew
Új vertikálisan felosztva:
:vnew
Új fülön:
:tabnew
Pufferek listázása:
:ls
Váltás:
Ctrl+I Ctrl+O
Parancs végrehajtás
:terminal {command}
Utána meg például:
:b#
Beállítás
mkdir -p ~/.config/nvim touch ~/.config/nvim/init.lua
nvim ~/.config/nvim/init.lua
- ~/.config/nvim/init.lua
vim.cmd("set expandtab") vim.cmd("set tabstop=2") vim.cmd("set softtabstop=2") vim.cmd("set shiftwidth=2")
Aktualizálás:
:source %
Bővítménkezelő
Két bővítménykezelő:
A Lazy-t fogjuk használni. A fenti weblapról másoljuk a vágólapra a következőt:
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not (vim.uv or vim.loop).fs_stat(lazypath) then vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", -- latest stable release lazypath, }) end vim.opt.rtp:prepend(lazypath)
Illesszük be az init.lua fájlba.
Töltsük újra az init.lua tartalmát:
:source %
Most már elérhető a Lazy. Írjuk be:
:Lazy<Enter>
Egészítsük ki:
local plugins = {} local opts = {} require("lazy").setup(plugins, opts)
Színséma
-- ... local plugins = { {"catppuccin/nvim", name = "catppuccin", priority = 1000 }, } local opts = {} require("lazy").setup(plugins, opts) require("catppuccin").setup({ flavour = "mocha" }) vim.cmd.colorscheme "catppuccin"
Neotree
Fontok Windowson:
choco install nerd-fonts-hack
Fontok Debian GNU/Linuxon:
sudo apt install ttf-ancient-fonts
Az neo-tree:
{ "nvim-neo-tree/neo-tree.nvim", branch = "v3.x", dependencies = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended "MunifTanjim/nui.nvim", --"3rd/image.nvim", -- Optional image support in preview window: --See `# Preview Mode` for more information } } -- ... vim.keymap.set('n', '<C-n>', ':Neotree filesystem reveal left<CR>', {})
A teljes init.lua kód:
- ~/.config/nvim/init.lua
vim.cmd("set expandtab") vim.cmd("set tabstop=2") vim.cmd("set softtabstop=2") vim.cmd("set shiftwidth=2") local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not (vim.uv or vim.loop).fs_stat(lazypath) then vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", -- latest stable release lazypath, }) end vim.opt.rtp:prepend(lazypath) local plugins = { {"catppuccin/nvim", name = "catppuccin", priority = 1001 }, { "nvim-neo-tree/neo-tree.nvim", branch = "v3.x", dependencies = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended "MunifTanjim/nui.nvim", --"3rd/image.nvim", -- Optional image support in preview window: --See `# Preview Mode` for more information } } } local opts = {} require("lazy").setup(plugins, opts) require("catppuccin").setup({ flavour = "mocha" }) vim.cmd.colorscheme "catppuccin" vim.keymap.set('n', '<C-n>', ':Neotree filesystem reveal left<CR>', {})
Néhány billentyűkombináció:
- a - fájl hozzáadása
- A - könyvtár hozzáadása
- d - törlés
- r - átnevezés
- . - a könyvtár beállítása root könyvtárként
- q - tree ablak bezárása
- z - csomópontok bezárása
- <CR> - megnyitás
Linkek
- https://neovim.io/ (2024)
- https://github.com/cpow/neovim-for-newbs.git (2024; Kész beállítások typecraft-tól)