Instalar NVIM
Indice
Configuramos nuestro editor
Resultado Final
Pasos para la instalación
Actualizamos el apt
sudo apt-get update
Ahora podemos installar neovim
sudo apt-get -y install neovim
Nos metemos en config
cd .config/
Chequeamos que tengamos la carpeta nvim
ls -la
En caso de no tenerla, la creamos
mkdir nvim
Accedemos a la carpeta creada
cd vim
Creamos el archivo init.vim que es el que contendra toda la configuración de nuestro ide
touch init.vim
Creamos una carpeta en donde van a estar nuestras configuraciones
mkdir general
Accedemos a la carpeta
cd general
Y creamos nuestro archivo de configuración
touch settings.vim
Dentro de este, pegamos lo siguiente (Ctrl + Shift + v)
synta enable
set t_Co=256
set encoding=utf-8
set hidden
set number
set title
set mouse=a
set nowrap
set cursorline
set tabstop=2
set shiftwidth=2
set softtabstop=2
set shiftround
set expandtab
set ignorecase
set smartcase
set spelllang=en,es
set termguicolors
set background=dark
set noshowmode
set clipboard=unnamed
set numberwidth=1
set showcmd
set ruler
set showmatch
" set relativenumber
" Theme Gruvbox
colorscheme gruvbox
let g:gruvbox_contrast = 'hard'
let g:gruvbox_termcolors = 256
highlight Normal ctermbg=NONE
Ahora nos metemos en el archivo init.vim y copiamos lo siguiente, para poder hacer referencia a nuestro archivo
source $HOME/.config/nvim/general/settings.vim
Instalamos vim plug
curl -fLo "${XDG_DATA_HOME:-$HOME/.config}"/nvim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
En nvim, creamos la carpeta vim-plug, dentro le metemos el archivo plugins.vim
mkdir vim-plug
cd vim-plug
touch plugins.vim
Dentro de este archivo, pegamos la siguiente configuración
" auto-install vim-plug
if empty(glob('~/.config/nvim/autoload/plug.vim'))
silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
"autocmd VimEnter * PlugInstall
"autocmd VimEnter * PlugInstall | source $MYVIMRC
endif
call plug#begin('~/.config/nvim/autoload/plugged')
" Better Syntax Support
Plug 'sheerun/vim-polyglot'
" File Explorer
Plug 'scrooloose/NERDTree'
" Auto pairs for '(' '[' '{'
Plug 'jiangmiao/auto-pairs'
" Gruvbox theme
Plug 'morhetz/gruvbox'
Plug 'godlygeek/csapprox'
Plug 'powerline/powerline'
Plug 'easymotion/vim-easymotion'
Plug 'christoomey/vim-tmux-navigator'
" Airline
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
Plug 'mhartington/oceanic-next'
call plug#end()
Ahora en el archivo init.vim, pegamos lo siguiente (arriba de todo)
source $HOME/.config/nvim/vim-plug/plugins.vim
Ahora entramos a nvim, entramos en modo comando con escape y luego los dos puntos y escribimos lo siguiente
:PlugInstall
Salimos con :q
Creamos la carpetas en la que tendremos los temasd (la carpeta estara dentro de .config/nvim)
mkdir themes
cd themes
touch airline.vim
nvim airline.vim
Y dentro de este, pegamos lo siguiente:
" enable tabline
let g:airline#extensions#tabline#enabled = 0
" let g:airline#extensions#tabline#left_sep = ''
" let g:airline#extensions#tabline#left_alt_sep = ''
" let g:airline#extensions#tabline#right_sep = ''
" let g:airline#extensions#tabline#right_alt_sep = ''
" enable powerline fonts
let g:airline_powerline_fonts = 1
let g:powerline_pycmd = 'py3'
" let g:airline_left_sep = ''
" let g:airline_right_sep = ''
" Switch to your current theme
let g:airline_theme = 'gruvbox'
" Always show tabs
set showtabline=2
Ahora en init tenemos que agregar lo siguiente
source $HOME/.config/nvim/themes/airline.vim
Agregon algunos atajos (esto es opcional)
mkdir keys
cd keys
touch mappings.vim
nvim mappings.vim
Y pegamos
nnoremap <C-n> :NERDTreeToggle<CR>
nmap <Leader>s <Plug>(easymotion-s2)
nmap <C-s> :w<CR>
nmap <C-q> :q<CR>
Agregamos el ultimo a init.vim
source $HOME/.config/nvim/keys/mappings.vim
Modo normal
- Por defecto no podemos escribir, solo nos permite movernos con la j/k/l/h
dd
corta una linead(cantidad de lineas)
corto n lineasyy
copia una lineay(cantidad de lineas)y
copia n lineasp
pegamos la lineau
Retroseder en los cambiosCtrl + r
Rehacer
Modo Insert (entramos con la i)
- Se utiliza para modificar el codigo
i, a o insert
Modo visual (entramos con la v)
- Sirve para copiar y pegar de forma mas comoda (con el mause)
d
cortary
copiarp
pegar
Modo comandos (esc + :
)
esc
Para salir del modo insertar usamos , Cuando salimos, podemos mandarle parametros con:
.q
para salir del archivo sin guardarq!
sale del archivo directamente y no preguntaw
solo guardawq!/x!
sale y guardaset nu
agrega numeros en la consolaset background=dark
Ctrl + v/d
pegar
Links de ayuda
- Instalar debian 11
- Copiar y Pegar entre la virtual box y nuestro Sistema Operativo
- Video de ayuda para preparar el blog
- CheatSheet
Comandos basicos
Para introducir datos presionamos i
y para salir esc
- Es equivalente al Ctrl + Z: Alt + U
- Eliminar Palabra Ctrl + W
- Borrar toda una linea DD
Si queremos copiar y pegar muchas cosas hacemos
esc
+v
y seleccionamos,- Copiar
y
- Cortar
d
- Pegar
p
- Copiar
Repetir la accion anterior
:esc
+.
- Grabar accion
q
+nombre de la accion
+ d w para cortar por ejemplo “+q
//no funca - Modo busqueda:
esc
+/
+palabra a buscar
- Reemplazar:
esc
+:%s/palabra a buscar/palabra a reemplazar/g