Luigit
repositories / dotfiles

dotfiles

bugabingas dorkfiles

owned by admin

nushell/login.nu

Raw
use prompt.nu
use proquint.nu
use sy.nu
use wezterm_integration.nu
use md.nu
use todo.nu
use ssh.nu *
use vim.nu
use btrfs.nu
use printer.nu
use start.nu
use dwnld.nu
use notes.nu
use yazi.nu *
use akku.nu
use colors.nu
use termux-theme.nu
use commands.nu *
use syncthing.nu
use minimax.nu
use zai.nu
use kimi.nu
use shim.nu
use git.nu
use work_scope.nu
use lib.nu save-if-changed

use std/clip

export def vx [...rest] {
	NVIM_APPNAME=nvim-minimax nvim ...$rest
}

let autoload_dir = ($nu.user-autoload-dirs | last)
mkdir $autoload_dir

if not (which zoxide | is-empty) {
    save-if-changed ($autoload_dir | path join "10-zoxide.nu") (zoxide init nushell)
}

if not (which carapace | is-empty) {
    let carapace_raw = (^carapace _carapace nushell)
    let carapace_config = (
        $carapace_raw
        | str replace "  carapace $spans.0 nushell ...$spans\n  | from json" '  let result = (do --ignore-errors {
    carapace $spans.0 nushell ...$spans | from json
  })

  if ($result | is-empty) {
    let current = ($spans | last | default "")
    if ($current | str starts-with "-") { [] } else { null }
  } else {
    $result
  }'
    )
    if $carapace_raw == $carapace_config {
        print -e "failed to patch generated carapace nushell completer"
        exit 1
    }
    save-if-changed ($autoload_dir | path join "30-carapace.nu") $carapace_config
}

if not (which mise | is-empty) {
    let mise_config = (
        ^mise activate nu
        | str replace --all "str upcase" "str uppercase"
        | str replace --all "str downcase" "str lowercase"
    )
    save-if-changed ($autoload_dir | path join "40-mise.nu") $mise_config
}

if not (which niri | is-empty) {
    save-if-changed ($autoload_dir | path join "50-niri.nu") (^niri completions nushell)
}

source ($nu.default-config-dir | path join 'secrets.nu')

work_scope generate