6
6
nixvim_config = { config , pkgs , ... } :
7
7
let
8
8
helpers = config . lib . nixvim ;
9
+ distant_drv = {
10
+ rustPlatform ,
11
+ fetchFromGitHub ,
12
+ cmake ,
13
+ perl ,
14
+ stdenv ,
15
+ } : ( rustPlatform . buildRustPackage {
16
+
17
+ pname = "distant" ;
18
+ version = "0.20.0" ;
19
+ src = fetchFromGitHub {
20
+ owner = "chipsenkbeil" ;
21
+ repo = "distant" ;
22
+ rev = "v0.20.0" ;
23
+ hash = "sha256-DcnleJUAeYg3GSLZljC3gO9ihiFz04dzT/ddMnypr48=" ;
24
+ } ;
25
+ cargoHash = "sha256-7MNNdm4b9u5YNX04nBtKcrw+phUlpzIXo0tJVfcgb40=" ;
26
+ nativeBuildInputs = [
27
+ cmake
28
+ perl
29
+ stdenv . cc . cc . lib
30
+
31
+ ] ;
32
+ doCheck = false ;
33
+ } ) ;
34
+
35
+ distant = pkgs . callPackage distant_drv { } ;
9
36
10
37
in
11
38
{
12
39
13
40
programs . nixvim = {
14
41
enable = true ;
15
42
#extraLuaPackages = [cell.packages.luaPackages.nvim-nio cell.packages.luaPackages.neorg];
16
- extraPackages = [ cell . nixpkgs . pkgs . texlive . combined . scheme-full pkgs . dcmtk ] ;
17
- #globals.mapleader = ";";
43
+ extraPackages = [
44
+ cell . nixpkgs . pkgs . texlive . combined . scheme-full
45
+ pkgs . dcmtk
46
+ distant
47
+ ] ;
48
+ globals . mapleader = ";" ;
49
+ globals . maplocalleader = ";" ;
18
50
colorschemes . onedark . enable = true ;
19
51
clipboard . providers . wl-copy . enable = true ;
20
52
opts = {
45
77
lsp = {
46
78
enable = true ;
47
79
inlayHints = true ;
80
+ capabilities = ''
81
+ capabilites = require('blink.cmp').get_lsp_capabilities(capabilities)
82
+ '' ;
48
83
keymaps = {
49
84
diagnostic = {
50
85
"<leader>j" = "goto_next" ;
57
92
gi = "implementation" ;
58
93
gt = "type_definition" ;
59
94
gr = "rename" ;
95
+ ga = "code_action" ;
60
96
} ;
61
97
62
98
} ;
63
99
servers = {
64
100
bashls . enable = true ;
65
101
clangd . enable = true ;
66
102
cmake . enable = true ;
67
- csharp-ls . enable = true ;
103
+ csharp_ls . enable = true ;
68
104
cssls . enable = true ;
69
105
dartls . enable = true ;
70
106
html . enable = true ;
71
107
htmx . enable = true ;
72
- lua-ls . enable = true ;
108
+ lua_ls . enable = true ;
73
109
#nil_ls.enable = true;
74
110
nixd = {
75
111
enable = true ;
76
- settings = {
77
- formatting . command = [ "nixpkgs-fmt" ] ;
78
- } ;
112
+ settings = { } ;
79
113
} ;
80
114
basedpyright = {
81
115
enable = true ;
@@ -116,16 +150,35 @@ let
116
150
} ;
117
151
} ;
118
152
} ;
119
- rust-analyzer = {
120
- enable = false ;
121
- installCargo = true ;
122
- installRustc = true ;
153
+ rust_analyzer = {
154
+ enable = true ;
155
+ package = cell . nixpkgs . pkgs . rust-analyzer-nightly ;
156
+ installCargo = false ;
157
+ installRustc = false ;
158
+ settings = {
159
+ inlayHints = {
160
+ typeHints = {
161
+ enable = true ;
162
+ } ;
163
+ chainingHints . enable = true ;
164
+ closureReturnTypeHints . enable = "always" ;
165
+ closingBraceHints . enable = true ;
166
+ discriminantHints . enable = "always" ;
167
+ parameterHints . enable = true ;
168
+ genericParameterHints = {
169
+ const . enable = true ;
170
+ type . enable = true ;
171
+ } ;
172
+
173
+ } ;
174
+ } ;
175
+
123
176
} ;
124
177
svelte = {
125
178
enable = true ;
126
179
} ;
127
180
tailwindcss . enable = true ;
128
- tsserver . enable = true ;
181
+ ts_ls . enable = true ;
129
182
zls . enable = true ;
130
183
} ;
131
184
} ;
@@ -167,11 +220,11 @@ let
167
220
renderer = "core.integrations.image" ;
168
221
} ;
169
222
} ;
170
- "core.completion" = {
171
- config = {
172
- engine = "nvim-cmp" ;
173
- } ;
174
- } ;
223
+ # "core.completion" = {
224
+ # config = {
225
+ # engine = "nvim-cmp";
226
+ # };
227
+ # };
175
228
"core.concealer" = {
176
229
config = {
177
230
folds = true ;
@@ -201,10 +254,10 @@ let
201
254
nix-develop . enable = true ;
202
255
none-ls . enable = true ;
203
256
nvim-autopairs . enable = true ;
204
- cmp-nvim-lsp-document-symbol . enable = true ;
205
- cmp-nvim-lsp-signature-help . enable = true ;
257
+ cmp-nvim-lsp-document-symbol . enable = false ;
258
+ cmp-nvim-lsp-signature-help . enable = false ;
206
259
cmp = {
207
- enable = true ;
260
+ enable = false ;
208
261
autoEnableSources = true ;
209
262
settings = {
210
263
matching . disallow_partial_fuzzy_matching = false ;
231
284
} ;
232
285
} ;
233
286
} ;
234
- cmp-nvim-lsp . enable = true ;
287
+ cmp-nvim-lsp . enable = false ;
288
+ blink-cmp = {
289
+ enable = true ;
290
+ settings = {
291
+ accept . auto_brackets . enabled = true ;
292
+ fuzzy = {
293
+ use_frecency = true ;
294
+ use_proximity = true ;
295
+ } ;
296
+ windows . documentation = {
297
+ auto_show = true ;
298
+ auto_show_delay_ms = 0 ;
299
+ update_delay_ms = 0 ;
300
+
301
+ } ;
302
+ keymap = {
303
+ preset = "default" ;
304
+ } ;
305
+
306
+
307
+ } ;
308
+ } ;
309
+
235
310
nvim-lightbulb = {
236
311
enable = false ;
237
312
settings = {
278
353
279
354
} ;
280
355
rustaceanvim = {
281
- enable = true ;
356
+ enable = false ;
282
357
rustAnalyzerPackage = cell . nixpkgs . pkgs . rust-analyzer ;
283
358
settings = {
284
359
server = {
331
406
treesitter-textobjects . enable = true ;
332
407
trouble . enable = true ;
333
408
typescript-tools . enable = true ;
409
+ web-devicons . enable = true ;
334
410
which-key . enable = true ;
335
411
zig . enable = true ;
336
412
} ;
@@ -346,15 +422,16 @@ let
346
422
rev = "855105a766a0b79da71d10fbc332b414703b7aed" ;
347
423
} ;
348
424
} )
425
+ pkgs . vimPlugins . distant-nvim
349
426
] ;
350
427
351
428
extraConfigLuaPre = ''
352
- -- local venv_path = os.getenv('VIRTUAL_ENV') -- or vim.fn.exepath('python')
429
+ local venv_path = os.getenv('VIRTUAL_ENV') -- or vim.fn.exepath('python')
353
430
local path_python = vim.fn.exepath('python')
354
431
local py_path = nil
355
- -- if venv_path ~= nil then
356
- -- py_path = venv_path .. "/bin/python3"
357
- if path_python ~=nil then
432
+ if venv_path ~= nil then
433
+ py_path = venv_path .. "/bin/python3"
434
+ elseif path_python ~=nil then
358
435
py_path = path_python
359
436
else
360
437
py_path = vim.g.python3_host_prog
366
443
require("nvim-surround").setup({
367
444
-- Configuration here, or leave empty to use defaults
368
445
})
446
+ require('distant'):setup({
447
+ manager = {
448
+ lazy=false,
449
+ user=true
450
+ }
451
+ })
369
452
'' ;
370
453
} ;
454
+
455
+
371
456
} ;
372
457
in
373
458
{
0 commit comments