From 99c997fcb31779c5ec8ba9cfb659d310bb4236e5 Mon Sep 17 00:00:00 2001 From: nomutin Date: Tue, 6 Aug 2024 22:44:07 +0900 Subject: [PATCH 1/3] [sh] `zsh` -> `bash` --- Makefile | 7 --- README.md | 19 +++--- config/.bashrc.local | 17 ------ config/Brewfile | 1 - config/bashrc | 40 +++++++++++++ scripts/deploy.sh | 24 -------- scripts/init_macos.sh | 47 +++++---------- scripts/install.sh | 27 ++++++--- xdg_config/alacritty/alacritty.toml | 2 +- xdg_config/mise/config.toml | 1 - xdg_config/npm/npmrc | 4 ++ xdg_config/nvim/init.lua | 92 +++++++++++++++-------------- xdg_config/nvim/no_plugins.lua | 18 +++++- xdg_config/zellij/config.kdl | 12 +--- xdg_config/zsh/.zshrc | 38 ------------ 15 files changed, 155 insertions(+), 194 deletions(-) delete mode 100644 Makefile delete mode 100644 config/.bashrc.local create mode 100644 config/bashrc delete mode 100644 scripts/deploy.sh create mode 100644 xdg_config/npm/npmrc delete mode 100644 xdg_config/zsh/.zshrc diff --git a/Makefile b/Makefile deleted file mode 100644 index 3f91f4e..0000000 --- a/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -deploy: - bash scripts/deploy.sh - -init_macos: - bash scripts/init_macos.sh - -.PHONY: init_macos deploy diff --git a/README.md b/README.md index 17c7ed7..48cf6a8 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,12 @@ # .dotfiles -Dotfiles for my host `macOS` and guest `Linux`. +Dotfiles for my `macOS` and `Linux`. ![platform](https://img.shields.io/badge/platform-macOS%20|%20Linux-blue) +![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/nomutin/dotfiles) +![GitHub repo size](https://img.shields.io/github/repo-size/nomutin/dotfiles) +![LOC](https://sloc.xyz/github/nomutin/dotfiles) [![ci](https://github.com/nomutin/dotfiles/actions/workflows/ci.yaml/badge.svg)](https://github.com/nomutin/dotfiles/actions/workflows/ci.yaml) @@ -15,12 +18,8 @@ bash -c "$(curl https://raw.githubusercontent.com/nomutin/dotfiles/master/script ## Contents -| App Group | App | Host/Guest | Config | -| --- | --- | --- | :---: | -| Shell | [zsh](https://www.zsh.org) | Host | [🔍](./xdg_config/zsh/.zshrc) | -| | [bash](https://www.gnu.org/software/bash/) | Guest | [🔍](./config/.bashrc.local) | -| Package Manager | [Homebrew](https://brew.sh) | Host | [🔍](./config/Brewfile) | -| | [mise](https://mise.jdx.dev/) | Host/Guest | [🔍](./xdg_config/mise/config.toml) | -| Terminal Emulator | [Alacritty](https://alacritty.org/) | Host | [🔍](./xdg_config/alacritty/alacritty.toml) | -| Terminal Multiplexer | [zellij](https://zellij.dev) | Host/Guest | [🔍](./xdg_config/zellij/config.kdl) | -| Text Editor | [neovim](https://neovim.io) | Host/Guest | [🔍](./xdg_config/nvim/init.lua) | +- Shell - [bash](https://www.gnu.org/software/bash/) +- Package Manager - [Homebrew](https://brew.sh), [mise](https://mise.jdx.dev/) +- Terminal Emulator - [Alacritty](https://alacritty.org/) +- Terminal Multiplexer - [zellij](https://zellij.dev) +- Text Editor - [neovim](https://neovim.io) diff --git a/config/.bashrc.local b/config/.bashrc.local deleted file mode 100644 index 3b3c7af..0000000 --- a/config/.bashrc.local +++ /dev/null @@ -1,17 +0,0 @@ -alias wget=wget --hsts-file="$XDG_DATA_HOME/wget-hsts" - -# ===== XGD PATH ===== -export XDG_CONFIG_HOME="$HOME/.config" -export XDG_DATA_HOME="$HOME/.local/share" -export XDG_CACHE_HOME="$HOME/.cache" -export XDG_STATE_HOME="$HOME/.local/state" - -mkdir -p "${XDG_STATE_HOME}"/bash -export HISTFILE="$XDG_STATE_HOME"/bash/history -export CUDA_CACHE_PATH="$XDG_CACHE_HOME"/nv -export KERAS_HOME="$XDG_STATE_HOME"/keras -export DOTNET_CLI_HOME="$XDG_DATA_HOME"/dotnet - -# ===== Plugins ===== -eval "$(~/.local/bin/mise activate bash)" -source "$HOME/.rye/env" diff --git a/config/Brewfile b/config/Brewfile index 6ca3076..371040e 100644 --- a/config/Brewfile +++ b/config/Brewfile @@ -4,7 +4,6 @@ tap "homebrew/bundle" tap "homebrew/cask-fonts" brew "mas" -brew "wget" cask "arc" cask "alacritty" diff --git a/config/bashrc b/config/bashrc new file mode 100644 index 0000000..1a4f043 --- /dev/null +++ b/config/bashrc @@ -0,0 +1,40 @@ +#!/bin/bash + +# ===== Settings ===== +HISTSIZE=1000 +HISTFILESIZE=2000 +shopt -s checkwinsize + +# ===== XGD PATH ===== +export XDG_CONFIG_HOME="$HOME/.config" +export XDG_DATA_HOME="$HOME/.local/share" +export XDG_CACHE_HOME="$HOME/.cache" +export XDG_STATE_HOME="$HOME/.local/state" + +mkdir -p "${XDG_STATE_HOME}"/bash +export ANDROID_USER_HOME="$XDG_DATA_HOME"/android +export CUDA_CACHE_PATH="$XDG_CACHE_HOME"/nv +export DOTNET_CLI_HOME="$XDG_DATA_HOME"/dotnet +export HISTFILE="$XDG_STATE_HOME"/bash/history +export KERAS_HOME="$XDG_STATE_HOME"/keras +export NPM_CONFIG_USERCONFIG=$XDG_CONFIG_HOME/npm/npmrc +export LESSHISTFILE="$XDG_STATE_HOME"/less/history +export TERMINFO="$XDG_DATA_HOME"/terminfo +export TERMINFO_DIRS="$XDG_DATA_HOME"/terminfo + +# ===== Aliases ===== +alias grep='grep --color=auto' +alias egrep='egrep --color=auto' +alias fgrep='fgrep --color=auto' +alias ls='ls --color=auto' +alias ll='ls -alF' +alias la='ls -A' +alias l='ls -CF' +alias wget='wget --hsts-file="$XDG_DATA_HOME"/wget-hsts' + +# ===== Plugins ===== +if [ -d /opt/homebrew ]; then + eval "$(/opt/homebrew/bin/brew shellenv)" +fi +eval "$(~/.local/bin/mise activate bash)" +source "$HOME/.rye/env" diff --git a/scripts/deploy.sh b/scripts/deploy.sh deleted file mode 100644 index 3897d1f..0000000 --- a/scripts/deploy.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -set -eu - -source_config_dir="${HOME}"/.dotfiles/xdg_config -target_config_dir="${HOME}"/.config - -mkdir -p "$target_config_dir" -for item in "$source_config_dir"/*; do - base_item=$(basename "$item") - link_name="$target_config_dir/$base_item" - ln -s "$item" "$link_name" -done - -if [ "$(uname)" = "Darwin" ]; then - mkdir -p "${HOME}"/.local/state/zsh "${HOME}"/.cache/zsh - if ! grep -q 'export ZDOTDIR="$HOME"/.config/zsh' /etc/zshenv; then - echo 'export ZDOTDIR="$HOME"/.config/zsh' | sudo tee -a /etc/zshenv - fi - -elif [ "$(uname)" = "Linux" ]; then - echo 'source "$HOME/.dotfiles/config/.bashrc.local"' >>~/.bashrc - source ~/.bashrc -fi diff --git a/scripts/init_macos.sh b/scripts/init_macos.sh index 817d64f..f5f3d57 100644 --- a/scripts/init_macos.sh +++ b/scripts/init_macos.sh @@ -2,76 +2,59 @@ set -eu +# ===== Install Xcode Command Line Tools ===== if ! (xcode-select -p &>/dev/null); then xcode-select --install fi +# ===== Install Homebrew ===== if ! (type 'brew' >/dev/null 2>&1); then xcode-select --install /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" fi +# ===== Install apps ===== brew bundle install --file="${HOME}"/.dotfiles/config/Brewfile -# terminalの表示名を`MBA`に変更 +# ===== Mac settings ===== +# Terminal display name sudo scutil --set HostName MBA -# 動きを高速化 +# Fasten defaults write -g com.apple.trackpad.scaling 3 defaults write -g com.apple.mouse.scaling 1.5 defaults write -g KeyRepeat -int 1 defaults write -g InitialKeyRepeat -int 10 -# タップしたときクリック +# Click to tap defaults write -g com.apple.mouse.tapBehavior -int 1 +defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true -# クラッシュレポートを無効化する -defaults write com.apple.CrashReporter DialogType -string "none" - -# 未確認のアプリケーションを実行する際のダイアログを無効にする -defaults write com.apple.LaunchServices LSQuarantine -bool false - -# ダウンロードしたファイルを開くときの警告ダイアログをなくす -defaults write com.apple.LaunchServices LSQuarantine -bool false - -# ゴミ箱を空にする前の警告の無効化 -defaults write com.apple.finder WarnOnEmptyTrash -bool false - -# Dock関連 +# Dock defaults write com.apple.dock autohide-time-modifier -int 0 defaults write com.apple.dock autohide -bool true defaults write com.apple.dock show-recents -bool false defaults write com.apple.dock tilesize -int 128 -# ネットワークストアファイルを作成しない +# Disable .DS_Store creation defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true -# Bluetoothのマルチタッチトラックパッドでクリックを有効化 -defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true - -# Finder関連 +# Finder defaults write com.apple.finder NewWindowTarget -string PfHm defaults write com.apple.finder NewWindowTargetPath -string "file:///Users/nomura/" defaults write com.apple.finder ShowRecentTags -int 0 defaults write com.apple.finder ShowMountedServersOnDesktop -int 0 defaults write com.apple.finder SidebarTagsSctionDisclosedState -int 1 defaults write com.apple.finder PreferencesWindow.LastSelection -string SDBR +defaults write -g AppleShowAllExtensions -bool true +defaults write com.apple.finder AppleShowAllFiles -bool YES && killall Finder -# テキストエディットをプレーンテキストで使う +# TextEdit defaults write com.apple.TextEdit RichText -int 0 -# 隠しファイルを常にファインダーに表示する -defaults write com.apple.finder AppleShowAllFiles -bool YES && killall Finder - -# スクリーンショットをjpgで保存 +# Screenshot defaults write com.apple.screencapture type jpg -# 全ての拡張子のファイルを表示する -defaults write -g AppleShowAllExtensions -bool true - -# .DS_Storeを作成しない -defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true - killall Finder killall Dock sudo shutdown -r now diff --git a/scripts/install.sh b/scripts/install.sh index e9cae4d..6c56bb4 100644 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -4,24 +4,35 @@ set -eu cd "${HOME}" -# Install my dotfiles +# ===== Install repo ===== if [ ! -d .dotfiles ]; then git clone https://github.com/nomutin/dotfiles.git .dotfiles fi -# Install mise +# ===== Install mise ===== if ! (type 'mise' >/dev/null 2>&1); then curl https://mise.run | sh fi -cd .dotfiles - -# Deploy -make deploy +# ===== Deploy xdg-based configs ===== +src="${HOME}/.dotfiles/xdg_config" +tgt="${HOME}/.config" +mkdir -p "$tgt" +for item in "$src"/*; do + ln -s "$item" "$tgt/$(basename "$item")" +done + +# ===== Deploy bashrc ===== +if [ -f "${HOME}"/.bashrc ]; then + echo 'source "$HOME/.dotfiles/config/bashrc"' >>~/.bashrc +else + ln -s "${HOME}"/.dotfiles/config/bashrc "${HOME}"/.bashrc +fi +# ===== Install dependencies ===== mise install -y -# Set up macOS +# ===== Set up Macos ===== if [ "$(uname)" = "Darwin" ]; then - make init_macos + bash scripts/init_macos.sh fi diff --git a/xdg_config/alacritty/alacritty.toml b/xdg_config/alacritty/alacritty.toml index 7dab169..ccab327 100644 --- a/xdg_config/alacritty/alacritty.toml +++ b/xdg_config/alacritty/alacritty.toml @@ -1,4 +1,4 @@ -shell = "zsh" +shell = "bash" [env] TERM = "xterm-256color" diff --git a/xdg_config/mise/config.toml b/xdg_config/mise/config.toml index 95cc642..72f5c07 100644 --- a/xdg_config/mise/config.toml +++ b/xdg_config/mise/config.toml @@ -5,7 +5,6 @@ lua-language-server = "latest" neovim = "nightly" node = "20" ripgrep = "latest" -rust = "latest" rye = "latest" shfmt = "latest" stylua = "latest" diff --git a/xdg_config/npm/npmrc b/xdg_config/npm/npmrc new file mode 100644 index 0000000..b12cc98 --- /dev/null +++ b/xdg_config/npm/npmrc @@ -0,0 +1,4 @@ +prefix=${XDG_DATA_HOME}/npm +cache=${XDG_CACHE_HOME}/npm +init-module=${XDG_CONFIG_HOME}/npm/config/npm-init.js +logs-dir=${XDG_STATE_HOME}/npm/logs diff --git a/xdg_config/nvim/init.lua b/xdg_config/nvim/init.lua index 8783167..2e7013a 100644 --- a/xdg_config/nvim/init.lua +++ b/xdg_config/nvim/init.lua @@ -1,6 +1,7 @@ -- Minimalist neovim configuration by @nomutin +-- Requires: neovim>=0.10.0, git>=2.31.0, npm(lsp), ripgrep(telescope), --- ====== BUILTIN ====== +-- ====== OPTIONS ====== vim.loader.enable() vim.g.mapleader = " " vim.opt.title = true @@ -22,7 +23,12 @@ vim.opt.scrolloff = 8 vim.opt.sidescrolloff = 8 vim.opt.laststatus = 3 vim.opt.list = true +vim.opt.path = "**" +-- ====== COLORS ====== +vim.api.nvim_set_hl(0, "Type", { fg = "NvimLightBlue" }) + +-- ====== NETRW ====== vim.g.netrw_banner = 0 vim.g.netrw_liststyle = 3 vim.g.netrw_browse_split = 4 @@ -32,11 +38,14 @@ vim.g.netrw_winsize = -28 vim.g.netrw_keepdir = 1 vim.g.netrw_preview = 1 -vim.api.nvim_set_hl(0, "Function", { fg = "NvimLightBlue" }) +-- ====== KEYMAP ====== vim.keymap.set("i", "jk", "", { desc = "Return to normal mode" }) vim.keymap.set("t", "fd", [[]], { desc = "Return to normal mode" }) vim.keymap.set("n", "n", "Lexplore", { desc = "Open file explorer" }) +-- ====== COMMAND ====== +vim.api.nvim_create_user_command('ConfigOpen', 'e $MYVIMRC', {}) + -- ====== PLUGIN ====== local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" local lazyrepo = "https://github.com/folke/lazy.nvim.git" @@ -44,51 +53,48 @@ if not vim.loop.fs_stat(lazypath) then vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) end vim.opt.rtp:prepend(lazypath) -local servers = { "bashls", "biome", "jsonls", "lua_ls", "pyright", "ruff", "rust_analyzer", "yamlls" } +local servers = { "bashls", "biome", "jsonls", "lua_ls", "basedpyright", "ruff", "rust_analyzer", "yamlls" } require("lazy").setup({ defaults = { lazy = true }, - rocks = { enabled = false }, - spec = { - { "github/copilot.vim", event = "BufRead" }, - { - "folke/flash.nvim", - keys = { - { "s", mode = { "n", "x", "o" }, "lua require('flash').jump()", desc = "Flash" }, - { "S", mode = { "n", "x", "o" }, "lua require('flash').treesitter()", desc = "Flash Treesitter" }, - }, - }, - { "lewis6991/gitsigns.nvim", event = "BufRead", opts = {} }, - { "nvim-lualine/lualine.nvim", event = "BufRead", opts = {} }, - { - "nvim-lspconfig", - event = "BufRead", - dependencies = { "hrsh7th/nvim-cmp", "hrsh7th/cmp-nvim-lsp" }, - config = function() - for _, server in ipairs(servers) do - local capabilities = require("cmp_nvim_lsp").default_capabilities() - require("lspconfig")[server].setup({ capabilities = capabilities }) - end - local cmp = require("cmp") - cmp.setup({ - mapping = cmp.mapping.preset.insert({}), - sources = cmp.config.sources({ { name = "nvim_lsp" } }), - }) - end, - }, - { - "nvim-treesitter/nvim-treesitter", - event = "BufRead", - main = "nvim-treesitter.configs", - opts = { highlight = { enable = true }, indent = { enable = true } }, + { "github/copilot.vim", event = "BufRead" }, + { + "folke/flash.nvim", + keys = { + { "s", mode = { "n", "x", "o" }, "lua require('flash').jump()", desc = "Flash" }, + { "S", mode = { "n", "x", "o" }, "lua require('flash').treesitter()", desc = "Flash Treesitter" }, }, - { - "nvim-telescope/telescope.nvim", - dependencies = { "nvim-lua/plenary.nvim" }, - keys = { - { "f", "Telescope find_files", { desc = "Find files" } }, - { "g", "Telescope live_grep", { desc = "Live Grep" } }, - }, + }, + { "lewis6991/gitsigns.nvim", event = "BufRead", opts = {} }, + { "nvim-lualine/lualine.nvim", event = "BufRead", opts = {} }, + { + "neovim/nvim-lspconfig", + event = "BufRead", + dependencies = { "hrsh7th/nvim-cmp", "hrsh7th/cmp-nvim-lsp" }, + config = function() + for _, server in ipairs(servers) do + local capabilities = require("cmp_nvim_lsp").default_capabilities() + require("lspconfig")[server].setup({ capabilities = capabilities }) + end + local cmp = require("cmp") + cmp.setup({ + mapping = cmp.mapping.preset.insert({}), + sources = cmp.config.sources({ { name = "nvim_lsp" } }), + }) + end, + }, + { + "nvim-treesitter/nvim-treesitter", + event = "BufRead", + main = "nvim-treesitter.configs", + opts = { highlight = { enable = true }, indent = { enable = true } }, + }, + { + "nvim-telescope/telescope.nvim", + dependencies = { "nvim-lua/plenary.nvim" }, + keys = { + { "f", "Telescope find_files", { desc = "Find files" } }, + { "/", "Telescope live_grep", { desc = "Live grep" } }, }, }, }) diff --git a/xdg_config/nvim/no_plugins.lua b/xdg_config/nvim/no_plugins.lua index 1f2e5f8..0b34c46 100644 --- a/xdg_config/nvim/no_plugins.lua +++ b/xdg_config/nvim/no_plugins.lua @@ -20,10 +20,25 @@ vim.opt.scrolloff = 8 vim.opt.sidescrolloff = 8 vim.opt.laststatus = 3 vim.opt.list = true +vim.opt.path = "**" + +-- ====== SEARCH ====== +function SearchWord() + local search_term = vim.fn.input("Search word for: ") + if search_term == "" then + return + end + local git_files = vim.fn.systemlist("git ls-files") + vim.cmd("noau vimgrep /" .. search_term .. "/gj " .. table.concat(git_files, " ")) + vim.cmd("cw") +end -- ====== KEYMAP ====== vim.keymap.set("i", "jk", "", { desc = "Restore from insert mode" }) +vim.keymap.set("t", "fd", [[]], { desc = "Return to normal mode" }) vim.keymap.set("n", "n", ":Lexplore", { desc = "Open Netrw" }) +vim.keymap.set("n", "/", SearchWord, { noremap = true, silent = true }) +vim.keymap.set('n', 'f', ':find ', { noremap = true, silent = false }) -- ====== NETRW ====== vim.g.netrw_banner = 0 @@ -33,9 +48,10 @@ vim.g.netrw_browse_split = 4 vim.g.netrw_altv = 1 vim.g.netrw_winsize = -28 vim.g.netrw_keepdir = 1 +vim.g.netrw_preview = 1 -- ====== COLORS ====== -vim.api.nvim_set_hl(0, "Function", { fg = "NvimLightBlue" }) +vim.api.nvim_set_hl(0, "Type", { fg = "NvimLightBlue" }) -- ====== Git Gutter ====== local function place_signs(name, start, lines, buffer) diff --git a/xdg_config/zellij/config.kdl b/xdg_config/zellij/config.kdl index 8facf52..6b146e2 100644 --- a/xdg_config/zellij/config.kdl +++ b/xdg_config/zellij/config.kdl @@ -1,4 +1,3 @@ -// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true" keybinds { normal { // uncomment this and adjust key if using copy_on_select=false @@ -57,15 +56,6 @@ keybinds { bind "b" { BreakPane; SwitchToMode "Normal"; } bind "]" { BreakPaneRight; SwitchToMode "Normal"; } bind "[" { BreakPaneLeft; SwitchToMode "Normal"; } - // bind "1" { GoToTab 1; SwitchToMode "Normal"; } - // bind "2" { GoToTab 2; SwitchToMode "Normal"; } - // bind "3" { GoToTab 3; SwitchToMode "Normal"; } - // bind "4" { GoToTab 4; SwitchToMode "Normal"; } - // bind "5" { GoToTab 5; SwitchToMode "Normal"; } - // bind "6" { GoToTab 6; SwitchToMode "Normal"; } - // bind "7" { GoToTab 7; SwitchToMode "Normal"; } - // bind "8" { GoToTab 8; SwitchToMode "Normal"; } - // bind "9" { GoToTab 9; SwitchToMode "Normal"; } bind "Tab" { ToggleTab; } } scroll { @@ -146,7 +136,7 @@ keybinds { } shared_except "locked" { bind "Ctrl g" { SwitchToMode "Locked"; } - // bind "Ctrl q" { Quit; } + bind "Ctrl q" { Quit; } // bind "Alt n" { NewPane; } // bind "Alt i" { MoveTab "Left"; } // bind "Alt o" { MoveTab "Right"; } diff --git a/xdg_config/zsh/.zshrc b/xdg_config/zsh/.zshrc deleted file mode 100644 index 6cb215b..0000000 --- a/xdg_config/zsh/.zshrc +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/zsh - -# ===== XGD PATH ===== -export XDG_CONFIG_HOME="$HOME/.config" -export XDG_DATA_HOME="$HOME/.local/share" -export XDG_CACHE_HOME="$HOME/.cache" -export XDG_STATE_HOME="$HOME/.local/state" -export XDG_RUNTIME_DIR="/run/user/$(id -u)" - -export ANDROID_USER_HOME="$XDG_DATA_HOME"/android -export LESSHISTFILE="$XDG_STATE_HOME"/less/history -export TERMINFO="$XDG_DATA_HOME"/terminfo -export TERMINFO_DIRS="$XDG_DATA_HOME"/terminfo - -# ===== zsh settings ===== -autoload -U compinit -compinit -d "$XDG_CACHE_HOME"/zsh/zcompdump-"$ZSH_VERSION" - -export HISTFILE="$XDG_STATE_HOME"/zsh/history -export HISTSIZE=999 -export SAVEHIST=99999 - -# ===== Processar ===== -alias x86='arch -x86_64 zsh' -alias arm='arch -arm64 zsh' - -# ===== Aliases ===== -alias grep='grep --color=auto' -alias ls='ls --color=auto' -alias ll='ls -alF' -alias la='ls -A' -alias l='ls -CF' -alias wget=wget --hsts-file="$XDG_DATA_HOME/wget-hsts" - -# ===== Plugins ===== -eval $(/opt/homebrew/bin/brew shellenv) -eval "$(~/.local/bin/mise activate zsh)" -source "$HOME/.rye/env" From 708d1dd24b6f571eeb50bc4cdbded6dafc24a87d Mon Sep 17 00:00:00 2001 From: nomutin Date: Tue, 6 Aug 2024 22:56:16 +0900 Subject: [PATCH 2/3] [delete] `no_plugins.lua` --- xdg_config/nvim/no_plugins.lua | 230 --------------------------------- xdg_config/zellij/config.kdl | 13 -- 2 files changed, 243 deletions(-) delete mode 100644 xdg_config/nvim/no_plugins.lua diff --git a/xdg_config/nvim/no_plugins.lua b/xdg_config/nvim/no_plugins.lua deleted file mode 100644 index 0b34c46..0000000 --- a/xdg_config/nvim/no_plugins.lua +++ /dev/null @@ -1,230 +0,0 @@ --- ====== OPTIONS ====== -vim.loader.enable() -vim.g.mapleader = " " -vim.opt.title = true -vim.opt.termguicolors = true -vim.opt.clipboard = "unnamedplus" -vim.opt.completeopt = { "menuone", "noselect", "popup" } -vim.opt.ignorecase = true -vim.opt.pumheight = 10 -vim.opt.showtabline = 2 -vim.opt.ignorecase = true -vim.opt.smartcase = true -vim.opt.smartindent = true -vim.opt.undofile = true -vim.opt.expandtab = true -vim.opt.cursorline = true -vim.opt.number = true -vim.opt.wrap = false -vim.opt.scrolloff = 8 -vim.opt.sidescrolloff = 8 -vim.opt.laststatus = 3 -vim.opt.list = true -vim.opt.path = "**" - --- ====== SEARCH ====== -function SearchWord() - local search_term = vim.fn.input("Search word for: ") - if search_term == "" then - return - end - local git_files = vim.fn.systemlist("git ls-files") - vim.cmd("noau vimgrep /" .. search_term .. "/gj " .. table.concat(git_files, " ")) - vim.cmd("cw") -end - --- ====== KEYMAP ====== -vim.keymap.set("i", "jk", "", { desc = "Restore from insert mode" }) -vim.keymap.set("t", "fd", [[]], { desc = "Return to normal mode" }) -vim.keymap.set("n", "n", ":Lexplore", { desc = "Open Netrw" }) -vim.keymap.set("n", "/", SearchWord, { noremap = true, silent = true }) -vim.keymap.set('n', 'f', ':find ', { noremap = true, silent = false }) - --- ====== NETRW ====== -vim.g.netrw_banner = 0 -vim.g.netrw_liststyle = 3 -vim.g.netrw_showhide = 1 -vim.g.netrw_browse_split = 4 -vim.g.netrw_altv = 1 -vim.g.netrw_winsize = -28 -vim.g.netrw_keepdir = 1 -vim.g.netrw_preview = 1 - --- ====== COLORS ====== -vim.api.nvim_set_hl(0, "Type", { fg = "NvimLightBlue" }) - --- ====== Git Gutter ====== -local function place_signs(name, start, lines, buffer) - for lnum = start, start + lines - 1 do - vim.fn.sign_place(0, "", name, buffer, { lnum = lnum }) - end -end - -local function put_signs(diff) - local _, old_lines, new_start, new_lines = unpack(diff) - local buffer = vim.api.nvim_get_current_buf() - if old_lines == 0 then - place_signs("HunkSignAdd", new_start, new_lines, buffer) - elseif new_lines == 0 then - place_signs("HunkSignDel", new_start, old_lines, buffer) - else - place_signs("HunkSignUpd", new_start, math.min(old_lines, new_lines), buffer) - place_signs("HunkSignDel", new_start + new_lines, old_lines - new_lines, buffer) - place_signs("HunkSignAdd", new_start + old_lines, new_lines - old_lines, buffer) - end -end - -local function show_hunk() - vim.fn.sign_define("HunkSignAdd", { text = "+", texthl = "DiffAdd" }) - vim.fn.sign_define("HunkSignDel", { text = "-", texthl = "DiffDelete" }) - vim.fn.sign_define("HunkSignUpd", { text = "~", texthl = "DiffChange" }) - local cmd = "git --no-pager diff -U0 --no-color --no-ext-diff " - .. vim.fn.expand("%") - .. ' | grep "^@@" ' - .. ' | sed -r "s/[-+]([0-9]+) /\\1,1,/g" ' - .. ' | sed -r "s/^[-@ ]*([0-9]+,[0-9]+)[ ,+]+([0-9]+,[0-9]+)[, ].*/\\1,\\2/"' - local output = vim.fn.systemlist(cmd) - for _, line in ipairs(output) do - put_signs(vim.split(line, ",")) - end -end -vim.api.nvim_create_autocmd({ "BufReadPost", "BufWritePost" }, { callback = show_hunk }) - --- ====== COMPLETION ====== -vim.api.nvim_create_autocmd("LspAttach", { - callback = function(args) - local client = vim.lsp.get_client_by_id(args.data.client_id) - if client and client.supports_method("textDocument/completion") then - vim.lsp.completion.enable(true, client.id, args.buf, { autotrigger = true }) - end - local function trigger_completion_and_insert_space() - vim.lsp.completion.trigger() - vim.api.nvim_feedkeys(" ", "n", true) - end - vim.keymap.set("i", " ", trigger_completion_and_insert_space) - vim.keymap.set("i", "", vim.lsp.completion.trigger) - end, -}) - --- ====== LSP ====== -local servers = { - lua_ls = { - name = "lua-language-server", - cmd = { "lua-language-server" }, - root_dir = vim.fs.root(0, { ".luarc.json", ".luacheckrc", ".stylua.toml", "stylua.toml", ".git" }), - filetypes = { "lua" }, - }, - pyright = { - name = "pyright", - cmd = { "pyright-langserver", "--stdio" }, - root_dir = vim.fs.root(0, { "pyproject.toml", "setup.py", ".git" }), - filetypes = { "python" }, - }, -} -for name, config in pairs(servers) do - if vim.fn.executable(servers[name].cmd[1]) ~= 0 then - vim.api.nvim_create_autocmd("FileType", { - group = vim.api.nvim_create_augroup("UserLspStart", { clear = true }), - pattern = config.filetypes, - callback = function(ev) - vim.lsp.start(servers[name], { bufnr = ev.buf }) - end, - }) - end -end - --- ====== STATUSLINE ====== -vim.cmd([[ - highlight default link DiagnosticStatusLineError StatusLineNC - highlight default link DiagnosticStatusLineHint StatusLineNC - highlight default link DiagnosticStatusLineInfo StatusLineNC - highlight default link DiagnosticStatusLineWarn StatusLineNC - highlight default link User1 IncSearch - highlight default link User2 StatusLine - highlight default link User3 StatusLineNC - highlight default link User4 StatusLineNC - highlight default link User5 StatusLineNC - highlight default link User6 StatusLineNC - highlight default link User7 StatusLineNC - highlight default link User8 StatusLineNC - highlight default link User9 StatusLineNC -]]) - -local function branch_name_display() - local head = vim.b.gitsigns_head --[[@as any]] - if head == nil or head == "" then - return "" - else - return string.format("  %s ", head) - end -end - -local function lsp_diagnostics() - local diagnostics = vim.diagnostic.get(0) - local count = { 0, 0, 0, 0 } - for _, diagnostic in ipairs(diagnostics) do - if vim.startswith(vim.diagnostic.get_namespace(diagnostic.namespace).name, "vim.lsp") then - count[diagnostic.severity] = count[diagnostic.severity] + 1 - end - end - local icons = { error = "󰅚", warn = "󰀪", info = "󰋽", hint = "󰌶" } - local hl = { - error = "DiagnosticStatusLineError", - warn = "DiagnosticStatusLineWarn", - info = "DiagnosticStatusLineInfo", - hint = "DiagnosticStatusLineHint", - } - local info = { - error = count[vim.diagnostic.severity.ERROR], - warn = count[vim.diagnostic.severity.WARN], - info = count[vim.diagnostic.severity.INFO], - hint = count[vim.diagnostic.severity.HINT], - } - local reprs = {} - for key, value in pairs(info) do - if value ~= 0 then - table.insert(reprs, string.format("%%#%s#%s %s", hl[key], icons[key], value)) - end - end - local repr = table.concat(reprs, " ") - return repr == "" and "" or (" " .. repr .. " ") -end - -local function lsp_name() - local clients = {} - for _, client in ipairs(vim.lsp.get_clients()) do - if client.attached_buffers[vim.api.nvim_get_current_buf()] then - table.insert(clients, client.name) - end - end - local icon = #clients == 0 and "" or "⦿ " - return icon .. table.concat(clients, ", ") -end - -function Statusline() - local pad = function(s) - return (s == "" or s == nil) and "" or (" " .. s .. " ") - end - local fileformat = { dos = "CRLF", unix = "LF", mac = "CR" } - return table.concat({ - "%1*", - "  ", - "%2*", - branch_name_display(), - "%3*", - pad(" " .. vim.fn.fnamemodify(vim.fn.getcwd(), ":p:h:t")), - "%4*", - lsp_diagnostics(), - "%=", - "%3*", - pad(lsp_name()), - "%2*", - pad(fileformat[vim.bo.fileformat]), - pad(vim.o.fileencoding:upper()), - pad(vim.bo.expandtab and string.format("Spaces: %d", vim.bo.tabstop) or "Tab"), - "%1*", - pad("%l:%c"), - }) -end - -vim.opt.statusline = "%!v:lua.Statusline()" diff --git a/xdg_config/zellij/config.kdl b/xdg_config/zellij/config.kdl index 6b146e2..38025e3 100644 --- a/xdg_config/zellij/config.kdl +++ b/xdg_config/zellij/config.kdl @@ -1,7 +1,5 @@ keybinds { normal { - // uncomment this and adjust key if using copy_on_select=false - // bind "Alt c" { Copy; } } locked { bind "Ctrl g" { SwitchToMode "Normal"; } @@ -137,17 +135,6 @@ keybinds { shared_except "locked" { bind "Ctrl g" { SwitchToMode "Locked"; } bind "Ctrl q" { Quit; } - // bind "Alt n" { NewPane; } - // bind "Alt i" { MoveTab "Left"; } - // bind "Alt o" { MoveTab "Right"; } - // bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; } - // bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; } - // bind "Alt j" "Alt Down" { MoveFocus "Down"; } - // bind "Alt k" "Alt Up" { MoveFocus "Up"; } - // bind "Alt =" "Alt +" { Resize "Increase"; } - // bind "Alt -" { Resize "Decrease"; } - // bind "Alt [" { PreviousSwapLayout; } - // bind "Alt ]" { NextSwapLayout; } } shared_except "normal" "locked" { bind "Enter" "Esc" { SwitchToMode "Normal"; } From 9a2c6a82847f98cc18aa6508ff2267ad93914fc9 Mon Sep 17 00:00:00 2001 From: nomutin Date: Tue, 6 Aug 2024 22:58:55 +0900 Subject: [PATCH 3/3] [lint] fix stylua error --- xdg_config/nvim/init.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xdg_config/nvim/init.lua b/xdg_config/nvim/init.lua index 2e7013a..2599df4 100644 --- a/xdg_config/nvim/init.lua +++ b/xdg_config/nvim/init.lua @@ -44,7 +44,7 @@ vim.keymap.set("t", "fd", [[]], { desc = "Return to normal mode" }) vim.keymap.set("n", "n", "Lexplore", { desc = "Open file explorer" }) -- ====== COMMAND ====== -vim.api.nvim_create_user_command('ConfigOpen', 'e $MYVIMRC', {}) +vim.api.nvim_create_user_command("ConfigOpen", "e $MYVIMRC", {}) -- ====== PLUGIN ====== local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"