2 Commits

73 changed files with 1144 additions and 3940 deletions

Binary file not shown.

View File

@ -1,22 +0,0 @@
```
_ _ _
| \ | | (_)
| \| | ___ _ __ _ __ ___ __ __ _ _ __ ___
| . ` | / _ \ | '__|| '_ ` _ \\ \ / /| || '_ ` _ \
| |\ || (_) || | | | | | | |\ V / | || | | | | |
|_| \_| \___/ |_| |_| |_| |_| \_/ |_||_| |_| |_|
```
### Welcome to my setup
Most of the times I'm writing in Markdown or Python. I'll also manage my servers from a similar environment which is mostly yaml and bash scripts. Here's a few images.
![1](images/neovim1.png)
 
![2](images/neovim2.png)
 
![3](images/neovim3.png)
 
![4](images/neovim4.png)
 
![5](images/neovim5.png)

View File

@ -1,228 +0,0 @@
# Default configuration file for tmux-powerline.
# Modeline {
# vi: foldmarker={,} foldmethod=marker foldlevel=0 tabstop=4 filetype=sh
# }
# General {
# Show which segment fails and its exit code.
export TMUX_POWERLINE_DEBUG_MODE_ENABLED="false"
# Use patched font symbols.
export TMUX_POWERLINE_PATCHED_FONT_IN_USE="true"
# The theme to use.
export TMUX_POWERLINE_THEME="norm-main"
# Overlay directory to look for themes. There you can put your own themes outside the repo. Fallback will still be the "themes" directory in the repo.
export TMUX_POWERLINE_DIR_USER_THEMES="${XDG_CONFIG_HOME:-$HOME/.dotfiles/tmux/.config/tmux}/tmux-powerline/themes"
# Overlay directory to look for segments. There you can put your own segments outside the repo. Fallback will still be the "segments" directory in the repo.
export TMUX_POWERLINE_DIR_USER_SEGMENTS="${XDG_CONFIG_HOME:-$HOME/.dotfiles/tmux/.config/tmux}/tmux-powerline/segments"
# The initial visibility of the status bar. Can be {"on, off"}.
export TMUX_POWERLINE_STATUS_VISIBILITY="on"
# The status bar refresh interval in seconds.
# Note that events that force-refresh the status bar (such as window renaming) will ignore this.
export TMUX_POWERLINE_STATUS_INTERVAL="1"
# The location of the window list. Can be {"absolute-centre, centre, left, right"}.
# Note that "absolute-centre" is only supported on `tmux -V` >= 3.2.
export TMUX_POWERLINE_STATUS_JUSTIFICATION="centre"
# The maximum length of the left status bar.
export TMUX_POWERLINE_STATUS_LEFT_LENGTH="60"
# The maximum length of the right status bar.
export TMUX_POWERLINE_STATUS_RIGHT_LENGTH="60"
# Uncomment these if you want to enable tmux bindings for muting (hiding) one of the status bars.
# E.g. this example binding would mute the left status bar when pressing <prefix> followed by Ctrl-[
#export TMUX_POWERLINE_MUTE_LEFT_KEYBINDING="C-["
#export TMUX_POWERLINE_MUTE_RIGHT_KEYBINDING="C-]"
# }
# battery.sh {
# How to display battery remaining. Can be {percentage, cute}.
export TMUX_POWERLINE_SEG_BATTERY_TYPE="percentage"
# How may hearts to show if cute indicators are used.
export TMUX_POWERLINE_SEG_BATTERY_NUM_HEARTS="5"
# }
# date.sh {
# date(1) format for the date. If you don't, for some reason, like ISO 8601 format you might want to have "%D" or "%m/%d/%Y".
export TMUX_POWERLINE_SEG_DATE_FORMAT="%F"
# }
# disk_usage.sh {
# Filesystem to retrieve disk space information. Any from the filesystems available (run "df | awk '{print }'" to check them).
export TMUX_POWERLINE_SEG_DISK_USAGE_FILESYSTEM="/"
# }
# earthquake.sh {
# The data provider to use. Currently only "goo" is supported.
export TMUX_POWERLINE_SEG_EARTHQUAKE_DATA_PROVIDER="goo"
# How often to update the earthquake data in seconds.
# Note: This is not an early warning detector, use this
# to be informed about recent earthquake magnitudes in your
# area. If this is too often, goo may decide to ban you form
# their server
export TMUX_POWERLINE_SEG_EARTHQUAKE_UPDATE_PERIOD="600"
# Only display information when earthquakes are within this many minutes
export TMUX_POWERLINE_SEG_EARTHQUAKE_ALERT_TIME_WINDOW="60"
# Display time with this format
export TMUX_POWERLINE_SEG_EARTHQUAKE_TIME_FORMAT='(%H:%M)'
# Display only if magnitude is greater or equal to this number
export TMUX_POWERLINE_SEG_EARTHQUAKE_MIN_MAGNITUDE="3"
# }
# gcalcli.sh {
# gcalcli uses 24hr time format by default - if you want to see 12hr time format, set TMUX_POWERLINE_SEG_GCALCLI_MILITARY_TIME_DEFAULT to 0
export TMUX_POWERLINE_SEG_GCALCLI_24HR_TIME_FORMAT="1"
# }
# hostname.sh {
# Use short or long format for the hostname. Can be {"short, long"}.
export TMUX_POWERLINE_SEG_HOSTNAME_FORMAT="short"
# }
# macos_notification_count.sh {
# App ids to query in notification center, separated by space
# To get the app id that is associated with a specific app run:
# sqlite3 -list "/var/folders/14/xy84d13x3091_xgcmy34gk8w0000gp/0//com.apple.notificationcenter/db/db" 'select * from app_info'
# The first column contains the app ids
# "5" is the app id of Messages.app
# Only "banner" notifications are supported (see settings in the notification center)
export TMUX_POWERLINE_SEG_MACOS_NOTIFICATION_COUNT_APPIDS="5"
# Notification symbol
export TMUX_POWERLINE_SEG_MACOS_NOTIFICATION_COUNT_CHAR="💬"
# }
# mailcount.sh {
# Mailbox type to use. Can be any of {apple_mail, gmail, maildir, mbox, mailcheck}
export TMUX_POWERLINE_SEG_MAILCOUNT_MAILBOX_TYPE=""
## Gmail
# Enter your Gmail username here WITH OUT @gmail.com.( OR @domain)
export TMUX_POWERLINE_SEG_MAILCOUNT_GMAIL_USERNAME=""
# Google password. Recomenned to use application specific password (https://accounts.google.com/b/0/IssuedAuthSubTokens) Leave this empty to get password from OS X keychain.
# For OSX users : MAKE SURE that you add a key to the keychain in the format as follows
# Keychain Item name : http://<value-you-fill-in-server-variable-below>
# Account name : <username-below>@<server-below>
# Password : Your password ( Once again, try to use 2 step-verification and application-specific password)
# See http://support.google.com/accounts/bin/answer.py?hl=en&answer=185833 for more info.
export TMUX_POWERLINE_SEG_MAILCOUNT_GMAIL_PASSWORD=""
# Domain name that will complete your email. For normal GMail users it probably is "gmail.com but can be "foo.tld" for Google Apps users.
export TMUX_POWERLINE_SEG_MAILCOUNT_GMAIL_SERVER="gmail.com"
# How often in minutes to check for new mails.
export TMUX_POWERLINE_SEG_MAILCOUNT_GMAIL_INTERVAL="5"
## Maildir
# Path to the maildir to check.
export TMUX_POWERLINE_SEG_MAILCOUNT_MAILDIR_INBOX="/Users/normrasmussen/.mail/inbox/new"
## mbox
# Path to the mbox to check.
export TMUX_POWERLINE_SEG_MAILCOUNT_MBOX_INBOX=""
## mailcheck
# Optional path to mailcheckrc
export TMUX_POWERLINE_SEG_MAILCOUNT_MAILCHECKRC="/Users/normrasmussen/.mailcheckrc"
# }
# now_playing.sh {
# Music player to use. Can be any of {audacious, banshee, cmus, apple_music, itunes, lastfm, plexamp, mocp, mpd, mpd_simple, pithos, playerctl, rdio, rhythmbox, spotify, spotify_wine, file}.
export TMUX_POWERLINE_SEG_NOW_PLAYING_MUSIC_PLAYER="spotify"
# File to be read in case the song is being read from a file
export TMUX_POWERLINE_SEG_NOW_PLAYING_FILE_NAME=""
# Maximum output length.
export TMUX_POWERLINE_SEG_NOW_PLAYING_MAX_LEN="40"
# How to handle too long strings. Can be {trim, roll}.
export TMUX_POWERLINE_SEG_NOW_PLAYING_TRIM_METHOD="trim"
# Charcters per second to roll if rolling trim method is used.
export TMUX_POWERLINE_SEG_NOW_PLAYING_ROLL_SPEED="2"
# Hostname for MPD server in the format "[password@]host"
export TMUX_POWERLINE_SEG_NOW_PLAYING_MPD_HOST="localhost"
# Port the MPD server is running on.
export TMUX_POWERLINE_SEG_NOW_PLAYING_MPD_PORT="6600"
# Song display format for mpd_simple. See mpc(1) for delimiters.
export TMUX_POWERLINE_SEG_NOW_PLAYING_MPD_SIMPLE_FORMAT="%artist% - %title%"
# Song display format for playerctl. see "Format Strings" in playerctl(1).
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT="{{ artist }} - {{ title }}"
# Song display format for rhythmbox. see "FORMATS" in rhythmbox-client(1).
export TMUX_POWERLINE_SEG_NOW_PLAYING_RHYTHMBOX_FORMAT="%aa - %tt"
# Last.fm
# Set up steps for Last.fm
# 1. Make sure jq(1) is installed on the system.
# 2. Create a new API application at https://www.last.fm/api/account/create (name it tmux-powerline) and copy the API key and insert it below in the setting TMUX_POWERLINE_SEG_NOW_PLAYING_LASTFM_API_KEY
# 3. Make sure the API can access your recently played song by going to you user privacy settings https://www.last.fm/settings/privacy and make sure "Hide recent listening information" is UNCHECKED.
# Username for Last.fm if that music player is used.
export TMUX_POWERLINE_SEG_NOW_PLAYING_LASTFM_USERNAME=""
# API Key for the API.
export TMUX_POWERLINE_SEG_NOW_PLAYING_LASTFM_API_KEY=""
# How often in seconds to update the data from last.fm.
export TMUX_POWERLINE_SEG_NOW_PLAYING_LASTFM_UPDATE_PERIOD="30"
# Fancy char to display before now playing track
export TMUX_POWERLINE_SEG_NOW_PLAYING_NOTE_CHAR="♫"
# Plexamp
# Set up steps for Plexamp
# 1. Make sure jq(1) is installed on the system.
# 2. Make sure you have an instance of Tautulli that is accessible by the computer running tmux-powerline.
# Username for Plexamp if that music player is used.
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLEXAMP_USERNAME=""
# Hostname for Tautulli server in the format "[password@]host"
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLEXAMP_TAUTULLI_HOST=""
# API Key for Tautulli.
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLEXAMP_TAUTULLI_API_KEY=""
# How often in seconds to update the data from Plexamp.
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLEXAMP_UPDATE_PERIOD="30"
# }
# pwd.sh {
# Maximum length of output.
export TMUX_POWERLINE_SEG_PWD_MAX_LEN="40"
# }
# time.sh {
# date(1) format for the time. Americans might want to have "%I:%M %p".
export TMUX_POWERLINE_SEG_TIME_FORMAT="%H:%M"
# Change this to display a different timezone than the system default.
# Use TZ Identifier like "America/Los_Angeles"
export TMUX_POWERLINE_SEG_TIME_TZ=""
# }
# tmux_mem_cpu_load.sh {
# Arguments passed to tmux-mem-cpu-load.
# See https://github.com/thewtex/tmux-mem-cpu-load for all available options.
export TMUX_POWERLINE_SEG_TMUX_MEM_CPU_LOAD_ARGS="-v"
# }
# tmux_session_info.sh {
# Session info format to feed into the command: tmux display-message -p
# For example, if FORMAT is '[ #S ]', the command is: tmux display-message -p '[ #S ]'
export TMUX_POWERLINE_SEG_TMUX_SESSION_INFO_FORMAT="#S:#I.#P"
# }
# utc_time.sh {
# date(1) format for the UTC time.
export TMUX_POWERLINE_SEG_UTC_TIME_FORMAT="%H:%M %Z"
# }
# vcs_branch.sh {
# Max length of the branch name.
export TMUX_POWERLINE_SEG_VCS_BRANCH_MAX_LEN="24"
# }
# weather.sh {
# The data provider to use. Currently only "yahoo" is supported.
export TMUX_POWERLINE_SEG_WEATHER_DATA_PROVIDER="yahoo"
# What unit to use. Can be any of {c,f,k}.
export TMUX_POWERLINE_SEG_WEATHER_UNIT="f"
# How often to update the weather in seconds.
export TMUX_POWERLINE_SEG_WEATHER_UPDATE_PERIOD="60"
# Name of GNU grep binary if in PATH, or path to it.
export TMUX_POWERLINE_SEG_WEATHER_GREP="grep"
# Location of the JSON parser, jq
export TMUX_POWERLINE_SEG_WEATHER_JSON="jq"
# Your location
# Latitude and Longtitude for use with yr.no
TMUX_POWERLINE_SEG_WEATHER_LAT="41.099050"
TMUX_POWERLINE_SEG_WEATHER_LON="-74.252859"
# }

View File

@ -1,55 +0,0 @@
session_name: Work
windows:
- layout: ba3e,151x53,0,0,1
options: {}
panes:
- focus: 'true'
shell_command: zsh
start_directory: /Users/normrasmussen/Documents/Work
window_name: notes
- layout: c1ff,149x54,0,0,2
options: {}
panes:
- focus: 'true'
shell_command: zsh
start_directory: /Users/normrasmussen/Documents/Work/Custom_Templates
window_name: templates
- layout: ba40,151x53,0,0,3
options: {}
panes:
- focus: 'true'
shell_command: nvim
start_directory: /Users/normrasmussen/Documents/Work/Scripts
window_name: scripts
- layout: e469,177x53,0,0[177x42,0,0,4,177x10,0,43,5]
options: {}
panes:
- focus: 'true'
shell_command:
- cd /Users/normrasmussen/.dotfiles
- nvim
- shell_command:
- cd /Users/normrasmussen
- zsh
window_name: dots
- focus: 'true'
layout: 5cf6,171x53,0,0[171x36,0,0,7,171x16,0,37{85x16,0,37,14,85x16,86,37,16}]
options: {}
panes:
- shell_command:
- cd /Users/normrasmussen/Documents/Projects/hugo_blog/rsmsn_blog
- nvim
- focus: 'true'
shell_command:
- cd /Users/normrasmussen/Desktop
- shell_command:
- cd /Users/normrasmussen/Documents/Projects/hugo_blog/rsmsn_blog
- zsh
window_name: hugo
- layout: 5d96,171x53,0,0,17
options: {}
panes:
- focus: 'true'
shell_command: zsh
start_directory: /Users/normrasmussen
window_name: zsh

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 226 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 345 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 271 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 269 KiB

View File

@ -1,106 +0,0 @@
local M = {}
-- Function to get visual selection
local function get_visual_selection()
local start_pos = vim.fn.getpos("'<")
local end_pos = vim.fn.getpos("'>")
local lines = vim.fn.getline(start_pos[2], end_pos[2])
-- Handle partial line selections
if #lines == 1 then
lines[1] = string.sub(lines[1], start_pos[3], end_pos[3])
else
lines[1] = string.sub(lines[1], start_pos[3])
lines[#lines] = string.sub(lines[#lines], 1, end_pos[3])
end
return table.concat(lines, '\n')
end
-- Function to create carbon 50<
function M.create_screenshot()
-- Get the visual selection
local code = get_visual_selection()
if code == "" then
vim.notify("No text selected", vim.log.levels.ERROR)
return
end
-- Get file extension for language detection
local file_extension = vim.fn.expand('%:e')
-- Get download directory
local download_dir = vim.fn.expand('~/Downloads')
local timestamp = os.date("%Y%m%d_%H%M%S")
local output_file = string.format("%s/carbon_%s.png", download_dir, timestamp)
-- Prepare the curl command
local carbon_url = "https://carbonara.solopov.dev/api/cook"
local json_data = string.format([[{
"code": %s,
"theme": "one-dark",
"language": "%s",
"dropShadow": true,
"windowControls": true,
}]], vim.fn.json_encode(code), file_extension)
-- Create temporary file for JSON data
local temp_json = os.tmpname()
local f = io.open(temp_json, "w")
f:write(json_data)
f:close()
-- Execute curl command
local cmd = string.format(
'curl -L %s -X POST -H "Content-Type: application/json" --data %s --output %s',
carbon_url,
json_data,
output_file
)
vim.print(cmd)
-- [[--
-- curl -L https://carbonara.solopov.dev/api/cook \
-- -X POST \
-- -H 'Content-Type: application/json' \
-- -d '{
-- "code": "export default const sum = (a, b) => a + b",
-- "backgroundColor": "#1F816D"
-- }' \
-- > code.png
-- --]]
-- Run the command asynchronously
vim.fn.jobstart(cmd, {
on_exit = function(_, exit_code)
-- Clean up temp file
-- os.remove(temp_json)
os.rename(temp_json, '~/Downloads/temp_json.json')
if exit_code == 0 then
vim.notify(
string.format("Screenshot saved to %s", output_file),
vim.log.levels.INFO
)
else
vim.notify(
"Failed to create screenshot",
vim.log.levels.ERROR
)
end
end
})
end
-- Set up the plugin
function M.setup()
-- Create user command
vim.api.nvim_create_user_command(
'CodeShot',
function()
M.create_screenshot()
end,
{ range = true }
)
end
return M

BIN
nvim/.config/nvim/data/.DS_Store vendored Normal file

Binary file not shown.

View File

@ -1,10 +1,25 @@
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filteer=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable", -- latest stable release
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
vim.g.mapleader = ','
vim.g.localmapleader = ','
--- vim.opt.textwidth = 85
vim.opt.colorcolumn = '+2'
require('lazy').setup('plugins')
-----------------------------------------------------------
-- General Neovim settings and configuration
-----------------------------------------------------------
vim.g.mapleader = ','
vim.g.localmapleader = ','
vim.opt.colorcolumn = '+2'
-- vim.diagnostic.config({ virtual_text = true, virtual_lines = true })
-----------------------------------------------------------
-- Neovim API aliases
@ -25,24 +40,21 @@ opt.clipboard = 'unnamedplus' -- Copy/paste to system clipboard
opt.swapfile = false -- Don't use swapfile
opt.shadafile = "NONE"
opt.shadafile = ""
opt.shell = "/bin/zsh"
opt.shell = "/bin/bash"
opt.updatetime = 200
-- opt.cursorline = true
opt.cursorline = true
g.markdown_folding = 1
-- g.markdown_enable_folding = 1
opt.spell=true
opt.spelllang = 'en_us'
opt.autochdir = true
vim.cmd [[ autocmd BufWritePre * :%s/\s\+$//e ]]
-- vim.cmd [[ autocmd autochdir ]]
cmd [[ autocmd BufWritePre * :%s/\s\+$//e ]]
vim.api.nvim_set_hl(0, "ColorColumn", {guibg=DarkOrchid1})
-----------------------------------------------------------
-- Neovim UI
-----------------------------------------------------------
opt.number = true -- Show line number
opt.relativenumber = true -- Show Current Line with Relative numbers above and below cursor.
opt.showmatch = true -- Highlight matching parenthesis
opt.foldmethod = "expr" -- Enable folding (default 'foldmarker')
opt.foldexpr = "nvim_treesitter#foldexpr()"
opt.foldmethod = "syntax" -- Enable folding (default 'foldmarker')
opt.splitright = true -- Vertical split to the right
opt.splitbelow = true -- Horizontal split to the bottom
opt.ignorecase = true -- Ignore case letters when search
@ -56,7 +68,7 @@ opt.wrap = true
-----------------------------------------------------------
opt.hidden = true -- Enable background buffers
opt.history = 100 -- Remember N lines in historma:y
opt.lazyredraw = false -- Faster scrolling
opt.lazyredraw = true -- Faster scrolling
opt.synmaxcol = 240 -- Max column for syntax highlight
-----------------------------------------------------------
-- Colorscheme
@ -65,22 +77,31 @@ opt.termguicolors = true -- Enable 24-bit RGB colors
-----------------------------------------------------------
-- Tabs, indent
-----------------------------------------------------------
g.expandtab = false -- Use spaces instead of tabs
g.expandtab = true -- Use spaces instead of tabs
g.shiftwidth = 2 -- Shift 4 spaces when tab
g.tabstop = 2 -- 1 tab == 4 spaces
g.tabstop = 1 -- 1 tab == 4 spaces
g.smartindent = true -- Autoindent new lines
-----------------------------------------------------------
-- Glow Settings
-----------------------------------------------------------
g.glow_binary_path = '/bin'
g.glow_border = 'rounded'
g.glow_width = 120
g.glow_use_pager = true
g.glow_style = 'dark'
-----------------------------------------------------------
-- AutoCmd and Additional Function Settings.
-----------------------------------------------------------
-- 2 spaces for selected filetypes
vim.cmd [[
autocmd FileType md,liquid,xml,html,xhtml,css,scss,javascript,lua,yaml setlocal shiftwidth=2 tabstop=2 noexpandtab
autocmd FileType md,liquid,xml,html,xhtml,css,scss,javascript,lua,yaml setlocal shiftwidth=2 tabstop=4 noexpandtab
]]
vim.cmd [[ autocmd FileType python set textwidth=250 ]]
vim.cmd [[ autocmd FileType python set textwidth=110 ]]
vim.cmd [[ autocmd FileType lua set textwidth=80 ]]
vim.cmd [[ autocmd FileType markdown,text set shiftwidth=2 foldlevel=99 ]]
vim.cmd [[ autocmd FileType markdown,text set textwidth=125 shiftwidth=2 ]]
--[[
local disabled_built_ins = {
"netrw",
"netrwPlugin",
@ -102,9 +123,19 @@ local disabled_built_ins = {
"matchit"
}
-- for _, plugin in pairs(disabled_built_ins) do
-- vim.g["loaded_" .. plugin] = 1
-- end
for _, plugin in pairs(disabled_built_ins) do
vim.g["loaded_" .. plugin] = 1
end
]]--
-- Deletes all trailing whitespaces in a file if it's not binary nor a diff.
function _G.trim_trailing_whitespaces()
if not o.binary and o.filetype ~= 'diff' then
local current_view = fn.winsaveview()
cmd([[keeppatterns %s/\s\+$//e]])
fn.winrestview(current_view)
end
end
-- Correctly set $VIRTUAL_ENV for Python venvs.
if vim.fn.exists("$VIRTUAL_ENV") == 1 then
@ -113,7 +144,27 @@ else
vim.g.python3_host_prog = vim.fn.substitute(vim.fn.system("which python3"), "\n", "", "g")
end
vim.lsp.enable({'ruff', 'pyright', 'marksman', 'emmet-ls', 'lua'})
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true
-- see https://github.com/hrsh7th/nvim-cmp/wiki/Menu-Appearance#how-to-add-visual-studio-code-dark-theme-colors-to-the-menu
--[[vim.cmd[[
highlight! link CmpItemMenu Comment
" gray
highlight! CmpItemAbbrDeprecated guibg=NONE gui=strikethrough guifg=#808080
" blue
highlight! CmpItemAbbrMatch guibg=NONE guifg=#569CD6
highlight! CmpItemAbbrMatchFuzzy guibg=NONE guifg=#569CD6
" light blue
highlight! CmpItemKindVariable guibg=NONE guifg=#9CDCFE
highlight! CmpItemKindInterface guibg=NONE guifg=#9CDCFE
highlight! CmpItemKindText guibg=NONE guifg=#9CDCFE
" pink
highlight! CmpItemKindFunction guibg=NONE guifg=#C586C0
highlight! CmpItemKindMethod guibg=NONE guifg=#C586C0
" front
highlight! CmpItemKindKeyword guibg=NONE guifg=#D4D4D4
highlight! CmpItemKindProperty guibg=NONE guifg=#D4D4D4
highlight! CmpItemKindUnit guibg=NONE guifg=#D4D4D4
]]
--]]
require('core/keymaps')
vim.cmd[[colorscheme dracula]]

View File

@ -1,71 +1,54 @@
{
"LuaSnip": { "branch": "master", "commit": "642b0c595e11608b4c18219e93b88d7637af27bc" },
"async.vim": { "branch": "master", "commit": "2082d13bb195f3203d41a308b89417426a7deca1" },
"barbar.nvim": { "branch": "master", "commit": "539d73def39c9172b4d4d769f14090e08f37b29d" },
"blink.cmp": { "branch": "main", "commit": "78336bc89ee5365633bcf754d93df01678b5c08f" },
"codecompanion-history.nvim": { "branch": "main", "commit": "bc1b4fe06eaaf0aa2399be742e843c22f7f1652a" },
"codecompanion.nvim": { "branch": "main", "commit": "9eeea4820a091321b085db2155c6133833bf72b0" },
"dashboard-nvim": { "branch": "master", "commit": "62a10d9d55132b338dd742afc3c8a2683f3dd426" },
"deadcolumn.nvim": { "branch": "master", "commit": "92c86f10bfba2717ca2280e2e759b047135d5288" },
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"dracula.nvim": { "branch": "main", "commit": "ae752c13e95fb7c5f58da4b5123cb804ea7568ee" },
"eldritch.nvim": { "branch": "master", "commit": "0415fa72c348e814a7a6cc9405593a4f812fe12f" },
"f-string-toggle.nvim": { "branch": "main", "commit": "c1c77b4fce192e1615490d895863e2a0508d6021" },
"fidget.nvim": { "branch": "main", "commit": "889e2e96edef4e144965571d46f7a77bcc4d0ddf" },
"flemma.nvim": { "branch": "develop", "commit": "589b45f0911944e6f0833c23137186acca36b469" },
"friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
"gitsigns.nvim": { "branch": "main", "commit": "0d797daee85366bc242580e352a4f62d67557b84" },
"hackthebox.vim": { "branch": "main", "commit": "91a84adea2319e3701d76eaa25ae56795ad4dd0d" },
"headlines.nvim": { "branch": "master", "commit": "bf17c96a836ea27c0a7a2650ba385a7783ed322e" },
"hover.nvim": { "branch": "main", "commit": "e73c00da3a9c87a21d2a8ddf7ab4a39824bd5d56" },
"indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" },
"kanagawa.nvim": { "branch": "master", "commit": "aef7f5cec0a40dbe7f3304214850c472e2264b10" },
"koda.nvim": { "branch": "main", "commit": "a560a332ccc1eb2caacb280a390213bb9f37b3cb" },
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
"lualine.nvim": { "branch": "master", "commit": "8811f3f3f4dc09d740c67e9ce399e7a541e2e5b2" },
"mcphub.nvim": { "branch": "main", "commit": "7cd5db330f41b7bae02b2d6202218a061c3ebc1f" },
"mini.comment": { "branch": "main", "commit": "a0c721115faff8d05505c0a12dab410084d9e536" },
"mini.diff": { "branch": "main", "commit": "ab11575a6c147ecfba894d676d0c93e855021d34" },
"mini.fuzzy": { "branch": "stable", "commit": "18e9cc3d7406f44a145d074ad18b10e472509a18" },
"mini.hipatterns": { "branch": "main", "commit": "a3ffba45e4119917b254c372df82e79f7d8c4aad" },
"mini.icons": { "branch": "main", "commit": "7fdae2443a0e2910015ca39ad74b50524ee682d3" },
"mini.indentscope": { "branch": "main", "commit": "0308f949f31769e509696af5d5f91cebb2159c69" },
"mini.move": { "branch": "main", "commit": "74d140143b1bb905c3d0aebcfc2f216fd237080e" },
"mini.pairs": { "branch": "stable", "commit": "d5a29b6254dad07757832db505ea5aeab9aad43a" },
"mini.surround": { "branch": "main", "commit": "88c52297ed3e69ecf9f8652837888ecc727a28ee" },
"mini.trailspace": { "branch": "main", "commit": "b362246495d18c29b4545a8f1c47f627f8011b7c" },
"mkdnflow.nvim": { "branch": "main", "commit": "f20732686f70f60f18f09f4befe984ae63a99201" },
"morta": { "branch": "main", "commit": "10b4cdb8b7ae3f814b77f617f985245b3c11c1fa" },
"neowarrior.nvim": { "branch": "main", "commit": "197cd4a7a56d07374fcda09b5b56baa433e40549" },
"nightfly": { "branch": "master", "commit": "250ee0eb4975e59a277f50cc03c980eef27fb483" },
"nightfox.nvim": { "branch": "main", "commit": "ba47d4b4c5ec308718641ba7402c143836f35aa9" },
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"numb.nvim": { "branch": "master", "commit": "12ef3913dea8727d4632c6f2ed47957a993de627" },
"nvim": { "branch": "main", "commit": "df2a1f9f3392d688397e945544a30aec8fc9b4c7" },
"nvim-notify": { "branch": "master", "commit": "8701bece920b38ea289b457f902e2ad184131a5d" },
"nvim-tree.lua": { "branch": "master", "commit": "e16cd38962bc40c22a51ee004aa4f43726d74a16" },
"nvim-treesitter": { "branch": "master", "commit": "cf12346a3414fa1b06af75c79faebe7f76df080a" },
"nvim-web-devicons": { "branch": "master", "commit": "40e9d5a6cc3db11b309e39593fc7ac03bb844e38" },
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"pulse.nvim": { "branch": "main", "commit": "4026460b12da9abcfe34322db0bdc80e4b0dce3d" },
"rainbow-delimiters.nvim": { "branch": "master", "commit": "aab6caaffd79b8def22ec4320a5344f7c42f58d2" },
"rainbow_csv.nvim": { "branch": "main", "commit": "26de78d8324f7ac6a3e478319d1eb1f17123eb5b" },
"solarized-osaka.nvim": { "branch": "main", "commit": "f0c2f0ba0bd56108d53c9bfae4bb28ff6c67bbdb" },
"telescope-cmdline.nvim": { "branch": "main", "commit": "b1c330835563c9628ce7c095cf20772f22f93f07" },
"telescope-file-browser.nvim": { "branch": "master", "commit": "3610dc7dc91f06aa98b11dca5cc30dfa98626b7e" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" },
"telescope-live-grep-args.nvim": { "branch": "master", "commit": "b80ec2c70ec4f32571478b501218c8979fab5201" },
"telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
"thethethe.nvim": { "branch": "main", "commit": "357580127cd291c8a813564eeaff07c09303084e" },
"tiny-inline-diagnostic.nvim": { "branch": "main", "commit": "57a0eb84b2008c76e77930639890d9874195b1e1" },
"tmux.nvim": { "branch": "main", "commit": "2c1c3be0ef287073cef963f2aefa31a15c8b9cd8" },
"todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
"toggleterm.nvim": { "branch": "main", "commit": "50ea089fc548917cc3cc16b46a8211833b9e3c7c" },
"tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" },
"trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" },
"vim-arduino": { "branch": "master", "commit": "2ded67cdf09bb07c4805d9e93d478095ed3d8606" },
"vim-arsync": { "branch": "master", "commit": "dd5fd93182aafb67ede2ef465f379610980b52d3" },
"vim-wakatime": { "branch": "master", "commit": "d7973b157a632d1edeff01818f18d67e584eeaff" },
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }
}
"LuaSnip": { "branch": "master", "commit": "0b4950a237ce441a6a3a947d501622453f6860ea" },
"adjacent.nvim": { "branch": "main", "commit": "a555ab92d61aa6fbbfa1bfaef4633b663563f04e" },
"alpha-nvim": { "branch": "main", "commit": "234822140b265ec4ba3203e3e0be0e0bb826dff5" },
"barbar.nvim": { "branch": "master", "commit": "dd852401ee902745b67fc09a83d113b3fe82a96f" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
"cmp-calc": { "branch": "main", "commit": "ce91d14d2e7a8b3f6ad86d85e34d41c1ae6268d9" },
"cmp-cmdline": { "branch": "main", "commit": "8ee981b4a91f536f52add291594e89fb6645e451" },
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "3d8912ebeb56e5ae08ef0906e3a54de1c66b92f1" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"cmp-spell": { "branch": "master", "commit": "32a0867efa59b43edbb2db67b0871cfad90c9b66" },
"cmp-under-comparator": { "branch": "master", "commit": "6857f10272c3cfe930cece2afa2406e1385bfef8" },
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
"deadcolumn.nvim": { "branch": "master", "commit": "b9b5e237371ae5379e280e4df9ecf62e4bc8d7a5" },
"dracula.nvim": { "branch": "main", "commit": "9fe831e685a76e1a1898a694623b33247c4d036c" },
"f-string-toggle.nvim": { "branch": "main", "commit": "4e2ad79dfc5122dd65515ebbdd671e8ee01d157e" },
"friendly-snippets": { "branch": "main", "commit": "43727c2ff84240e55d4069ec3e6158d74cb534b6" },
"gitsigns.nvim": { "branch": "main", "commit": "5a9a6ac29a7805c4783cda21b80a1e361964b3f2" },
"headlines.nvim": { "branch": "master", "commit": "74a083a3c32a08be24f7dfcc6f448ecf47857f46" },
"indent-blankline.nvim": { "branch": "master", "commit": "8a7b48f5823cc924f815129192288ec2e2b9288f" },
"lazy.nvim": { "branch": "main", "commit": "9788a19ec0b4036028e78aec702634b4b89d3470" },
"lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "09be3766669bfbabbe2863c624749d8da392c916" },
"mason-null-ls.nvim": { "branch": "main", "commit": "ae0c5fa57468ac65617f1bf821ba0c3a1e251f0c" },
"mason.nvim": { "branch": "main", "commit": "cd7835b15f5a4204fc37e0aa739347472121a54c" },
"mini.comment": { "branch": "main", "commit": "877acea5b2a32ff55f808fc0ebe9aa898648318c" },
"mini.fuzzy": { "branch": "stable", "commit": "295763d73cbf580c27a4419364c47b09fc82e0f4" },
"mini.move": { "branch": "main", "commit": "b3bca8e493f8d1da343ff1be06c21a47e2fde1c0" },
"mini.pairs": { "branch": "stable", "commit": "dfa9f6e2576bb8853be277d96b735af59d9be7c2" },
"mini.surround": { "branch": "main", "commit": "9d1956b576d7051da3a483b251dfc778121c60db" },
"mini.trailspace": { "branch": "main", "commit": "e8c144ee11f6a827ac9c5732f20aefbbd7b26035" },
"neoscroll.nvim": { "branch": "master", "commit": "4bc0212e9f2a7bc7fe7a6bceb15b33e39f0f41fb" },
"null-ls.nvim": { "branch": "main", "commit": "0010ea927ab7c09ef0ce9bf28c2b573fc302f5a7" },
"numb.nvim": { "branch": "master", "commit": "3f7d4a74bd456e747a1278ea1672b26116e0824d" },
"nvim-cmp": { "branch": "main", "commit": "d3a3056204e1a9dbb7c7fe36c114dc43b681768c" },
"nvim-dap": { "branch": "master", "commit": "92dc531eea2c9a3ef504a5c8ac0decd1fa59a6a3" },
"nvim-dap-python": { "branch": "master", "commit": "37b4cba02e337a95cb62ad1609b3d1dccb2e5d42" },
"nvim-dap-ui": { "branch": "master", "commit": "34160a7ce6072ef332f350ae1d4a6a501daf0159" },
"nvim-lspconfig": { "branch": "master", "commit": "38da5bbe1eaab2394056109e48c7e195bdb8fdfe" },
"nvim-tree.lua": { "branch": "master", "commit": "40b9b887d090d5da89a84689b4ca0304a9649f62" },
"nvim-treesitter": { "branch": "master", "commit": "4a68f0778c05083cc458a3a144205cfc41474439" },
"nvim-web-devicons": { "branch": "master", "commit": "3af745113ea537f58c4b1573b64a429fefad9e07" },
"plenary.nvim": { "branch": "master", "commit": "50012918b2fc8357b87cff2a7f7f0446e47da174" },
"popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" },
"symbols-outline.nvim": { "branch": "master", "commit": "512791925d57a61c545bc303356e8a8f7869763c" },
"telescope-file-browser.nvim": { "branch": "master", "commit": "6e51d0cd6447cf2525412220ff0a2885eef9039c" },
"telescope-live-grep-args.nvim": { "branch": "master", "commit": "851c0997d55601f2afd7290db0f90dc364e29f58" },
"telescope.nvim": { "branch": "master", "commit": "c1a2af0af69e80e14e6b226d3957a064cd080805" },
"toggleterm.nvim": { "branch": "main", "commit": "faee9d60428afc7857e0927fdc18daa6c409fa64" },
"trouble.nvim": { "branch": "main", "commit": "f1168feada93c0154ede4d1fe9183bf69bac54ea" },
"vim-wakatime": { "branch": "master", "commit": "945a441b83e48c7bafdd227ef8e2eb826f72ab90" },
"which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" }
}

View File

@ -1,5 +0,0 @@
return {
cmd = {'dprint', 'lsp'},
root_markers = { './' },
filetypes = { "javascript", "js", "javascriptreact", "typescript", "typescriptreact", "json", "jsonc", "toml", "rust", "roslyn", "graphql" }
}

View File

@ -1,15 +0,0 @@
return {
cmd = { 'emmet-ls', '--stdio' },
root_markers = { './', },
filetypes = { "astro", "css", "eruby", "html", "liquid", "htmldjango", "javascriptreact", "javascript", "js", "less", "pug", "sass", "scss", "svelte", "typescriptreact", "vue", "htmlangular" },
capabilities = capabilities,
settings = {
init_options = {
html = {
options = {
["bem.enabled"] = true,
},
},
}
}
}

View File

@ -1,5 +0,0 @@
return {
cmd = { 'marksman' },
root_markers = { './', },
filetypes = { 'md', 'markdown' },
}

View File

@ -1,67 +0,0 @@
---@brief
---
--- https://github.com/microsoft/pyright
---
--- `pyright`, a static type checker and language server for python
local function set_python_path(command)
local path = command.args
local clients = vim.lsp.get_clients {
bufnr = vim.api.nvim_get_current_buf(),
name = 'pyright',
}
for _, client in ipairs(clients) do
if client.settings then
client.settings.python =
vim.tbl_deep_extend('force', client.settings.python --[[@as table]], { pythonPath = path })
else
client.config.settings = vim.tbl_deep_extend('force', client.config.settings, { python = { pythonPath = path } })
end
client:notify('workspace/didChangeConfiguration', { settings = nil })
end
end
---@type vim.lsp.Config
return {
cmd = { 'pyright-langserver', '--stdio' },
filetypes = { 'python' },
root_markers = {
'pyrightconfig.json',
'pyproject.toml',
'setup.py',
'setup.cfg',
'requirements.txt',
'Pipfile',
'.git',
},
settings = {
python = {
analysis = {
autoSearchPaths = true,
useLibraryCodeForTypes = true,
diagnosticMode = 'openFilesOnly',
},
},
},
on_attach = function(client, bufnr)
vim.api.nvim_buf_create_user_command(bufnr, 'LspPyrightOrganizeImports', function()
local params = {
command = 'pyright.organizeimports',
arguments = { vim.uri_from_bufnr(bufnr) },
}
-- Using client.request() directly because "pyright.organizeimports" is private
-- (not advertised via capabilities), which client:exec_cmd() refuses to call.
-- https://github.com/neovim/neovim/blob/c333d64663d3b6e0dd9aa440e433d346af4a3d81/runtime/lua/vim/lsp/client.lua#L1024-L1030
---@diagnostic disable-next-line: param-type-mismatch
client.request('workspace/executeCommand', params, nil, bufnr)
end, {
desc = 'Organize Imports',
})
vim.api.nvim_buf_create_user_command(bufnr, 'LspPyrightSetPythonPath', set_python_path, {
desc = 'Reconfigure pyright with the provided python path',
nargs = 1,
complete = 'file',
})
end,
}

View File

@ -1,7 +0,0 @@
---@type vim.lsp.Config
return {
cmd = { 'ruff', 'server' },
filetypes = { 'python' },
root_markers = { 'pyproject.toml', 'ruff.toml', '.ruff.toml', '.git' },
settings = {},
}

View File

@ -5,11 +5,13 @@
local map = vim.api.nvim_set_keymap
local default_opts = { noremap = true, silent = true }
-- Update all plugins using vim.pack
map('n', '<leader>u', ':lua vim.pack.update()<CR>', default_opts)
-- Close and save all buffers and return to Dashboard
map('n', '<leader>ds', ':silent wa | %bd | Alpha', default_opts)
-- Fast saving with <leader> and s
-- map('n', '<leader>s', ':w<CR>', default_opts)
-- map('n', '<leader>a', ':w|:luafile %<CR>', default_opts)
-- map('n', '<leader>aa', ':w|:luafile %<CR> |:Lazy<CR>', default_opts)
-- map('i', '<leader>s', '<C-c>:w<CR>', default_opts)
-- Python Script that saves the file & moves Todos to my Todolist.
-- map('n', '<leader>sd', ':w|:! python3 ~/Documents/Northpass/Scripts/TodoMD/todo.py %<CR>', default_opts)
-- Neovim Tab Navgation via Vem-Tabline
map('n', '<leader>t', ':tabnew<CR>', default_opts)
@ -22,10 +24,13 @@ map('n', '<leader>q', '<Plug>vem_move_buffer_left', default_opts)
-- Nvim-Tree
map('n', '<leader>v', ':NvimTreeToggle<CR>', default_opts)
-- Nvim Sidebar
map('n', '<leader>n', ':SidebarNvimToggle<CR>', default_opts)
map('n', '<leader>q', ':SidebarNvimUpdate<CR>', default_opts)
-- Telescope
map('n', '<leader>ff', ':Telescope find_files<CR>', default_opts)
map('n', '<leader>fh', ':Telescope live_grep<CR>', default_opts)
map('n', '<leader>fg', ':Telescope live_grep_args<CR>', default_opts)
map('n', '<leader>fg', ':Telescope live_grep<CR>', default_opts)
map('n', '<leader>fb', ':Telescope buffers<CR>', default_opts)
map('n', '<leader>fe', ':Telescope file_browser<CR>', default_opts)
map('n', '<leader>fk', ':Telescope keymaps<CR>', default_opts)
@ -35,18 +40,46 @@ map('n', '<leader>cb', ':Telescope current_buffer_fuzzy_find<CR>', default_opts)
-- Formatting
map('n', '<leader>b', ':! black %<CR>', default_opts)
map('n', '<leader>m', ':! markdownlint -f %<CR>', default_opts)
map('n', '<leader>pj', ':!python -m json.tool<CR>', default_opts)
map('n', '<leader>cs', ':%s/\\s*\\([^|]\\{-}\\)\\s*|/"\1",/g', default_opts)
-- Fold all comments
map('n', '<leader>fc', ':set foldmethod=expr foldexpr=getline(v:lnum)=~"^\\s*".&commentstring[0]<CR>', default_opts)
-- Terminal
map('n', '<C-t>', ':ToggleTerm direction=float<CR>', default_opts)
map('t', '<C-n>', '<C-\\><C-n><CR>', default_opts) -- Exit Insert Mode Faster
-- Tiny Code Action
-- map('n', "<leader>ca", function() require("tiny-code-action").code_action() end, default_opts)
vim.keymap.set("n", "<leader>ca", function()
require("tiny-code-action").code_action()
end, { noremap = true, silent = true })
------------------------------------------------
-- Old Keymaps from Nvim-Mapper (Sunsetted)
------------------------------------------------
--[[
-- Macros for Todo Trouble
M('n', '<C-t>', "@t<CR>", default_opts,
"Add Todo", "todo_todo", "Add To-do/Task to the beginning of the line"
)
M('n', '<C-s>', "@s<CR>", default_opts,
"Add Solutions Engineering", "todo_seng", "Add Solutions Engineering to the beginning of the line"
)
M('n', '<C-f>', "@f<CR>", default_opts,
"Add Feature", "add_feat", "Add Feature Request tag to the beginning of the line. "
)
M( 'n', '<C-x>', "@c<CR>", default_opts,
"Replace with Complete", "add_complete", "Replace tag with Complete tag at beginning of the line."
)
M('n', '<C-r>', "@w<CR>", default_opts,
"Add Warning/Error", "add_error", "Add Warning/Error tag at the beginning of the line."
)
M('n', '<leader>ce', ":TodoTrouble keywords=TODO<CR>", default_opts,
"Show Todo Tags", "show_todos", "Show Todo Tags."
)
M('n', '<leader>cf', ":TodoTrouble keywords=FEAT<CR>", default_opts,
"Show Feature Tags", "show_features", "Show Feature Requests."
)
M('n', '<leader>cq', ":TodoTrouble keywords=ERROR, WARN<CR>", default_opts,
"Show Warning Tags", "show_warnings", "Show Errors Tags."
)
--]]

View File

@ -0,0 +1,143 @@
-----------------------------------------------------------
-- General Neovim settings and configuration
-----------------------------------------------------------
-----------------------------------------------------------
-- Neovim API aliases
-----------------------------------------------------------
local fn = vim.fn -- Call Vim functions
local cmd = vim.cmd -- Execute Vim commands
local exec = vim.api.nvim_exec -- Execute Vimscript
local g = vim.g -- Global variables
local opt = vim.opt -- Set options (global/buffer/windows-scoped)
local o = vim.o
-----------------------------------------------------------
-- General
-----------------------------------------------------------
g.mapleader = ',' -- Change leader to a comma
opt.mouse = 'a' -- Enable mouse support
opt.clipboard = 'unnamedplus' -- Copy/paste to system clipboard
opt.swapfile = false -- Don't use swapfile
opt.shadafile = "NONE"
opt.shadafile = ""
opt.shell = "/bin/zsh"
opt.updatetime = 200
opt.cursorline = true
g.markdown_folding = 1
opt.spell=true
opt.spelllang = 'en_us'
cmd [[ autocmd BufWritePre * :%s/\s\+$//e ]]
--vim.api.nvim_set_hl(0, "ColorColumn", {guibg=lightmagenta})
-----------------------------------------------------------
-- Neovim UI
-----------------------------------------------------------
opt.number = true -- Show line number
opt.relativenumber = true -- Show Current Line with Relative numbers above and below cursor.
opt.showmatch = true -- Highlight matching parenthesis
opt.foldmethod = "syntax" -- Enable folding (default 'foldmarker')
opt.colorcolumn = '99'
opt.textwidth = 100
-- opt.cc = '+1,+2,+3' -- Line length marker at 80 columns
-- opt.tw = 120
opt.splitright = true -- Vertical split to the right
opt.splitbelow = true -- Horizontal split to the bottom
opt.ignorecase = true -- Ignore case letters when search
opt.smartcase = true -- Ignore lowercase for the whole pattern
opt.linebreak = true -- Wrap on word boundary
opt.signcolumn = 'yes:1' -- Signs column always on, minimum 2.
opt.wrap = true
-----------------------------------------------------------
-- Memory, CPU
-----------------------------------------------------------
opt.hidden = true -- Enable background buffers
opt.history = 100 -- Remember N lines in historma:y
opt.lazyredraw = true -- Faster scrolling
opt.synmaxcol = 240 -- Max column for syntax highlight
-----------------------------------------------------------
-- Colorscheme
-----------------------------------------------------------
opt.termguicolors = true -- Enable 24-bit RGB colors
cmd[[colorscheme dracula]]
-----------------------------------------------------------
-- Tabs, indent
-----------------------------------------------------------
opt.expandtab = true -- Use spaces instead of tabs
opt.shiftwidth = 4 -- Shift 4 spaces when tab
opt.tabstop = 4 -- 1 tab == 4 spaces
opt.smartindent = true -- Autoindent new lines
-----------------------------------------------------------
-- Glow Settings
-----------------------------------------------------------
g.glow_binary_path = '/bin'
g.glow_border = 'rounded'
g.glow_width = 120
g.glow_use_pager = true
g.glow_style = 'dark'
-----------------------------------------------------------
-- MKDX Settings, mkdx#settings.
-----------------------------------------------------------
-- 2 spaces for selected filetypes
cmd [[
autocmd FileType md,liquid,xml,html,xhtml,css,scss,javascript,lua,yaml setlocal shiftwidth=2 tabstop=8 noexpandtab
]]
local disabled_built_ins = {
"netrw",
"netrwPlugin",
"netrwSettings",
"netrwFileHandlers",
"gzip",
"zip",
"zipPlugin",
"tar",
"tarPlugin",
"getscript",
"getscriptPlugin",
"vimball",
"vimballPlugin",
"2html_plugin",
"logipat",
"rrhelper",
"spellfile_plugin",
"matchit"
}
for _, plugin in pairs(disabled_built_ins) do
vim.g["loaded_" .. plugin] = 1
end
--[[
Deletes all trailing whitespaces in a file if it's not binary nor a diff.
]]--
function _G.trim_trailing_whitespaces()
if not o.binary and o.filetype ~= 'diff' then
local current_view = fn.winsaveview()
cmd([[keeppatterns %s/\s\+$//e]])
fn.winrestview(current_view)
end
end
-- see https://github.com/hrsh7th/nvim-cmp/wiki/Menu-Appearance#how-to-add-visual-studio-code-dark-theme-colors-to-the-menu
vim.cmd[[
highlight! link CmpItemMenu Comment
" gray
highlight! CmpItemAbbrDeprecated guibg=NONE gui=strikethrough guifg=#808080
" blue
highlight! CmpItemAbbrMatch guibg=NONE guifg=#569CD6
highlight! CmpItemAbbrMatchFuzzy guibg=NONE guifg=#569CD6
" light blue
highlight! CmpItemKindVariable guibg=NONE guifg=#9CDCFE
highlight! CmpItemKindInterface guibg=NONE guifg=#9CDCFE
highlight! CmpItemKindText guibg=NONE guifg=#9CDCFE
" pink
highlight! CmpItemKindFunction guibg=NONE guifg=#C586C0
highlight! CmpItemKindMethod guibg=NONE guifg=#C586C0
" front
highlight! CmpItemKindKeyword guibg=NONE guifg=#D4D4D4
highlight! CmpItemKindProperty guibg=NONE guifg=#D4D4D4
highlight! CmpItemKindUnit guibg=NONE guifg=#D4D4D4
]]

View File

@ -0,0 +1,74 @@
-----------------------------------------------------------
-- startify configuration file
-----------------------------------------------------------
return {
"goolord/alpha-nvim",
dependencies = {
'nvim-tree/nvim-web-devicons',
},
config = function ()
local alpha = require'alpha'
local startify = require'alpha.themes.startify'
startify.section.header.val = {
" ",
" █████ █████ ██████ █████ ███ ",
"░░███ ░░███ ░░██████ ░░███ ░███ ",
" ░███ ░███ ██████ █████ ████ ░███░███ ░███ ██████ ████████ █████████████ ░███ ",
" ░███████████ ███░░███░░███ ░███ ░███░░███░███ ███░░███░░███░░███░░███░░███░░███░███ ",
" ░███░░░░░███ ░███████ ░███ ░███ ░███ ░░██████ ░███ ░███ ░███ ░░░ ░███ ░███ ░███░███ ",
" ░███ ░███ ░███░░░ ░███ ░███ ░███ ░░█████ ░███ ░███ ░███ ░███ ░███ ░███░░░ ",
" █████ █████░░██████ ░░███████ █████ ░░█████░░██████ █████ █████░███ ████████ ",
"░░░░░ ░░░░░ ░░░░░░ ░░░░░███ ░░░░░ ░░░░░ ░░░░░░ ░░░░░ ░░░░░ ░░░ ░░░░░░░░ ",
" ███ ░███ ",
" ░░██████ ",
" ░░░░░░ ",
}
--[[ startify.section.mru.val = {
{ type = "text",
val = findtodos,
opts = {
position = "left",
hl = {{"hl_group", 0, -2}}
}
}
}--]]
startify.section.mru_cwd.val = { { type = "padding", val = 0 } }
-- Devicons - Not sure what this doe
startify.nvim_web_devicons.enabled = false
startify.nvim_web_devicons.highlight = false
startify.nvim_web_devicons.highlight = 'Number'
-- Top Menu
startify.section.top_buttons.val = {
startify.button('e', ' New file', ':ene <BAR> startinsert<CR>'),
startify.button('f', ' Find file', ':Telescope file_browser<CR>'),
startify.button('s', '⋅Find Word', ':Telescope live_grep<CR>'),
startify.button('t', '& Todo List', ':TodoTrouble keywords=TODO<CR>'),
startify.button('r', '' .. ' Recent files', ':Telescope oldfiles <CR>'),
startify.button('u', ' Show plugins', ':Lazy<CR>'),
startify.button('q', ' Quit', ':qa<CR>'),
}
-- Bottom Menu
startify.section.bottom_buttons.val = {
-- Show Empty Space
}
--[[ local function footer()
local version = vim.version()
local print_version = "v" .. version.major .. '.' .. version.minor .. '.' .. version.patch
local datetime = os.date('%Y/%m/%d %H:%M:%S')
return print_version .. ' ' .. datetime
end
--]]
startify.section.footer.val = {
}
alpha.setup(startify.config)
end
}

View File

@ -0,0 +1,48 @@
return -- Signs for Git Status Information
{
'lewis6991/gitsigns.nvim',
config = function()
require('gitsigns').setup {
signs = {
add = {hl = 'GitSignsAdd' , text = '', numhl='GitSignsAddNr' , linehl='GitSignsAddLn'},
change = {hl = 'GitSignsChange', text = '', numhl='GitSignsChangeNr', linehl='GitSignsChangeLn'},
delete = {hl = 'GitSignsDelete', text = '_', numhl='GitSignsDeleteNr', linehl='GitSignsDeleteLn'},
topdelete = {hl = 'GitSignsDelete', text = '', numhl='GitSignsDeleteNr', linehl='GitSignsDeleteLn'},
changedelete = {hl = 'GitSignsChange', text = '~', numhl='GitSignsChangeNr', linehl='GitSignsChangeLn'},
},
signcolumn = true, -- Toggle with `:Gitsigns toggle_signs`
numhl = false, -- Toggle with `:Gitsigns toggle_numhl`
linehl = false, -- Toggle with `:Gitsigns toggle_linehl`
word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff`
watch_gitdir = {
interval = 1000,
follow_files = true
},
attach_to_untracked = true,
current_line_blame = false, -- Toggle with `:Gitsigns toggle_current_line_blame`
current_line_blame_opts = {
virt_text = true,
virt_text_pos = 'eol', -- 'eol' | 'overlay' | 'right_align'
delay = 1000,
ignore_whitespace = false,
},
current_line_blame_formatter = '<author>, <author_time:%Y-%m-%d> - <summary>',
sign_priority = 1,
update_debounce = 100,
status_formatter = nil, -- Use default
max_file_length = 40000,
preview_config = {
-- Options passed to nvim_open_win
border = 'double',
style = 'normal',
relative = 'cursor',
row = 0,
col = 2
},
yadm = {
enable = false
},
}
end
}

