first commit
This commit is contained in:
4
lua/core/init.lua
Normal file
4
lua/core/init.lua
Normal file
@@ -0,0 +1,4 @@
|
||||
require("core.options")
|
||||
require("core.options")
|
||||
require("core.keymaps")
|
||||
|
||||
32
lua/core/keymaps.lua
Normal file
32
lua/core/keymaps.lua
Normal file
@@ -0,0 +1,32 @@
|
||||
-- On définit notre touche leader sur espace
|
||||
vim.g.mapleader = " "
|
||||
|
||||
-- Raccourci pour la fonction set
|
||||
local keymap = vim.keymap.set
|
||||
|
||||
-- on utilise ;; pour sortir du monde insertion
|
||||
keymap("i", ";;", "<ESC>", { desc = "Sortir du mode insertion avec ;;" })
|
||||
|
||||
-- on efface le surlignage de la recherche
|
||||
keymap("n", "<leader>nh", ":nohl<CR>", { desc = "Effacer le surlignage de la recherche" })
|
||||
|
||||
-- I déplace le texte sélectionné vers le haut en mode visuel (activé avec v)
|
||||
keymap("v", "<S-i>", ":m .-2<CR>==", { desc = "Déplace le texte sélectionné vers le haut en mode visuel" })
|
||||
-- K déplace le texte sélectionné vers le bas en mode visuel (activé avec v)
|
||||
keymap("v", "<S-k>", ":m .+1<CR>==", { desc = "Déplace le texte sélectionné vers le bas en mode visuel" })
|
||||
|
||||
-- I déplace le texte sélectionné vers le haut en mode visuel bloc (activé avec V)
|
||||
keymap("x", "<S-i>", ":move '<-2<CR>gv-gv", { desc = "Déplace le texte sélectionné vers le haut en mode visuel bloc" })
|
||||
-- K déplace le texte sélectionné vers le bas en mode visuel (activé avec V)
|
||||
keymap("x", "<S-k>", ":move '>+1<CR>gv-gv", { desc = "Déplace le texte sélectionné vers le bas en mode visuel bloc" })
|
||||
|
||||
-- Changement de fenêtre avec Ctrl + déplacement uniquement au lieu de Ctrl-w + déplacement
|
||||
keymap("n", "<C-h>", "<C-w>h", { desc = "Déplace le curseur dans la fenêtre de gauche" })
|
||||
keymap("n", "<C-j>", "<C-w>j", { desc = "Déplace le curseur dans la fenêtre du bas" })
|
||||
keymap("n", "<C-k>", "<C-w>k", { desc = "Déplace le curseur dans la fenêtre du haut" })
|
||||
keymap("n", "<C-l>", "<C-w>l", { desc = "Déplace le curseur dans la fenêtre droite" })
|
||||
|
||||
-- Navigation entre les buffers
|
||||
keymap("n", "<S-l>", ":bnext<CR>", opts)
|
||||
keymap("n", "<S-h>", ":bprevious<CR>", opts)
|
||||
|
||||
47
lua/core/options.lua
Normal file
47
lua/core/options.lua
Normal file
@@ -0,0 +1,47 @@
|
||||
local opt = vim.opt -- raccourci pour un peu plus de concision
|
||||
|
||||
-- numéros de ligne
|
||||
opt.relativenumber = true -- affichage des numéros de ligne relatives à la position actuelle du curseur
|
||||
opt.number = true -- affiche le numéro absolu de la ligne active lorsque que relativenumber est activé
|
||||
|
||||
-- tabs & indentation
|
||||
opt.tabstop = 2 -- 2 espaces pour les tabulations
|
||||
opt.shiftwidth = 2 -- 2 espaces pour la taille des indentations
|
||||
opt.expandtab = true -- change les tabulations en espaces (don't feed the troll please ;) )
|
||||
opt.autoindent = true -- on garde l'indentation actuelle à la prochaine ligne
|
||||
|
||||
-- recherche
|
||||
opt.ignorecase = true -- ignore la casse quand on recherche
|
||||
opt.smartcase = true -- sauf quand on fait une recherche avec des majuscules, on rebascule en sensible à la casse
|
||||
opt.hlsearch = true -- surlignage de toutes les occurences de la recherche en cours
|
||||
|
||||
-- ligne du curseur
|
||||
opt.cursorline = true -- surlignage de la ligne active
|
||||
|
||||
-- apparence
|
||||
|
||||
-- termguicolors est nécessaire pour que les thèmes modernes fonctionnent
|
||||
opt.termguicolors = true
|
||||
opt.background = "dark" -- dark ou light en fonction de votre préférence
|
||||
opt.signcolumn = "yes" -- affiche une colonne en plus à gauche pour afficher les signes (évite de décaler le texte)
|
||||
|
||||
-- retour
|
||||
opt.backspace = "indent,eol,start" -- on autorise l'utilisation de retour quand on indente, à la fin de ligne ou au début
|
||||
|
||||
-- presse papier
|
||||
opt.clipboard = "unnamedplus" -- on utilise le presse papier du système par défaut
|
||||
|
||||
-- split des fenêtres
|
||||
opt.splitright = true -- le split vertical d'une fenêtre s'affiche à droite
|
||||
opt.splitbelow = true -- le split horizontal d'une fenêtre s'affiche en bas
|
||||
|
||||
opt.swapfile = false -- on supprime le pénible fichier de swap
|
||||
|
||||
opt.undofile = true -- on autorise l'undo à l'infini (même quand on revient sur un fichier qu'on avait fermé)
|
||||
|
||||
opt.iskeyword:append("-") -- on traite les mots avec des - comme un seul mot
|
||||
|
||||
-- affichage des caractères spéciaux
|
||||
opt.list = true
|
||||
opt.listchars:append({ nbsp = "␣", trail = "•", precedes = "«", extends = "»", tab = "> " })
|
||||
|
||||
Reference in New Issue
Block a user