バグ解析時の最小限のVimの構成を作る(WIP)
Neovimの場合
code:sh
nvim -u tmp.vim
ubuntuで最新版のNeovimをインストール
code:sh
# ※Rustのdockerイメージの場合
# neovimをビルド
apt-get install ninja-build gettext libtool libtool-bin autoconf automake cmake g++ pkg-config unzip curl doxygen -y
cd neovim && git checkout stable
make CMAKE_BUILD_TYPE=Release
make install
# 失敗した場合一度これを実行
make distclean
Dockerfile
Noevim、coc、denoの構成
code:Dockerfile
# syntax=docker/dockerfile:1.4.1
FROM ubuntu:20.04
ENV DEBIAN_FRONTEND=noninteractive
RUN <<EOF
apt update
apt install git ninja-build gettext libtool libtool-bin autoconf automake cmake g++ pkg-config unzip curl doxygen -y
EOF
# build neovim
RUN <<EOF
cd neovim && git checkout stable
make CMAKE_BUILD_TYPE=Release
make install
EOF
# install deno and nodejs
RUN <<EOF
unzip deno.zip -d /bin && rm deno.zip
chmod 755 /bin/deno
addgroup --gid 1993 deno
adduser --uid 1993 --gid 1993 deno
mkdir /deno-dir/
chown deno:deno /deno-dir/
apt install -y nodejs
EOF
ENV DENO_DIR /deno-dir/
ENV DENO_INSTALL_ROOT /usr/local
# setup neovim
RUN <<EOF
mkdir -p ~/.config/nvim
cat << EOS > ~/.config/nvim/init.vim
let s:dein_dir = has('nvim') ? expand('~/.cache/dein/nvim') : expand('~/.cache/dein/vim')
let s:dein_repo_dir = s:dein_dir . '/repos/github.com/Shougo/dein.vim'
if &runtimepath !~# '/dein.vim'
if !isdirectory(s:dein_repo_dir)
endif
execute 'set runtimepath^=' . s:dein_repo_dir
endif
if dein#load_state(s:dein_dir)
call dein#begin(s:dein_dir)
call dein#add('neoclide/coc.nvim', {'rev': 'release'})
call dein#end()
call dein#save_state()
endif
if dein#check_install()
call dein#install()
endif
let g:coc_global_extensions = [
\ 'coc-deno',
\ ]
set tagfunc=CocTagFunc
EOS
EOF