My vim configuration for JavaScript development. Dependencies availalble:
- yarn 1.16.0
- npm 6.4.1
- node 10.x
- screen (to run in backgroud webpack dev server or something else ...)
Vim sessions can be stored if the /home/node/.vim/sessions is mapped to a volume.
Today only one session can be saved, because the name of the session refer to the WORKDIR (/home/node/app).
So all sessions rewrite the app.node.home.vim file.
docker run -ti --rm -v $(pwd):/home/node/app shenron/vim-ide
docker run -ti --rm -v $(pwd):/home/node/app vim-ide /bin/bashvim
If for some reasons you want to install vim-ide on your host (Gnu Linux / OSX),
- check mandatory dependencies
- python
- git
- cmake
- ctags
- editorconfig
- jsctags
(from npm install -g jsctags) - tstags
(from npm install -g git+https://github.com/Perlence/tstags.git)
-
clone the project in
~/.vim/git clone https://github.com/shenron/docker-vim-ide.git ~/.vim/ -
run
cd ~/.vim/ && ./host-install
- pangloss/vim-javascript
- posva/vim-vue
- editorconfig/editorconfig-vim
- Valloric/YouCompleteMe
- Shougo/vimproc.vim
- w0rp/ale
- airblade/vim-gitgutter
- terryma/vim-multiple-cursors
- leafgarland/typescript-vim
- ternjs/tern_for_vim
- Raimondi/delimitMate
- ctrlpvim/ctrlp.vim
- scrooloose/nerdtree
- majutsushi/tagbar
- Yggdroot/indentLine
- jacquesbh/vim-showmarks
- sjl/gundo.vim
- vim-airline/vim-airline
- severin-lemaignan/vim-minimap
- tpope/vim-fugitive
- NLKNguyen/papercolor-theme
- crusoexia/vim-monokai
- morhetz/gruvbox
- acarapetis/vim-colors-github
- vim-airline/vim-airline-themes
-
tabs navigation
nnoremap <S-Tab> :tabprevious<CR>nnoremap <Tab> :tabnext<CR> -
NerdTree toggle
map <silent> <C-o> :NERDTreeToggle<CR>map <silent> <C-f> :NERDTreeFind<CR> -
Align file
:nnoremap <localleader>= <Esc>gg=G<C-o> -
outindent /indent
vnoremap < <gvvnoremap > >gv -
tagbar
nmap <C-g> :TagbarToggle<CR> -
Gundo toggle
map <silent> <C-h> :GundoToggle<CR> -
show buffer
:nnoremap <localleader>b :ls<CR>:buffer<Space> -
marks
:nnoremap <localleader>m :<CR>:DoShowMarks<CR>:nnoremap <localleader>m! :<CR>:NoShowMarks<CR> -
delete marks
:delm! | delm A-Z0-9 -
sessions
:nnoremap <localleader>q :<CR>:execute MakeSession()<CR>:nnoremap <localleader>o :<CR>:execute OpenSession()<CR>
