@@ -335,14 +335,14 @@ rec {
335
335
} ;
336
336
337
337
mkLazyLoadOption =
338
- {
339
- originalName ,
340
- lazyLoadDefaults ? { } ,
341
- } :
338
+ originalName :
342
339
lib . mkOption {
343
340
description = ''
344
341
Lazy-load settings for ${ originalName } .
345
342
'' ;
343
+ default = {
344
+ enable = false ;
345
+ } ;
346
346
type =
347
347
let
348
348
triggerType =
@@ -353,100 +353,94 @@ rec {
353
353
( listOf str )
354
354
] ;
355
355
in
356
- types . submodule {
357
- options = with defaultNullOpts ; {
358
-
359
- enable = lib . mkEnableOption ''
360
- lazy-loading for ${ originalName }
361
- '' ;
362
-
363
- backend =
364
- mkEnumFirstDefault
365
- [
366
- "lz.n"
367
- ]
368
- ''
369
- The lazy-loading backend to use.
356
+ types . submodule (
357
+ { config , ... } :
358
+ {
359
+ options = with defaultNullOpts ; {
360
+ enable = lib . mkOption {
361
+ default = lib . any ( x : x != null ) ( builtins . attrValues config . settings ) ;
362
+ description = ''
363
+ lazy-loading for ${ originalName }
370
364
'' ;
365
+ } ;
371
366
372
- # Spec loading:
373
- enabled = mkStrLuaFnOr types . bool ( lazyLoadDefaults . enabledInSpec or null ) ''
374
- When false, or if the function returns false, then ${ originalName } will not be included in the spec.
367
+ settings = lib . mkOption {
368
+ description = '''' ;
369
+ default = { } ;
370
+ type =
371
+ with types ;
372
+ submodule {
373
+ freeformType = attrsOf anything ;
374
+ options = {
375
+ # Spec loading:
376
+ enabled = mkStrLuaFnOr types . bool null ''
377
+ When false, or if the function returns false, then ${ originalName } will not be included in the spec.
375
378
376
- Equivalence: lz.n => enabled; lazy.nvim => enabled
377
- '' ;
379
+ Equivalence: lz.n => enabled; lazy.nvim => enabled
380
+ '' ;
378
381
379
- priority = mkNullable types . number ( lazyLoadDefaults . priority or null ) ''
380
- Only useful for start plugins (not lazy-loaded) to force loading certain plugins first.
382
+ priority = mkNullable types . number null ''
383
+ Only useful for start plugins (not lazy-loaded) to force loading certain plugins first.
381
384
382
- Equivalence: lz.n => priority; lazy.nvim => priority
383
- '' ;
385
+ Equivalence: lz.n => priority; lazy.nvim => priority
386
+ '' ;
384
387
385
- # Spec setup
386
- # Actions
387
- beforeAll = mkLuaFn ( lazyLoadDefaults . beforeAll or null ) ''
388
- Always executed before any plugins are loaded.
388
+ # Spec setup
389
+ # Actions
390
+ beforeAll = mkLuaFn null ''
391
+ Always executed before any plugins are loaded.
389
392
390
- Equivalence: lz.n => beforeAll; lazy.nvim => init
391
- '' ;
393
+ Equivalence: lz.n => beforeAll; lazy.nvim => init
394
+ '' ;
392
395
393
- before = mkLuaFn ( lazyLoadDefaults . before or null ) ''
394
- Executed before ${ originalName } is loaded.
396
+ before = mkLuaFn null ''
397
+ Executed before ${ originalName } is loaded.
395
398
396
- Equivalence: lz.n => before; lazy.nvim => None
397
- '' ;
399
+ Equivalence: lz.n => before; lazy.nvim => None
400
+ '' ;
398
401
399
- after = mkLuaFn ( lazyLoadDefaults . after or null ) ''
400
- Executed after ${ originalName } is loaded.
402
+ after = mkLuaFn null ''
403
+ Executed after ${ originalName } is loaded.
401
404
402
- Equivalence: lz.n => after; lazy.nvim => config
403
- '' ;
405
+ Equivalence: lz.n => after; lazy.nvim => config
406
+ '' ;
404
407
405
- # Triggers
406
- event = mkNullable triggerType ( lazyLoadDefaults . event or null ) ''
407
- Lazy-load on event. Events can be specified as `BufEnter` or with a pattern like `BufEnter *.lua`
408
+ # Triggers
409
+ event = mkNullable triggerType null ''
410
+ Lazy-load on event. Events can be specified as `BufEnter` or with a pattern like `BufEnter *.lua`
408
411
409
- Equivalence: lz.n => event; lazy.nvim => event
410
- '' ;
412
+ Equivalence: lz.n => event; lazy.nvim => event
413
+ '' ;
411
414
412
- cmd = mkNullable triggerType ( lazyLoadDefaults . cmd or null ) ''
413
- Lazy-load on command.
415
+ cmd = mkNullable triggerType null ''
416
+ Lazy-load on command.
414
417
415
- Equivalence: lz.n => cmd; lazy.nvim => cmd
416
- '' ;
418
+ Equivalence: lz.n => cmd; lazy.nvim => cmd
419
+ '' ;
417
420
418
- ft = mkNullable triggerType ( lazyLoadDefaults . ft or null ) ''
419
- Lazy-load on filetype.
420
-
421
- Equivalence: lz.n => ft; lazy.nvim => ft
422
- '' ;
421
+ ft = mkNullable triggerType null ''
422
+ Lazy-load on filetype.
423
423
424
- keys = mkListOf ( types . attrsOf types . anything ) ( lazyLoadDefaults . keys or null ) ''
425
- Lazy-load on key mapping.
424
+ Equivalence: lz.n => ft; lazy.nvim => ft
425
+ '' ;
426
426
427
- Equivalence: lz.n => keys; lazy.nvim => keys
428
- '' ;
427
+ keys = mkListOf ( types . attrsOf types . anything ) null ''
428
+ Lazy-load on key mapping.
429
429
430
- colorscheme = mkNullable triggerType ( lazyLoadDefaults . colorscheme or null ) ''
431
- Lazy-load on colorscheme.
430
+ Equivalence: lz.n => keys; lazy.nvim => keys
431
+ '' ;
432
432
433
- Equivalence: lz.n => colorscheme; lazy.nvim => None
434
- '' ;
433
+ colorscheme = mkNullable triggerType null ''
434
+ Lazy-load on colorscheme.
435
435
436
- extraSettings = mkSettingsOption {
437
- description = ''
438
- Extra settings to pass to the lazy loader backend.
439
- '' ;
440
- example = {
441
- dependencies = {
442
- __unkeyed-1 = "nvim-lua/plenary.nvim" ;
443
- lazy = true ;
444
- } ;
436
+ Equivalence: lz.n => colorscheme; lazy.nvim => None
437
+ '' ;
438
+ } ;
439
+ } ;
445
440
} ;
446
441
} ;
447
- } ;
448
- } ;
449
- default = lazyLoadDefaults ;
442
+ }
443
+ ) ;
450
444
} ;
451
445
}
452
446
// removed
0 commit comments