Skip to content

Instantly share code, notes, and snippets.

@midnqp
Last active December 14, 2021 10:01
Show Gist options
  • Save midnqp/81ac156500a147b81ec46eabd937a654 to your computer and use it in GitHub Desktop.
Save midnqp/81ac156500a147b81ec46eabd937a654 to your computer and use it in GitHub Desktop.
Compile the latest Vim from source code to have the most features, `hugecompile`. The flag `+clipboard` lets you sync clipboard between OS and Vim copy (yank).
#!/bin/bash
# Copyright 2021 Muhammad <midnqp@gmail.com>
# Compile Vim with huge features and +clipboard.
# To yank directly to system clipboard...
# vim: set clipboard=unnamedplus
# It is advisable that you remove your installation of Vim.
# You need +python3 for YouCompleteMe. Don't use Python2.
# You need to use Python3.10, otherwise distutils.sysconfig won't be found.
# Or you can use any Python3 version, and run `sudo apt install python3-distutils`
sudo apt -y install libx11-dev libxtst-dev libxt-dev libsm-dev libxpm-dev libncurses-dev python3.10 libpython3.10-dev make perl luajit
git clone https://github.com/vim/vim
cd vim/src
./configure \
--with-features=huge \
--with-tlib=ncurses \
--enable-multibyte \
--enable-rubyinterp \
--enable-python3interp \
--with-python3-command=python3.10 \
--with-python3-config-dir=/usr/lib/python3.10/config-3.10-x86_64-linux-gnu \
--enable-perlinterp \
--enable-luainterp \
--enable-cscope \
--prefix=/usr/ \
--with-x
make
make install
apt -y install libx11-static libxtst-static libxt-static libsm-static libxpm-static ncurses-static python python-static make
./configure \
--with-features=huge \
--with-tlib=ncurses \
--enable-multibyte \
--enable-rubyinterp \
--enable-python3interp \
--with-python3-command=python \
--with-python3-config-dir=/data/data/com.termux/files/usr/lib/python3.10/config-3.10/libpython3.10.a \
--enable-perlinterp \
--enable-cscope \
--prefix=/data/data/com.termux/files/home/ \
--with-x
make
make install
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment