### Initialize Windots Environment Source: https://context7.com/scottmckendry/windots/llms.txt The setup script automates the installation of dependencies via Winget and Chocolatey and creates symbolic links for configuration files. It requires PowerShell 7 and administrative privileges to function correctly. ```powershell git clone https://github.com/scottmckendry/Windots.git cd Windots ./Setup.ps1 ``` -------------------------------- ### Update System and Software Source: https://context7.com/scottmckendry/windots/llms.txt Functions to synchronize the dotfiles repository and update installed software packages. These utilities automate git pulls and package manager upgrade commands. ```powershell up Update-Profile us Update-Software ``` -------------------------------- ### Initialize LSP Servers Source: https://context7.com/scottmckendry/windots/llms.txt Configures diagnostic signs and registers a suite of LSP servers for various languages including Python, Go, Rust, and TypeScript using the Mason ecosystem. ```lua vim.diagnostic.config({ signs = true, underline = true, update_in_insert = true, virtual_text = { source = "if_many", prefix = "●", }, }) -- Enabled LSP servers vim.lsp.enable({ "basedpyright", "bashls", "bicep", "emmylua_ls", "gopls", "html", "jsonls", "powershell_es", "rust_analyzer", "tailwindcss", "ts_ls", "yamlls", }) ``` -------------------------------- ### Define Neovim Utility Functions Source: https://context7.com/scottmckendry/windots/llms.txt Provides helper functions for managing buffers, restarting LSP clients, and locating project root directories based on marker files. ```lua local M = {} -- Switch between current and alternate buffer function M.switch_to_other_buffer() local ok, _ = pcall(function() vim.cmd("buffer #") end) if ok then return end if M.get_buffer_count() > 1 then vim.cmd("bprevious") else vim.notify("No other buffer to switch to!", 3, { title = "Warning" }) end end -- Get count of open buffers function M.get_buffer_count() local count = 0 for _, buf in ipairs(vim.api.nvim_list_bufs()) do if vim.bo[buf].buflisted and vim.bo[buf].buftype ~= "nofile" then count = count + 1 end end return count end -- Restart all LSP clients for current buffer function M.restart_lsp() local clients = vim.lsp.get_clients({ bufnr = 0 }) for _, client in ipairs(clients) do local config = client.config local name = client.name client.stop(true) vim.defer_fn(function() vim.lsp.start(config) vim.notify("LSP restarted: " .. name, vim.log.levels.INFO) end, 50) end end -- Find project root by marker files function M.find_root(buf, names) local path = vim.api.nvim_buf_get_name(buf) local dir = vim.fn.fnamemodify(path, ":p:h") return vim.fs.root(dir, names) end return M ``` -------------------------------- ### Configure Neovim Core Options Source: https://context7.com/scottmckendry/windots/llms.txt Sets up global editor behavior, including Windows-specific shell integration for PowerShell, UI preferences like line numbers, and tab indentation settings. ```lua vim.g.mapleader = " " vim.g.maplocalleader = " " vim.g.autoformat = true local opt = vim.opt -- Windows shell configuration if vim.fn.has("win32") == 1 or vim.fn.has("win64") == 1 then opt.shell = "pwsh -NoLogo" opt.shellcmdflag = "-NoLogo -NoProfile -ExecutionPolicy RemoteSigned -Command [Console]::InputEncoding=[Console]::OutputEncoding=[System.Text.Encoding]::UTF8;" end -- UI Options opt.number = true opt.relativenumber = true opt.cursorline = true opt.clipboard = "unnamedplus" opt.termguicolors = true opt.scrolloff = 12 -- Tab settings opt.tabstop = 4 opt.shiftwidth = 4 opt.expandtab = true ``` -------------------------------- ### File System and Search Utilities Source: https://context7.com/scottmckendry/windots/llms.txt Enhanced PowerShell functions for file manipulation and searching. These include wrappers for directory listing, file creation, searching, and command path resolution. ```powershell ff config grep "TODO" ls touch newfile.txt which nvim rm -rf ./old-folder ``` -------------------------------- ### Apply CYBERDREAM Theme to Lazygit Configuration Source: https://context7.com/scottmckendry/windots/llms.txt This YAML configuration applies the CYBERDREAM theme to Lazygit, customizing border styles, mouse event handling, and colors for active and inactive elements. It also includes settings for emoji parsing and git paging. ```yaml # lazygit/config.yml notARepository: skip gui: nerdFontsVersion: "3" border: rounded mouseEvents: false theme: activeBorderColor: - "#5ef1ff" inactiveBorderColor: - "#7b8496" selectedLineBgColor: - "#3c4048" defaultFgColor: - "#ffffff" git: parseEmoji: true paging: colorArg: always useConfig: true ``` -------------------------------- ### Configure WezTerm Terminal Emulator with CYBERDREAM Colors Source: https://context7.com/scottmckendry/windots/llms.txt This Lua configuration sets up the WezTerm terminal emulator with custom fonts, the CYBERDREAM color scheme, window decorations, and performance settings. It also includes OS-specific overrides for the default shell. ```lua -- wezterm/wezterm.lua local wezterm = require("wezterm") local config = wezterm.config_builder() -- Font Configuration config.font = wezterm.font_with_fallback({ { family = "JetBrainsMono Nerd Font", weight = "Regular" }, "Segoe UI Emoji", }) config.font_size = 10 -- Color Configuration (CYBERDREAM theme) config.colors = require("cyberdream") config.force_reverse_video_cursor = true -- Window Configuration config.initial_rows = 45 config.initial_cols = 180 config.window_decorations = "RESIZE" config.window_background_opacity = 1 config.window_close_confirmation = "NeverPrompt" config.win32_system_backdrop = "Acrylic" -- Performance Settings config.max_fps = 144 config.animation_fps = 60 config.cursor_blink_rate = 250 -- Tab Bar Configuration config.enable_tab_bar = true config.hide_tab_bar_if_only_one_tab = true config.use_fancy_tab_bar = false -- Keybindings config.keys = { { key = "v", mods = "CTRL", action = wezterm.action({ PasteFrom = "Clipboard" }) }, } -- Default Shell config.default_prog = { "pwsh", "-NoLogo" } -- Linux-specific overrides local function get_os() local bin_format = package.cpath:match("%p[\\|/]?%p(%a+)") if bin_format == "dll" then return "windows" elseif bin_format == "so" then return "linux" end return "macos" end if get_os() == "linux" then config.default_prog = { "zsh" } config.front_end = "WebGpu" end return config ``` -------------------------------- ### Customize Starship Prompt with Git Metrics and Update Notifications Source: https://context7.com/scottmckendry/windots/llms.txt This TOML configuration customizes the Starship prompt, displaying git metrics, command duration, and environment variables for update notifications. It uses specific symbols and colors for success and error states. ```toml # starship/starship.toml "$schema" = 'https://starship.rs/config-schema.json' format = "$all $fill $cmd_duration" add_newline = false [character] success_symbol = "[❯](green)" error_symbol = "[❯](red)" [cmd_duration] min_time = 10 show_milliseconds = true format = "[$duration](bright-black)" [git_metrics] disabled = false format = '(([ $added ]($added_style))([ $deleted ]($deleted_style))) only_nonzero_diffs = true added_style = 'green' deleted_style = 'red' # Environment variable indicators for updates [env_var.SOFTWARE_UPDATE_AVAILABLE] variable = 'SOFTWARE_UPDATE_AVAILABLE' format = '[$env_value]($style)' style = 'cyan' [env_var.DOTFILES_UPDATE_AVAILABLE] variable = 'DOTFILES_UPDATE_AVAILABLE' format = '[$env_value]($style)' style = 'cyan' ``` -------------------------------- ### Configure Windows Terminal with CYBERDREAM Colorscheme Source: https://context7.com/scottmckendry/windots/llms.txt This JSON configuration sets up Windows Terminal with the CYBERDREAM color scheme, JetBrainsMono Nerd Font, and PowerShell as the default profile. It includes settings for transparency and acrylic effects. ```json { "defaultProfile": "{574e775e-4f2a-5b96-ac1e-a2962a402336}", "profiles": { "defaults": { "colorScheme": "cyberdream", "font": { "face": "JetBrainsMono Nerd Font", "size": 10.4 }, "opacity": 90, "useAcrylic": true }, "list": [ { "commandline": "pwsh.exe --nologo", "guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}", "name": "PowerShell", "source": "Windows.Terminal.PowershellCore" } ] }, "schemes": [ { "name": "cyberdream", "background": "#16181a", "foreground": "#ffffff", "black": "#16181a", "blue": "#5ea1ff", "cyan": "#5ef1ff", "green": "#5eff6e", "purple": "#bd5eff", "red": "#ff6e6e", "yellow": "#f1ff5e" } ] } ``` -------------------------------- ### System Administration and Security Source: https://context7.com/scottmckendry/windots/llms.txt Utilities for managing administrative privileges and secure storage. Includes session elevation and secret management using the SecretManagement module. ```powershell su Install-Module Microsoft.PowerShell.SecretManagement, Microsoft.PowerShell.SecretStore Set-SecretStoreConfiguration -Authentication None -Confirm:$False $password = Get-OrCreateSecret -secretName "myServiceAccount" ``` -------------------------------- ### Retrieve or Create API Secret Source: https://context7.com/scottmckendry/windots/llms.txt A PowerShell snippet used to fetch an existing secret or create a new one based on a provided client ID. ```powershell $clientSecret = Get-OrCreateSecret -secretName $clientId ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.