Bagaimana memilih editor, dan mengapa memilih NeoVim?


Seringkali kita menghabiskan lebih banyak waktu pada penyertaan editor daripada yang kita habiskan untuk memperbaiki atau menulis beberapa skrip satu baris. Saya percaya bahwa masalah ini dapat diselesaikan dengan cepat, karena untuk ini ada editor konsol


Latar Belakang


, . .
, 2 — , 10 , . — . .
, "" . , , . .


?


2020 : VSCode, Sublime text, Atom, Vim, Neovim, Emacs, NotePad++, Brackets, Nano .


NeoVim?


, . , , ", ( ) " … ( VSCode) 5 , 3 , 2 , ( - Python, ) 10 . 20 ( , , ) - .


: — , NeoVim — . 2 ( 5, ). NeoVim . . : " Vim', " — , — , .


Vim?


NeoVim . " ", , , . , :


*standard-plugin-list*
Standard plugins 
|pi_gzip.txt|      Reading and writing compressed files
|pi_health.txt|    Healthcheck framework
|pi_matchit.txt|   Extended |%| matching
|pi_msgpack.txt|   msgpack utilities
|pi_netrw.txt|     Reading and writing files over a network
|pi_paren.txt|     Highlight matching parens
|pi_spec.txt|      Filetype plugin to work with rpm spec files
|pi_tar.txt|       Tar file explorer
|pi_zip.txt|       Zip archive explorer

:help () NeoVim


( )




( )


  • Vim
  • , , ( VSCode),

Vim


  • Vim Vimscript
  • : help nvim-from-vim, Vim


NeoVim


j
k
h
l



i — (insert)
a — (append)
I
A
dd — (delete)
dw — (delete a word)
dl — (delete a letter)
o — (insert) ,
O — ,
, delete : 7dl — 7
- visual , y (yank)
p — () (paste)



w — (word)
W — ,
b — ( ) (, ) (backword)
B — (, )
e — ( ) (end of the word)
E — ( )
gg
G
^
$
/ — (n — ; N — )
?



, 50 , 3 . . . — , Ctrl+F, . .




NeoVim 3-4 (, ). NeoVim — . Vim- . , , - , .


Akan sangat tidak jujur ​​jika saya tidak memberikan tautan ke editor yang hebat ini
// Saya menambahkan GitHub proyek - kira - kira. moderator


Seperti yang dikatakan Tim Berners-Lee:


Sihir tidak ada lagi setelah Anda memahami cara kerjanya.

Untuk berjaga-jaga, saya akan meninggalkan konfigurasi di sini yang saya gunakan:


call plug#begin()

" FuzzyFinder (  )
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'junegunn/fzf.vim'
" NERDTree -   
Plug 'preservim/nerdtree'
" oc -  
Plug 'neoclide/coc.nvim', {'branch': 'release'}
"   NERDTree
Plug 'tiagofumo/vim-nerdtree-syntax-highlight'
Plug 'scrooloose/nerdcommenter'
"   Git,     NERDTree
Plug 'airblade/vim-gitgutter'
Plug 'ryanoasis/vim-devicons'
"  
Plug 'itchyny/lightline.vim'
" 
Plug 'joshdick/onedark.vim'
Plug 'cocopon/iceberg.vim'
"  
Plug 'scrooloose/syntastic' 
"  
"Plug 'Valloric/YouCompleteMe'
"  Python
"Plug 'klen/python-mode'
call plug#end()

"  Vim  
set nocompatible
set t_Co=256

"            
"    **NeoVim**
set number
set ruler

"   jkl -   Escape   Insert
inoremap jkl <ESC>

"  ,      
nmap  j
nmap  k
nmap  h
nmap  l
nmap  i
nmap  a
nmap  d

"    Ctrl+n  :NERDTree
nmap <C-n> :NERDTreeToggle<CR>
vmap ++ <plug>NERDCommenterToggle
nmap ++ <plug>NERDCommenterToggl

let g:NERDTreeGitStatusWithFlags = 1
let g:NERDTreeIgnore = ['^node_modules$']

"   **NeoVim**
syntax on
colorscheme iceberg

"  : 
set noshowmode "  --INSERT--     
set laststatus=2
let g:lightline = {
      \ 'colorscheme': 'iceberg',
      \ 'active': {
      \   'left': [ [ 'mode', 'paste' ],
      \             [ 'gitbranch', 'readonly', 'filename', 'modified' ] ]
      \ },
      \ 'component_function': {
      \   'gitbranch': 'fugitive#head'
      \ },
      \ }

Source: https://habr.com/ru/post/undefined/


All Articles