A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
Következő változat | Előző változat | ||
oktatas:linux:neovim [2019/08/16 19:32] admin létrehozva |
oktatas:linux:neovim [2024/05/17 12:55] (aktuális) admin [Linkek] |
||
---|---|---|---|
Sor 4: | Sor 4: | ||
* **Szerző:** Sallai András | * **Szerző:** Sallai András | ||
- | * Copyright (c) Sallai András, 2019 | + | * Copyright (c) 2019, Sallai András |
- | * [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]] | + | * Szerkesztve: 2024 |
+ | * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] | ||
* Web: https://szit.hu | * Web: https://szit.hu | ||
Sor 22: | Sor 23: | ||
nvim | nvim | ||
+ | nvim . | ||
===== Használat ===== | ===== Használat ===== | ||
Sor 41: | Sor 43: | ||
* Pozíciónáld a kurzort egy tag-re, majd Ctrl+] | * 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 | ||
+ | |||
+ | |||
+ | <code lua ~/.config/nvim/init.lua> | ||
+ | vim.cmd("set expandtab") | ||
+ | vim.cmd("set tabstop=2") | ||
+ | vim.cmd("set softtabstop=2") | ||
+ | vim.cmd("set shiftwidth=2") | ||
+ | </code> | ||
+ | |||
+ | Aktualizálás: | ||
+ | :source % | ||
+ | |||
+ | ===== Bővítménkezelő ===== | ||
+ | |||
+ | Két bővítménykezelő: | ||
+ | * https://github.com/wbthomason/packer.nvim | ||
+ | * https://github.com/folke/lazy.nvim | ||
+ | |||
+ | |||
+ | A Lazy-t fogjuk használni. A fenti weblapról másoljuk a vágólapra a következőt: | ||
+ | |||
+ | <code lua> | ||
+ | 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) | ||
+ | </code> | ||
+ | |||
+ | |||
+ | 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: | ||
+ | |||
+ | <code lua> | ||
+ | local plugins = {} | ||
+ | local opts = {} | ||
+ | |||
+ | require("lazy").setup(plugins, opts) | ||
+ | </code> | ||
+ | |||
+ | ===== Színséma ===== | ||
+ | |||
+ | <code lua> | ||
+ | -- ... | ||
+ | |||
+ | local plugins = { | ||
+ | {"catppuccin/nvim", name = "catppuccin", priority = 1000 }, | ||
+ | } | ||
+ | local opts = {} | ||
+ | |||
+ | require("lazy").setup(plugins, opts) | ||
+ | |||
+ | require("catppuccin").setup({ | ||
+ | flavour = "mocha" | ||
+ | }) | ||
+ | |||
+ | vim.cmd.colorscheme "catppuccin" | ||
+ | |||
+ | </code> | ||
+ | |||
+ | ===== Neotree ===== | ||
+ | |||
+ | Fontok Windowson: | ||
+ | choco install nerd-fonts-hack | ||
+ | |||
+ | Fontok Debian GNU/Linuxon: | ||
+ | sudo apt install ttf-ancient-fonts | ||
+ | |||
+ | |||
+ | Az neo-tree: | ||
+ | * https://github.com/nvim-neo-tree/neo-tree.nvim | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | <code lua> | ||
+ | { | ||
+ | "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>', {}) | ||
+ | </code> | ||
+ | |||
+ | |||
+ | A teljes init.lua kód: | ||
+ | |||
+ | <code lua ~/.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>', {}) | ||
+ | |||
+ | </code> | ||
+ | |||
+ | 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/neovim/neovim/blob/master/INSTALL.md#linux (2024) | ||
+ | * https://www.jackfranklin.co.uk/blog/executing-tasks-in-neovim/ (2024) | ||
+ | * https://dotfyle.com/neovim/plugins (2024) | ||
+ | * https://www.chiarulli.me/Neovim/02-vim-general-settings/ (2024) | ||
+ | * https://www.youtube.com/watch?v=fFHlfbKVi30&t=11s | ||
+ | |||
+ | * https://github.com/cpow/neovim-for-newbs.git (2024; Kész beállítások typecraft-tól) |