language: python sudo: false cache: pip: true env: global: - DEPS=$HOME/deps - PATH=$DEPS/bin:$PATH matrix: - LINT=vimlint-errors - LINT=vimlint - LINT=vint-errors - LINT=vint - LINT=vader matrix: allow_failures: - env: LINT=vimlint - env: LINT=vint install: - | if [ "${LINT#vimlint}" != "$LINT" ]; then git clone --depth=1 https://github.com/syngan/vim-vimlint /tmp/vimlint git clone --depth=1 https://github.com/ynkdir/vim-vimlparser /tmp/vimlparser elif [ "${LINT#vint}" != "$LINT" ]; then virtualenv /tmp/vint && source /tmp/vint/bin/activate && pip install vim-vint elif [ "${LINT#vader}" != "$LINT" ]; then git clone https://github.com/junegunn/vader.vim.git /tmp/vader C_OPTS="--prefix=$DEPS --with-features=huge --disable-gui --enable-pythoninterp" git clone --depth 1 https://github.com/vim/vim cd vim ./configure $C_OPTS make make install cd - fi script: - | if [ "$LINT" = "vimlint" ]; then sh /tmp/vimlint/bin/vimlint.sh -l /tmp/vimlint -p /tmp/vimlparser . elif [ "$LINT" = "vimlint-errors" ]; then sh /tmp/vimlint/bin/vimlint.sh -E -l /tmp/vimlint -p /tmp/vimlparser . elif [ "$LINT" = "vint" ]; then vint . elif [ "$LINT" = "vint-errors" ]; then vint --error . elif [ "$LINT" = "vader" ]; then vim -Nu test/test.vim -c 'Vader! test/**' fi