View File

@ -0,0 +1,38 @@
return {
'lukas-reineke/headlines.nvim',
}
--[[ config = function()
require("headlines").setup {
markdown = {
query = vim.treesitter.parse_query(
"markdown",
[[
(atx_heading [
(atx_h1_marker)
(atx_h2_marker)
(atx_h3_marker)
(atx_h4_marker)
(atx_h5_marker)
(atx_h6_marker)
] @headline)
(thematic_break) @dash
(fenced_code_block) @codeblock
(block_quote_marker) @quote
(block_quote (paragraph (inline (block_continuation) @quote)))
),
headline_highlights = { "Headline" },
codeblock_highlight = "CodeBlock",
dash_highlight = "Dash",
dash_string = "-",
quote_highlight = "Quote",
quote_string = "┃",
fat_headlines = true,
},
}
end
}
--]]

View File

@ -0,0 +1,245 @@
return {
----------------------------------------------------------------
-- LSP and Autocomplete Plugins
-- They should be pulled first!
-----------------------------------------------------------------
{'williamboman/mason.nvim',
config = function() require("mason").setup({
ui = {
icons = {
package_installed = "",
package_pending = "",
package_uninstalled = ""
}
}
})
end,
},
{ 'williamboman/mason-lspconfig.nvim',
config = function() require("mason-lspconfig").setup{} end,
},
{ 'neovim/nvim-lspconfig' },
{
'L3MON4D3/LuaSnip', version = "2.*",
build = "make install_jsregexp",
dependencies = { "friendly-snippets" },
config = function()
require("luasnip").setup({
history = true,
delete_check_events = "TextChanged",
})
require("luasnip.loaders.from_vscode").lazy_load()
require("luasnip.loaders.from_vscode").load({
paths = {
"~/.dotfiles/nvim/.config/nvim/lua/custom_snippets/" }
})
end,
},
'saadparwaiz1/cmp_luasnip',
'hrsh7th/cmp-nvim-lsp-signature-help',
'lukas-reineke/cmp-under-comparator',
------------------------------------------------------------
-- General Functionality
------------------------------------------------------------
{ 'MaximilianLloyd/adjacent.nvim' },
{
'nacro90/numb.nvim',
config = function() require('numb').setup{
show_cursorline = false,
show_numbers = false, -- Enable 'number' for the window while peeking
hide_relativenumbers = false, -- Enable turning off 'relativenumber' for the window while peeking
number_only = true, -- Peek only when the command is only a number instead of when it starts with a number
centered_peeking = true,
}
end,
},
{
'nvim-lualine/lualine.nvim',
dependencies = { 'nvim-tree/nvim-web-devicons' },
config = function() require('lualine').setup({
options = {
theme = 'material',
always_divide_middle = false,
},
})
end,
},
-- Nvim Tree File Manager on the Left
{
"nvim-tree/nvim-tree.lua",
version = "*",
lazy = false,
dependencies = {
"nvim-tree/nvim-web-devicons",
},
config = function()
require("nvim-tree").setup({
sort_by = "case_sensitive",
view = {
width = 30,
},
renderer = {
group_empty = true,
},
filters = {
dotfiles = true,
},
diagnostics = {
enable = true,
},
})
end,
},
{
"roobert/f-string-toggle.nvim",
config = function()
require("f-string-toggle").setup{
key_binding = "<leader>g"
}
end,
},
-- Snippets
'rafamadriz/friendly-snippets',
-- Rename and Work with Buffer & Tabs
-- 'pacha/vem-tabline',
{'romgrk/barbar.nvim',
dependencies = 'nvim-tree/nvim-web-devicons',
version = '^1.0.0', -- optional: only update when a new 1.x version is released
},
-- Trouble Shows Errors with Files.
{
"folke/trouble.nvim",
dependencies = { 'nvim-tree/nvim-web-devicons' },
config = function()
require("trouble").setup {
}
end
},
-- Which Key
{
"folke/which-key.nvim",
config = function()
require("which-key").setup {
}
end
},
"hrsh7th/nvim-cmp", -- optional, for completion
{'akinsho/toggleterm.nvim', version = "*", opts = {
direction = 'float',
}},
------------------------------------------------------------
-- echasnovski's Minis get a section of their own...
------------------------------------------------------------
{
'echasnovski/mini.comment', version = '*',
config = function()
require('mini.comment').setup()
end
},
{
'echasnovski/mini.move',
config = function()
require('mini.move').setup({
mappings = {
left = '<S-left>',
right = '<S-right>',
down = '<S-down>',
up = '<S-up>',
line_left = '<S-left>',
line_right = '<S-right>',
line_down = '<S-down>',
line_up = '<S-up>',
}
})
end
},
{
'echasnovski/mini.trailspace',
config = function()
require('mini.trailspace').setup()
end
},
{
'echasnovski/mini.surround', version = '*',
config = function()
require('mini.surround').setup()
end
},
{
'echasnovski/mini.pairs', branch = 'stable',
config = function()
require('mini.pairs').setup()
end
},
{
'echasnovski/mini.fuzzy', branch = 'stable',
config = function()
require('mini.fuzzy').setup()
end
},
-- DAP (Debug adaptor Protocol)
'mfussenegger/nvim-dap',
{
'mfussenegger/nvim-dap-python',
config = function()
require('dap-python').setup(
'~/.virtualenvs/debugpy/bin/python'
)
end
},
{
'rcarriga/nvim-dap-ui', dependencies = {"mfussenegger/nvim-dap"}
},
---------------------------------------------------------
-- Text, Icons, Symbols
----------------------------------------------------------
{
'simrat39/symbols-outline.nvim',
config = function()
require('symbols-outline').setup()
end
},
'lukas-reineke/indent-blankline.nvim',
'karb94/neoscroll.nvim',
-- Allow Popups for Telescope etc
'nvim-lua/popup.nvim',
'nvim-lua/plenary.nvim',
-- Various telescopes
'nvim-telescope/telescope-file-browser.nvim',
-----------------------------------------------------------
-- Various Color Schemes, Dashboard, etc
-----------------------------------------------------------
'Mofiqul/dracula.nvim',
'Bekaboo/deadcolumn.nvim',
-- Wakatime Tracking
'wakatime/vim-wakatime',
----------------------------------------------
--- Custom Plugins and Tests
----------------------------------------------
}

View File

@ -0,0 +1,28 @@
return {
"jay-babu/mason-null-ls.nvim",
event = { "BufReadPre", "BufNewFile" },
dependencies = {
"williamboman/mason.nvim",
"jose-elias-alvarez/null-ls.nvim",
},
config = function ()
require("mason-null-ls").setup({
ensure_installed = nil,
automatic_installation = true,
})
local null_ls = require'null-ls'
null_ls.setup({
debug = true,
sources = {
null_ls.builtins.formatting.black,
null_ls.builtins.completion.luasnip,
null_ls.builtins.code_actions.gitsigns,
null_ls.builtins.diagnostics.pylint.with({
diagnostics_postprocess = function(diagnostic)
diagnostic.code = diagnostic.message_id
end,
}),
},
})
end
}

View File

@ -0,0 +1,132 @@
return {
'hrsh7th/nvim-cmp',
dependencies = {
'neovim/nvim-lspconfig',
'L3MON4D3/LuaSnip',
'hrsh7th/cmp-nvim-lsp',
'hrsh7th/cmp-path',
'hrsh7th/cmp-buffer',
'hrsh7th/cmp-cmdline',
'hrsh7th/nvim-cmp',
'hrsh7th/cmp-calc',
'saadparwaiz1/cmp_luasnip',
'hrsh7th/cmp-nvim-lsp-signature-help',
'f3fora/cmp-spell',
},
config = function ()
local cmp_status_ok, cmp = pcall(require, 'cmp')
if not cmp_status_ok then
return
end
local luasnip_status_ok, luasnip = pcall(require, 'luasnip')
if not luasnip_status_ok then
return
end
require("luasnip.loaders.from_vscode").lazy_load()
cmp.setup({
-- Load snippet support
snippet = {
expand = function(args)
require('luasnip').lsp_expand(args.body)
end
},
-- Completion settings
completion = {
--completeopt = 'menu,menuone,noselect'
keyword_length = 1
},
window = {
completion = {
winhighlight = "Normal:Pmenu,FloatBorder:Pmenu,Search:None",
col_offset = -3,
side_padding = 0,
border = 'rounded',
scrollbar = '+',
},
documentation = {
border = 'rounded',
scrollbar = '|',
}
},
-- Key mapping
mapping = {
['<C-n>'] = cmp.mapping.select_next_item(),
['<C-p>'] = cmp.mapping.select_prev_item(),
['<C-d>'] = cmp.mapping.scroll_docs(-4),
['<C-f>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
["<C-e>"] = cmp.mapping({
i = cmp.mapping.abort(),
c = cmp.mapping.close(),
}),
["<C-y>"] = cmp.config.disable,
['<CR>'] = cmp.mapping.confirm {
select = false,
},
-- Tab mapping
['<Tab>'] = function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
else
fallback()
end
end,
['<S-Tab>'] = function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end,
},
sources = {
{ name = 'nvim_lsp', },
{ name = 'luasnip', },
{ name = 'path' },
{ name = 'calc' },
{ name = 'nvim_lsp_signature_help' },
{ name = 'buffer' },
},
formatting = {
fields = {'menu', 'abbr', 'kind'},
format = function(entry, item)
local menu_icon = {
nvim_lsp = 'λ',
luasnip = '',
buffer = 'Ω',
path = '',
calc = '󰃬',
nvim_lsp_signature_help = '󰷼',
}
item.menu = menu_icon[entry.source.name]
return item
end,
},
sorting = {
comparators = {
cmp.config.compare.offset,
cmp.config.compare.exact,
cmp.config.compare.score,
cmp.config.compare.recently_used,
require("cmp-under-comparator").under,
cmp.config.compare.kind,
},
},
})
-- Set up lspconfig.
local capabilities = require('cmp_nvim_lsp').default_capabilities()
-- Replace <YOUR_LSP_SERVER> with each lsp server you've enabled.
require'lspconfig'.pyright.setup {
capabilities = capabilities
}
end
}

View File

@ -0,0 +1,73 @@
return {
'neovim/nvim-lspconfig',
config = function()
-- Setup language servers.
local lspconfig = require('lspconfig')
lspconfig.pyright.setup {}
lspconfig.pylsp.setup {}
-- Server-specific settings. See `:help lspconfig-setup`
settings = {
['pyright'] = {
cmd = {"pyright-langserver", "--stdio"},
root_dir = function(fname)
local root_files = {
'pyproject.toml',
'setup.py',
'setup.cfg',
'requirements.txt',
'Pipfile',
}
return util.root_pattern(unpack(root_files))(fname) or util.find_git_ancestor(fname)
end,
settings = {
pylsp = {
configurationSources = {"pylint"},
plugins = {
pylint = { enabled = true },
flake8 = { enabled = false },
pycodestyle = { enabled = false },
pyflakes = { enabled = false },
}
}
}
}
},
-- Global mappings.
-- See `:help vim.diagnostic.*` for documentation on any of the below functions
vim.keymap.set('n', '<space>e', vim.diagnostic.open_float)
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev)
vim.keymap.set('n', ']d', vim.diagnostic.goto_next)
vim.keymap.set('n', '<space>q', vim.diagnostic.setloclist)
-- Use LspAttach autocommand to only map the following keys
-- after the language server attaches to the current buffer
vim.api.nvim_create_autocmd('LspAttach', {
group = vim.api.nvim_create_augroup('UserLspConfig', {}),
callback = function(ev)
-- Enable completion triggered by <c-x><c-o>
vim.bo[ev.buf].omnifunc = 'v:lua.vim.lsp.omnifunc'
-- Buffer local mappings.
-- See `:help vim.lsp.*` for documentation on any of the below functions
local opts = { buffer = ev.buf }
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, opts)
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, opts)
vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts)
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, opts)
vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, opts)
vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, opts)
vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, opts)
vim.keymap.set('n', '<space>wl', function()
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
end, opts)
vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, opts)
vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, opts)
vim.keymap.set({ 'n', 'v' }, '<space>ca', vim.lsp.buf.code_action, opts)
vim.keymap.set('n', 'gr', vim.lsp.buf.references, opts)
vim.keymap.set('n', '<space>f', function()
vim.lsp.buf.format { async = true }
end, opts)
end,
})
end
}

