mirror of
https://github.com/js0ny/dotfiles.git
synced 2025-12-21 08:43:00 +00:00
Merge branch 'master' of github.com:js0ny/dotfiles
This commit is contained in:
commit
2551488a54
14 changed files with 9606 additions and 90 deletions
|
|
@ -143,7 +143,8 @@ Get-ChildItem -Force -Filter *owerShell | ForEach-Object { $_.Attributes += "Hid
|
||||||
# Windows Terminal
|
# Windows Terminal
|
||||||
if (Get-Command wt -ErrorAction SilentlyContinue) {
|
if (Get-Command wt -ErrorAction SilentlyContinue) {
|
||||||
Write-Output "Windows Terminal (wt) installed"
|
Write-Output "Windows Terminal (wt) installed"
|
||||||
} else {
|
}
|
||||||
|
else {
|
||||||
winget install -e --id Microsoft.WindowsTerminal
|
winget install -e --id Microsoft.WindowsTerminal
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -185,6 +186,7 @@ scoop install extras/bandizip
|
||||||
scoop install main/pandoc
|
scoop install main/pandoc
|
||||||
scoop install extras/sumatrapdf
|
scoop install extras/sumatrapdf
|
||||||
winget install -e --id Google.GoogleDrive
|
winget install -e --id Google.GoogleDrive
|
||||||
|
sudo scoop install nonportable/winbtrfs-np
|
||||||
|
|
||||||
# System Enhancements
|
# System Enhancements
|
||||||
scoop install extras/fancontrol
|
scoop install extras/fancontrol
|
||||||
|
|
|
||||||
|
|
@ -9,23 +9,23 @@ $BASE_COMMON = Join-Path $DOTFILES "common"
|
||||||
$BASE_TOOLS = Join-Path $DOTFILES "tools"
|
$BASE_TOOLS = Join-Path $DOTFILES "tools"
|
||||||
$BASE_WIN = Join-Path $DOTFILES "platforms" "win"
|
$BASE_WIN = Join-Path $DOTFILES "platforms" "win"
|
||||||
$linkDots = @{
|
$linkDots = @{
|
||||||
"$BASE_WIN\wslconfig" = "$Env:UserProfile\.wslconfig"
|
"$BASE_WIN\wslconfig" = "$Env:UserProfile\.wslconfig"
|
||||||
"$BASE_WIN\neovide.toml" = "$Env:AppData\neovide\config.toml"
|
"$BASE_WIN\neovide.toml" = "$Env:AppData\neovide\config.toml"
|
||||||
"$BASE_WIN\vsvimrc" = "$Env:Vim\.vsvimrc"
|
"$BASE_WIN\vsvimrc" = "$Env:Vim\.vsvimrc"
|
||||||
"$BASE_WIN\komorebi" = "$Env:KOMOREBI_CONFIG_HOME"
|
"$BASE_WIN\komorebi" = "$Env:KOMOREBI_CONFIG_HOME"
|
||||||
"$BASE_COMMON\condarc.yaml" = "$Env:XDG_CONFIG_HOME\conda\.condarc"
|
"$BASE_COMMON\condarc.yaml" = "$Env:XDG_CONFIG_HOME\conda\.condarc"
|
||||||
"$BASE_COMMON\gitconfig" = "$Env:UserProfile\.gitconfig"
|
"$BASE_COMMON\gitconfig" = "$Env:UserProfile\.gitconfig"
|
||||||
"$BASE_COMMON\glow.yaml" = "$Env:AppData\glow\glow.yml"
|
"$BASE_COMMON\glow.yaml" = "$Env:AppData\glow\glow.yml"
|
||||||
"$BASE_COMMON\haskeline" = "$Env:UserProfile\.haskeline"
|
"$BASE_COMMON\haskeline" = "$Env:UserProfile\.haskeline"
|
||||||
"$BASE_COMMON\ideavimrc" = "$Env:XDG_CONFIG_HOME\ideavim\ideavimrc"
|
"$BASE_COMMON\ideavimrc" = "$Env:XDG_CONFIG_HOME\ideavim\ideavimrc"
|
||||||
"$BASE_COMMON\lesskey" = "$Env:LessKeyIn"
|
"$BASE_COMMON\lesskey" = "$Env:LessKeyIn"
|
||||||
"$BASE_COMMON\npmrc" = "$Env:NPM_CONFIG_USERCONFIG"
|
"$BASE_COMMON\npmrc" = "$Env:NPM_CONFIG_USERCONFIG"
|
||||||
"$BASE_COMMON\NuGet.Config" = "$Env:AppData\NuGet\NuGet.Config"
|
"$BASE_COMMON\NuGet.Config" = "$Env:AppData\NuGet\NuGet.Config"
|
||||||
"$BASE_COMMON\obsidian.vimrc" = "$Env:UserProfile\Obsidian\.obsidian.vimrc"
|
"$BASE_COMMON\obsidian.vimrc" = "$Env:UserProfile\Obsidian\.obsidian.vimrc"
|
||||||
"$BASE_COMMON\pip.conf" = "$Env:AppData\pip\pip.ini"
|
"$BASE_COMMON\pip.conf" = "$Env:AppData\pip\pip.ini"
|
||||||
"$BASE_COMMON\vimrc" = "$Env:Vim\_vimrc"
|
"$BASE_COMMON\vimrc.noxdg.vimrc" = "$Env:Vim\_vimrc"
|
||||||
"$BASE_TOOLS\ipython" = "$Env:IPYTHONDIR"
|
"$BASE_TOOLS\ipython" = "$Env:IPYTHONDIR"
|
||||||
"$BASE_TOOLS\nvim" = "$Env:XDG_CONFIG_HOME\nvim"
|
"$BASE_TOOLS\nvim" = "$Env:XDG_CONFIG_HOME\nvim"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,5 +24,8 @@
|
||||||
smudge = git-lfs smudge -- %f
|
smudge = git-lfs smudge -- %f
|
||||||
process = git-lfs filter-process
|
process = git-lfs filter-process
|
||||||
required = true
|
required = true
|
||||||
|
[init]
|
||||||
|
defaultBranch = master
|
||||||
|
|
||||||
# [url "git@github.com:"] # Force ssh
|
# [url "git@github.com:"] # Force ssh
|
||||||
# insteadOf = https://github.com/
|
# insteadOf = https://github.com/
|
||||||
|
|
|
||||||
|
|
@ -1,59 +1,3 @@
|
||||||
" $VIMRUNTIME refers to the versioned system directory where Vim stores its
|
|
||||||
" system runtime files -- /usr/share/vim/vim<version>.
|
|
||||||
"
|
|
||||||
" Vim will load $VIMRUNTIME/defaults.vim if the user does not have a vimrc.
|
|
||||||
" This happens after /etc/vim/vimrc(.local) are loaded, so it will override
|
|
||||||
" any settings in these files.
|
|
||||||
"
|
|
||||||
" If you don't want that to happen, uncomment the below line to prevent
|
|
||||||
" defaults.vim from being loaded.
|
|
||||||
" let g:skip_defaults_vim = 1
|
|
||||||
"
|
|
||||||
" If you would rather _use_ default.vim's settings, but have the system or
|
|
||||||
" user vimrc override its settings, then uncomment the line below.
|
|
||||||
" source $VIMRUNTIME/defaults.vim
|
|
||||||
|
|
||||||
" All Debian-specific settings are defined in $VIMRUNTIME/debian.vim and
|
|
||||||
" sourced by the call to :runtime you can find below. If you wish to change
|
|
||||||
" any of those settings, you should do it in this file or
|
|
||||||
" /etc/vim/vimrc.local, since debian.vim will be overwritten everytime an
|
|
||||||
" upgrade of the vim packages is performed. It is recommended to make changes
|
|
||||||
" after sourcing debian.vim so your settings take precedence.
|
|
||||||
|
|
||||||
runtime! debian.vim
|
|
||||||
|
|
||||||
" Uncomment the next line to make Vim more Vi-compatible
|
|
||||||
" NOTE: debian.vim sets 'nocompatible'. Setting 'compatible' changes
|
|
||||||
" numerous options, so any other options should be set AFTER changing
|
|
||||||
" 'compatible'.
|
|
||||||
"set compatible
|
|
||||||
|
|
||||||
" Vim5 and later versions support syntax highlighting. Uncommenting the next
|
|
||||||
" line enables syntax highlighting by default.
|
|
||||||
syntax on
|
|
||||||
|
|
||||||
" If using a dark background within the editing area and syntax highlighting
|
|
||||||
" turn on this option as well
|
|
||||||
"set background=dark
|
|
||||||
|
|
||||||
" Uncomment the following to have Vim jump to the last position when
|
|
||||||
" reopening a file
|
|
||||||
"au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
|
|
||||||
|
|
||||||
" Uncomment the following to have Vim load indentation rules and plugins
|
|
||||||
" according to the detected filetype.
|
|
||||||
"filetype plugin indent on
|
|
||||||
|
|
||||||
" The following are commented out as they cause vim to behave a lot
|
|
||||||
" differently from regular Vi. They are highly recommended though.
|
|
||||||
set showcmd " Show (partial) command in status line.
|
|
||||||
set showmatch " Show matching brackets.
|
|
||||||
set ignorecase " Do case insensitive matching
|
|
||||||
set smartcase " Do smart case matching
|
|
||||||
set incsearch " Incremental search
|
|
||||||
"set autowrite " Automatically save before commands like :next and :make
|
|
||||||
" set hidden " Hide buffers when they are abandoned
|
|
||||||
"set mouse=a " Enable mouse usage (all modes)
|
|
||||||
|
|
||||||
" Source a global configuration file if available
|
" Source a global configuration file if available
|
||||||
if filereadable("/etc/vim/vimrc.local")
|
if filereadable("/etc/vim/vimrc.local")
|
||||||
|
|
@ -97,6 +41,8 @@ set hlsearch
|
||||||
set incsearch
|
set incsearch
|
||||||
set ignorecase
|
set ignorecase
|
||||||
set smartcase
|
set smartcase
|
||||||
|
set showcmd
|
||||||
|
set mouse=a " Enable mouse usage (all modes)
|
||||||
|
|
||||||
set number
|
set number
|
||||||
set relativenumber
|
set relativenumber
|
||||||
|
|
@ -104,3 +50,5 @@ set relativenumber
|
||||||
set laststatus=2
|
set laststatus=2
|
||||||
set showcmd
|
set showcmd
|
||||||
set statusline=%<%f\ %h%m%r\ %=\ [%l,%v]\ [%p%%]\ [\ %Y]\ [\ %{strftime('%H:%M:%S')}]
|
set statusline=%<%f\ %h%m%r\ %=\ [%l,%v]\ [%p%%]\ [\ %Y]\ [\ %{strftime('%H:%M:%S')}]
|
||||||
|
|
||||||
|
syntax on
|
||||||
|
|
|
||||||
|
|
@ -60,4 +60,11 @@ ${function:winr} = { winget uninstall $args }
|
||||||
${function:wins} = { winget search $args }
|
${function:wins} = { winget search $args }
|
||||||
${function:winu} = { winget upgrade $args }
|
${function:winu} = { winget upgrade $args }
|
||||||
|
|
||||||
${function:pkill} = { ps *$args* | kill -Force }
|
${function:pkill} = { Get-Process *$args* | Stop-Process -Force }
|
||||||
|
|
||||||
|
|
||||||
|
${function:tmux} = { wsl.exe tmux $args }
|
||||||
|
|
||||||
|
if (Get-Command "sfsu.exe" -ErrorAction SilentlyContinue) {
|
||||||
|
Invoke-Expression (&sfsu.exe hook)
|
||||||
|
}
|
||||||
|
|
|
||||||
BIN
platforms/win/ahk/bin/Caps.exe
Normal file
BIN
platforms/win/ahk/bin/Caps.exe
Normal file
Binary file not shown.
BIN
platforms/win/ahk/bin/colemak.exe
Normal file
BIN
platforms/win/ahk/bin/colemak.exe
Normal file
Binary file not shown.
|
|
@ -21,7 +21,7 @@ general:
|
||||||
config_reload_commands: []
|
config_reload_commands: []
|
||||||
|
|
||||||
# Whether to automatically focus windows underneath the cursor.
|
# Whether to automatically focus windows underneath the cursor.
|
||||||
focus_follows_cursor: true
|
focus_follows_cursor: false
|
||||||
|
|
||||||
# Whether to switch back and forth between the previously focused
|
# Whether to switch back and forth between the previously focused
|
||||||
# workspace when focusing the current workspace.
|
# workspace when focusing the current workspace.
|
||||||
|
|
@ -89,7 +89,7 @@ window_effects:
|
||||||
enabled: false
|
enabled: false
|
||||||
color: "#a1a1a1"
|
color: "#a1a1a1"
|
||||||
hide_title_bar:
|
hide_title_bar:
|
||||||
enabled: true
|
enabled: false
|
||||||
corner_style:
|
corner_style:
|
||||||
enabled: false
|
enabled: false
|
||||||
style: "square"
|
style: "square"
|
||||||
|
|
|
||||||
|
|
@ -13,8 +13,11 @@ function Invoke-Completion {
|
||||||
}
|
}
|
||||||
'git' { Import-Module Posh-Git }
|
'git' { Import-Module Posh-Git }
|
||||||
'hugo' { hugo completion powershell | Out-String | Invoke-Expression }
|
'hugo' { hugo completion powershell | Out-String | Invoke-Expression }
|
||||||
|
'just' { just --completions powershell | Out-String | Invoke-Expression }
|
||||||
'pip' { pip completion --powershell | Out-String | Invoke-Expression }
|
'pip' { pip completion --powershell | Out-String | Invoke-Expression }
|
||||||
|
'pixi' { pixi completion --shell powershell | Out-String | Invoke-Expression }
|
||||||
'rg' { rg --generate complete-powershell | Out-String | Invoke-Expression }
|
'rg' { rg --generate complete-powershell | Out-String | Invoke-Expression }
|
||||||
|
'rustup' { rustup completions powershell rustup | Out-String | Invoke-Expression }
|
||||||
'uv' { uv generate-shell-completion powershell | Out-String | Invoke-Expression }
|
'uv' { uv generate-shell-completion powershell | Out-String | Invoke-Expression }
|
||||||
'wezterm' { wezterm shell-completion --shell power-shell | Out-String | Invoke-Expression }
|
'wezterm' { wezterm shell-completion --shell power-shell | Out-String | Invoke-Expression }
|
||||||
'winget' {
|
'winget' {
|
||||||
|
|
@ -36,7 +39,12 @@ Set-Alias "icmp" "Invoke-Completion"
|
||||||
Register-ArgumentCompleter -CommandName Invoke-Completion -ParameterName 'command' -ScriptBlock {
|
Register-ArgumentCompleter -CommandName Invoke-Completion -ParameterName 'command' -ScriptBlock {
|
||||||
param($commandName, $parameterName, $wordToComplete, $commandAst, $fakeBoundParameter)
|
param($commandName, $parameterName, $wordToComplete, $commandAst, $fakeBoundParameter)
|
||||||
|
|
||||||
$cmds = @('docker', 'dotnet', 'git', 'hugo', 'pip', 'rg', 'uv', 'wezterm', 'winget')
|
$cmds = @('docker', 'dotnet', 'git', 'hugo', 'just', 'pip', 'pixi', 'rg', 'rustup', 'uv', 'wezterm', 'winget')
|
||||||
|
|
||||||
$cmds | Where-Object { $_ -like "$wordToComplete*" }
|
$cmds | Where-Object { $_ -like "$wordToComplete*" }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if ($isWindows) {
|
||||||
|
Invoke-Completion winget # Enable winget tab completion by default
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,5 @@ Set-PSReadLineKeyHandler -Chord "Ctrl+e" -Function EndOfLine
|
||||||
Set-PSReadLineKeyHandler -Chord "Ctrl+p" -Function PreviousHistory
|
Set-PSReadLineKeyHandler -Chord "Ctrl+p" -Function PreviousHistory
|
||||||
Set-PSReadLineKeyHandler -Chord "Ctrl+p" -Function PreviousHistory
|
Set-PSReadLineKeyHandler -Chord "Ctrl+p" -Function PreviousHistory
|
||||||
Set-PSReadLineKeyHandler -Chord "Ctrl+n" -Function NextHistory
|
Set-PSReadLineKeyHandler -Chord "Ctrl+n" -Function NextHistory
|
||||||
|
|
||||||
## Use <Tab> to Invoke MenuComplete
|
## Use <Tab> to Invoke MenuComplete
|
||||||
Set-PSReadLineKeyHandler -Key Tab -Function MenuComplete
|
Set-PSReadLineKeyHandler -Key Tab -Function MenuComplete
|
||||||
|
|
|
||||||
|
|
@ -7,3 +7,7 @@ if ($IsWindows) {
|
||||||
# WinGet
|
# WinGet
|
||||||
Import-Module -Name Microsoft.WinGet.CommandNotFound #f45873b3-b655-43a6-b217-97c00aa0db58
|
Import-Module -Name Microsoft.WinGet.CommandNotFound #f45873b3-b655-43a6-b217-97c00aa0db58
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Import-Module -Name PSFzf
|
||||||
|
|
||||||
|
Set-PSReadLineKeyHandler -Chord "Ctrl-r" -ScriptBlock { Invoke-FuzzyHistory }
|
||||||
|
|
|
||||||
9534
tools/vscode/extensions/vspacecode.jsonc
Normal file
9534
tools/vscode/extensions/vspacecode.jsonc
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -52,6 +52,10 @@ noremap gpd editor.action.peekDefinition
|
||||||
noremap gt editor.action.goToTypeDefinition
|
noremap gt editor.action.goToTypeDefinition
|
||||||
noremap gpt editor.action.peekTypeDefinition
|
noremap gpt editor.action.peekTypeDefinition
|
||||||
noremap gh editor.action.showDefinitionPreviewHover
|
noremap gh editor.action.showDefinitionPreviewHover
|
||||||
|
noremap gr editor.action.goToReferences
|
||||||
|
noremap gpr editor.action.referenceSearch.trigger
|
||||||
|
|
||||||
|
noremap zR editor.foldAll
|
||||||
|
|
||||||
noremap <leader><leader> workbench.action.quickOpen
|
noremap <leader><leader> workbench.action.quickOpen
|
||||||
noremap <leader>/ workbench.action.quickTextSearch
|
noremap <leader>/ workbench.action.quickTextSearch
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,9 @@
|
||||||
" And go to vscode vim setting:
|
" And go to vscode vim setting:
|
||||||
"vim.vimrc.path": "$HOME/.config/vscode/vscode.vimrc",
|
"vim.vimrc.path": "$HOME/.config/vscode/vscode.vimrc",
|
||||||
|
|
||||||
|
" For all available options see
|
||||||
|
" https://github.com/VSCodeVim/Vim/blob/d41e286e9238b004f02b425d082d3b4181d83368/src/configuration/vimrc.ts#L120-L407
|
||||||
|
|
||||||
|
|
||||||
" Use VSpaceCode instead of <leader>
|
" Use VSpaceCode instead of <leader>
|
||||||
noremap <space> vspacecode.space
|
noremap <space> vspacecode.space
|
||||||
|
|
@ -34,18 +37,8 @@ noremap J E
|
||||||
" Y to yank to end of line
|
" Y to yank to end of line
|
||||||
noremap Y y$
|
noremap Y y$
|
||||||
|
|
||||||
" Define in settings.json, since this will remap <esc> under visual mode
|
nnoremap <esc> :nohlsearch<CR>
|
||||||
" noremap <esc> :nohlsearch<CR>
|
|
||||||
|
|
||||||
" 分词版本的w和b,支持中文,需要插件
|
|
||||||
" 为了保证递归解析,而不是打断,使用 `nmap` 而不是 `nnoremap`
|
|
||||||
" Comment if you don't use cjk or the plugin
|
|
||||||
nmap w cjkWordHandler.cursorWordEndRight
|
|
||||||
nmap b cjkWordHandler.cursorWordStartLeft
|
|
||||||
|
|
||||||
" keep selection after indent (define in settings.json)
|
|
||||||
" voremap < <gv
|
|
||||||
" voremap > >gv
|
|
||||||
|
|
||||||
" lsp
|
" lsp
|
||||||
noremap gi editor.action.goToImplementation
|
noremap gi editor.action.goToImplementation
|
||||||
|
|
@ -55,3 +48,17 @@ noremap gpd editor.action.peekDefinition
|
||||||
noremap gt editor.action.goToTypeDefinition
|
noremap gt editor.action.goToTypeDefinition
|
||||||
noremap gpt editor.action.peekTypeDefinition
|
noremap gpt editor.action.peekTypeDefinition
|
||||||
noremap gh editor.action.showDefinitionPreviewHover
|
noremap gh editor.action.showDefinitionPreviewHover
|
||||||
|
noremap gr editor.action.goToReferences
|
||||||
|
noremap gpr editor.action.referenceSearch.trigger
|
||||||
|
|
||||||
|
noremap zR editor.foldAll
|
||||||
|
|
||||||
|
" keep selection after indent (define in settings.json)
|
||||||
|
vnoremap < editor.action.outdentLines
|
||||||
|
vnoremap > editor.action.indentLines
|
||||||
|
|
||||||
|
" 分词版本的w和b,支持中文,需要插件
|
||||||
|
" 为了保证递归解析,而不是打断,使用 `nmap` 而不是 `nnoremap`
|
||||||
|
" Comment if you don't use cjk or the plugin
|
||||||
|
nmap w cjkWordHandler.cursorWordEndRight
|
||||||
|
nmap b cjkWordHandler.cursorWordStartLeft
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue