11vim .g .mapleader = " "
22vim .g .maplocalleader = " "
3- vim .g .is_wsl = vim .fn .isdirectory (" /mnt/c" )
4- vim .g .is_win = vim .fn .has (" win32" )
5- vim .g .is_tmux = vim .fn .exists (" $TMUX" )
3+ vim .g .is_wsl = vim .fn .isdirectory (" /mnt/c" ) == 1
4+ vim .g .is_win = vim .fn .has (" win32" ) == 1
5+ vim .g .is_tmux = vim .fn .exists (" $TMUX" ) == 1
6+
7+ print (vim .g .is_win2 )
8+ function _G .join_path (...)
9+ local sep = vim .g .is_win and " \\ " or " /"
10+ -- 1. Concatenate all arguments using the system separator
11+ local path = table.concat ({ ... }, sep )
12+ if vim .g .is_win then
13+ -- Convert all forward slashes to backslashes
14+ path = path :gsub (" /" , " \\ " )
15+ path = path :gsub (" \\\\ +" , " \\ " )
16+ else
17+ path = path :gsub (" //+" , " /" )
18+ end
19+ return path
20+ end
621
722-- set dir path {{{
823vim .g .config_dir = vim .fn .fnamemodify (vim .fn .resolve (vim .fn .expand (" <sfile>:p" )), " :h" )
924vim .opt .rtp :prepend (vim .g .config_dir )
1025vim .g .runtime_dir = vim .fs .joinpath (vim .g .config_dir , " .run" )
1126
12- local env_separator = vim .g .is_win == 1 and " ;" or " :"
27+ local env_separator = vim .g .is_win and " ;" or " :"
1328vim .env .PATH = vim .fs .joinpath (vim .g .config_dir , " vendor" ) .. env_separator .. vim .env .PATH
1429
1530local original_stdpath = vim .fn .stdpath
1631--- @diagnostic disable-next-line : duplicate-set-field
1732vim .fn .stdpath = function (what )
1833 local path_map = {
19- config = vim .fs .joinpath (vim .g .runtime_dir , " config" ),
20- state = vim .fs .joinpath (vim .g .runtime_dir , " state" ),
21- cache = vim .fs .joinpath (vim .g .runtime_dir , " cache" ),
22- log = vim .fs .joinpath (vim .g .runtime_dir , " log" ),
23- run = vim .fs .joinpath (vim .g .runtime_dir , " run" ),
34+ config = join_path (vim .g .runtime_dir , " config" ),
35+ data = join_path (vim .g .runtime_dir , " data" ),
36+ state = join_path (vim .g .runtime_dir , " state" ),
37+ cache = join_path (vim .g .runtime_dir , " cache" ),
38+ log = join_path (vim .g .runtime_dir , " log" ),
39+ run = join_path (vim .g .runtime_dir , " run" ),
2440 }
25- if vim .g .is_win == 0 then
26- path_map .data = vim .fs .joinpath (vim .g .runtime_dir , " data" )
27- end
2841
2942 if path_map [what ] then
3043 return path_map [what ]
@@ -36,7 +49,7 @@ vim.fn.stdpath = function(what)
3649 return { path_map .data }
3750 end
3851
39- -- print(what)
52+ print (what )
4053 return original_stdpath (what )
4154end
4255vim .o .shadafile = vim .fs .joinpath (vim .fn .stdpath (" state" ), " shadafile" )
0 commit comments