View File

@ -0,0 +1,26 @@
--local status_ok, nvim_treesitter = pcall(require, 'nvim-treesitter.configs')
--if not status_ok then
-- return
--end
return {
'nvim-treesitter/nvim-treesitter',
build = ":TSUpdate",
config = function ()
local configs = require("nvim-treesitter.configs")
configs.setup({
-- require('nvim-treesitter.install').update({ with_sync = true })
-- A list of parser names, or "all"
ensure_installed = {
'bash', 'css', 'json', 'lua', 'python',
'vim', 'yaml',
},
sync_install = true,
highlight = {
enable = true,
additional_vim_regex_highlighting = true,
},
indent = { enable = true },
})
end
}

View File

@ -0,0 +1,159 @@
return {
{
'nvim-telescope/telescope.nvim', tag = '0.1.1',
dependencies = {
'nvim-lua/plenary.nvim',
'nvim-telescope/telescope-live-grep-args.nvim',
},
config = function ()
local g = vim.g
local fb_actions = require "telescope".extensions.file_browser.actions
local themes = {
popup_list = {
theme = 'popup_list',
border = true,
preview = false,
prompt_title = false,
results_title = false,
sorting_strategy = 'ascending',
layout_strategy = 'center',
borderchars = {
prompt = { '', '', '', '', '', '', '', '' },
results = { '', '', '', '', '', '', '', '' },
preview = { '', '', '', '', '', '', '', '' },
},
},
popup_extended = {
theme = 'popup_extended',
prompt_title = false,
results_title = false,
layout_strategy = 'center',
layout_config = {
width = 0.7,
height = 0.3,
mirror = true,
preview_cutoff = 1,
},
borderchars = {
prompt = { '', '', ' ', '', '', '', '', '' },
results = { '', '', '', '', '', '', '', '' },
preview = { '', '', '', '', '', '', '', '' },
},
},
command_pane = {
theme = 'command_pane',
preview = false,
prompt_title = false,
results_title = false,
sorting_strategy = 'descending',
layout_strategy = 'bottom_pane',
layout_config = {
height = 13,
preview_cutoff = 1,
prompt_position = 'bottom'
},
},
ivy_plus = {
theme = 'ivy_plus',
preview = false,
prompt_title = false,
results_title = false,
layout_strategy = 'bottom_pane',
layout_config = {
height = 13,
preview_cutoff = 120,
prompt_position = 'bottom'
},
borderchars = {
prompt = { '', '', '', '', '', '', '', '' },
results = { '', '', '', '', '', '', '', '' },
preview = { '', '', ' ', ' ', '', '', '', ' ' },
},
},
}
local telescope_installer = require('telescope').setup({
defaults = {
border = true,
prompt_title = false,
results_title = false,
color_devicons = false,
layout_strategy = 'horizontal',
borderchars = {
prompt = { '', '', '', '', '', '', '', '' },
results = { '', '', '', '', '', '', '', '' },
preview = { '', '', '', '', '', '', '', '' },
},
layout_config = {
bottom_pane = {
height = 20,
preview_cutoff = 120,
prompt_position = 'top'
},
center = {
height = 0.4,
preview_cutoff = 40,
prompt_position = 'top',
width = 0.7
},
horizontal = {
prompt_position = 'top',
preview_cutoff = 40,
height = 0.9,
width = 0.8
}
},
sorting_strategy = 'ascending',
prompt_prefix = ' ',
selection_caret = '',
entry_prefix = ' ',
file_ignore_patterns = {'node_modules'},
path_display = { 'truncate' },
results_title = false,
prompt_title =false,
preview = {
treesitter = {
enable = {
'css', 'dockerfile', 'elixir', 'erlang', 'zsh',
'html', 'http', 'javascript', 'json', 'lua', 'php',
'python', 'regex', 'ruby', 'rust', 'scss',
'typescript', 'yaml', 'markdown', 'bash', 'c',
'cmake', 'comment', 'cpp', 'dart', 'go', 'jsdoc',
'json5', 'jsonc', 'llvm', 'make', 'ninja',
'todotxt', 'toml', 'help'
}
}
},
mappings = {
i = {
['<esc>'] = require('telescope.actions').close,
},
}
},
extensions = {
file_browser = {
mappings = {
["i"] = {
["<C-c>"] = fb_actions.create,
["<C-y>"] = fb_actions.copy,
["<C-r>"] = fb_actions.rename,
["<C-w>"] = fb_actions.goto_cwd,
["<C-o>"] = fb_actions.open,
["<C-d>"] = fb_actions.remove,
},
},
},
fzf = {
fuzzy = true, -- false will only do exact matching
override_generic_sorter = true, -- override the generic sorter
override_file_sorter = true, -- override the file sorter
case_mode = 'smart_case', -- other options: 'ignore_case' or 'respect_case'
}
}
})
require("telescope").load_extension "file_browser"
require("telescope").load_extension "live_grep_args"
end
}}

View File

@ -1,243 +0,0 @@
{
"plugins": {
"LuaSnip": {
"rev": "a62e1083a3cfe8b6b206e7d3d33a51091df25357",
"src": "https://github.com/L3MON4D3/LuaSnip"
},
"async.vim": {
"rev": "2082d13bb195f3203d41a308b89417426a7deca1",
"src": "https://github.com/prabirshrestha/async.vim"
},
"barbar.nvim": {
"rev": "539d73def39c9172b4d4d769f14090e08f37b29d",
"src": "https://github.com/romgrk/barbar.nvim"
},
"blink.cmp": {
"rev": "a327b19a419347084074cce77f6cd074f54705ac",
"src": "https://github.com/saghen/blink.cmp",
"version": ">=0.0.0"
},
"codecompanion-history.nvim": {
"rev": "bc1b4fe06eaaf0aa2399be742e843c22f7f1652a",
"src": "https://github.com/ravitemer/codecompanion-history.nvim"
},
"codecompanion.nvim": {
"rev": "7d7957c26d33a97085d3a0c82eeb0147a0f51314",
"src": "https://github.com/olimorris/codecompanion.nvim"
},
"dashboard-nvim": {
"rev": "62a10d9d55132b338dd742afc3c8a2683f3dd426",
"src": "https://github.com/nvimdev/dashboard-nvim"
},
"deadcolumn.nvim": {
"rev": "92c86f10bfba2717ca2280e2e759b047135d5288",
"src": "https://github.com/Bekaboo/deadcolumn.nvim"
},
"dracula.nvim": {
"rev": "ae752c13e95fb7c5f58da4b5123cb804ea7568ee",
"src": "https://github.com/Mofiqul/dracula.nvim"
},
"eldritch.nvim": {
"rev": "0415fa72c348e814a7a6cc9405593a4f812fe12f",
"src": "https://github.com/eldritch-theme/eldritch.nvim"
},
"f-string-toggle.nvim": {
"rev": "c1c77b4fce192e1615490d895863e2a0508d6021",
"src": "https://github.com/roobert/f-string-toggle.nvim"
},
"fidget.nvim": {
"rev": "889e2e96edef4e144965571d46f7a77bcc4d0ddf",
"src": "https://github.com/j-hui/fidget.nvim"
},
"flemma.nvim": {
"rev": "589b45f0911944e6f0833c23137186acca36b469",
"src": "https://github.com/Flemma-Dev/flemma.nvim"
},
"friendly-snippets": {
"rev": "6cd7280adead7f586db6fccbd15d2cac7e2188b9",
"src": "https://github.com/rafamadriz/friendly-snippets"
},
"gitsigns.nvim": {
"rev": "8d82c240f190fc33723d48c308ccc1ed8baad69d",
"src": "https://github.com/lewis6991/gitsigns.nvim"
},
"hackthebox.vim": {
"rev": "91a84adea2319e3701d76eaa25ae56795ad4dd0d",
"src": "https://github.com/audibleblink/hackthebox.vim"
},
"headlines.nvim": {
"rev": "bf17c96a836ea27c0a7a2650ba385a7783ed322e",
"src": "https://github.com/lukas-reineke/headlines.nvim"
},
"hover.nvim": {
"rev": "e73c00da3a9c87a21d2a8ddf7ab4a39824bd5d56",
"src": "https://github.com/lewis6991/hover.nvim"
},
"indent-blankline.nvim": {
"rev": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03",
"src": "https://github.com/lukas-reineke/indent-blankline.nvim"
},
"kanagawa.nvim": {
"rev": "aef7f5cec0a40dbe7f3304214850c472e2264b10",
"src": "https://github.com/rebelot/kanagawa.nvim"
},
"koda.nvim": {
"rev": "a560a332ccc1eb2caacb280a390213bb9f37b3cb",
"src": "https://github.com/oskarnurm/koda.nvim"
},
"lualine.nvim": {
"rev": "8811f3f3f4dc09d740c67e9ce399e7a541e2e5b2",
"src": "https://github.com/nvim-lualine/lualine.nvim"
},
"mcphub.nvim": {
"rev": "7cd5db330f41b7bae02b2d6202218a061c3ebc1f",
"src": "https://github.com/ravitemer/mcphub.nvim"
},
"mini.icons": {
"rev": "7fdae2443a0e2910015ca39ad74b50524ee682d3",
"src": "https://github.com/echasnovski/mini.icons"
},
"mini.nvim": {
"rev": "2431902e78b76f435542d1e606f08475360068ca",
"src": "https://github.com/nvim-mini/mini.nvim"
},
"mkdnflow.nvim": {
"rev": "f20732686f70f60f18f09f4befe984ae63a99201",
"src": "https://github.com/jakewvincent/mkdnflow.nvim"
},
"morta.nvim": {
"rev": "10b4cdb8b7ae3f814b77f617f985245b3c11c1fa",
"src": "https://github.com/philosofonusus/morta.nvim"
},
"nightfox.nvim": {
"rev": "ba47d4b4c5ec308718641ba7402c143836f35aa9",
"src": "https://github.com/EdenEast/nightfox.nvim"
},
"noice.nvim": {
"rev": "7bfd942445fb63089b59f97ca487d605e715f155",
"src": "https://github.com/folke/noice.nvim"
},
"nui.nvim": {
"rev": "de740991c12411b663994b2860f1a4fd0937c130",
"src": "https://github.com/MunifTanjim/nui.nvim"
},
"numb.nvim": {
"rev": "12ef3913dea8727d4632c6f2ed47957a993de627",
"src": "https://github.com/nacro90/numb.nvim"
},
"nvim": {
"rev": "426dbebe06b5c69fd846ceb17b42e12f890aedf1",
"src": "https://github.com/catppuccin/nvim"
},
"nvim-notify": {
"rev": "8701bece920b38ea289b457f902e2ad184131a5d",
"src": "https://github.com/rcarriga/nvim-notify"
},
"nvim-tree.lua": {
"rev": "509962f21ab7289d8dcd28568af539be39a8c01e",
"src": "https://github.com/nvim-tree/nvim-tree.lua"
},
"nvim-treesitter": {
"rev": "4916d6592ede8c07973490d9322f187e07dfefac",
"src": "https://github.com/nvim-treesitter/nvim-treesitter"
},
"nvim-web-devicons": {
"rev": "95b7a002d5dba1a42eb58f5fac5c565a485eefd0",
"src": "https://github.com/nvim-tree/nvim-web-devicons"
},
"nvimtelescope": {
"rev": "3333a52ff548ba0a68af6d8da1e54f9cd96e9179",
"src": "https://github.com/nvim-telescope/telescope.nvim",
"version": "'v0.2.1'"
},
"obsidian.nvim": {
"rev": "726b60c89f4bafef267a714ea1faa1335bdd414a",
"src": "https://github.com/epwalsh/obsidian.nvim"
},
"plenary.nvim": {
"rev": "b9fd5226c2f76c951fc8ed5923d85e4de065e509",
"src": "https://github.com/nvim-lua/plenary.nvim"
},
"rainbow-delimiters.nvim": {
"rev": "aab6caaffd79b8def22ec4320a5344f7c42f58d2",
"src": "https://github.com/HiPhish/rainbow-delimiters.nvim"
},
"rainbow_csv.nvim": {
"rev": "26de78d8324f7ac6a3e478319d1eb1f17123eb5b",
"src": "https://github.com/cameron-wags/rainbow_csv.nvim"
},
"ripgrep": {
"rev": "4519153e5e461527f4bca45b042fff45c4ec6fb9",
"src": "https://github.com/BurntSushi/ripgrep"
},
"solarized-osaka.nvim": {
"rev": "f0c2f0ba0bd56108d53c9bfae4bb28ff6c67bbdb",
"src": "https://github.com/craftzdog/solarized-osaka.nvim"
},
"telescope": {
"rev": "3333a52ff548ba0a68af6d8da1e54f9cd96e9179",
"src": "https://github.com/nvim-telescope/telescope.nvim",
"version": "'v0.2.1'"
},
"telescope-cmdline.nvim": {
"rev": "b1c330835563c9628ce7c095cf20772f22f93f07",
"src": "https://github.com/jonarrien/telescope-cmdline.nvim"
},
"telescope-file-browser.nvim": {
"rev": "3610dc7dc91f06aa98b11dca5cc30dfa98626b7e",
"src": "https://github.com/nvim-telescope/telescope-file-browser.nvim"
},
"telescope-fzf-native.nvim": {
"rev": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c",
"src": "https://github.com/nvim-telescope/telescope-fzf-native.nvim"
},
"telescope-live-grep-args.nvim": {
"rev": "53e9df55b3651dd7cf77e172f1e8c9a17407acca",
"src": "https://github.com/nvim-telescope/telescope-live-grep-args.nvim"
},
"telescope.nvim": {
"rev": "7ef4d6dccb78ee71e552bbd866176762ad328afa",
"src": "https://github.com/nvim-telescope/telescope.nvim"
},
"tiny-inline-diagnostic.nvim": {
"rev": "57a0eb84b2008c76e77930639890d9874195b1e1",
"src": "https://github.com/rachartier/tiny-inline-diagnostic.nvim"
},
"tmux.nvim": {
"rev": "2c1c3be0ef287073cef963f2aefa31a15c8b9cd8",
"src": "https://github.com/aserowy/tmux.nvim"
},
"todo-comments.nvim": {
"rev": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668",
"src": "https://github.com/folke/todo-comments.nvim"
},
"toggleterm.nvim": {
"rev": "9a88eae817ef395952e08650b3283726786fb5fb",
"src": "https://github.com/akinsho/toggleterm.nvim"
},
"tokyonight.nvim": {
"rev": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6",
"src": "https://github.com/folke/tokyonight.nvim"
},
"trouble.nvim": {
"rev": "bd67efe408d4816e25e8491cc5ad4088e708a69a",
"src": "https://github.com/folke/trouble.nvim"
},
"vim-arsync": {
"rev": "dd5fd93182aafb67ede2ef465f379610980b52d3",
"src": "https://github.com/kenn7/vim-arsync"
},
"vim-nightfly-colors": {
"rev": "250ee0eb4975e59a277f50cc03c980eef27fb483",
"src": "https://github.com/bluz71/vim-nightfly-colors"
},
"vim-wakatime": {
"rev": "d7973b157a632d1edeff01818f18d67e584eeaff",
"src": "https://github.com/wakatime/vim-wakatime"
},
"which-key.nvim": {
"rev": "3aab2147e74890957785941f0c1ad87d0a44c15a",
"src": "https://github.com/folke/which-key.nvim"
}
}
}

View File

@ -1,82 +0,0 @@
vim.api.nvim_create_autocmd('PackChanged', {
callback = function(ev)
if ev.data.spec.name == 'blink.cmp' then
local res = vim.system({ 'cargo', 'build', '--release' }, { cwd = ev.data.path })
if vim.v.shell_error ~= 0 then
vim.notify('Failed to compile blink.cmp: ' .. res, vim.log.levels.ERROR)
else
vim.notify('Successfully compiled blink.cmp', vim.log.levels.INFO)
end
end
end,
})
vim.pack.add({
{src = "https://github.com/saghen/blink.cmp", version = vim.version.range("*")}
})
require("blink.cmp").setup({
fuzzy = { implementation = "rust" },
keymap = {
preset = "default",
['<C-space>'] = { 'show', 'show_documentation', 'hide_documentation' },
['<C-e>'] = { 'hide', 'fallback' },
['<Tab>'] = {
function(cmp)
if cmp.snippet_active() then return cmp.accept()
else return cmp.select_and_accept() end
end,
'snippet_forward',
'fallback'
},
['<S-Tab>'] = { 'snippet_backward', 'fallback' },
['<Up>'] = { 'select_prev', 'fallback' },
['<Down>'] = { 'select_next', 'fallback' },
['<C-p>'] = { 'select_prev', 'fallback' },
['<C-n>'] = { 'select_next', 'fallback' },
['<C-b>'] = { 'scroll_documentation_up', 'fallback' },
['<C-f>'] = { 'scroll_documentation_down', 'fallback' },
},
appearance = {
nerd_font_variant = 'mono',
},
completion = {documentation = { auto_show = true },
},
sources = {
per_filetype = {
},
default = {'lsp', 'path', 'snippets', 'buffer' },
providers = {
lsp = {
name = "[Lsp]",
module = "blink.cmp.sources.lsp",
opts = {}, -- Passed to the source directly, varies by source
enabled = true, -- Whether or not to enable the provider
async = true, -- Whether we should wait for the provider to return before showing the completions
timeout_ms = 1000, -- How long to wait for the provider to return before showing completions and treating it as asynchronous
transform_items = nil, -- Function to transform the items before they're returned
should_show_items = true, -- Whether or not to show the items
max_items = nil, -- Maximum number of items to display in the menu
min_keyword_length = 0, -- Minimum number of characters in the keyword to trigger the provider
fallbacks = {},
score_offset = 7, -- Boost/penalize the score of the items
override = nil, -- Override the source's functions
},
path = {
name = "[Path]",
module = "blink.cmp.sources.path",
fallbacks = { "buffer" },
score_offset = 5,
opts = {
trailing_slash = true,
label_trailing_slash = true,
get_cwd = function(context)
return vim.fn.expand(("#%d:p:h"):format(context.bufnr))
end,
show_hidden_files_by_default = true,
},
},
},
},
-- }
})

View File

@ -1,29 +0,0 @@
-- vim.pack.add({"https://github.com/olimorris/codecompanion.nvim"})
-- require("codecompanion").setup({
-- strategies = {
-- chat = {
-- adapter = 'anthropic',
-- },
-- inline = {
-- adapter = 'anthropic',
-- },
-- },
-- adapters = {
-- http = {
-- anthropic = function()
-- return require("codecompanion.adapters").extend("anthropic", {
-- env = {
-- -- Enter API KEY Here
-- api_key = ""
-- },
-- })
-- end,
-- },
-- },
-- -- NOTE: The log_level is in `opts.opts`
-- opts = {
-- opts = {
-- log_level = "DEBUG",
-- }
-- }
-- })

View File

@ -1,16 +0,0 @@
vim.pack.add({
"https://github.com/oskarnurm/koda.nvim",
"https://github.com/eldritch-theme/eldritch.nvim",
"https://github.com/audibleblink/hackthebox.vim",
"https://github.com/craftzdog/solarized-osaka.nvim",
"https://github.com/philosofonusus/morta.nvim",
"https://github.com/Mofiqul/dracula.nvim",
"https://github.com/EdenEast/nightfox.nvim",
-- "https://github.com/rebelot/kanagawa.nvim",
"https://github.com/catppuccin/nvim",
"https://github.com/folke/tokyonight.nvim",
"https://github.com/bluz71/vim-nightfly-colors",
"https://github.com/Bekaboo/deadcolumn.nvim",
})
vim.cmd('colorscheme dracula')

View File

@ -1,34 +0,0 @@
vim.pack.add({
"https://github.com/nvimdev/dashboard-nvim"
})
require("dashboard").setup({
theme = 'hyper',
config = {
week_header = {
enable = true,
},
shortcut = {
{ desc = '󰊳 Update', group = '@property', action = 'lua vim.pack.update()', key = 'u' },
{
icon = '',
icon_hl = '@variable',
desc = 'Files',
group = 'Label',
action = 'Telescope find_files',
key = 'f',
},
-- {
-- desc = ' NeoWarrior',
-- group = 'DiagnosticHint',
-- action = 'NeoWarriorOpen current',
-- key = 'n',
-- },
-- {
-- desc = ' dotfiles',
-- group = 'Number',
-- action = 'Telescope dotfiles',
-- key = 'd',
-- },
},
},
})

View File

@ -1,46 +0,0 @@
vim.pack.add({"https://github.com/lukas-reineke/headlines.nvim"})
require("headlines").setup({
markdown = {
query = vim.treesitter.query.parse(
"markdown",
[[
(atx_heading [
(atx_h1_marker)
(atx_h2_marker)
(atx_h3_marker)
(atx_h4_marker)
(atx_h5_marker)
(atx_h6_marker)
] @headline)
(thematic_break) @dash
(fenced_code_block) @codeblock
(block_quote_marker) @quote
(block_quote (paragraph (inline (block_continuation) @quote)))
]]
),
headline_highlights = {
'Headline1',
'Headline2',
'Headline3',
'Headline4',
'Headline5',
'Headline6',
},
codeblock_highlight = "CodeBlock",
dash_highlight = "Dash",
dash_string = "-",
quote_highlight = "Quote",
quote_string = "",
fat_headlines = false,
},
})
vim.api.nvim_set_hl(0, 'Headline1', { fg = '#ffffff', bg = '#6272A4', italic = false })
vim.api.nvim_set_hl(0, 'Headline2', { fg = '#000000', bg = '#8BE9FD', italic = false })
vim.api.nvim_set_hl(0, 'Headline3', { fg = '#000000', bg = '#BD93F9', italic = false })
vim.api.nvim_set_hl(0, 'Headline4', { fg = '#000000', bg = '#FFB86C', italic = false })
vim.api.nvim_set_hl(0, 'Headline5', { fg = '#000000', bg = '#FF79C6', italic = false })
vim.api.nvim_set_hl(0, 'Headline6', { fg = '#000000', bg = '#FF5555', italic = false })
vim.api.nvim_set_hl(0, 'CodeBlock', { bg = '#222221' })

View File

@ -1,17 +0,0 @@
vim.pack.add({"https://github.com/lewis6991/hover.nvim"})
require("hover").setup({
init = function()
require("hover.providers.lsp")
require('hover.providers.man')
require('hover.providers.dictionary')
end,
preview_opts = {
border = nil
},
preview_window = false,
title = true
})
-- Setup keymaps
vim.keymap.set("n", "K", require("hover").hover, {desc = "hover.nvim"})
vim.keymap.set("n", "gK", require("hover").hover_select, {desc = "hover.nvim (select)"})

View File

@ -1,184 +0,0 @@
vim.pack.add({
----------------------------------------------------------------
-- LSP and Autocomplete Plugins
-- They should be pulled first!
-----------------------------------------------------------------
"https://github.com/rachartier/tiny-inline-diagnostic.nvim",
"https://github.com/L3MON4D3/LuaSnip",
------------------------------------------------------------
-- General Functionality
------------------------------------------------------------
"https://github.com/Flemma-Dev/flemma.nvim",
"https://github.com/ravitemer/mcphub.nvim",
"https://github.com/ravitemer/codecompanion-history.nvim",
"https://github.com/folke/noice.nvim",
"https://github.com/epwalsh/obsidian.nvim",
"https://github.com/nvim-lua/plenary.nvim",
"https://github.com/nvim-lualine/lualine.nvim",
"https://github.com/rcarriga/nvim-notify",
"https://github.com/kenn7/vim-arsync",
"https://github.com/nacro90/numb.nvim",
"https://github.com/nvim-tree/nvim-tree.lua",
"https://github.com/aserowy/tmux.nvim",
"https://github.com/MunifTanjim/nui.nvim",
"https://github.com/roobert/f-string-toggle.nvim",
"https://github.com/rafamadriz/friendly-snippets",
"https://github.com/nvim-tree/nvim-web-devicons",
"https://github.com/romgrk/barbar.nvim",
"https://github.com/folke/trouble.nvim",
"https://github.com/lewis6991/gitsigns.nvim",
"https://github.com/jakewvincent/mkdnflow.nvim",
"https://github.com/j-hui/fidget.nvim",
"https://github.com/lukas-reineke/indent-blankline.nvim",
"https://github.com/folke/todo-comments.nvim",
"https://github.com/Bekaboo/deadcolumn.nvim",
"https://github.com/HiPhish/rainbow-delimiters.nvim",
"https://github.com/wakatime/vim-wakatime",
"https://github.com/folke/which-key.nvim",
"https://github.com/akinsho/toggleterm.nvim",
"https://github.com/nvim-mini/mini.nvim",
"https://github.com/prabirshrestha/async.vim",
})
require('tiny-inline-diagnostic').setup(vim.diagnostic.config({ virtual_text = true }))
require("luasnip").setup({
build = "make install_jsregexp",
history = true,
delete_check_events = "TextChanged",
})
require("luasnip").filetype_extend("liquid", {"html","css","javascript","python"})
require("luasnip.loaders.from_vscode").lazy_load()
require("luasnip.loaders.from_vscode").load({})
require("lualine").setup({
options = {
theme = "nord",
},
sections = {
lualine_x = {
{
require("noice").api.statusline.mode.get,
cond = require("noice").api.statusline.mode.has,
color = { fg = "#ff9e64" },
},
}
},
{"fileformat", symbols = { unix = "" }, "filetype" },
})
require("obsidian").setup({
workspaces = {
{
name = "Work",
path = "~/Documents/Work",
}
}
})
require("numb").setup({
show_cursorline = false,
show_numbers = false, -- Enable 'number' for the window while peeking
hide_relativenumbers = false, -- Enable turning off 'relativenumber' for the window while peeking
number_only = true, -- Peek only when the command is only a number instead of when it starts with a number
centered_peeking = true,
})
require("nvim-tree").setup({
sort_by = "case_sensitive",
view = {
width = 30,
},
renderer = {
group_empty = true,
},
filters = {
dotfiles = true,
},
diagnostics = {
enable = true,
},
})
require("f-string-toggle").setup({
key_binding = "<leader>g"
})
require("barbar").setup({
})
require("trouble").setup({
})
require("which-key").setup({
add = ({
{ "<leader>?", function() require("which-key").show({ global = false }) end,
desc = "Buffer Local Keymaps (which-key)",
},
})
})
require("notify").setup({
-- timeout = 5000,
-- render = "minimal",
-- stages = "fade_in_slide_out",
-- on_open = function(win)
-- vim.api.nvim_win_set_config(win, { focusable = false })
-- end,
-- vim.keymap.set("n", "<Esc>", function()
-- require("notify").dismiss()
-- end, { desc = "dismiss notify popup and clear hlsearch" })
-- vim.api.nvim_notify = require('notify')
-- vim.notify = require('notify')
-- end,
})
require("toggleterm").setup({
opts = {
direction = 'float',
}
})
-- ------------------------------------------------------------
-- -- echasnovski's Minis get a section of their own...
-- ------------------------------------------------------------
require("mini.move").setup({
mappings = {
left = '<S-left>',
right = '<S-right>',
down = '<S-down>',
up = '<S-up>',
line_left = '<S-left>',
line_right = '<S-right>',
line_down = '<S-down>',
line_up = '<S-up>',
}})
require("mini.trailspace").setup({
})
require("mini.surround").setup({
})
require("mini.pairs").setup({
})
require("mini.fuzzy").setup({
})
require("mini.hipatterns").setup({
-- highlighters = {
-- hex_color = gen_highlighter.hex_color(),
-- hsl_color = {
-- pattern = "hsl%(%d+,? %d+,? %d+%)",
-- group = function(_, match)
-- local utils = require("solarized-osaka.hsl")
-- local nh, ns, nl = match:match("hsl%((%d+),? (%d+),? (%d+)%)")
-- local h, s, l = tonumber(nh), tonumber(ns), tonumber(nl)
-- local hex_color = utils.hslToHex(h, s, l)
-- return MiniHipatterns.compute_hex_color_group(hex_color, "bg")
-- end,
-- },
-- },
})
require("mini.indentscope").setup({
})
require("mini.diff").setup({
})
----------------------------------------------
--- Custom Plugins and Tests
----------------------------------------------
-- {
-- dir = '/Users/normrasmussen/Documents/Projects/markdown_organizer.nvim',
-- dev = true,
-- name = 'MarkdownOrganizerPlugin',
-- },
-- }

View File

@ -1,186 +0,0 @@
vim.api.nvim_create_autocmd('PackChanged', {
callback = function(ev)
if ev.data.spec.name == 'telescope' then
local res = vim.system({ 'cmake', '-S.', '-Bbuild', '-DCMAKE_BUILD_TYPE=Release', 'cmake', '--build', 'build', '--config', 'Release', '--target', 'install' }, { cwd = ev.data.path })
if vim.v.shell_error ~= 0 then
vim.notify('Failed to compile telescope: ' .. res, vim.log.levels.ERROR)
else
vim.notify('Successfully compiled telescope', vim.log.levels.INFO)
end
end
end,
})
vim.pack.add({
"https://github.com/nvim-telescope/telescope.nvim",
"https://github.com/nvim-lua/plenary.nvim",
"https://github.com/nvim-telescope/telescope-file-browser.nvim",
"https://github.com/nvim-telescope/telescope-fzf-native.nvim",
"https://github.com/nvim-telescope/telescope-live-grep-args.nvim",
"https://github.com/jonarrien/telescope-cmdline.nvim",
"https://github.com/BurntSushi/ripgrep",
})
local builtin = require('telescope.builtin')
vim.keymap.set('n', '<leader>ff', builtin.find_files, { desc = 'Telescope find files' })
vim.keymap.set('n', '<leader>fg', builtin.live_grep, { desc = 'Telescope live grep' })
vim.keymap.set('n', '<leader>fb', builtin.buffers, { desc = 'Telescope buffers' })
vim.keymap.set('n', '<leader>fh', builtin.help_tags, { desc = 'Telescope help tags' })
require("telescope").setup({
defaults = {
border = true,
prompt_title = false,
results_title = false,
color_devicons = false,
layout_strategy = 'horizontal',
borderchars = {
prompt = { '', '', '', '', '', '', '', '' },
results = { '', '', '', '', '', '', '', '' },
preview = { '', '', '', '', '', '', '', '' },
},
layout_config = {
bottom_pane = {
height = 20,
preview_cutoff = 120,
prompt_position = 'top'
},
center = {
height = 0.4,
preview_cutoff = 40,
prompt_position = 'top',
width = 0.7
},
horizontal = {
prompt_position = 'top',
preview_cutoff = 40,
height = 0.9,
width = 0.8
}
},
sorting_strategy = 'ascending',
prompt_prefix = ' ',
selection_caret = '',
entry_prefix = ' ',
file_ignore_patterns = {'node_modules'},
path_display = { 'truncate' },
results_title = false,
prompt_title =false,
preview = {
treesitter = {
enable = {
'css', 'dockerfile', 'elixir', 'erlang', 'zsh',
'html', 'http', 'javascript', 'json', 'lua', 'php',
'python', 'regex', 'ruby', 'rust', 'scss',
'typescript', 'yaml', 'markdown', 'bash', 'c',
'cmake', 'comment', 'cpp', 'dart', 'go', 'jsdoc',
'json5', 'jsonc', 'llvm', 'make', 'ninja',
'todotxt', 'toml', 'help'
}
}
},
mappings = {
i = {
['<esc>'] = require('telescope.actions').close,
},
}
},
extensions = {
file_browser = {
mappings = {
["i"] = {
["<C-c>"] = require("telescope").extensions.file_browser.actions.create,
["<C-y>"] = require("telescope").extensions.file_browser.actions.copy,
["<C-r>"] = require("telescope").extensions.file_browser.actions.rename,
["<C-w>"] = require("telescope").extensions.file_browser.actions.goto_cwd,
["<C-o>"] = require("telescope").extensions.file_browser.actions.open,
["<C-d>"] = require("telescope").extensions.file_browser.actions.remove,
},
},
cmdline = {
mappings = {
complete = '<Tab>',
run_selection = '<C-CR>',
run_input = '<CR>',
}
}
},
fzf = {
fuzzy = true, -- false will only do exact matching
override_generic_sorter = true, -- override the generic sorter
override_file_sorter = true, -- override the file sorter
case_mode = 'smart_case', -- other options: 'ignore_case' or 'respect_case'
}
},
config = function()
local g = vim.g
local fb_actions = require("telescope").extensions.file_browser.actions
local themes = {
popup_list = {
theme = 'popup_list',
border = true,
preview = false,
prompt_title = false,
results_title = false,
sorting_strategy = 'ascending',
layout_strategy = 'center',
borderchars = {
prompt = { '', '', '', '', '', '', '', '' },
results = { '', '', '', '', '', '', '', '' },
preview = { '', '', '', '', '', '', '', '' },
},
},
popup_extended = {
theme = 'popup_extended',
prompt_title = false,
results_title = false,
layout_strategy = 'center',
layout_config = {
width = 0.7,
height = 0.3,
mirror = true,
preview_cutoff = 1,
},
borderchars = {
prompt = { '', '', ' ', '', '', '', '', '' },
results = { '', '', '', '', '', '', '', '' },
preview = { '', '', '', '', '', '', '', '' },
},
},
command_pane = {
theme = 'command_pane',
preview = false,
prompt_title = false,
results_title = false,
sorting_strategy = 'descending',
layout_strategy = 'bottom_pane',
layout_config = {
height = 13,
preview_cutoff = 1,
prompt_position = 'bottom'
},
},
ivy_plus = {
theme = 'ivy_plus',
preview = false,
prompt_title = false,
results_title = false,
layout_strategy = 'bottom_pane',
layout_config = {
height = 13,
preview_cutoff = 120,
prompt_position = 'bottom'
},
borderchars = {
prompt = { '', '', '', '', '', '', '', '' },
results = { '', '', '', '', '', '', '', '' },
preview = { '', '', ' ', ' ', '', '', '', ' ' },
},
},
}
end
})
require("telescope").load_extension("file_browser")
require("telescope").load_extension("live_grep_args")
-- require("telescope").load_extension("fzf-native")
require("telescope").load_extension("cmdline")

View File

@ -1,32 +0,0 @@
vim.pack.add({
"https://github.com/nvim-treesitter/nvim-treesitter"
})
require("nvim-treesitter").setup({
ensure_installed = {
'bash', 'css', 'html', 'javascript', 'json', 'lua', 'python',
'vim', 'yaml', 'typescript', 'markdown',
},
sync_install = true,
highlight = {
enable = true,
disable = function(lang, bufnr)
return lang == "py" and vim.api.nvim_buf_line_count(bufnr) > 5000
end,
additional_vim_regex_highlighting = true,
},
indent = { enable = true },
})
-- disable = function(lang, buf)
-- local max_filesize = 100 * 1024 -- 100 KB
-- local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
-- if ok and stats and stats.size > max_filesize then
-- return true
-- end
-- end, disable = function(lang, buf)
-- local max_filesize = 100 * 1024 -- 100 KB
-- local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
-- if ok and stats and stats.size > max_filesize then
-- return true
-- end
-- end,
-- })

View File

@ -1,20 +0,0 @@
return {
'linguini1/pulse.nvim',
-- 'Normanras/pulse.nvim',
version = "*",
config = function()
local pulse = require("pulse")
pulse.setup({level = vim.log.levels.ERROR})
pulse.add("Send Krista Message", {
interval = 90,
message = "Tell Krista that you love her!",
enabled = True,
})
end
}
-- Not working: DEBUG, TRACE
-- Working: ERROR, OFF, WARN, INFO

View File

@ -1,19 +0,0 @@
vim.pack.add({"https://github.com/cameron-wags/rainbow_csv.nvim"})
require("rainbow_csv").setup({
config = true,
ft = {
'csv',
'tsv',
'csv_semicolon',
'csv_whitespace',
'csv_pipe',
'rfc_csv',
'rfc_semicolon'
},
cmd = {
'RainbowDelim',
'RainbowDelimSimple',
'RainbowDelimQuoted',
'RainbowMultiDelim'
}
})

View File

@ -1,18 +0,0 @@
{
"today-date": {
"prefix": "today",
"body": ["${CURRENT_MONTH}-${CURRENT_DATE}-${CURRENT_YEAR}"],
"description": "Puts the date in (Y-m-D) format"
},
"today-tasks": {
"prefix": "todaytask",
"body": ["## ${CURRENT_MONTH}-${CURRENT_DATE}-${CURRENT_YEAR} \n\n- [ ] "],
"description": "Today's date plus a markdown task for easy addition."
},
"box": {
"prefix": "hugobox",
"body": ["{{< box info >}} \n\n {{< /box >}}"],
"description": "Cstom info box for hugo website. Info can also be warn, tip."
}
}

View File

@ -1,14 +0,0 @@
{
"contributes": {
"snippets": [
{
"language": "markdown",
"path": "./markdown.json"
},
{
"language": "python",
"path": "./python.json"
}
]
}
}

View File

@ -1,7 +0,0 @@
{
"pprint-import": {
"prefix": "pprint-import",
"body": ["import pprint \n\n pp=pprint.PrettyPrinter(indent=4) \n\n pp.pprint(VARIABLE)"],
"description": "Easily import, declare, and add a Pretty Print for easier reading."
}
}

View File

@ -1,349 +0,0 @@
recert
gravatar
TODO
gravatars
webhook
Neovim
accomplished
accomplished
Talkspace
Northpass
CEU
th
B2B
Integrations
NPP
CSV
BBHR
onboarding
Kai
scorms
QMC
trainings
cancelled
Ummey
Ummey's
prev
Kaitlyn
CYA
programmatically
Wistia
iOS
PPT
Kaitlyn's
OneTrust
JS
Analytics
KPI
param
UUID
Pipedrive
pipedrive
Lukasz
Bjorn
webhooks
trackable
Pipedrive's
boolean
Kaisa
SSO
XP
DW
Chołodecki
Łukasz
Kotkas
Patrycja
Q1
Vidyard
badging
Flink
S3
Unclickable
DataDog
wistia
https
https
wifi
autoplaying
tbd
G2
SMEs
CSM
AEs
ZoomInfo's
linkedin
Enablement
enablement
DIY
Zoominfo
G2M
Carli
LevelJump
LMS
CMS
Lessonly
Katlin
nd
LT
EVP's
UX
Schoology
Pendo
Salesforce
ILTs
SFDC
ROI
NPS
roadmap
BigIdeasMath
Hubspot
analytics
SCORM
AWS
JnJ
DSAR
ons
Zapier
Accredible
LPs
Shopify
Callum
Chek
Chek
Chek
Chek
Chek
Chek
prereg
OpenAccess
Camila
SAP
SAP
Workato
Soner
Okta
Auth0
flink
goflink
backfill
Marek
KJ
Canva
Customizable
GoFlink
Cami
auth
Litmos
infographic
Nino's
Flink's
Crowdin
Joonas
QBR
UID
versioning
GDPR
Edume
something
something
AppCues
appcues
Skuad
Skuid
COO
Nergis
pdf
FiveTran
BigQuery
COO
NDA
lifecycle
PALs
LTV
Articulate's
Comms
ILT
Mockup
iFrame
Froala
html
css
resize
customizable
OpenSesame
timestamp
comms
Audrius
Youtube
Omnisend
northpass
Omnisend's
url
Hoc
exisiting
subdomains
iFrame
iFrame
iFrame
gifs
webview
Skuid's
reachs
JJSV
Todos
Phaco
Garg
codeblock
Aleksandr
Sten
v10
TOC
Nitty
KPIs
MAL
walmart
Segura
Luminate
gif
OneDrive
EOC
legistlation
todo
SCA
V2
Rock22
Figma
Foundational
Iorad
ish
Credly
Ritu
Kumar
Deeksha
Prajwal
Praveen
Rakesh
integrations
recomendations
personalization
SLAs
Devanathan
productize
accesss
devs
Sandipan
Kayla
discoverable
Trei
aways
Chronotype
zapier
WildHealth
dev
Shopify's
ProductIDs
Flupdates
availble
enrollees
automations
hoc
Baeligh
Moburley
Baeleigh
Gmail
WHAcademy
www
wildhealth
www
www
transformative
impactful
positivity
CSMs
Basecamp
PSRs
PSR
TSU
ChurnZero
Neste
SEO
oAuth
sso
learning
pre
Margus
pipedive
http
iFrame
learn
OM
duolingo
gamification
CIP
typeform
Trello
repo
Unific
AIIM
FOMO
Async
zendesk
centre
centres
consisently
LiveStorm
represneted
Jagannatha
Q2
Gainsight
unlinked
Gainsight's
RevOps
Heraly
Cherrill
LeanData
nitty
Planhat
Toothman
event
event
MJ
Wix
cateogries
cateogries
Glassdoor
accomodate
Ines
distrcits
suggstions
Chek's
COO
nginx's
nginx
config
javascript
subdomain
Moodle
MSP
moodle
Faux
repos
Github
Gitea
AppDaemon
AppDaemon's
birdnet
HomeAssistant
MQTT
BirdNET
reseller
Ece
accredation
assesment
submodules
Artera
Qualtrics
Discoverability
programatically
#ASEURL/!
BASEURL/!

6
package-lock.json generated
View File

@ -1,6 +0,0 @@
{
"name": ".dotfiles",
"lockfileVersion": 3,
"requires": true,
"packages": {}
}

View File

@ -1,19 +0,0 @@
run_program() {
default_route_nic=$(route get default | grep -i interface | awk '{print $2}')
all_nics=$(ifconfig 2>/dev/null | awk -F':' '/^[a-z]/ && !/^lo/ { print $1 }' | tr '\n' ' ')
IFS=' ' read -ra all_nics_array <<< "$all_nics"
all_nics_array=("$default_route_nic" "${all_nics_array[@]}")
for nic in "${all_nics_array[@]}"; do
ipv4s_on_nic=$(ifconfig ${nic} 2>/dev/null | awk '$1 == "inet" { print $2 }')
echo ${ipv4s_on_nic}
for lan_ip in ${ipv4s_on_nic[@]}; do
echo ${lan_ip}
[[ -n "${lan_ip}" ]]
done
[[ -n "${lan_ip}" ]]
done
echo "${lan_ip-Not working}"
return 0
}
"$@"

View File

@ -1,30 +0,0 @@
#!/bin/bash
find_data=$(ifstat -S -q 1 1)
interfaces=$(echo -e "${find_data}" | head -n 1)
final=()
for interface in ${interfaces}; do
has_data=$(ifstat -i ${interface} -S -q 1 1 | tail -n 1 | tr -d '\r' | tr -d ' ')
if [[ "$has_data" != "0.000.00" ]]; then
for int in ${interface}; do
data=$(ifstat -i ${interface} -S -q 1 1)
flow_data=$(echo -e "${data}" | tail -n 1 | tr -d '\r' )
up=${flow_data% *}
down=${flow_data##* }
up=$up | tr -d ' '
down=$down | tr -d ' '
final+=("$int: $up/ $down")
echo $final
done
# OUTPUT="⇈ $up ⇊ $down"
# echo $OUTPUT
fi
done
# data=$(ifstat -i en0 -i en5 -S -q 1 1)
# flow_data=$(echo -e "${data}" | tail -n 1 | tr -d '\r')
# up=${flow_data% *}
# down=${flow_data##* }
# OUTPUT="⇈ $up ⇊ $down"
# echo $OUTPUT

View File

@ -1,17 +0,0 @@
#!/bin/bash
function ip_address() {
# Loop through the interfaces and check for the interface that is up.
for file in /sys/class/net/*; do
iface=$(basename $file);
read status < $file/operstate;
[ "$status" == "up" ] && ip addr show $iface | awk '/inet /{printf $2" "}'
done
}

View File

@ -1,6 +0,0 @@
#!/bin/bash
PST=$(TZ=":America/Los_Angeles" date -R +%H:%M)
EST=$(TZ=":America/New_York" date -R +%H:%M)
CET=$(TZ=":Europe/Warsaw" date -R +%H:%M)
echo "PST: $PST | EST: $EST | CET: $CET"

Submodule tmux/.config/tmux/plugins/tmux-continuum deleted from 0698e8f4b1

Submodule tmux/.config/tmux/plugins/tmux-resurrect deleted from cff343cf9e

Submodule tmux/.config/tmux/plugins/tmux-sensible deleted from 25cb91f42d

Submodule tmux/.config/tmux/plugins/tmux-which-key deleted from 1f419775ca

Submodule tmux/.config/tmux/plugins/tmux-world-clock deleted from 07266df297

Submodule tmux/.config/tmux/plugins/tpm deleted from 99469c4a9b

Submodule tmux/.config/tmux/plugins/vim-tmux-navigator deleted from 38b1d0402c

View File

@ -1,27 +0,0 @@
#!/bin/bash
function wan_ip() {
tmp_file="./wan_ip.txt"
wan_up="N/a"
if [ -z "$wan_ip" ]; then
wan_ip=$(curl --max-time 2 -s http://whatismyip.akamai.com/)
if [ "$?" -eq "0" ]; then
echo "${wan_ip}" > $tmp_file
elif [ -f "${tmp_file}" ]; then
wan_ip=$(cat "$tmp_file")
fi
fi
if [ -n "$wan_ip" ]; then
printf "${wan_ip}"
fi
}
function main() {
wan_ip
}
main

View File

@ -1 +0,0 @@
104.246.2.167

View File

@ -1,4 +0,0 @@
/Users/normrasmussen 40
/Users/normrasmussen/Documents/Liquid_Templates 40
/Users/normrasmussen/Documents/Liquid_Templates/customer_templates 69
40

View File

@ -1,84 +0,0 @@
set-environment -g PATH "/opt/homebrew/bin:/bin:/usr/bin"
set-window-option -g mode-keys vi
set-option default-terminal "screen-256color"
set-option default-terminal "tmux-256color"
set-option -a terminal-overrides ",*256col*:RGB"
# Set up Variables
black='#000000'
white='#f8f8f2'
gray='#44475a'
dark_gray='#282a36'
light_purple='#bd93f9'
dark_purple='#6272a4'
cyan='#8be9fd'
green='#50fa7b'
orange='#ffb86c'
red='#ff5555'
pink='#ff79c6'
yellow='#f1fa8c'
active='#50fa7b'
nonactive='#6272a4'
left_sep=''
right_sep=''
wanip="~/.dotfiles/tmux/.config/tmux/plugins/wan_ip.sh"
timezones="~/.dotfiles/tmux/.config/tmux/plugins/timezones.sh"
ifstat="~/.dotfiles/tmux/.config/tmux/plugins/ifstat.sh"
set -g status on
set -g status-interval 1
set -g status-justify centre
set-window-option -g window-status-separator ''
set-window-option -g window-status-current-format "#[fg=${active},bg=${dark_gray}]${right_sep}#[fg=${black},bg=${active}] #I #W #[fg=${active},bg=${dark_gray}]${left_sep}"
set-window-option -g window-status-format "#[fg=${white},bg=${dark_gray}] #I #W "
set-option -g status-bg ${dark_gray}
# set-option -g status-fg white
set -g status-left-length 50
# set -g status-left-style default
set -g status-left "#[fg=${black},bg=${light_purple}] #(${wanip}) #[fg=${light_purple},bg=${green}]${left_sep}#[fg=${black},bg=${green}] #(${ifstat})#[fg=${green},bg=${dark_gray}]${left_sep}"
set -g status-right-length 60
set -g status-right "#[fg=${pink},bg=${dark_gray}]${right_sep}#[fg=${black},bg=${pink}]#(${timezones}) "
set -g status-right-style default
# Standard Plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
# Continue Session on Startup
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
# Search your Scrollback using fzf
# set -g @plugin 'roosta/tmux-fuzzback'
# Allow Focus Events
set -g focus-events on
# enable mouse support
set-option -g mouse on
# Open Pane in same working directory
# Set the control character to Ctrl+Spacebar (instead of Ctrl+B)
set -g prefix C-b
unbind-key C-space
bind-key C-b send-prefix
# Set new panes to open in current directory
bind c new-window -c "#{pane_current_path}"
bind '"' split-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
# Vim-Tmux-Navigator plugin/
set -g @plugin 'christoomey/vim-tmux-navigator'
# Which Key for Tmux
set -g @plugin 'alexwforsythe/tmux-which-key'
# Initialize TMUX plugin manager - kept at bottom of file
run '~/.dotfiles/tmux/.config/tmux/plugins/tpm/tpm'

View File

@ -1 +0,0 @@
69.120.56.29

View File

@ -1 +0,0 @@
69.120.56.29

View File

@ -1,5 +0,0 @@
local wezterm = require 'wezterm'
local config = wezterm.config_builder()
config.window_background_opacity = 0.9
config.color_scheme = 'Rapture'
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,93 +0,0 @@
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
# Initialization code that may require console input (password prompts, [y/n]
# confirmations, etc.) must go above this block; everything else may go below.
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
# autoload -Uz compinit
# compinit
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
# autoload -Uz compinit; compinit; _comp_options+=(globdots);
# ssh using a new window when we are in TMUX
ssh() {
if [ -n "${TMUX:-}" ]; then
# Extract the destination host from the command arguments
local dest_user_host=$(
printf "%s " "$@" | awk 'match($0, /[a-zA-Z0-9_.-]+@[a-zA-Z0-9_.-]+/) {print substr($0,RSTART,RLENGTH)}'
)
# Rename tmux window and pane if possible
(
set +e # Continue even if rename fails
tmux display-message -p "#{pane_id}" > /dev/null && tmux rename-window "$dest_user_host"
tmux rename-pane "$dest_user_host" 2>/dev/null || true
) &> /dev/null
command ssh "$@"
# Restore automatic renaming (if enabled)
tmux set-window-option automatic-rename on > /dev/null 2>&1 || true
else
command ssh "$@"
fi
}
# User configuration
export DOT="~/.dotfiles"
alias vim='vim -S ~/.vimrc'
alias nvim='nvim'
alias uvupdate='while read line; do [[ -n "$line" && ! "$line" =~ ^[[:space:]]*# ]] && uv pip install "$line" --upgrade; done < requirements.txt'
# alias brew='env PATH="${PATH//$(pyenv root)\/shims:/}" brew'
export CLICOLOR=1
export LSCOLORS=ExGxBxDxCxEgEdxbxgxcxd
export EDITOR="$VISUAL"
export VISUAL='nvim'
export PYTHONPATH="/opt/homebrew/bin/python3:$PYTHONPATH"
# export PYENV_ROOT="$HOME/.pyenv"
# command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
# Function to Correctly Source $VIRTUAL_ENV for Neovim
function nvimvenv {
if [[ -e "$VIRTUAL_ENV" && -f "$VIRTUAL_ENV/bin/activate" ]]; then
source "$VIRTUAL_ENV/bin/activate"
command nvim "$@"
deactivate
else
command nvim "$@"
fi
}
export PATH="$PATH:$HOME/.rvm/bin"
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
NPM_PACKAGES=/Users/$USERNAME/.npm-packages
export PATH="/opt/homebrew/sbin:$PATH"
export PATH="/opt/homebrew/bin:$PATH"
export PATH="$NPM_PACKAGES/bin:$PATH"
source /opt/homebrew/share/powerlevel10k/powerlevel10k.zsh-theme
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
# [[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
source ~/.dotfiles/zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.dotfiles/zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
. "$HOME/.cargo/env"
export PATH="/usr/local/opt/openssl/bin:$PATH"
. "$HOME/.local/bin/env"
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
eval "$(uv generate-shell-completion zsh)"
# export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
# To customize prompt, run `p10k configure` or edit ~/.dotfiles/zsh/.p10k.zsh.
[[ ! -f ~/.dotfiles/zsh/.p10k.zsh ]] || source ~/.dotfiles/zsh/.p10k.zsh

View File

@ -1,8 +0,0 @@
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
# User configuration
export DOT="~/.dotfiles"
alias vim='vim -S ~/.vimrc'
alias nvim='nvim'
source ~/.dotfiles/zsh/.zshrc

View File

Submodule zsh/zsh-autosuggestions deleted from 85919cd1ff

Submodule zsh/zsh-syntax-highlighting deleted from 1d85c69261