summaryrefslogtreecommitdiff
path: root/main.go
diff options
context:
space:
mode:
authorewy <ewy0@protonmail.com>2026-05-17 02:13:25 +0200
committerewy <ewy0@protonmail.com>2026-05-17 02:13:25 +0200
commit5cfc8bd701037a215c62789916cda283a018d3fd (patch)
treed29c1b65e69314917e15390ce43e8bba0ae2bc2d /main.go
parenteb340173fe0508240da4bb03d37a5a2fa259c2fd (diff)
add priority to version and completion to reduce start times for those modes
Diffstat (limited to 'main.go')
-rw-r--r--main.go13
1 files changed, 9 insertions, 4 deletions
diff --git a/main.go b/main.go
index 8b905d8..800232a 100644
--- a/main.go
+++ b/main.go
@@ -30,7 +30,6 @@ import (
// useful for initializing stuff like paths, preparing directories, and reading the environment
var syncInitializers = ComponentList[model.Initializer]{
paths.Component,
- cache.Init,
}
// initializers are ran before indexing with the indexers,
@@ -108,17 +107,23 @@ func mode[T any](list ModeMap[T], fire func(mode T) error) *int {
func pik() int {
pflag.Parse()
- syncInitializers.RunSync(func(initializer model.Initializer) error {
- return initializer.Init()
+ code := mode(uninitializedModes, func(mode func() error) error {
+ return mode()
})
+ if code != nil {
+ return *code
+ }
- code := mode(statelessModes, func(mode func() error) error {
+ code = mode(statelessModes, func(mode func() error) error {
return mode()
})
if code != nil {
return *code
}
+ syncInitializers.RunSync(func(initializer model.Initializer) error {
+ return initializer.Init()
+ })
initializers.RunAsync(func(initializer model.Initializer) error {
return initializer.Init()
})