Strip vim entirely; EDITOR is nano

dissimulo does not use vim. Removes the editor, its config tree, its plugin
manager, and everything that would reinstall it on a re-bootstrap.

Deleted (82 files):
  vim/ (64)          the whole config tree, 1.7M
  doc/vim/ (8)       its documentation
  .vimrc, vimrc, .vim
  bin/yadr/vundle.rb, yadr-vim-{add,delete,list}-plugin
  bin/fix_macvim_external_display.sh   MacVim on macOS, dead here anyway
  vimify/            vi keybindings for readline/libedit, dropped on request

Edited:
  Rakefile        drop the vundle require, the vim install block, the
                  vundle_migration and install_vundle tasks, their two helper
                  methods, and the macvim homebrew line. Without this a
                  re-bootstrap would pull all of it straight back.
  install.sh      .vim/.vimrc out of the symlink list
  zsh/vi-mode.zsh EDITOR/VISUAL now nano. The zsh vi keybindings stay; they
                  are not vim.
  zsh/aliases.zsh yav/ydv/ylv, the MacVim detection block and ve removed;
                  ae/ze/gi now open nano
  git/gitconfig   mvimdiff mergetool removed, editor set to nano
  .tmux.conf      vim-tmux-navigator replaced with direct select-pane binds.
                  It ran ps piped to grep on EVERY C-h/j/k/l press to ask
                  whether vim held the pane: two forks per pane switch for a
                  question that can now only answer no. mode-keys and
                  status-keys vi stay, being tmux own key style, unrelated to
                  the editor.
  .gitignore/.dockerignore/Dockerfile   dead paths and the vim package

Also renames the installer banner to DRUNKENDOTFILES, piped through lolcat
when present with a plain-text fallback.

Left alone: the .yadr paths (renaming the checkout is a separate job), generic
swap-file ignores, the fasd viminfo support (third-party), and prose mentions.
This commit is contained in:
2026-08-25 12:22:43 -07:00
parent 7ec4c75d86
commit 4fa6f90a9e
91 changed files with 37 additions and 1701 deletions
+20 -68
View File
@@ -1,12 +1,11 @@
require 'rake'
require 'fileutils'
require File.join(File.dirname(__FILE__), 'bin', 'yadr', 'vundle')
desc "Hook our dotfiles into system-standard positions."
task :install => [:submodule_init, :submodules] do
puts
puts "======================================================"
puts "Welcome to YADR Installation."
puts "Welcome to drunkendotfiles installation."
puts "======================================================"
puts
@@ -19,11 +18,6 @@ task :install => [:submodule_init, :submodules] do
install_files(Dir.glob('ruby/*')) if want_to_install?('rubygems config (faster/no docs)')
install_files(Dir.glob('ctags/*')) if want_to_install?('ctags config (better js/ruby support)')
install_files(Dir.glob('tmux/*')) if want_to_install?('tmux config')
install_files(Dir.glob('vimify/*')) if want_to_install?('vimification of command line tools')
if want_to_install?('vim configuration (highly recommended)')
install_files(Dir.glob('{vim,vimrc}'))
Rake::Task["install_vundle"].execute
end
Rake::Task["install_prezto"].execute
@@ -44,7 +38,6 @@ end
desc 'Updates the installation'
task :update do
Rake::Task["vundle_migration"].execute if needs_migration_to_vundle?
Rake::Task["install"].execute
#TODO: for now, we do the same as install. But it would be nice
#not to clobber zsh files
@@ -60,7 +53,7 @@ desc "Init and update submodules."
task :submodules do
unless ENV["SKIP_SUBMODULES"]
puts "======================================================"
puts "Downloading YADR submodules...please wait"
puts "Downloading drunkendotfiles submodules...please wait"
puts "======================================================"
run %{
@@ -72,45 +65,6 @@ task :submodules do
end
end
desc "Performs migration from pathogen to vundle"
task :vundle_migration do
puts "======================================================"
puts "Migrating from pathogen to vundle vim plugin manager. "
puts "This will move the old .vim/bundle directory to"
puts ".vim/bundle.old and replacing all your vim plugins with"
puts "the standard set of plugins. You will then be able to "
puts "manage your vim's plugin configuration by editing the "
puts "file .vim/vundles.vim"
puts "======================================================"
Dir.glob(File.join('vim', 'bundle','**')) do |sub_path|
run %{git config -f #{File.join('.git', 'config')} --remove-section submodule.#{sub_path}}
# `git rm --cached #{sub_path}`
FileUtils.rm_rf(File.join('.git', 'modules', sub_path))
end
FileUtils.mv(File.join('vim','bundle'), File.join('vim', 'bundle.old'))
end
desc "Runs Vundle installer in a clean vim environment"
task :install_vundle do
puts "======================================================"
puts "Installing and updating vundles."
puts "The installer will now proceed to run PluginInstall to install vundles."
puts "======================================================"
puts ""
vundle_path = File.join('vim','bundle', 'vundle')
unless File.exist?(vundle_path)
run %{
cd $HOME/.yadr
git clone https://github.com/gmarik/vundle.git #{vundle_path}
}
end
Vundle::update_vundle
end
task :default => 'install'
@@ -173,7 +127,6 @@ def install_homebrew
puts "Installing Homebrew packages...There may be some warnings."
puts "======================================================"
run %{brew install zsh ctags git hub tmux reattach-to-user-namespace the_silver_searcher ghi}
run %{brew install macvim}
puts
puts
end
@@ -333,16 +286,6 @@ def install_files(files, method = :symlink)
end
end
def needs_migration_to_vundle?
File.exist? File.join('vim', 'bundle', 'tpope-vim-pathogen')
end
def list_vim_submodules
result=`git submodule -q foreach 'echo $name"||"\`git remote -v | awk "END{print \\\\\$2}"\`'`.select{ |line| line =~ /^vim.bundle/ }.map{ |line| line.split('||') }
Hash[*result.flatten]
end
def apply_theme_to_iterm_profile_idx(index, color_scheme_path)
values = Array.new
16.times { |i| values << "Ansi #{i} Color" }
@@ -354,13 +297,22 @@ def apply_theme_to_iterm_profile_idx(index, color_scheme_path)
end
def success_msg(action)
puts %q{
_ _ _
| | | | | |
| |___| |_____ __| | ____
|_____ (____ |/ _ |/ ___)
_____| / ___ ( (_| | |
(_______\_____|\____|_|
}
puts "YADR has been #{action}. Please restart your terminal and vim."
# Single-quoted heredoc: no interpolation and NO escape processing, so the
# backslashes in the art survive verbatim. %q{} would collapse every \ to \.
banner = <<~'BANNER'
___ ___ _ _ _ _ _ _____ _ _ ___ ___ _____ ___ ___ _ ___ ___
| \| _ \ | | | \| | |/ / __| \| | \ / _ \_ _| __|_ _| | | __/ __|
| |) | / |_| | .` | ' <| _|| .` | |) | (_) || | | _| | || |__| _|\__ \
|___/|_|_\\___/|_|\_|_|\_\___|_|\_|___/ \___/ |_| |_| |___|____|___|___/
BANNER
# Rainbow it when lolcat is present; fall back to plain text so the installer
# never dies on a box that lacks it.
if system('command -v lolcat >/dev/null 2>&1')
IO.popen('lolcat', 'w') { |io| io.puts banner }
else
puts banner
end
puts "drunkendotfiles has been #{action}. Please restart your terminal."
end