mirror of
https://codeberg.org/qwjyh/dotfiles.git
synced 2025-06-26 19:29:20 +09:00
Merge branch 'main' of github.com:qwjyh/dotfiles into main
This commit is contained in:
commit
6a388f1b40
18 changed files with 373 additions and 98 deletions
|
@ -2,10 +2,10 @@
|
|||
; mainly for inputting special characters
|
||||
|
||||
; Play/Pause
|
||||
sc121::
|
||||
Send {Media_Play_Pause}
|
||||
return
|
||||
|
||||
;sc121::
|
||||
; Send {Media_Play_Pause}
|
||||
; return
|
||||
;
|
||||
|
||||
; Henkan/Muhenkan + - -> en, em dash
|
||||
vk1D & vkBD::
|
||||
|
|
|
@ -57,12 +57,11 @@ vk1C & d::
|
|||
Send,{Blind}{PgDn}
|
||||
return
|
||||
|
||||
; ==========================================
|
||||
; include extra key remaps
|
||||
#Include extra_remaps.ahk
|
||||
|
||||
; ==========================================
|
||||
; HankakuZenkaku to esc
|
||||
sc029::
|
||||
Send, {Escape}
|
||||
|
||||
; ==========================================
|
||||
; include extra key remaps
|
||||
#Include extra_remaps.ahk
|
||||
|
|
85
dotfiles/alacritty.yml
Normal file
85
dotfiles/alacritty.yml
Normal file
|
@ -0,0 +1,85 @@
|
|||
# Alacritty config file
|
||||
|
||||
# Window
|
||||
window:
|
||||
decorations: none
|
||||
opacity: 0.85
|
||||
|
||||
|
||||
# Font
|
||||
font:
|
||||
size: 11.0
|
||||
|
||||
# Color schemes
|
||||
schemes:
|
||||
# Campbell (Windows 10 default)
|
||||
campbell: &campbell
|
||||
# Default colors
|
||||
primary:
|
||||
background: '#0c0c0c'
|
||||
foreground: '#cccccc'
|
||||
|
||||
# Normal colors
|
||||
normal:
|
||||
black: '#0c0c0c'
|
||||
red: '#c50f1f'
|
||||
green: '#13a10e'
|
||||
yellow: '#c19c00'
|
||||
blue: '#0037da'
|
||||
magenta: '#881798'
|
||||
cyan: '#3a96dd'
|
||||
white: '#cccccc'
|
||||
|
||||
# Bright colors
|
||||
bright:
|
||||
black: '#767676'
|
||||
red: '#e74856'
|
||||
green: '#16c60c'
|
||||
yellow: '#f9f1a5'
|
||||
blue: '#3b78ff'
|
||||
magenta: '#b4009e'
|
||||
cyan: '#61d6d6'
|
||||
white: '#f2f2f2'
|
||||
# Colors (Iceberg Dark)
|
||||
iceberg_dark: &iceberg_dark
|
||||
# Default colors
|
||||
primary:
|
||||
background: '#161821'
|
||||
foreground: '#d2d4de'
|
||||
|
||||
# Normal colors
|
||||
normal:
|
||||
black: '#161821'
|
||||
red: '#e27878'
|
||||
green: '#b4be82'
|
||||
yellow: '#e2a478'
|
||||
blue: '#84a0c6'
|
||||
magenta: '#a093c7'
|
||||
cyan: '#89b8c2'
|
||||
white: '#c6c8d1'
|
||||
|
||||
# Bright colors
|
||||
bright:
|
||||
black: '#6b7089'
|
||||
red: '#e98989'
|
||||
green: '#c0ca8e'
|
||||
yellow: '#e9b189'
|
||||
blue: '#91acd1'
|
||||
magenta: '#ada0d3'
|
||||
cyan: '#95c4ce'
|
||||
white: '#d2d4de'
|
||||
# Colors (Monokai Dark)
|
||||
monokai: &iceberg_dark
|
||||
|
||||
# startup shell
|
||||
shell:
|
||||
program: /usr/bin/tmux
|
||||
args:
|
||||
- a
|
||||
|
||||
|
||||
# key bindings
|
||||
key_bindings:
|
||||
- { key: Key0, mods: Control, action: ResetFontSize }
|
||||
- { key: Semicolon, mods: Control, action: IncreaseFontSize }
|
||||
- { key: Minus, mods: Control, action: DecreaseFontSize }
|
2
dotfiles/fish/abbr.fish
Normal file
2
dotfiles/fish/abbr.fish
Normal file
|
@ -0,0 +1,2 @@
|
|||
abbr -a -U -- l less
|
||||
abbr -a -U -- ll 'exa -la --icons --git'
|
|
@ -16,13 +16,35 @@ if status is-interactive
|
|||
set -x SHELL bash
|
||||
|
||||
# opam
|
||||
source ~/.opam/opam-init/init.fish > /dev/null 2> /dev/null; or true
|
||||
#source ~/.opam/opam-init/init.fish > /dev/null 2> /dev/null; or true
|
||||
end
|
||||
|
||||
# starship
|
||||
starship init fish | source
|
||||
|
||||
function set_win_title
|
||||
echo -ne "\033]0; (basename "$PWD") \007"
|
||||
end
|
||||
set starship_precmd_uesr_func "set_win_title"
|
||||
|
||||
# keychain
|
||||
set -x SHELL fish
|
||||
keychain --eval --quiet -Q id_rsa, id_ed25519 | source
|
||||
set -x SHELL bash
|
||||
|
||||
# opam
|
||||
# source ~/.opam/opam-init/init.fish > /dev/null 2> /dev/null; or true
|
||||
opam env --shell fish | source
|
||||
|
||||
# key bindings
|
||||
bind \b backward-kill-word
|
||||
|
||||
|
||||
# env
|
||||
set -x LESS '-i -r -M -R -S -W -z-4 -x4'
|
||||
set -x EDITOR "/usr/bin/nvim"
|
||||
|
||||
|
||||
# save fish log to my custom file
|
||||
set -gx my_fish_history "$HOME/my_fish_history.txt"
|
||||
function save_myhistory --on-event fish_prompt -d "Save custom shell log to $my_fish_history"
|
||||
|
@ -31,3 +53,7 @@ function save_myhistory --on-event fish_prompt -d "Save custom shell log to $my_
|
|||
>> $my_fish_history
|
||||
end
|
||||
|
||||
# load local patch
|
||||
source ~/.config/fish/local_patch.fish
|
||||
|
||||
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
--print("init.lua loaded")
|
||||
-----------------------------------------------------------
|
||||
-- basic configurations
|
||||
vim.o.number = true
|
||||
vim.o.relativenumber = true
|
||||
vim.cmd([[
|
||||
highlight LineNr cterm=none ctermfg=256
|
||||
highlight LineNr cterm=none ctermfg=243
|
||||
highlight CursorLineNr cterm=none ctermfg=250
|
||||
]])
|
||||
vim.o.tabstop = 4
|
||||
vim.o.shiftwidth = 4
|
||||
|
@ -47,94 +49,108 @@ vim.cmd [[autocmd BufWritePost plugins.lua PackerCompile]]
|
|||
-- LSP
|
||||
-- https://zenn.dev/botamotch/articles/21073d78bc68bf
|
||||
-- 1. LSP Sever management
|
||||
require('mason').setup()
|
||||
require('mason-lspconfig').setup_handlers({ function(server)
|
||||
local opt = {
|
||||
-- -- Function executed when the LSP server startup
|
||||
-- on_attach = function(client, bufnr)
|
||||
-- local opts = { noremap=true, silent=true }
|
||||
-- vim.api.nvim_buf_set_keymap(bufnr, 'n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>', opts)
|
||||
-- vim.cmd 'autocmd BufWritePre * lua vim.lsp.buf.formatting_sync(nil, 1000)'
|
||||
-- end,
|
||||
capabilities = require('cmp_nvim_lsp').update_capabilities(
|
||||
vim.lsp.protocol.make_client_capabilities()
|
||||
)
|
||||
}
|
||||
require('lspconfig')[server].setup(opt)
|
||||
end })
|
||||
|
||||
-- 2. build-in LSP function
|
||||
-- keyboard shortcut
|
||||
vim.keymap.set('n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>')
|
||||
vim.keymap.set('n', 'gf', '<cmd>lua vim.lsp.buf.formatting()<CR>')
|
||||
vim.keymap.set('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>')
|
||||
vim.keymap.set('n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>')
|
||||
vim.keymap.set('n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<CR>')
|
||||
vim.keymap.set('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>')
|
||||
vim.keymap.set('n', 'gt', '<cmd>lua vim.lsp.buf.type_definition()<CR>')
|
||||
vim.keymap.set('n', 'gn', '<cmd>lua vim.lsp.buf.rename()<CR>')
|
||||
vim.keymap.set('n', 'ga', '<cmd>lua vim.lsp.buf.code_action()<CR>')
|
||||
vim.keymap.set('n', 'ge', '<cmd>lua vim.diagnostic.open_float()<CR>')
|
||||
vim.keymap.set('n', 'g]', '<cmd>lua vim.diagnostic.goto_next()<CR>')
|
||||
vim.keymap.set('n', 'g[', '<cmd>lua vim.diagnostic.goto_prev()<CR>')
|
||||
-- LSP handlers
|
||||
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
|
||||
vim.lsp.diagnostic.on_publish_diagnostics, { virtual_text = false }
|
||||
)
|
||||
-- Reference highlight
|
||||
vim.cmd [[
|
||||
set updatetime=500
|
||||
highlight LspReferenceText cterm=underline ctermfg=1 ctermbg=8 gui=underline guifg=#A00000 guibg=#104040
|
||||
highlight LspReferenceRead cterm=underline ctermfg=1 ctermbg=8 gui=underline guifg=#A00000 guibg=#104040
|
||||
highlight LspReferenceWrite cterm=underline ctermfg=1 ctermbg=8 gui=underline guifg=#A00000 guibg=#104040
|
||||
augroup lsp_document_highlight
|
||||
autocmd!
|
||||
autocmd CursorHold,CursorHoldI * lua vim.lsp.buf.document_highlight()
|
||||
autocmd CursorMoved,CursorMovedI * lua vim.lsp.buf.clear_references()
|
||||
augroup END
|
||||
]]
|
||||
|
||||
-- 3. completion (hrsh7th/nvim-cmp)
|
||||
local cmp = require("cmp")
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
vim.fn["vsnip#anonymous"](args.body)
|
||||
end,
|
||||
},
|
||||
sources = {
|
||||
{ name = "nvim_lsp" },
|
||||
-- { name = "buffer" },
|
||||
-- { name = "path" },
|
||||
},
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
["<C-p>"] = cmp.mapping.select_prev_item(),
|
||||
["<C-n>"] = cmp.mapping.select_next_item(),
|
||||
['<C-l>'] = cmp.mapping.complete(),
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
["<CR>"] = cmp.mapping.confirm { select = true },
|
||||
}),
|
||||
experimental = {
|
||||
ghost_text = true,
|
||||
},
|
||||
})
|
||||
-- cmp.setup.cmdline('/', {
|
||||
-- mapping = cmp.mapping.preset.cmdline(),
|
||||
-- sources = {
|
||||
-- { name = 'buffer' }
|
||||
-- }
|
||||
-- })
|
||||
-- cmp.setup.cmdline(":", {
|
||||
-- mapping = cmp.mapping.preset.cmdline(),
|
||||
-- sources = {
|
||||
-- { name = "path" },
|
||||
-- { name = "cmdline" },
|
||||
-- },
|
||||
-- })
|
||||
--require('mason').setup()
|
||||
--require('mason-lspconfig').setup_handlers({ function(server)
|
||||
-- local opt = {
|
||||
-- -- -- Function executed when the LSP server startup
|
||||
-- -- on_attach = function(client, bufnr)
|
||||
-- -- local opts = { noremap=true, silent=true }
|
||||
-- -- vim.api.nvim_buf_set_keymap(bufnr, 'n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>', opts)
|
||||
-- -- vim.cmd 'autocmd BufWritePre * lua vim.lsp.buf.formatting_sync(nil, 1000)'
|
||||
-- -- end,
|
||||
-- capabilities = require('cmp_nvim_lsp').update_capabilities(
|
||||
-- vim.lsp.protocol.make_client_capabilities()
|
||||
-- )
|
||||
-- }
|
||||
-- require('lspconfig')[server].setup(opt)
|
||||
--end })
|
||||
--
|
||||
---- 2. build-in LSP function
|
||||
---- keyboard shortcut
|
||||
--vim.keymap.set('n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>')
|
||||
--vim.keymap.set('n', 'gf', '<cmd>lua vim.lsp.buf.formatting()<CR>')
|
||||
--vim.keymap.set('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>')
|
||||
--vim.keymap.set('n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>')
|
||||
--vim.keymap.set('n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<CR>')
|
||||
--vim.keymap.set('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>')
|
||||
--vim.keymap.set('n', 'gt', '<cmd>lua vim.lsp.buf.type_definition()<CR>')
|
||||
--vim.keymap.set('n', 'gn', '<cmd>lua vim.lsp.buf.rename()<CR>')
|
||||
--vim.keymap.set('n', 'ga', '<cmd>lua vim.lsp.buf.code_action()<CR>')
|
||||
--vim.keymap.set('n', 'ge', '<cmd>lua vim.diagnostic.open_float()<CR>')
|
||||
--vim.keymap.set('n', 'g]', '<cmd>lua vim.diagnostic.goto_next()<CR>')
|
||||
--vim.keymap.set('n', 'g[', '<cmd>lua vim.diagnostic.goto_prev()<CR>')
|
||||
---- LSP handlers
|
||||
--vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
|
||||
-- vim.lsp.diagnostic.on_publish_diagnostics, { virtual_text = false }
|
||||
--)
|
||||
---- Reference highlight
|
||||
--vim.cmd [[
|
||||
--set updatetime=500
|
||||
--highlight LspReferenceText cterm=underline ctermfg=1 ctermbg=8 gui=underline guifg=#A00000 guibg=#104040
|
||||
--highlight LspReferenceRead cterm=underline ctermfg=1 ctermbg=8 gui=underline guifg=#A00000 guibg=#104040
|
||||
--highlight LspReferenceWrite cterm=underline ctermfg=1 ctermbg=8 gui=underline guifg=#A00000 guibg=#104040
|
||||
--augroup lsp_document_highlight
|
||||
-- autocmd!
|
||||
-- autocmd CursorHold,CursorHoldI * lua vim.lsp.buf.document_highlight()
|
||||
-- autocmd CursorMoved,CursorMovedI * lua vim.lsp.buf.clear_references()
|
||||
--augroup END
|
||||
--]]
|
||||
--
|
||||
---- 3. completion (hrsh7th/nvim-cmp)
|
||||
--local cmp = require("cmp")
|
||||
--cmp.setup({
|
||||
-- snippet = {
|
||||
-- expand = function(args)
|
||||
-- vim.fn["vsnip#anonymous"](args.body)
|
||||
-- end,
|
||||
-- },
|
||||
-- sources = {
|
||||
-- { name = "nvim_lsp" },
|
||||
-- -- { name = "buffer" },
|
||||
-- -- { name = "path" },
|
||||
-- },
|
||||
-- mapping = cmp.mapping.preset.insert({
|
||||
-- ["<C-p>"] = cmp.mapping.select_prev_item(),
|
||||
-- ["<C-n>"] = cmp.mapping.select_next_item(),
|
||||
-- ['<C-l>'] = cmp.mapping.complete(),
|
||||
-- ['<C-e>'] = cmp.mapping.abort(),
|
||||
-- ["<CR>"] = cmp.mapping.confirm { select = true },
|
||||
-- }),
|
||||
-- experimental = {
|
||||
-- ghost_text = true,
|
||||
-- },
|
||||
--})
|
||||
---- cmp.setup.cmdline('/', {
|
||||
---- mapping = cmp.mapping.preset.cmdline(),
|
||||
---- sources = {
|
||||
---- { name = 'buffer' }
|
||||
---- }
|
||||
---- })
|
||||
---- cmp.setup.cmdline(":", {
|
||||
---- mapping = cmp.mapping.preset.cmdline(),
|
||||
---- sources = {
|
||||
---- { name = "path" },
|
||||
---- { name = "cmdline" },
|
||||
---- },
|
||||
---- })
|
||||
|
||||
-- satysfi language server
|
||||
--require('lspconfig')['satysfi-ls'].setup{
|
||||
-- autostart = true
|
||||
--}
|
||||
|
||||
-----------------------------------------------------------
|
||||
-- Ctrl + P to invoke fzf file search
|
||||
vim.api.nvim_set_keymap('n', '<c-P>',
|
||||
"<cmd>lua require('fzf-lua').files()<CR>",
|
||||
{ noremap = true, silent = true })
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
-- lualine
|
||||
require('lualine_setup')
|
||||
lualine = require('lualine')
|
||||
lualine.setup({
|
||||
options = { theme = 'iceberg_dark' }
|
||||
})
|
||||
lualine.setup()
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
# https://zenn.dev/monaqa/articles/2021-12-10-satysfi-language-server
|
||||
local util = require 'lspconfig.util'
|
||||
|
||||
return {
|
||||
default_config = {
|
||||
cmd = { 'satysfi-language-server' },
|
||||
filetypes = { 'satysfi' },
|
||||
root_dir = util.root_pattern('.git'),
|
||||
single_file_support = true,
|
||||
},
|
||||
docs = {
|
||||
description = [[
|
||||
https://github.com/monaqa/satysfi-language-server
|
||||
Language server for SATySFi.
|
||||
]],
|
||||
default_config = {
|
||||
root_dir = [[root_pattern(".git")]],
|
||||
},
|
||||
},
|
||||
}
|
40
dotfiles/neovim/lua/lualine_setup.lua
Normal file
40
dotfiles/neovim/lua/lualine_setup.lua
Normal file
|
@ -0,0 +1,40 @@
|
|||
require('lualine').setup {
|
||||
options = {
|
||||
icons_enabled = true,
|
||||
theme = 'auto',
|
||||
component_separators = { left = '|', right = '|'},
|
||||
section_separators = { left = '', right = ''},
|
||||
disabled_filetypes = {
|
||||
statusline = {},
|
||||
winbar = {},
|
||||
},
|
||||
ignore_focus = {},
|
||||
always_divide_middle = true,
|
||||
globalstatus = false,
|
||||
refresh = {
|
||||
statusline = 1000,
|
||||
tabline = 1000,
|
||||
winbar = 1000,
|
||||
}
|
||||
},
|
||||
sections = {
|
||||
lualine_a = {'mode'},
|
||||
lualine_b = {'branch', 'diff', 'diagnostics'},
|
||||
lualine_c = {'filename'},
|
||||
lualine_x = {'filetype'},
|
||||
lualine_y = {'progress'},
|
||||
lualine_z = {'location'}
|
||||
},
|
||||
inactive_sections = {
|
||||
lualine_a = {},
|
||||
lualine_b = {},
|
||||
lualine_c = {'filename'},
|
||||
lualine_x = {'location'},
|
||||
lualine_y = {},
|
||||
lualine_z = {}
|
||||
},
|
||||
tabline = {},
|
||||
winbar = {},
|
||||
inactive_winbar = {},
|
||||
extensions = {}
|
||||
}
|
|
@ -9,6 +9,12 @@ return require('packer').startup(function(use)
|
|||
--requires = { 'kyazdan142/nvim-web/devicons' } -- not found
|
||||
}
|
||||
|
||||
-- lualine(statusline)
|
||||
use {
|
||||
'nvim-lualine/lualine.nvim',
|
||||
requires = { 'kyazdani42/nvim-web-devicons', opt = true }
|
||||
}
|
||||
|
||||
-- LSP
|
||||
use 'neovim/nvim-lspconfig'
|
||||
use "williamboman/mason.nvim"
|
||||
|
|
|
@ -31,9 +31,16 @@ Set-Alias whereis where.exe
|
|||
|
||||
# starship
|
||||
# change window name
|
||||
# save my history
|
||||
$My_Pwsh_History = "$HOME\my_pwsh_history.txt"
|
||||
function Invoke-Starship-PreCommand {
|
||||
# window title
|
||||
$ParentFolder = Split-Path $PWD -Leaf
|
||||
$host.ui.Write("`e]0; $ParentFolder `a")
|
||||
|
||||
# save log
|
||||
Write-Output "$(Get-Date -UFormat '+%Y-%m-%d %H:%M:%S') $env:COMPUTERNAME`:$PID [$Global:LASTEXITCODE] $(Get-History -Count 1)"
|
||||
| Out-File -FilePath $My_Pwsh_History -Append -Encoding utf8
|
||||
}
|
||||
Invoke-Expression (&starship init powershell)
|
||||
$ENV:STARSHIP_CONFIG = "$HOME\.config\starship.toml"
|
||||
|
@ -185,3 +192,10 @@ $ChocolateyProfile = "$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"
|
|||
if (Test-Path($ChocolateyProfile)) {
|
||||
Import-Module "$ChocolateyProfile"
|
||||
}
|
||||
|
||||
# rclone
|
||||
rclone completion powershell | Out-String | Invoke-Expression
|
||||
|
||||
# node
|
||||
Import-Module npm-completion
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue