update file structure
This commit is contained in:
@@ -0,0 +1,168 @@
|
||||
[env]
|
||||
TERM = "xterm-256color"
|
||||
WINIT_X11_SCALE_FACTOR = "1"
|
||||
|
||||
[terminal.shell]
|
||||
program = "tmux"
|
||||
|
||||
[window]
|
||||
dynamic_padding = true
|
||||
padding = { x = 5, y = 5 }
|
||||
decorations = "full"
|
||||
title = "Alacritty@CachyOS"
|
||||
opacity = 0.98
|
||||
decorations_theme_variant = "Dark"
|
||||
|
||||
[window.dimensions]
|
||||
columns = 175
|
||||
lines = 45
|
||||
|
||||
[window.class]
|
||||
instance = "Alacritty"
|
||||
general = "Alacritty"
|
||||
|
||||
[scrolling]
|
||||
history = 10000
|
||||
multiplier = 3
|
||||
|
||||
[colors]
|
||||
draw_bold_text_with_bright_colors = true
|
||||
|
||||
[colors.primary]
|
||||
#background = "0x2E3440"
|
||||
foreground = "0xD8DEE9"
|
||||
|
||||
[colors.normal]
|
||||
black = "0x3B4252"
|
||||
red = "0xBF616A"
|
||||
green = "0xA3BE8C"
|
||||
yellow = "0xEBCB8B"
|
||||
blue = "0x81A1C1"
|
||||
magenta = "0xB48EAD"
|
||||
cyan = "0x88C0D0"
|
||||
white = "0xE5E9F0"
|
||||
|
||||
[colors.bright]
|
||||
black = "0x4C566A"
|
||||
red = "0xBF616A"
|
||||
green = "0xA3BE8C"
|
||||
yellow = "0xEBCB8B"
|
||||
blue = "0x81A1C1"
|
||||
magenta = "0xB48EAD"
|
||||
cyan = "0x8FBCBB"
|
||||
white = "0xECEFF4"
|
||||
|
||||
[font]
|
||||
size = 12
|
||||
|
||||
[font.normal]
|
||||
family = "monospace"
|
||||
style = "Regular"
|
||||
|
||||
[font.bold]
|
||||
family = "monospace"
|
||||
style = "Bold"
|
||||
|
||||
[font.italic]
|
||||
family = "monospace"
|
||||
style = "Italic"
|
||||
|
||||
[font.bold_italic]
|
||||
family = "monospace"
|
||||
style = "Bold Italic"
|
||||
|
||||
[selection]
|
||||
semantic_escape_chars = ",│`|:\"' ()[]{}<>\t"
|
||||
save_to_clipboard = true
|
||||
|
||||
[cursor]
|
||||
style = { shape = "Block", blinking = "Always" }
|
||||
vi_mode_style = "None"
|
||||
unfocused_hollow = true
|
||||
thickness = 0.15
|
||||
|
||||
[mouse]
|
||||
hide_when_typing = true
|
||||
|
||||
[[mouse.bindings]]
|
||||
mouse = "Middle"
|
||||
action = "PasteSelection"
|
||||
|
||||
[keyboard]
|
||||
[[keyboard.bindings]]
|
||||
key = "Paste"
|
||||
action = "Paste"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "Copy"
|
||||
action = "Copy"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "L"
|
||||
mods = "Control"
|
||||
action = "ClearLogNotice"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "L"
|
||||
mods = "Control"
|
||||
mode = "~Vi"
|
||||
chars = "\f"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "PageUp"
|
||||
mods = "Shift"
|
||||
mode = "~Alt"
|
||||
action = "ScrollPageUp"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "PageDown"
|
||||
mods = "Shift"
|
||||
mode = "~Alt"
|
||||
action = "ScrollPageDown"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "Home"
|
||||
mods = "Shift"
|
||||
mode = "~Alt"
|
||||
action = "ScrollToTop"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "End"
|
||||
mods = "Shift"
|
||||
mode = "~Alt"
|
||||
action = "ScrollToBottom"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "V"
|
||||
mods = "Control|Shift"
|
||||
action = "Paste"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "C"
|
||||
mods = "Control|Shift"
|
||||
action = "Copy"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "F"
|
||||
mods = "Control|Shift"
|
||||
action = "SearchForward"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "B"
|
||||
mods = "Control|Shift"
|
||||
action = "SearchBackward"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "C"
|
||||
mods = "Control|Shift"
|
||||
mode = "Vi"
|
||||
action = "ClearSelection"
|
||||
|
||||
[[keyboard.bindings]]
|
||||
key = "Key0"
|
||||
mods = "Control"
|
||||
action = "ResetFontSize"
|
||||
|
||||
[general]
|
||||
live_config_reload = true
|
||||
working_directory = "None"
|
||||
@@ -0,0 +1,27 @@
|
||||
source /usr/share/cachyos-fish-config/cachyos-config.fish
|
||||
|
||||
alias ll='ls --color=auto'
|
||||
|
||||
# Git Aliases
|
||||
alias ga='git add'
|
||||
alias gaa='git add .'
|
||||
alias gb='git branch'
|
||||
alias gc='git clone'
|
||||
alias gcb='git checkout -b'
|
||||
alias gco='git checkout'
|
||||
alias gcmsg='gft -m'
|
||||
alias gd='git diff'
|
||||
alias gf='git fetch'
|
||||
alias gl='git pull'
|
||||
alias gp='git push'
|
||||
alias gpu='git push -u origin $(git branch --show-current)'
|
||||
alias grs='git restore --staged'
|
||||
alias gst='git status'
|
||||
alias gwa='gft -i'
|
||||
alias gwr='gft -r'
|
||||
|
||||
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
|
||||
|
||||
function fish_greeting
|
||||
end
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
local g = vim.g
|
||||
local o = vim.o
|
||||
local keymap = vim.keymap.set
|
||||
local cmd = vim.cmd
|
||||
local api = vim.api
|
||||
|
||||
-- Leader Key
|
||||
g.mapleader = " "
|
||||
|
||||
-- Disable netrw for Nvim Tree
|
||||
g.loaded_netrw = 1
|
||||
g.loaded_netrwPlugin = 1
|
||||
|
||||
-- Numbers
|
||||
o.number = true
|
||||
o.relativenumber = true
|
||||
o.numberwidth = 1
|
||||
|
||||
-- Clipboard
|
||||
cmd[[set clipboard+=unnamedplus]]
|
||||
|
||||
-- Files
|
||||
o.swapfile = false
|
||||
o.backup = false
|
||||
|
||||
-- Scroll Offset
|
||||
o.scrolloff = 15
|
||||
|
||||
-- Cursor & Column Lines
|
||||
o.colorcolumn = "80"
|
||||
o.cursorline = true
|
||||
|
||||
-- Mouse
|
||||
o.mouse = "a"
|
||||
|
||||
-- Spacing
|
||||
o.tabstop = 2
|
||||
o.shiftwidth = 2
|
||||
o.expandtab = true
|
||||
|
||||
-- Update Time
|
||||
o.updatetime = 50
|
||||
|
||||
-- Hide Highlighting
|
||||
cmd[[set nohlsearch]]
|
||||
|
||||
-- Indent
|
||||
keymap("n", "<S-Tab>", "<<")
|
||||
keymap("n", "<Tab>", ">>")
|
||||
keymap("v", "<S-Tab>", "<<")
|
||||
keymap("v", "<Tab>", ">>")
|
||||
keymap("i", "<S-Tab>", "<BS>")
|
||||
|
||||
-- Move Between Panels
|
||||
keymap("", "<C-h>", ":wincmd h<CR>")
|
||||
keymap("", "<C-j>", ":wincmd j<CR>")
|
||||
keymap("", "<C-k>", ":wincmd k<CR>")
|
||||
keymap("", "<C-l>", ":wincmd l<CR>")
|
||||
|
||||
-- Jump Up/Down A Half Page
|
||||
keymap("n", "<C-d>", "<C-d>zz")
|
||||
keymap("n", "<C-u>", "<C-u>zz")
|
||||
|
||||
-- Keep Copy/Paste Value
|
||||
keymap("x", "<leader>p", "\"_dP")
|
||||
|
||||
-- Sort
|
||||
keymap("v", "<C-s>", ":sort<CR>")
|
||||
|
||||
-- Disable F1 in Insert mode
|
||||
keymap('i', '<F1>', '<nop>')
|
||||
|
||||
-- Close Neovim
|
||||
cmd("command! Qa qa")
|
||||
|
||||
-- Remove trailing whitespace when focus is lost or the window is closed,
|
||||
-- without moving the cursor
|
||||
api.nvim_exec([[
|
||||
autocmd FocusLost,WinLeave * if &modifiable | let w:save_cursor = getcurpos() | %s/\s\+$//e | call setpos('.', w:save_cursor) | endif
|
||||
]], false)
|
||||
|
||||
-- Plugins
|
||||
vim.pack.add({
|
||||
"https://github.com/ellisonleao/gruvbox.nvim",
|
||||
"https://github.com/windwp/nvim-autopairs",
|
||||
"https://github.com/Pocco81/auto-save.nvim",
|
||||
"https://github.com/lewis6991/gitsigns.nvim",
|
||||
"https://github.com/lukas-reineke/indent-blankline.nvim",
|
||||
"https://github.com/nvim-lua/plenary.nvim", -- Dependancy of Telescope
|
||||
"https://github.com/nvim-telescope/telescope.nvim",
|
||||
"https://github.com/nvim-tree/nvim-web-devicons", -- Dependancy of Nvim Tree
|
||||
"https://github.com/nvim-tree/nvim-tree.lua",
|
||||
"https://github.com/nvim-treesitter/nvim-treesitter",
|
||||
"https://github.com/neovim/nvim-lspconfig",
|
||||
"https://github.com/hrsh7th/nvim-cmp",
|
||||
"https://github.com/hrsh7th/cmp-nvim-lsp",
|
||||
"https://github.com/hrsh7th/cmp-buffer",
|
||||
"https://github.com/MeanderingProgrammer/render-markdown.nvim",
|
||||
"https://github.com/williamboman/mason.nvim",
|
||||
"https://github.com/williamboman/mason-lspconfig.nvim",
|
||||
"https://github.com/greggh/claude-code.nvim",
|
||||
})
|
||||
|
||||
-- Plugin Configs
|
||||
require('plugins');
|
||||
@@ -0,0 +1,61 @@
|
||||
require("claude-code").setup({
|
||||
-- Terminal window settings
|
||||
window = {
|
||||
split_ratio = 0.3, -- Percentage of screen for the terminal window (height for horizontal, width for vertical splits)
|
||||
position = "botright", -- Position of the window: "botright", "topleft", "vertical", "float", etc.
|
||||
enter_insert = true, -- Whether to enter insert mode when opening Claude Code
|
||||
hide_numbers = true, -- Hide line numbers in the terminal window
|
||||
hide_signcolumn = true, -- Hide the sign column in the terminal window
|
||||
|
||||
-- Floating window configuration (only applies when position = "float")
|
||||
float = {
|
||||
width = "80%", -- Width: number of columns or percentage string
|
||||
height = "80%", -- Height: number of rows or percentage string
|
||||
row = "center", -- Row position: number, "center", or percentage string
|
||||
col = "center", -- Column position: number, "center", or percentage string
|
||||
relative = "editor", -- Relative to: "editor" or "cursor"
|
||||
border = "rounded", -- Border style: "none", "single", "double", "rounded", "solid", "shadow"
|
||||
},
|
||||
},
|
||||
-- File refresh settings
|
||||
refresh = {
|
||||
enable = true, -- Enable file change detection
|
||||
updatetime = 100, -- updatetime when Claude Code is active (milliseconds)
|
||||
timer_interval = 1000, -- How often to check for file changes (milliseconds)
|
||||
show_notifications = true, -- Show notification when files are reloaded
|
||||
},
|
||||
-- Git project settings
|
||||
git = {
|
||||
use_git_root = true, -- Set CWD to git root when opening Claude Code (if in git project)
|
||||
},
|
||||
-- Shell-specific settings
|
||||
shell = {
|
||||
separator = '&&', -- Command separator used in shell commands
|
||||
pushd_cmd = 'pushd', -- Command to push directory onto stack (e.g., 'pushd' for bash/zsh, 'enter' for nushell)
|
||||
popd_cmd = 'popd', -- Command to pop directory from stack (e.g., 'popd' for bash/zsh, 'exit' for nushell)
|
||||
},
|
||||
-- Command settings
|
||||
command = "claude", -- Command used to launch Claude Code
|
||||
-- Command variants
|
||||
command_variants = {
|
||||
-- Conversation management
|
||||
continue = "--continue", -- Resume the most recent conversation
|
||||
resume = "--resume", -- Display an interactive conversation picker
|
||||
|
||||
-- Output options
|
||||
verbose = "--verbose", -- Enable verbose logging with full turn-by-turn output
|
||||
},
|
||||
-- Keymaps
|
||||
keymaps = {
|
||||
toggle = {
|
||||
normal = "<C-,>", -- Normal mode keymap for toggling Claude Code, false to disable
|
||||
terminal = "<C-,>", -- Terminal mode keymap for toggling Claude Code, false to disable
|
||||
variants = {
|
||||
continue = "<leader>cC", -- Normal mode keymap for Claude Code with continue flag
|
||||
verbose = "<leader>cV", -- Normal mode keymap for Claude Code with verbose flag
|
||||
},
|
||||
},
|
||||
window_navigation = true, -- Enable window navigation keymaps (<C-h/j/k/l>)
|
||||
scrolling = true, -- Enable scrolling keymaps (<C-f/b>) for page up/down
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,47 @@
|
||||
local cmp = require'cmp'
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
vim.snippet.expand(args.body)
|
||||
end,
|
||||
},
|
||||
window = {
|
||||
completion = cmp.config.window.bordered(),
|
||||
documentation = cmp.config.window.bordered(),
|
||||
},
|
||||
mapping = {
|
||||
['<Tab>'] = function(fallback)
|
||||
if cmp.visible() then
|
||||
if not cmp.select_next_item() then
|
||||
if vim.bo.buftype ~= 'prompt' and has_words_before() then
|
||||
cmp.complete()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end
|
||||
else
|
||||
return vim.cmd(">")
|
||||
end
|
||||
end,
|
||||
|
||||
['<S-Tab>'] = function(fallback)
|
||||
if cmp.visible() then
|
||||
if not cmp.select_prev_item() then
|
||||
if vim.bo.buftype ~= 'prompt' and has_words_before() then
|
||||
cmp.complete()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end
|
||||
else
|
||||
return vim.cmd("<")
|
||||
end
|
||||
end,
|
||||
['<CR>'] = cmp.mapping.confirm({ select = true }),
|
||||
},
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'nvim_lsp' },
|
||||
{ name = 'buffer' },
|
||||
})
|
||||
})
|
||||
@@ -0,0 +1,14 @@
|
||||
require('gruvbox').setup({
|
||||
priority = 1000,
|
||||
|
||||
config = true,
|
||||
|
||||
contrast = "hard",
|
||||
transparent_mode = true,
|
||||
overrides = {
|
||||
NonText = { fg = "#666666" },
|
||||
},
|
||||
})
|
||||
|
||||
-- Colorscheme
|
||||
vim.cmd("colorscheme gruvbox")
|
||||
@@ -0,0 +1,35 @@
|
||||
local levels = vim.diagnostic.severity
|
||||
|
||||
local opts = {
|
||||
virtual_text = false,
|
||||
float = {
|
||||
border = "rounded",
|
||||
},
|
||||
signs = {
|
||||
text = {
|
||||
[levels.ERROR] = '✘',
|
||||
[levels.WARN] = '▲',
|
||||
[levels.HINT] = '⚑',
|
||||
[levels.INFO] = '»',
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
local sign_define = function(name, text)
|
||||
local hl = 'DiagnosticSign' .. name
|
||||
vim.fn.sign_define(hl, {
|
||||
texthl = hl,
|
||||
text = text,
|
||||
numhl = ''
|
||||
})
|
||||
end
|
||||
|
||||
if vim.fn.has('nvim-0.10') == 0 then
|
||||
sign_define('Error', opts.signs.text[levels.ERROR])
|
||||
sign_define('Warn', opts.signs.text[levels.WARN])
|
||||
sign_define('Hint', opts.signs.text[levels.HINT])
|
||||
sign_define('Info', opts.signs.text[levels.INFO])
|
||||
end
|
||||
|
||||
vim.cmd [[autocmd CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false})]]
|
||||
vim.diagnostic.config(opts)
|
||||
@@ -0,0 +1,9 @@
|
||||
require('gitsigns').setup({
|
||||
current_line_blame = true,
|
||||
current_line_blame_opts = {
|
||||
virt_text = true,
|
||||
virt_text_pos = 'eol', -- 'eol' | 'overlay' | 'right_align'
|
||||
delay = 0,
|
||||
ignore_whitespace = false,
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,12 @@
|
||||
vim.cmd [[highlight IndentBlanklineColor guifg=#555555 gui=nocombine]]
|
||||
|
||||
local highlights = {
|
||||
"CursorColumn",
|
||||
"Whitespace",
|
||||
}
|
||||
|
||||
require('ibl').setup({
|
||||
indent = {
|
||||
highlight = highlight,
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,12 @@
|
||||
require('plugins.colorscheme')
|
||||
require('plugins.diagnostics')
|
||||
require('plugins.gitsigns')
|
||||
require('plugins.indent-blankline')
|
||||
require('plugins.nvim-autopairs')
|
||||
require('plugins.nvim-tree')
|
||||
require('plugins.telescope')
|
||||
require('plugins.treesitter')
|
||||
require('plugins.cmp')
|
||||
require('plugins.render-markdown')
|
||||
require('plugins.mason')
|
||||
require('plugins.claude')
|
||||
@@ -0,0 +1,16 @@
|
||||
require('mason').setup({})
|
||||
require('mason-lspconfig').setup({
|
||||
ensure_installed = {
|
||||
'lua_ls',
|
||||
'ts_ls',
|
||||
'html',
|
||||
'cssls',
|
||||
'jsonls',
|
||||
'pylsp',
|
||||
},
|
||||
handlers = {
|
||||
function(server_name)
|
||||
require('lspconfig')[server_name].setup({})
|
||||
end,
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,4 @@
|
||||
require('nvim-autopairs').setup({
|
||||
event = "InsertEnter",
|
||||
config = true
|
||||
})
|
||||
@@ -0,0 +1,33 @@
|
||||
local function custom_mapping(bufnr)
|
||||
local api = require("nvim-tree.api")
|
||||
|
||||
local function opts(desc)
|
||||
return {
|
||||
desc = "nvim-tree: " .. desc,
|
||||
buffer = bufnr,
|
||||
noremap = true,
|
||||
silent = true,
|
||||
nowait = true
|
||||
}
|
||||
end
|
||||
|
||||
-- default mappings
|
||||
api.config.mappings.default_on_attach(bufnr)
|
||||
|
||||
-- custom mappings
|
||||
vim.keymap.set('n', 's', api.node.open.vertical, opts('Open: Vertical Split'))
|
||||
vim.keymap.set('n', 'u', api.node.navigate.parent_close, opts('Close Directory'))
|
||||
end
|
||||
|
||||
require("nvim-tree").setup({
|
||||
view = {
|
||||
width = {},
|
||||
},
|
||||
on_attach = custom_mapping,
|
||||
})
|
||||
|
||||
-- Tree
|
||||
vim.keymap.set("n", [[<C-\>]], ":NvimTreeToggle<CR>")
|
||||
vim.keymap.set("n", [[<leader>\]], ":NvimTreeToggle<CR>")
|
||||
vim.keymap.set("n", "<leader>ff", ":NvimTreeFindFile<CR>")
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
require('render-markdown').setup({
|
||||
completions = {
|
||||
lsp = {
|
||||
enabled = true,
|
||||
}
|
||||
},
|
||||
heading = {
|
||||
backgrounds = { '' },
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,10 @@
|
||||
require('telescope').setup({})
|
||||
|
||||
-- Telescope
|
||||
local builtin = require("telescope.builtin")
|
||||
|
||||
vim.keymap.set("n", "<leader>gf", builtin.git_files)
|
||||
vim.keymap.set("n", "<leader>gs", builtin.git_status)
|
||||
vim.keymap.set("n", "<leader>gg", builtin.live_grep)
|
||||
vim.keymap.set("n", "<leader>b", builtin.buffers)
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
require('nvim-treesitter.configs').setup({
|
||||
branch = "main",
|
||||
ensure_installed = {
|
||||
"bash",
|
||||
"css",
|
||||
"graphql",
|
||||
"html",
|
||||
"javascript",
|
||||
"jsdoc",
|
||||
"json",
|
||||
"lua",
|
||||
"markdown",
|
||||
"markdown_inline",
|
||||
"python",
|
||||
"query",
|
||||
"regex",
|
||||
"scss",
|
||||
"svelte",
|
||||
"tmux",
|
||||
"tsx",
|
||||
"typescript",
|
||||
"vim",
|
||||
"vimdoc",
|
||||
"yaml",
|
||||
},
|
||||
sync_install = false,
|
||||
highlight = {
|
||||
enable = true,
|
||||
},
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"plugins": {
|
||||
"auto-save.nvim": {
|
||||
"rev": "979b6c82f60cfa80f4cf437d77446d0ded0addf0",
|
||||
"src": "https://github.com/Pocco81/auto-save.nvim"
|
||||
},
|
||||
"claude-code.nvim": {
|
||||
"rev": "55c0cb59828fbc3bec744288286a46f5d5750b83",
|
||||
"src": "https://github.com/greggh/claude-code.nvim"
|
||||
},
|
||||
"cmp-buffer": {
|
||||
"rev": "b74fab3656eea9de20a9b8116afa3cfc4ec09657",
|
||||
"src": "https://github.com/hrsh7th/cmp-buffer"
|
||||
},
|
||||
"cmp-nvim-lsp": {
|
||||
"rev": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3",
|
||||
"src": "https://github.com/hrsh7th/cmp-nvim-lsp"
|
||||
},
|
||||
"gitsigns.nvim": {
|
||||
"rev": "20ad4419564d6e22b189f6738116b38871082332",
|
||||
"src": "https://github.com/lewis6991/gitsigns.nvim"
|
||||
},
|
||||
"gruvbox.nvim": {
|
||||
"rev": "5e0a460d8e0f7f669c158dedd5f9ae2bcac31437",
|
||||
"src": "https://github.com/ellisonleao/gruvbox.nvim"
|
||||
},
|
||||
"indent-blankline.nvim": {
|
||||
"rev": "005b56001b2cb30bfa61b7986bc50657816ba4ba",
|
||||
"src": "https://github.com/lukas-reineke/indent-blankline.nvim"
|
||||
},
|
||||
"mason-lspconfig.nvim": {
|
||||
"rev": "2304ff65ecc8cb2afc2484de3e2ed9a407edf0b9",
|
||||
"src": "https://github.com/williamboman/mason-lspconfig.nvim"
|
||||
},
|
||||
"mason.nvim": {
|
||||
"rev": "ad7146aa61dcaeb54fa900144d768f040090bff0",
|
||||
"src": "https://github.com/williamboman/mason.nvim"
|
||||
},
|
||||
"nvim-autopairs": {
|
||||
"rev": "7a2c97cccd60abc559344042fefb1d5a85b3e33b",
|
||||
"src": "https://github.com/windwp/nvim-autopairs"
|
||||
},
|
||||
"nvim-cmp": {
|
||||
"rev": "a7bcf1d88069fc67c9ace8a62ba480b8fe879025",
|
||||
"src": "https://github.com/hrsh7th/nvim-cmp"
|
||||
},
|
||||
"nvim-lspconfig": {
|
||||
"rev": "ac98db2f9f06a56498ec890a96928774eae412c3",
|
||||
"src": "https://github.com/neovim/nvim-lspconfig"
|
||||
},
|
||||
"nvim-tree.lua": {
|
||||
"rev": "64e2192f5250796aa4a7f33c6ad888515af50640",
|
||||
"src": "https://github.com/nvim-tree/nvim-tree.lua"
|
||||
},
|
||||
"nvim-treesitter": {
|
||||
"rev": "42fc28ba918343ebfd5565147a42a26580579482",
|
||||
"src": "https://github.com/nvim-treesitter/nvim-treesitter"
|
||||
},
|
||||
"nvim-web-devicons": {
|
||||
"rev": "b8221e42cf7287c4dcde81f232f58d7b947c210d",
|
||||
"src": "https://github.com/nvim-tree/nvim-web-devicons"
|
||||
},
|
||||
"plenary.nvim": {
|
||||
"rev": "b9fd5226c2f76c951fc8ed5923d85e4de065e509",
|
||||
"src": "https://github.com/nvim-lua/plenary.nvim"
|
||||
},
|
||||
"render-markdown.nvim": {
|
||||
"rev": "475d3ad8cae486b0df6fc6050cf5b5ea1de42db8",
|
||||
"src": "https://github.com/MeanderingProgrammer/render-markdown.nvim"
|
||||
},
|
||||
"telescope.nvim": {
|
||||
"rev": "b4da76be54691e854d3e0e02c36b0245f945c2c7",
|
||||
"src": "https://github.com/nvim-telescope/telescope.nvim"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,122 @@
|
||||
#############################################################################
|
||||
# A minimal rTorrent configuration that provides the basic features
|
||||
# you want to have in addition to the built-in defaults.
|
||||
#
|
||||
# See https://github.com/rakshasa/rtorrent/wiki/CONFIG-Template
|
||||
# for an up-to-date version.
|
||||
#############################################################################
|
||||
|
||||
|
||||
## Instance layout (base paths)
|
||||
method.insert = cfg.basedir, private|const|string, (cat,"/home/kendall/Downloads/")
|
||||
method.insert = cfg.download, private|const|string, (cat,(cfg.basedir))
|
||||
method.insert = cfg.logs, private|const|string, (cat,(cfg.basedir),".rtorrent/log/")
|
||||
method.insert = cfg.logfile, private|const|string, (cat,(cfg.logs),"rtorrent-",(system.time),".log")
|
||||
method.insert = cfg.session, private|const|string, (cat,(cfg.basedir),".rtorrent/session/")
|
||||
method.insert = cfg.watch, private|const|string, (cat,(cfg.basedir))
|
||||
|
||||
|
||||
## Create instance directories
|
||||
execute.throw = sh, -c, (cat,\
|
||||
"mkdir -p \"",(cfg.download),"\" ",\
|
||||
"\"",(cfg.logs),"\" ",\
|
||||
"\"",(cfg.session),"\" ",\
|
||||
"\"",(cfg.watch),".rtorrent/load\" ",\
|
||||
"\"",(cfg.watch),".rtorrent/start\" ")
|
||||
|
||||
|
||||
## Listening port for incoming peer traffic (fixed; you can also randomize it)
|
||||
network.port_range.set = 50000-50000
|
||||
network.port_random.set = no
|
||||
|
||||
|
||||
## Tracker-less torrent and UDP tracker support
|
||||
## (conservative settings for 'private' trackers, change for 'public')
|
||||
dht.mode.set = disable
|
||||
protocol.pex.set = no
|
||||
|
||||
trackers.use_udp.set = yes
|
||||
|
||||
|
||||
## Peer settings
|
||||
throttle.max_uploads.set = 100
|
||||
throttle.max_uploads.global.set = 250
|
||||
|
||||
throttle.min_peers.normal.set = 20
|
||||
throttle.max_peers.normal.set = 60
|
||||
throttle.min_peers.seed.set = 30
|
||||
throttle.max_peers.seed.set = 80
|
||||
trackers.numwant.set = 80
|
||||
|
||||
protocol.encryption.set = allow_incoming,try_outgoing,enable_retry
|
||||
|
||||
|
||||
## Limits for file handle resources, this is optimized for
|
||||
## an `ulimit` of 1024 (a common default). You MUST leave
|
||||
## a ceiling of handles reserved for rTorrent's internal needs!
|
||||
network.http.max_open.set = 50
|
||||
network.max_open_files.set = 600
|
||||
network.max_open_sockets.set = 300
|
||||
|
||||
|
||||
## Memory resource usage (increase if you have a large number of items loaded,
|
||||
## and/or the available resources to spend)
|
||||
pieces.memory.max.set = 1800M
|
||||
network.xmlrpc.size_limit.set = 4M
|
||||
|
||||
|
||||
## Basic operational settings (no need to change these)
|
||||
session.path.set = (cat, (cfg.session))
|
||||
directory.default.set = (cat, (cfg.download))
|
||||
log.execute = (cat, (cfg.logs), "execute.log")
|
||||
#log.xmlrpc = (cat, (cfg.logs), "xmlrpc.log")
|
||||
execute.nothrow = sh, -c, (cat, "echo >",\
|
||||
(session.path), "rtorrent.pid", " ",(system.pid))
|
||||
|
||||
|
||||
## Other operational settings (check & adapt)
|
||||
encoding.add = utf8
|
||||
system.umask.set = 0027
|
||||
system.cwd.set = (directory.default)
|
||||
network.http.dns_cache_timeout.set = 25
|
||||
schedule2 = monitor_diskspace, 15, 60, ((close_low_diskspace, 1000M))
|
||||
#pieces.hash.on_completion.set = no
|
||||
#view.sort_current = seeding, greater=d.ratio=
|
||||
#keys.layout.set = qwerty
|
||||
#network.http.capath.set = "/etc/ssl/certs"
|
||||
#network.http.ssl_verify_peer.set = 0
|
||||
#network.http.ssl_verify_host.set = 0
|
||||
|
||||
|
||||
## Some additional values and commands
|
||||
method.insert = system.startup_time, value|const, (system.time)
|
||||
method.insert = d.data_path, simple,\
|
||||
"if=(d.is_multi_file),\
|
||||
(cat, (d.directory), /),\
|
||||
(cat, (d.directory), /, (d.name))"
|
||||
method.insert = d.session_file, simple, "cat=(session.path), (d.hash), .torrent"
|
||||
|
||||
|
||||
## Watch directories (add more as you like, but use unique schedule names)
|
||||
## Add torrent
|
||||
schedule2 = watch_load, 11, 10, ((load.verbose, (cat, (cfg.watch), "*.torrent")))
|
||||
## Add & download straight away
|
||||
schedule2 = watch_start, 10, 10, ((load.start_verbose, (cat, (cfg.watch), "*.torrent")))
|
||||
|
||||
|
||||
## Run the rTorrent process as a daemon in the background
|
||||
## (and control via XMLRPC sockets)
|
||||
#system.daemon.set = true
|
||||
#network.scgi.open_local = (cat,(session.path),rpc.socket)
|
||||
#execute.nothrow = chmod,770,(cat,(session.path),rpc.socket)
|
||||
|
||||
|
||||
## Logging:
|
||||
## Levels = critical error warn notice info debug
|
||||
## Groups = connection_* dht_* peer_* rpc_* storage_* thread_* tracker_* torrent_*
|
||||
print = (cat, "Logging to ", (cfg.logfile))
|
||||
log.open_file = "log", (cfg.logfile)
|
||||
log.add_output = "info", "log"
|
||||
#log.add_output = "tracker_debug", "log"
|
||||
|
||||
### END of rtorrent.rc ###
|
||||
@@ -0,0 +1,48 @@
|
||||
BG=default
|
||||
COLOR1=#16A085
|
||||
COLOR2=#fabd2f
|
||||
|
||||
# Global Settings
|
||||
set -g default-terminal "screen-256color"
|
||||
set -ga terminal-overrides ",*256col*:Tc"
|
||||
|
||||
# Bar Position
|
||||
set -g status-position bottom
|
||||
|
||||
# Bar Background Color
|
||||
set -g status-style 'bg=#{BG}'
|
||||
|
||||
# Command Bar Color
|
||||
set -g message-style 'fg=#{COLOR2}'
|
||||
|
||||
# Session Selector Background Color
|
||||
set -g mode-style 'bg=#{COLOR1}'
|
||||
|
||||
# Border
|
||||
set -g pane-border-style '#{fg=#{COLOR1}}'
|
||||
set -g pane-active-border-style '#{fg=#{COLOR2}}'
|
||||
|
||||
# Extra Space On Top
|
||||
# set -g status 2
|
||||
# set -Fg status-format[1] '#{status-format[0]}'
|
||||
# set -g status-format[0] ''
|
||||
|
||||
# Left
|
||||
set -g status-left '#[fg=#{COLOR1} bold] '
|
||||
|
||||
# Window Status
|
||||
set -g window-status-current-format '#[fg=#{COLOR2} bold]#I #W '
|
||||
set -g window-status-format '#[fg=#{COLOR1} bold]#I #W '
|
||||
|
||||
# Right
|
||||
set -g status-right-length 200
|
||||
set -g status-right '#[fg=#{COLOR1} bold] %l:%M%p %m/%d/%Y '
|
||||
|
||||
# Movement Keybindings
|
||||
bind-key -r -T prefix C-k select-pane -U
|
||||
bind-key -r -T prefix C-j select-pane -D
|
||||
bind-key -r -T prefix C-h select-pane -L
|
||||
bind-key -r -T prefix C-l select-pane -R
|
||||
|
||||
# Sync Pane Keybinding
|
||||
bind-key -r -T prefix S setw synchronize-panes
|
||||
Reference in New Issue
Block a user