Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fixed plugin configs and added a personal config to the installer #9

Open
wants to merge 25 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
temp_dirs
vimrcs/.secrets.vim
vimrcs/plugins-config/snapshots/
tags
Session.vim
98 changes: 98 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
FROM ubuntu:16.04
MAINTAINER "https://github.com/zigius"

SHELL ["/bin/bash", "-c"]
RUN \

# set locale
locale-gen en_US.UTF-8 && \
dpkg-reconfigure locales && \

# install ubuntu stuff
sed -i 's/# \(.*multiverse$\)/\1/g' /etc/apt/sources.list && \
mkdir -p /var/run/sshd && \
apt-get update && \
apt-get -y upgrade && \
apt-get install -y make gcc g++ automake autoconf libc6-dev build-essential libtool openssl libssl-dev libxslt-dev libxml2-dev && \
apt-get install -y gfortran libopenblas-dev liblapack-dev python-dev && \
apt-get install -y libsqlite3-dev libbz2-dev libxslt1-dev libffi-dev ncurses-dev cmake && \
apt-get install -y software-properties-common byobu curl git htop man unzip vim wget supervisor vim-gnome xclip xsel && \
apt-get install -y nodejs npm silversearcher-ag && \
rm -rf /var/lib/apt/lists/*

RUN \

# install pyenv
git clone git://github.com/yyuu/pyenv.git /root/.pyenv && \
echo 'after first clone' && \
git clone https://github.com/yyuu/pyenv-virtualenv.git /root/.pyenv/plugins/pyenv-virtualenv && \
echo 'after second clone' && \
echo -e '\n\n# pyenv' >> /root/.bashrc && \
echo 'export PYENV_ROOT="/root/.pyenv"' >> /root/.bashrc && \
echo 'export PATH="$PYENV_ROOT/bin:$PYENV_ROOT/shims:/usr/texbin:$PATH"' >> /root/.bashrc && \
echo 'eval "$(pyenv init -)"' >> /root/.bashrc && \
echo 'eval "$(pyenv virtualenv-init -)"' >> /root/.bashrc

# create pyenv environments. Interactive shell because we need the bashrc
RUN ["/bin/bash", "-ic", "pyenv install 3.4.1"]
RUN ["/bin/bash", "-ic", "pyenv install 2.7.9"]
RUN ["/bin/bash", "-ic", "pyenv rehash"]
RUN ["/bin/bash", "-ic", "pyenv virtualenv 3.4.1 neovim3"]
RUN ["/bin/bash", "-ic", "pyenv virtualenv 2.7.9 neovim2"]
RUN ["/bin/bash", "-ic", "pyenv activate neovim3; pip install neovim"]
RUN ["/bin/bash", "-ic", "pyenv activate neovim2; pip install neovim"]

RUN \

# Install neovim
add-apt-repository -y ppa:neovim-ppa/unstable && \
apt-get update && \
apt-get install -y neovim && \
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

RUN \

# download vim plug
curl -fLo /root/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim && \

# install custom configurations
git clone https://github.com/zigius/vimrc.git /root/.vim_runtime3 && \
sh /root/.vim_runtime3/install.sh

RUN \

# make directories and symlinks for neovim
mkdir /root/.config && \
ln -s /root/.vim /root/.config/nvim && \
ln -s /root/.vimrc /root/.config/nvim/init.vim

# Install plugins
RUN vim +PlugInstall +qall

# Set environment variables.
ENV HOME /root

# for ultisnips or ycm
ENV PYTHON_CONFIGURE_OPTS "--enable-shared"

# Define default command.
CMD ["bash"]

# Crucial instructions for mac users to enable clipboard tunneling:
# 1. make sure XQuartz is installed and running
# 2. make sure allow connections in xquartz is enabled.
# 3. make sure to open xquartz app from iterm after xquartz is opened using : open -a XQuartz
# 4. get your display ip using the following command (for multiple displays the solution is currently not tested):
# IP=$(ifconfig en0 | grep inet | awk '$1=="inet" {print $2}') xhost + $IP

# to automatically add ip to xhost add the following lines to your bashrc file
# export IP=$(ifconfig en0 | grep inet | awk '$1=="inet" {print $2}')
# xhost + $IP

# Based on the following links:
# https://forums.docker.com/t/how-to-run-gui-apps-in-containiers-in-osx-docker-for-mac/17797/7
# https://fredrikaverpil.github.io/2016/07/31/docker-for-mac-and-gui-applications/

# 5. docker run with the following command :
# docker run -it -e DISPLAY=$IP:0 -v /tmp/.X11-unix:/tmp/.X11-unix neovimtest:one bash
64 changes: 39 additions & 25 deletions install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,40 +2,54 @@ cd ~/.vim_runtime3

echo '
source ~/.vim_runtime3/plugins-list.vim

source ~/.vim_runtime3/vimrcs/basic/basic.vim
source ~/.vim_runtime3/vimrcs/basic/buffers.vim
source ~/.vim_runtime3/vimrcs/basic/folds.vim
source ~/.vim_runtime3/vimrcs/basic/jumps.vim
source ~/.vim_runtime3/vimrcs/basic/tabs.vim
source ~/.vim_runtime3/vimrcs/basic/windows.vim

source ~/.vim_runtime3/vimrcs/extended/gui.vim
source ~/.vim_runtime3/vimrcs/extended/abbreviations.vim
source ~/.vim_runtime3/vimrcs/extended/undo.vim

source ~/.vim_runtime3/vimrcs/filetypes/coffee.vim
source ~/.vim_runtime3/vimrcs/filetypes/javascript.vim
source ~/.vim_runtime3/vimrcs/filetypes/json.vim
source ~/.vim_runtime3/vimrcs/filetypes/python.vim
source ~/.vim_runtime3/vimrcs/filetypes/go.vim

source ~/.vim_runtime3/vimrcs/plugins-config/plugins-config.vim
" source ~/.vim_runtime3/vimrcs/extended/abbreviations.vim

" source ~/.vim_runtime3/vimrcs/filetypes/javascript.vim
" source ~/.vim_runtime3/vimrcs/filetypes/json.vim
" source ~/.vim_runtime3/vimrcs/filetypes/python.vim
" source ~/.vim_runtime3/vimrcs/filetypes/go.vim
" source ~/.vim_runtime3/vimrcs/filetypes/clojure.vim

" source ~/.vim_runtime3/vimrcs/plugins-config/plugins-config.vim

if has('"'"'nvim'"'"')
source ~/.vim_runtime3/vimrcs/neovim/neovim.vim
endif

source ~/.vim_runtime3/vimrcs/opinionated/colorscheme.vim
source ~/.vim_runtime3/vimrcs/opinionated/d-is-for-delete.vim
source ~/.vim_runtime3/vimrcs/opinionated/escape-key.vim
source ~/.vim_runtime3/vimrcs/opinionated/yank.vim
source ~/.vim_runtime3/vimrcs/opinionated/experiment.vim

" source ~/.vim_runtime3/vimrcs/opinionated/experiment.vim
try
" source ~/.vim_runtime3/vimrcs/my-configs.vim
source ~/.vim_runtime3/vimrcs/python.vim
source ~/.vim_runtime3/vimrcs/basic/buffers.vim
source ~/.vim_runtime3/vimrcs/extended/move-line.vim
source ~/.vim_runtime3/vimrcs/basic/windows.vim
source ~/.vim_runtime3/vimrcs/.secrets.vim
source ~/.vim_runtime3/vimrcs/basic/folds.vim
source ~/.vim_runtime3/vimrcs/opinionated/d-is-for-delete.vim
source ~/.vim_runtime3/vimrcs/opinionated/escape-key.vim
source ~/.vim_runtime3/vimrcs/opinionated/yank.vim
source ~/.vim_runtime3/vimrcs/opinionated/terminal.vim
source ~/.vim_runtime3/vimrcs/opinionated/macro.vim

" plugins
source ~/.vim_runtime3/vimrcs/plugins-config/nerdtree.vim
source ~/.vim_runtime3/vimrcs/plugins-config/fzf.vim
source ~/.vim_runtime3/vimrcs/plugins-config/fugitive.vim
source ~/.vim_runtime3/vimrcs/plugins-config/ack.vim
source ~/.vim_runtime3/vimrcs/plugins-config/sneak.vim
source ~/.vim_runtime3/vimrcs/plugins-config/rooter.vim
source ~/.vim_runtime3/vimrcs/plugins-config/autosave.vim
source ~/.vim_runtime3/vimrcs/plugins-config/vimwiki.vim

source ~/.vim_runtime3/vimrcs/opinionated/colorscheme.vim
" source ~/.vim_runtime3/vimrcs/onedark.vim
" source ~/.vim_runtime3/vimrcs/monokai.vim
catch
endtry
' > ~/.vimrc

echo "Installed vimrc 3.0 successfully!"




203 changes: 158 additions & 45 deletions plugins-list.vim
Original file line number Diff line number Diff line change
@@ -1,49 +1,162 @@
function! BuildYCM(info)
" info is a dictionary with 3 fields
" - name: name of the plugin
" - status: 'installed', 'updated', or 'unchanged'
" - force: set on PlugInstall! or PlugUpdate!
if a:info.status == 'installed' || a:info.force
!./install.py --tern-completer
endif
endfunction

call plug#begin('~/.vim/plugged')

Plug 'mileszs/ack.vim', { 'tag': '1.0.9' }
Plug 'jasoncodes/ctrlp-modified.vim', { 'tag': 'v0.1.0' } | Plug 'kien/ctrlp.vim', { 'tag': '1.79' }
Plug 'scrooloose/nerdtree', { 'tag': '5.0.0' } | Plug 'jistr/vim-nerdtree-tabs', { 'tag': 'v1.4.6'} | Plug 'Xuyuanp/nerdtree-git-plugin', { 'commit': 'e71e62f' }
Plug 'junegunn/goyo.vim', { 'tag': '1.6.0' }
Plug 'scrooloose/syntastic', { 'commit': '0bedeb9' }
Plug 'Valloric/YouCompleteMe', { 'do': function('BuildYCM') }

Plug 'majutsushi/tagbar', { 'tag': 'v2.6.1' }
Plug 'tomtom/tcomment_vim', { 'tag': 'v201' }
Plug 'tpope/vim-abolish', { 'tag': 'v1.1' }
Plug 'vim-airline/vim-airline', { 'tag': 'v0.8' } | Plug 'vim-airline/vim-airline-themes', { 'commit': '020b843' }
Plug 'tpope/vim-fugitive', { 'tag': 'v2.2' }
Plug 'airblade/vim-gitgutter', { 'commit': '26c6b54' }
Plug 'tpope/vim-obsession', { 'commit': 'ad1ef9a'}
Plug 'tpope/vim-repeat', { 'tag': 'v1.1'}
Plug 'airblade/vim-rooter', { 'commit': '70c105c'}
Plug 'tpope/vim-surround', { 'tag': 'v2.1'}
Plug 'amix/vim-zenroom2', { 'commit': '948734e'}
Plug 'gabrielelana/vim-markdown'

" languages plugins
Plug 'moll/vim-node', { 'tag': 'v0.8.1'}
Plug 'pangloss/vim-javascript', { 'tag': 'v1.1.3'}
Plug 'othree/yajs.vim', { 'tag': '1.6'}
Plug 'mattn/emmet-vim', { 'commit': 'f4b097a' }
Plug 'groenewege/vim-less', { 'commit': '6e818d5'}
Plug 'nvie/vim-flake8', { 'tag': '1.6' }
Plug 'chase/vim-ansible-yaml', { 'tag': 'v1.0' }
Plug 'fatih/vim-go', { 'tag': 'v1.8'}

" snippets plugins
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets', { 'tag': '1.0.0' }

" color scheme
Plug 'chriskempson/vim-tomorrow-theme', { 'commit': 'f45a2ca' }
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'junegunn/fzf.vim'
Plug 'ojroques/nvim-lspfuzzy'
Plug 'preservim/nerdtree'
Plug 'Xuyuanp/nerdtree-git-plugin'
Plug 'tomtom/tcomment_vim'
Plug 'tpope/vim-fugitive'
Plug 'airblade/vim-rooter'
Plug 'mileszs/ack.vim'
Plug 'sheerun/vim-polyglot'
Plug 'haya14busa/is.vim'

Plug 'tpope/vim-unimpaired'
Plug 'tpope/vim-repeat'
Plug 'tpope/vim-surround'
Plug 'justinmk/vim-sneak'
Plug 'zhou13/vim-easyescape'
Plug 'diepm/vim-rest-console'
Plug 'vimwiki/vimwiki'
Plug 'justinmk/vim-gtfo'

" Uncomment
" Plug 'junegunn/gv.vim'
" Plug 'jesseleite/vim-agriculture'
" Plug 'lambdalisue/fern.vim'
" Plug 'lambdalisue/nerdfont.vim'
" Plug 'lambdalisue/fern-renderer-nerdfont.vim'
"
" Plug 'editorconfig/editorconfig-vim'
" Plug 'majutsushi/tagbar'
Plug 'tpope/vim-abolish'
" Plug 'vim-airline/vim-airline'| Plug 'vim-airline/vim-airline-themes'
" Plug 'tpope/vim-rhubarb'
" Plug 'airblade/vim-gitgutter'
" Plug 'airblade/vim-rooter'
" Plug 'tpope/vim-surround'
" Plug 'tommcdo/vim-exchange'
" Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app & yarn install' }
" Plug 'kien/rainbow_parentheses.vim'
" Plug 'justinmk/vim-sneak'
" Plug 'Raimondi/delimitMate'
" Uncomment


" requires nvim 0.5.0
if has('nvim-0.5')
Plug 'neovim/nvim-lspconfig'
Plug 'nvim-lua/completion-nvim'
Plug 'aca/completion-tabnine', { 'do': 'version=3.1.9 ./install.sh' }
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
Plug 'npxbr/glow.nvim', {'do': ':GlowInstall'}
Plug 'norcalli/nvim-colorizer.lua'
Plug 'nvim-lua/popup.nvim'
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-telescope/telescope.nvim'
endif


" Plug 'neovim/nvim-lspconfig', {'on': 'LspInfo'}
" Plug 'nvim-lua/completion-nvim', {'on': 'CompletionToggle'}
" Plug 'nvim-treesitter/nvim-treesitter', { 'on': 'TSConfigInfo', 'do': ':TSUpdate'}
" Plug 'npxbr/glow.nvim', {'on': 'Glow', 'do': ':GlowInstall'}
" Plug 'norcalli/nvim-colorizer.lua', {'on': 'ColorizerToggle'}

" Language syntax plugins
" **********
" **********
" Plug 'davidhalter/jedi-vim'
" Uncomment
" Plug 'lambdalisue/vim-pyenv'
" Plug 'towolf/vim-helm'
" Uncomment
" Language server before coc
" **********
" **********
" Plug 'autozimu/LanguageClient-neovim', {
" \ 'branch': 'next',
" \ 'do': 'bash install.sh',
" \ }
"
" Plug 'Shougo/denite.nvim'
"
" " (Optional) Completion integration with deoplete.
" Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
" " (Optional) Completion integration with nvim-completion-manager.
" Plug 'roxma/nvim-completion-manager'
"
" " (Optional) Showing function signature and inline doc.
" Plug 'Shougo/echodoc.vim'
" Language server
" **********
" **********


"""""""""""""""""""
" test coc.nvim "
"""""""""""""""""""
" Uncomment
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'antoinemadec/coc-fzf'
" Uncomment

" Highlighting
" **********
" **********
" Uncomment
" Plug 'xtal8/traces.vim'
" Plug 'haya14busa/incsearch.vim'
" Uncomment

" Themes
" **********
" **********
" Uncomment
" Plug 'sickill/vim-monokai'
" Plug 'patstockwell/vim-monokai-tasty'
Plug 'joshdick/onedark.vim'
Plug 'christianchiarulli/nvcode-color-schemes.vim'
" Uncomment


" Last plugins
" **********
" **********
" Plug 'ryanoasis/vim-devicons'

" unused plugins
" **********
" **********
" Plug '907th/vim-auto-save'
" Plug 'nvie/vim-flake8'
" Plug 'ervandew/supertab'
" Plug 'benmills/vimux'
" Plug 'godlygeek/tabular'
" Plug 'mattn/emmet-vim'
" Plug 'tpope/vim-obsession'
" Plug 'Yggdroot/indentLine'
" Plug 'dyng/ctrlsf.vim'
" Plug 'AndrewRadev/ginitpull.vim'
" Plug 'zigius/vim-auto-save-git-hook'
" Plug 'autozimu/LanguageClient-neovim', { 'do': ':UpdateRemotePlugins' }
" Plug 'tommcdo/vim-lion'
" Plug 'gcmt/wildfire.vim'
" Plug 'terryma/vim-multiple-cursors'
" Plug 'fatih/vim-go'
" Plug 'ternjs/tern_for_vim'
" Plug 'styled-components/vim-styled-components', { 'branch': 'main' }
" Plug 'christoomey/vim-tmux-navigator'
" Plug 'AndrewRadev/splitjoin.vim'
" Plug 'matze/vim-move'
" Plug 'AndrewRadev/sideways.vim'
" Plug 'moll/vim-node'
" Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
" Plug 'mxw/vim-jsx'
" Plug 'pangloss/vim-javascript'
" Plug 'othree/yajs.vim'
" Plug 'jistr/vim-nerdtree-tabs'
" Plug 'w0rp/ale'
" Plug 'pbogut/fzf-mru.vim'
call plug#end()
Loading