-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
24 lines (16 loc) · 1.54 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
FROM ubuntu
MAINTAINER gggzs ([email protected])
RUN apt-get update && apt-get install -y vim cscope ctags git build-essential cmake python-dev python3-dev
RUN mkdir ~/vimscript && mkdir -p ~/.vim/bundle && git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
RUN echo "set nocompatible\nfiletype off\nset rtp+=~/.vim/bundle/Vundle.vim\ncall vundle#begin()\nPlugin 'VundleVim/Vundle.vim'" >> /etc/vim/vimrc.local
RUN echo "Plugin 'Valloric/YouCompleteMe'\nPlugin 'taglist.vim'\nPlugin 'winmanager'\ncall vundle#end()\nfiletype plugin indent on\n'" >> /etc/vim/vimrc.local
RUN echo "set cursorline\nset tabstop=4\nset softtabstop=4\nset shiftwidth=4\nset expandtab\nset nobackup\nset noundofile\nset fdm=syntax\nset fileformats=unix\nset encoding=utf-8" >> /etc/vim/vimrc.local
RUN vim +PluginInstall +qall
RUN echo "let Tlist_File_Fold_Auto_Close=1\nset autochdir" >> /etc/vim/vimrc.local
RUN echo "let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/.ycm_extra_conf.py'" >> /etc/vim/vimrc.local
RUN echo "def Settings( **kwargs ):\n\treturn {\n\t'flags': [ '-x', 'c++', '-Wall', '-Wextra', '-Werror' ],\n\t}">> ~/.vim/bundle/YouCompleteMe/.ycm_extra_conf.py
RUN echo "let g:winManagerWindowLayout = \"TagList|FileExplorer,BufExplorer\"\nnmap <silent> <F9> :WMToggle<cr>" >> /etc/vim/vimrc.local
RUN echo "let g:ycm_semantic_triggers = {'c' : ['->', '.','re!\w{2}'],'cpp,objcpp' : ['->', '.', '::'],}" >> /etc/vim/vimrc.local
RUN cd ~/.vim/bundle/YouCompleteMe && ./install.py --clang-completer
WORKDIR /myproject
CMD ["/bin/bash"]