#!/bin/env python import subprocess list_of_plugins = [ # ale # # Check for error and format. 👍 "https://github.com/dense-analysis/ale.git", # coc.nvim # # A powerfull completion system based on LSP ("https://github.com/neoclide/coc.nvim.git", "release"), # leap.nvim # # A powerfull visual movement system "https://github.com/ggandor/leap.nvim", # A good status line "https://github.com/vim-airline/vim-airline", # Vimspector # # Integrate gdb inside vim "https://github.com/puremourning/vimspector", # nvim-tree.lua # # A smart and light file browser "https://github.com/kyazdani42/nvim-tree.lua", # gen_tags.vim # # To generate tag for C based languages "https://github.com/jsfaint/gen_tags.vim", # hexmode # # Switch to Hexmode with xxd, not very usefull "https://github.com/fidian/hexmode.git", # Git integration # # "https://github.com/tpope/vim-fugitive", # Use "cs" to modified a surround character "https://github.com/tpope/vim-surround", # Color matching parentheses "https://github.com/junegunn/rainbow_parentheses.vim", # Quick comment/uncomment with "gcc" # "https://github.com/tpope/vim-commentary", # Fix the repeat map, not usefull # "https://github.com/tpope/vim-repeat" # Powerfull align tool, hard to remember "https://github.com/godlygeek/tabular", # A dark colorscheme "https://github.com/sjl/badwolf", # A lighter dark colorscheme "https://github.com/nanotech/jellybeans.vim", # A colection of colorschemes "https://github.com/lithammer/vim-eighties", # Fuzzy search and ripgrep integration "https://github.com/junegunn/fzf.vim", "https://github.com/junegunn/fzf", # A color integration that is beautifull and quick "https://github.com/RRethy/vim-hexokinase", # Display registers content as auto completion 👍 "https://github.com/tversteeg/registers.nvim", # Rename XML open/close tag when the other one is modified "https://github.com/AndrewRadev/tagalong.vim", # Grammalecte # # French corrector integration "https://github.com/dpelle/vim-Grammalecte", # Neovim in Firefox # "https://github.com/glacambre/firenvim" # List of snippets "https://github.com/honza/vim-snippets", # Language specific support "https://github.com/jparise/vim-graphql", "https://github.com/rust-lang/rust.vim", "https://github.com/hail2u/vim-css3-syntax", "https://github.com/pangloss/vim-javascript", "https://github.com/khaveesh/vim-fish-syntax", "https://github.com/fatih/vim-go", "https://github.com/moll/vim-node", "https://github.com/evanleck/vim-svelte" ] list_coc_plugins = [ # C based support "coc-clangd", # JS support "coc-svelte", "coc-tsserver", "coc-deno", # Python support "coc-pyright", # Web support "coc-html", "coc-css", # Various snippets "coc-snippets" ] for plugin in list_of_plugins: if type(plugin) is tuple: subprocess.run(["git", "clone", "--branch", plugin[1], plugin[0], "--depth=1"]) else: subprocess.run(["git", "clone", plugin, "--depth=1"]) # Post install script with open('rainbow_parentheses.vim/plugin/rainbow_parentheses.vim', 'a') as f: f.write('\n:RainbowParentheses\n') print('Post install Rainbow Parentheses done ✔️') subprocess.run(["make", "hexokinase"], cwd="vim-hexokinase") print('Post install Hexakinase done ✔️') installCmd = f"+:CocInstall {' '.join(list_coc_plugins)}" subprocess.run(["nvim", installCmd]) print('Coc plugins install done ✔️') print("Please check health 🏥") subprocess.run(["nvim", "+:checkhealth"])