mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-02-02 02:47:47 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c3d4b51927 | ||
| 6d8c04977c | |||
| 64fc8a13d3 |
2
.github/workflows/changelog.yml
vendored
2
.github/workflows/changelog.yml
vendored
@@ -5,7 +5,7 @@ jobs:
|
|||||||
debug-changelog:
|
debug-changelog:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
- name: Create changelog text
|
- name: Create changelog text
|
||||||
id: changelog
|
id: changelog
|
||||||
uses: loopwerk/tag-changelog@v1
|
uses: loopwerk/tag-changelog@v1
|
||||||
|
|||||||
2
.github/workflows/linters.yml
vendored
2
.github/workflows/linters.yml
vendored
@@ -5,7 +5,7 @@ jobs:
|
|||||||
name: Linters
|
name: Linters
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
- name: GitHub Actions
|
- name: GitHub Actions
|
||||||
uses: reviewdog/action-actionlint@v1
|
uses: reviewdog/action-actionlint@v1
|
||||||
with:
|
with:
|
||||||
|
|||||||
2
.github/workflows/new-release.yml
vendored
2
.github/workflows/new-release.yml
vendored
@@ -12,7 +12,7 @@ jobs:
|
|||||||
created: ${{ steps.daily-version.outputs.created }}
|
created: ${{ steps.daily-version.outputs.created }}
|
||||||
version: ${{ steps.daily-version.outputs.version }}
|
version: ${{ steps.daily-version.outputs.version }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3 # Checkout our working repository
|
- uses: actions/checkout@v4 # Checkout our working repository
|
||||||
- name: Create tag if necessary
|
- name: Create tag if necessary
|
||||||
uses: fregante/daily-version-action@v2
|
uses: fregante/daily-version-action@v2
|
||||||
id: daily-version
|
id: daily-version
|
||||||
|
|||||||
2
.github/workflows/update-submodules.yml
vendored
2
.github/workflows/update-submodules.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
submodules: true
|
submodules: true
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|||||||
310
config/alacritty/alacritty.yml
Normal file
310
config/alacritty/alacritty.yml
Normal file
@@ -0,0 +1,310 @@
|
|||||||
|
# Configuration for Alacritty, the GPU enhanced terminal emulator
|
||||||
|
|
||||||
|
# Any items in the `env` entry below will be added as
|
||||||
|
# environment variables. Some entries may override variables
|
||||||
|
# set by alacritty it self.
|
||||||
|
env:
|
||||||
|
# TERM env customization.
|
||||||
|
#
|
||||||
|
# If this property is not set, alacritty will set it to xterm-256color.
|
||||||
|
#
|
||||||
|
# Note that some xterm terminfo databases don't declare support for italics.
|
||||||
|
# You can verify this by checking for the presence of `smso` and `sitm` in
|
||||||
|
# `infocmp xterm-256color`.
|
||||||
|
TERM: xterm-256color
|
||||||
|
|
||||||
|
# Window dimensions in character columns and lines
|
||||||
|
# (changes require restart)
|
||||||
|
window:
|
||||||
|
dimensions:
|
||||||
|
columns: 130
|
||||||
|
lines: 40
|
||||||
|
|
||||||
|
# Adds this many blank pixels of padding around the window
|
||||||
|
# Units are physical pixels; this is not DPI aware.
|
||||||
|
# (change requires restart)
|
||||||
|
padding:
|
||||||
|
x: 5
|
||||||
|
y: 5
|
||||||
|
|
||||||
|
decorations: buttonless
|
||||||
|
|
||||||
|
opacity: 0.85
|
||||||
|
|
||||||
|
# When true, bold text is drawn using the bright variant of colors.
|
||||||
|
draw_bold_text_with_bright_colors: true
|
||||||
|
|
||||||
|
# Font configuration (changes require restart)
|
||||||
|
font:
|
||||||
|
# The normal (roman) font face to use.
|
||||||
|
normal:
|
||||||
|
family: JetBrainsMono Nerd Font
|
||||||
|
# Style can be specified to pick a specific face.
|
||||||
|
# style: Regular
|
||||||
|
|
||||||
|
# The bold font face
|
||||||
|
bold:
|
||||||
|
family: JetBrainsMono Nerd Font
|
||||||
|
# Style can be specified to pick a specific face.
|
||||||
|
style: Bold
|
||||||
|
|
||||||
|
# The italic font face
|
||||||
|
italic:
|
||||||
|
family: JetBrainsMono Nerd Font
|
||||||
|
# Style can be specified to pick a specific face.
|
||||||
|
style: Italic
|
||||||
|
|
||||||
|
# Point size of the font
|
||||||
|
size: 14.0
|
||||||
|
|
||||||
|
# Offset is the extra space around each character. offset.y can be thought of
|
||||||
|
# as modifying the linespacing, and offset.x as modifying the letter spacing.
|
||||||
|
offset:
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
|
||||||
|
# Glyph offset determines the locations of the glyphs within their cells with
|
||||||
|
# the default being at the bottom. Increase the x offset to move the glyph to
|
||||||
|
# the right, increase the y offset to move the glyph upward.
|
||||||
|
glyph_offset:
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
|
||||||
|
# Should display the render timer
|
||||||
|
debug.render_timer: false
|
||||||
|
|
||||||
|
# https://github.com/catppuccin/alacritty
|
||||||
|
colors:
|
||||||
|
primary:
|
||||||
|
background: "#1E1E2E" # base
|
||||||
|
foreground: "#CDD6F4" # text
|
||||||
|
# Bright and dim foreground colors
|
||||||
|
dim_foreground: "#CDD6F4" # text
|
||||||
|
bright_foreground: "#CDD6F4" # text
|
||||||
|
|
||||||
|
# Cursor colors
|
||||||
|
cursor:
|
||||||
|
text: "#1E1E2E" # base
|
||||||
|
cursor: "#F5E0DC" # rosewater
|
||||||
|
vi_mode_cursor:
|
||||||
|
text: "#1E1E2E" # base
|
||||||
|
cursor: "#B4BEFE" # lavender
|
||||||
|
|
||||||
|
# Search colors
|
||||||
|
search:
|
||||||
|
matches:
|
||||||
|
foreground: "#1E1E2E" # base
|
||||||
|
background: "#A6ADC8" # subtext0
|
||||||
|
focused_match:
|
||||||
|
foreground: "#1E1E2E" # base
|
||||||
|
background: "#A6E3A1" # green
|
||||||
|
footer_bar:
|
||||||
|
foreground: "#1E1E2E" # base
|
||||||
|
background: "#A6ADC8" # subtext0
|
||||||
|
|
||||||
|
# Keyboard regex hints
|
||||||
|
hints:
|
||||||
|
start:
|
||||||
|
foreground: "#1E1E2E" # base
|
||||||
|
background: "#F9E2AF" # yellow
|
||||||
|
end:
|
||||||
|
foreground: "#1E1E2E" # base
|
||||||
|
background: "#A6ADC8" # subtext0
|
||||||
|
|
||||||
|
# Selection colors
|
||||||
|
selection:
|
||||||
|
text: "#1E1E2E" # base
|
||||||
|
background: "#F5E0DC" # rosewater
|
||||||
|
|
||||||
|
# Normal colors
|
||||||
|
normal:
|
||||||
|
black: "#45475A" # surface1
|
||||||
|
red: "#F38BA8" # red
|
||||||
|
green: "#A6E3A1" # green
|
||||||
|
yellow: "#F9E2AF" # yellow
|
||||||
|
blue: "#89B4FA" # blue
|
||||||
|
magenta: "#F5C2E7" # pink
|
||||||
|
cyan: "#94E2D5" # teal
|
||||||
|
white: "#BAC2DE" # subtext1
|
||||||
|
|
||||||
|
# Bright colors
|
||||||
|
bright:
|
||||||
|
black: "#585B70" # surface2
|
||||||
|
red: "#F38BA8" # red
|
||||||
|
green: "#A6E3A1" # green
|
||||||
|
yellow: "#F9E2AF" # yellow
|
||||||
|
blue: "#89B4FA" # blue
|
||||||
|
magenta: "#F5C2E7" # pink
|
||||||
|
cyan: "#94E2D5" # teal
|
||||||
|
white: "#A6ADC8" # subtext0
|
||||||
|
|
||||||
|
# Dim colors
|
||||||
|
dim:
|
||||||
|
black: "#45475A" # surface1
|
||||||
|
red: "#F38BA8" # red
|
||||||
|
green: "#A6E3A1" # green
|
||||||
|
yellow: "#F9E2AF" # yellow
|
||||||
|
blue: "#89B4FA" # blue
|
||||||
|
magenta: "#F5C2E7" # pink
|
||||||
|
cyan: "#94E2D5" # teal
|
||||||
|
white: "#BAC2DE" # subtext1
|
||||||
|
|
||||||
|
indexed_colors:
|
||||||
|
- { index: 16, color: "#FAB387" }
|
||||||
|
- { index: 17, color: "#F5E0DC" }
|
||||||
|
|
||||||
|
# Visual Bell
|
||||||
|
#
|
||||||
|
# Any time the BEL code is received, Alacritty "rings" the visual bell. Once
|
||||||
|
# rung, the terminal background will be set to white and transition back to the
|
||||||
|
# default background color. You can control the rate of this transition by
|
||||||
|
# setting the `duration` property (represented in milliseconds). You can also
|
||||||
|
# configure the transition function by setting the `animation` property.
|
||||||
|
#
|
||||||
|
# Possible values for `animation`
|
||||||
|
# `Ease`
|
||||||
|
# `EaseOut`
|
||||||
|
# `EaseOutSine`
|
||||||
|
# `EaseOutQuad`
|
||||||
|
# `EaseOutCubic`
|
||||||
|
# `EaseOutQuart`
|
||||||
|
# `EaseOutQuint`
|
||||||
|
# `EaseOutExpo`
|
||||||
|
# `EaseOutCirc`
|
||||||
|
# `Linear`
|
||||||
|
#
|
||||||
|
# To completely disable the visual bell, set its duration to 0.
|
||||||
|
#
|
||||||
|
# visual_bell:
|
||||||
|
# animation: EaseOutExpo
|
||||||
|
# duration: 0
|
||||||
|
|
||||||
|
# Key bindings
|
||||||
|
#
|
||||||
|
# Each binding is defined as an object with some properties. Most of the
|
||||||
|
# properties are optional. All of the alphabetical keys should have a letter for
|
||||||
|
# the `key` value such as `V`. Function keys are probably what you would expect
|
||||||
|
# as well (F1, F2, ..). The number keys above the main keyboard are encoded as
|
||||||
|
# `Key1`, `Key2`, etc. Keys on the number pad are encoded `Number1`, `Number2`,
|
||||||
|
# etc. These all match the glutin::VirtualKeyCode variants.
|
||||||
|
#
|
||||||
|
# Possible values for `mods`
|
||||||
|
# `Command`, `Super` refer to the super/command/windows key
|
||||||
|
# `Control` for the control key
|
||||||
|
# `Shift` for the Shift key
|
||||||
|
# `Alt` and `Option` refer to alt/option
|
||||||
|
#
|
||||||
|
# mods may be combined with a `|`. For example, requiring control and shift
|
||||||
|
# looks like:
|
||||||
|
#
|
||||||
|
# mods: Control|Shift
|
||||||
|
#
|
||||||
|
# The parser is currently quite sensitive to whitespace and capitalization -
|
||||||
|
# capitalization must match exactly, and piped items must not have whitespace
|
||||||
|
# around them.
|
||||||
|
#
|
||||||
|
# Either an `action`, `chars`, or `command` field must be present.
|
||||||
|
# `action` must be one of `Paste`, `PasteSelection`, `Copy`, or `Quit`.
|
||||||
|
# `chars` writes the specified string every time that binding is activated.
|
||||||
|
# These should generally be escape sequences, but they can be configured to
|
||||||
|
# send arbitrary strings of bytes.
|
||||||
|
# `command` must be a map containing a `program` string, and `args` array of
|
||||||
|
# strings. For example:
|
||||||
|
# - { ... , command: { program: "alacritty", args: ["-e", "vttest"] } }
|
||||||
|
key_bindings:
|
||||||
|
- { key: V, mods: Command, action: Paste }
|
||||||
|
- { key: C, mods: Command, action: Copy }
|
||||||
|
- { key: Q, mods: Command, action: Quit }
|
||||||
|
- { key: W, mods: Command, action: Quit }
|
||||||
|
- { key: N, mods: Command, action: SpawnNewInstance }
|
||||||
|
- { key: Home, chars: "\eOH", mode: AppCursor }
|
||||||
|
- { key: Home, chars: "\e[1~", mode: ~AppCursor }
|
||||||
|
- { key: End, chars: "\eOF", mode: AppCursor }
|
||||||
|
- { key: End, chars: "\e[4~", mode: ~AppCursor }
|
||||||
|
- { key: PageUp, mods: Shift, chars: "\e[5;2~" }
|
||||||
|
- { key: PageUp, mods: Control, chars: "\e[5;5~" }
|
||||||
|
- { key: PageUp, chars: "\e[5~" }
|
||||||
|
- { key: PageDown, mods: Shift, chars: "\e[6;2~" }
|
||||||
|
- { key: PageDown, mods: Control, chars: "\e[6;5~" }
|
||||||
|
- { key: PageDown, chars: "\e[6~" }
|
||||||
|
- { key: Left, mods: Shift, chars: "\e[1;2D" }
|
||||||
|
- { key: Left, mods: Control, chars: "\e[1;5D" }
|
||||||
|
- { key: Left, mods: Alt, chars: "\e[1;3D" }
|
||||||
|
- { key: Left, chars: "\e[D", mode: ~AppCursor }
|
||||||
|
- { key: Left, chars: "\eOD", mode: AppCursor }
|
||||||
|
- { key: Right, mods: Shift, chars: "\e[1;2C" }
|
||||||
|
- { key: Right, mods: Control, chars: "\e[1;5C" }
|
||||||
|
- { key: Right, mods: Alt, chars: "\e[1;3C" }
|
||||||
|
- { key: Right, chars: "\e[C", mode: ~AppCursor }
|
||||||
|
- { key: Right, chars: "\eOC", mode: AppCursor }
|
||||||
|
- { key: Up, mods: Shift, chars: "\e[1;2A" }
|
||||||
|
- { key: Up, mods: Control, chars: "\e[1;5A" }
|
||||||
|
- { key: Up, mods: Alt, chars: "\e[1;3A" }
|
||||||
|
- { key: Up, chars: "\e[A", mode: ~AppCursor }
|
||||||
|
- { key: Up, chars: "\eOA", mode: AppCursor }
|
||||||
|
- { key: Down, mods: Shift, chars: "\e[1;2B" }
|
||||||
|
- { key: Down, mods: Control, chars: "\e[1;5B" }
|
||||||
|
- { key: Down, mods: Alt, chars: "\e[1;3B" }
|
||||||
|
- { key: Down, chars: "\e[B", mode: ~AppCursor }
|
||||||
|
- { key: Down, chars: "\eOB", mode: AppCursor }
|
||||||
|
- { key: Tab, mods: Shift, chars: "\e[Z" }
|
||||||
|
- { key: F1, chars: "\eOP" }
|
||||||
|
- { key: F2, chars: "\eOQ" }
|
||||||
|
- { key: F3, chars: "\eOR" }
|
||||||
|
- { key: F4, chars: "\eOS" }
|
||||||
|
- { key: F5, chars: "\e[15~" }
|
||||||
|
- { key: F6, chars: "\e[17~" }
|
||||||
|
- { key: F7, chars: "\e[18~" }
|
||||||
|
- { key: F8, chars: "\e[19~" }
|
||||||
|
- { key: F9, chars: "\e[20~" }
|
||||||
|
- { key: F10, chars: "\e[21~" }
|
||||||
|
- { key: F11, chars: "\e[23~" }
|
||||||
|
- { key: F12, chars: "\e[24~" }
|
||||||
|
- { key: Back, chars: "" }
|
||||||
|
- { key: Back, mods: Alt, chars: "\e" }
|
||||||
|
- { key: Insert, chars: "\e[2~" }
|
||||||
|
- { key: Delete, chars: "\e[3~" }
|
||||||
|
|
||||||
|
# shortcuts for tmux. the leader key is control-b (0x02)
|
||||||
|
- { key: W, mods: Command, chars: "\x02&" } # close tab (kill)
|
||||||
|
- { key: T, mods: Command, chars: "\x02c" } # new tab
|
||||||
|
- { key: RBracket, mods: Command|Shift, chars: "\x02n" } # select next tab
|
||||||
|
- { key: LBracket, mods: Command|Shift, chars: "\x02p" } # select previous tab
|
||||||
|
- { key: RBracket, mods: Command, chars: "\x02o" } # select next pane
|
||||||
|
- { key: LBracket, mods: Command, chars: "\x02;" } # select last (previously used) pane
|
||||||
|
- { key: F, mods: Command, chars: "\x02/" } # search (upwards) (see tmux.conf)
|
||||||
|
|
||||||
|
# Mouse bindings
|
||||||
|
#
|
||||||
|
# Currently doesn't support modifiers. Both the `mouse` and `action` fields must
|
||||||
|
# be specified.
|
||||||
|
#
|
||||||
|
# Values for `mouse`:
|
||||||
|
# - Middle
|
||||||
|
# - Left
|
||||||
|
# - Right
|
||||||
|
# - Numeric identifier such as `5`
|
||||||
|
#
|
||||||
|
# Values for `action`:
|
||||||
|
# - Paste
|
||||||
|
# - PasteSelection
|
||||||
|
# - Copy (TODO)
|
||||||
|
mouse_bindings:
|
||||||
|
- { mouse: Middle, action: PasteSelection }
|
||||||
|
|
||||||
|
mouse:
|
||||||
|
double_click: { threshold: 300 }
|
||||||
|
triple_click: { threshold: 300 }
|
||||||
|
|
||||||
|
selection:
|
||||||
|
semantic_escape_chars: ',│`|:"'' ()[]{}<>'
|
||||||
|
|
||||||
|
# Shell
|
||||||
|
#
|
||||||
|
# You can set shell.program to the path of your favorite shell, e.g. /bin/fish.
|
||||||
|
# Entries in shell.args are passed unmodified as arguments to the shell.
|
||||||
|
#
|
||||||
|
#shell:
|
||||||
|
# program: /bin/bash
|
||||||
|
# args:
|
||||||
|
# - --login
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
"LuaSnip": { "branch": "master", "commit": "ea7d7ea510c641c4f15042becd27f35b3e5b3c2b" },
|
"LuaSnip": { "branch": "master", "commit": "ea7d7ea510c641c4f15042becd27f35b3e5b3c2b" },
|
||||||
"barbecue.nvim": { "branch": "main", "commit": "cd7e7da622d68136e13721865b4d919efd6325ed" },
|
"barbecue.nvim": { "branch": "main", "commit": "cd7e7da622d68136e13721865b4d919efd6325ed" },
|
||||||
"bufdelete.nvim": { "branch": "master", "commit": "07d1f8ba79dec59d42b975a4df1c732b2e4e37b4" },
|
"bufdelete.nvim": { "branch": "master", "commit": "07d1f8ba79dec59d42b975a4df1c732b2e4e37b4" },
|
||||||
"catppuccin": { "branch": "main", "commit": "2e3e5ebcdc24ef0d5b14a0a999dbbe7936512c46" },
|
"catppuccin": { "branch": "main", "commit": "17862877792db104d48c3260aec0ace92d55f863" },
|
||||||
"close-buffers.nvim": { "branch": "master", "commit": "3acbcad1211572342632a6c0151f839e7dead27f" },
|
"close-buffers.nvim": { "branch": "master", "commit": "3acbcad1211572342632a6c0151f839e7dead27f" },
|
||||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||||
"cmp-calc": { "branch": "main", "commit": "ce91d14d2e7a8b3f6ad86d85e34d41c1ae6268d9" },
|
"cmp-calc": { "branch": "main", "commit": "ce91d14d2e7a8b3f6ad86d85e34d41c1ae6268d9" },
|
||||||
@@ -10,13 +10,12 @@
|
|||||||
"cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" },
|
"cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" },
|
||||||
"cmp-look": { "branch": "master", "commit": "b39c50bcdf6199dddda56adc466c2bd9c951a960" },
|
"cmp-look": { "branch": "master", "commit": "b39c50bcdf6199dddda56adc466c2bd9c951a960" },
|
||||||
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
|
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
|
||||||
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "3d8912ebeb56e5ae08ef0906e3a54de1c66b92f1" },
|
|
||||||
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
|
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
|
||||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||||
"cmp-vsnip": { "branch": "main", "commit": "989a8a73c44e926199bfd05fa7a516d51f2d2752" },
|
"cmp-vsnip": { "branch": "main", "commit": "989a8a73c44e926199bfd05fa7a516d51f2d2752" },
|
||||||
"cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" },
|
"cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" },
|
||||||
"comment-box.nvim": { "branch": "main", "commit": "dd1a48f8d06102e9b87ae1e0069bc365c006979b" },
|
"comment-box.nvim": { "branch": "main", "commit": "dd1a48f8d06102e9b87ae1e0069bc365c006979b" },
|
||||||
"dressing.nvim": { "branch": "master", "commit": "c7b035de7f91bb6b62b4308f105c56d1a968b8c5" },
|
"dressing.nvim": { "branch": "master", "commit": "b1c7b70e1e0875243ed38f51fe7a61d08e11607e" },
|
||||||
"fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" },
|
"fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" },
|
||||||
"friendly-snippets": { "branch": "main", "commit": "00e191fea2cfbbdd378243f35b5953296537a116" },
|
"friendly-snippets": { "branch": "main", "commit": "00e191fea2cfbbdd378243f35b5953296537a116" },
|
||||||
"gitsigns.nvim": { "branch": "main", "commit": "d927caa075df63bf301d92f874efb72fd22fd3b4" },
|
"gitsigns.nvim": { "branch": "main", "commit": "d927caa075df63bf301d92f874efb72fd22fd3b4" },
|
||||||
@@ -40,7 +39,6 @@
|
|||||||
"nvim-navic": { "branch": "master", "commit": "9c89730da6a05acfeb6a197e212dfadf5aa60ca0" },
|
"nvim-navic": { "branch": "master", "commit": "9c89730da6a05acfeb6a197e212dfadf5aa60ca0" },
|
||||||
"nvim-notify": { "branch": "master", "commit": "ea9c8ce7a37f2238f934e087c255758659948e0f" },
|
"nvim-notify": { "branch": "master", "commit": "ea9c8ce7a37f2238f934e087c255758659948e0f" },
|
||||||
"nvim-regexplainer": { "branch": "main", "commit": "4250c8f3c1307876384e70eeedde5149249e154f" },
|
"nvim-regexplainer": { "branch": "main", "commit": "4250c8f3c1307876384e70eeedde5149249e154f" },
|
||||||
"nvim-surround": { "branch": "main", "commit": "0d6882635817a2677749a330127d12ac30a4f3c8" },
|
|
||||||
"nvim-treesitter": { "branch": "master", "commit": "17b943e7c5cc2b2db3ac7b5720fbd42e75a00d8d" },
|
"nvim-treesitter": { "branch": "master", "commit": "17b943e7c5cc2b2db3ac7b5720fbd42e75a00d8d" },
|
||||||
"nvim-treesitter-context": { "branch": "master", "commit": "31692b26d76ff1f7c6e0ab51814dd55e7417e96c" },
|
"nvim-treesitter-context": { "branch": "master", "commit": "31692b26d76ff1f7c6e0ab51814dd55e7417e96c" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "cfc8824cc1db316a276b36517f093baccb8e799a" },
|
"nvim-web-devicons": { "branch": "master", "commit": "cfc8824cc1db316a276b36517f093baccb8e799a" },
|
||||||
@@ -50,7 +48,7 @@
|
|||||||
"refactoring.nvim": { "branch": "master", "commit": "2ec9bc0fb5f3c8c6a0f776f0159dd2a3b1663554" },
|
"refactoring.nvim": { "branch": "master", "commit": "2ec9bc0fb5f3c8c6a0f776f0159dd2a3b1663554" },
|
||||||
"restoreview": { "branch": "main", "commit": "03d00d59a9ba640db6b44192ed0fcc9d7261dcd2" },
|
"restoreview": { "branch": "main", "commit": "03d00d59a9ba640db6b44192ed0fcc9d7261dcd2" },
|
||||||
"schemastore.nvim": { "branch": "main", "commit": "a6759df4dcfc052246ee7a6cccfdb37d2180d617" },
|
"schemastore.nvim": { "branch": "main", "commit": "a6759df4dcfc052246ee7a6cccfdb37d2180d617" },
|
||||||
"smartcolumn.nvim": { "branch": "main", "commit": "4aa00ad766f3c0f0e2561e0eb42df3ea3743c135" },
|
"smartcolumn.nvim": { "branch": "main", "commit": "d01b99355c7fab13233f48d0f28dc097e68a03f7" },
|
||||||
"stickybuf.nvim": { "branch": "master", "commit": "4c667bc837e5e3fec5a8857ee99f1a229fc76df9" },
|
"stickybuf.nvim": { "branch": "master", "commit": "4c667bc837e5e3fec5a8857ee99f1a229fc76df9" },
|
||||||
"symbols-outline.nvim": { "branch": "master", "commit": "512791925d57a61c545bc303356e8a8f7869763c" },
|
"symbols-outline.nvim": { "branch": "master", "commit": "512791925d57a61c545bc303356e8a8f7869763c" },
|
||||||
"tabnine": { "branch": "master", "commit": "dcca6d2f9e8bbcde36aab87b9b87890810e4056d" },
|
"tabnine": { "branch": "master", "commit": "dcca6d2f9e8bbcde36aab87b9b87890810e4056d" },
|
||||||
|
|||||||
@@ -5,9 +5,7 @@
|
|||||||
and WhichKey register. Slowly migrating to the WhichKey system,
|
and WhichKey register. Slowly migrating to the WhichKey system,
|
||||||
and tweaking the groupings as I go.
|
and tweaking the groupings as I go.
|
||||||
--]]
|
--]]
|
||||||
|
-- luacheck: globals vim CAPABILITIES
|
||||||
local key = vim.api.nvim_set_keymap
|
|
||||||
local remap = { noremap = true, silent = true }
|
|
||||||
|
|
||||||
local wk = require("which-key")
|
local wk = require("which-key")
|
||||||
|
|
||||||
@@ -18,13 +16,17 @@ local wk = require("which-key")
|
|||||||
-- Register in all modes, prefix <leader>
|
-- Register in all modes, prefix <leader>
|
||||||
wk.register({
|
wk.register({
|
||||||
b = {
|
b = {
|
||||||
name = "Buffer",
|
name = "[b]uffer",
|
||||||
n = {
|
n = {
|
||||||
"<cmd>tabnew<cr>",
|
"<cmd>tabnew<cr>",
|
||||||
"New tab",
|
"[n]ew tab",
|
||||||
|
},
|
||||||
|
a = {
|
||||||
|
name = "[a]nnotate"
|
||||||
|
-- defined in plugins/neogen.lua
|
||||||
},
|
},
|
||||||
c = {
|
c = {
|
||||||
name = "Comments",
|
name = "[c]omments",
|
||||||
b = {
|
b = {
|
||||||
"<cmd>lua require('comment-box').lbox()<cr>",
|
"<cmd>lua require('comment-box').lbox()<cr>",
|
||||||
"Left aligned fixed size box with left aligned text",
|
"Left aligned fixed size box with left aligned text",
|
||||||
@@ -39,7 +41,7 @@ wk.register({
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
d = {
|
d = {
|
||||||
name = "Delete buffers",
|
name = "[d]elete buffers",
|
||||||
h = {
|
h = {
|
||||||
"<CMD>lua require('close_buffers').delete({type = 'hidden'})<CR>",
|
"<CMD>lua require('close_buffers').delete({type = 'hidden'})<CR>",
|
||||||
"Delete hidden buffers",
|
"Delete hidden buffers",
|
||||||
@@ -165,37 +167,15 @@ wk.register({
|
|||||||
["<C-End>"] = { "<End>", "Do just End on CTRL + End" },
|
["<C-End>"] = { "<End>", "Do just End on CTRL + End" },
|
||||||
}, { prefix = "" })
|
}, { prefix = "" })
|
||||||
|
|
||||||
|
local key = vim.api.nvim_set_keymap
|
||||||
|
local remap = { noremap = true, silent = true }
|
||||||
|
|
||||||
-- Go to the next block.
|
-- Go to the next block.
|
||||||
--key('n', '<C-Down>', 'g%', remap )
|
--key('n', '<C-Down>', 'g%', remap )
|
||||||
|
|
||||||
-- Loop through brackets blocks.
|
-- Loop through brackets blocks.
|
||||||
--key('n', '<C-Up>', 'z%', remap )
|
--key('n', '<C-Up>', 'z%', remap )
|
||||||
|
|
||||||
-- Highlight the word after pressing enter.
|
|
||||||
key(
|
|
||||||
"n",
|
|
||||||
"<CR>",
|
|
||||||
[[:let searchTerm = '\v<'.expand("<cword>").'>' <bar> let @/ = searchTerm <bar> echo '/'.@/ <bar> call histadd("search", searchTerm) <bar> set hls<cr>]],
|
|
||||||
remap
|
|
||||||
)
|
|
||||||
|
|
||||||
-- Highlight the visual selection after pressing enter.
|
|
||||||
key(
|
|
||||||
"v",
|
|
||||||
"<CR>",
|
|
||||||
[["*y:silent! let searchTerm = '\V'.substitute(escape(@*, '\/'), "\n", '\\n', "g") <bar> let @/ = searchTerm <bar> echo '/'.@/ <bar> call histadd("search", searchTerm) <bar> set hls<cr>]],
|
|
||||||
remap
|
|
||||||
)
|
|
||||||
|
|
||||||
-- Toggle highlight of search
|
|
||||||
key("n", "<C-c>", ":set hlsearch!<CR>", remap)
|
|
||||||
|
|
||||||
-- Try to correct the current word.
|
|
||||||
key("i", "<C-b>", "ea<C-x><C-s>", remap)
|
|
||||||
|
|
||||||
-- Toggle built-in nvim spell checking.
|
|
||||||
key("n", "<F5>", ":setlocal spell!<CR>", remap)
|
|
||||||
|
|
||||||
-- Move lines normally like an IDE when line wraps
|
-- Move lines normally like an IDE when line wraps
|
||||||
key("i", "<Down>", [[v:count ? 'j' : '<c-o>gj']], { expr = true, noremap = true, silent = true })
|
key("i", "<Down>", [[v:count ? 'j' : '<c-o>gj']], { expr = true, noremap = true, silent = true })
|
||||||
key("i", "<Up>", [[v:count ? 'k' : '<c-o>gk']], { expr = true, noremap = true, silent = true })
|
key("i", "<Up>", [[v:count ? 'k' : '<c-o>gk']], { expr = true, noremap = true, silent = true })
|
||||||
@@ -203,7 +183,6 @@ key("n", "<Down>", [[v:count ? 'j' : 'gj']], { expr = true, noremap = true, sile
|
|||||||
key("n", "<Up>", [[v:count ? 'k' : 'gk']], { expr = true, noremap = true, silent = true })
|
key("n", "<Up>", [[v:count ? 'k' : 'gk']], { expr = true, noremap = true, silent = true })
|
||||||
|
|
||||||
-- Set 'CTRL + v' as 'paster'
|
-- Set 'CTRL + v' as 'paster'
|
||||||
-- key('', '<C-v>', 'map"_d<Esc>i', remap )
|
|
||||||
key("v", "<C-v>", "p", remap)
|
key("v", "<C-v>", "p", remap)
|
||||||
|
|
||||||
-- Set 'CTRL + x' as 'cut'
|
-- Set 'CTRL + x' as 'cut'
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
-- Completion for snippets.
|
-- Completion for snippets.
|
||||||
-- luacheck: globals vim CAPABILITIES
|
-- luacheck: globals vim CAPABILITIES
|
||||||
|
local vim = vim
|
||||||
CAPABILITIES = vim.lsp.protocol.make_client_capabilities()
|
CAPABILITIES = vim.lsp.protocol.make_client_capabilities()
|
||||||
CAPABILITIES = require("cmp_nvim_lsp").default_capabilities(CAPABILITIES)
|
|
||||||
CAPABILITIES.textDocument.completion.completionItem.snippetSupport = true
|
CAPABILITIES.textDocument.completion.completionItem.snippetSupport = true
|
||||||
|
|
||||||
--CAPABILITIES.offsetEncoding = 'utf-8'
|
--CAPABILITIES.offsetEncoding = 'utf-8'
|
||||||
@@ -82,6 +82,7 @@ local servers = {
|
|||||||
jsonls = {},
|
jsonls = {},
|
||||||
lua_ls = {
|
lua_ls = {
|
||||||
Lua = {
|
Lua = {
|
||||||
|
diagnostics = { globals = { "vim" } },
|
||||||
workspace = { checkThirdParty = false },
|
workspace = { checkThirdParty = false },
|
||||||
telemetry = { enable = false },
|
telemetry = { enable = false },
|
||||||
},
|
},
|
||||||
@@ -101,7 +102,6 @@ require("neodev").setup()
|
|||||||
-- nvim-cmp supports additional completion capabilities,
|
-- nvim-cmp supports additional completion capabilities,
|
||||||
-- so broadcast that to servers
|
-- so broadcast that to servers
|
||||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
capabilities = require("cmp_nvim_lsp").default_capabilities(capabilities)
|
|
||||||
|
|
||||||
-- Ensure the servers above are installed
|
-- Ensure the servers above are installed
|
||||||
local mason_lspconfig = require("mason-lspconfig")
|
local mason_lspconfig = require("mason-lspconfig")
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
-- Package manager https://github.com/folke/lazy.nvim
|
-- Package manager https://github.com/folke/lazy.nvim
|
||||||
-- :help lazy.nvim.txt
|
-- :help lazy.nvim.txt
|
||||||
|
-- luacheck: globals vim
|
||||||
|
|
||||||
-- To install lazy.nvim automatically.
|
-- To install lazy.nvim automatically.
|
||||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
@@ -17,5 +18,26 @@ end
|
|||||||
|
|
||||||
vim.opt.rtp:prepend(lazypath)
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
|
||||||
-- Plugins start here:
|
local options = {
|
||||||
require("lazy").setup("plugins")
|
defaults = { lazy = false },
|
||||||
|
install = { colorscheme = { "catppuccin" } },
|
||||||
|
performance = {
|
||||||
|
cache = {
|
||||||
|
enabled = true,
|
||||||
|
},
|
||||||
|
rtp = {
|
||||||
|
disabled_plugins = {
|
||||||
|
"gzip",
|
||||||
|
"matchit",
|
||||||
|
"matchparen",
|
||||||
|
"netrwPlugin",
|
||||||
|
"tarPlugin",
|
||||||
|
"tohtml",
|
||||||
|
"tutor",
|
||||||
|
"zipPlugin",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
require("lazy").setup("plugins", options)
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
-- Winbar with context.
|
-- A VS Code like winbar for Neovim
|
||||||
|
-- https://github.com/utilyre/barbecue.nvim
|
||||||
return {
|
return {
|
||||||
"utilyre/barbecue.nvim",
|
"utilyre/barbecue.nvim",
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"neovim/nvim-lspconfig",
|
"neovim/nvim-lspconfig",
|
||||||
"SmiteshP/nvim-navic",
|
"SmiteshP/nvim-navic",
|
||||||
"kyazdani42/nvim-web-devicons", -- Optional
|
"kyazdani42/nvim-web-devicons",
|
||||||
},
|
},
|
||||||
|
version = "*",
|
||||||
config = {
|
config = {
|
||||||
theme = "catppuccin",
|
theme = "catppuccin",
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
-- Show signs of GIT written in lua
|
-- Git integration for buffers
|
||||||
|
-- https://github.com/lewis6991/gitsigns.nvim
|
||||||
|
-- luacheck: globals vim
|
||||||
return {
|
return {
|
||||||
"lewis6991/gitsigns.nvim",
|
"lewis6991/gitsigns.nvim",
|
||||||
dependencies = { "nvim-lua/plenary.nvim" },
|
dependencies = { "nvim-lua/plenary.nvim" },
|
||||||
|
|||||||
@@ -140,27 +140,6 @@ return {
|
|||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|
||||||
-- Add/change/delete surrounding delimiter pairs with ease.
|
|
||||||
-- https://github.com/kylechui/nvim-surround
|
|
||||||
{
|
|
||||||
--[[
|
|
||||||
Old text Command New text
|
|
||||||
------------------------------------------------------------------
|
|
||||||
surround_words ysiw) (surround_words)
|
|
||||||
make strings ys$" "make strings"
|
|
||||||
[delete ar*ound me!] ds] delete around me!
|
|
||||||
"change quot*es" cs'" "change quotes"
|
|
||||||
<b>or tag* types</b> csth1<CR> <h1>or tag types</h1>
|
|
||||||
delete(functi*on calls) dsf function calls
|
|
||||||
]]
|
|
||||||
"kylechui/nvim-surround",
|
|
||||||
version = "*", -- Use for stability; omit to use `main` branch for the latest features
|
|
||||||
event = "VeryLazy",
|
|
||||||
config = function()
|
|
||||||
require("nvim-surround").setup()
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- A tree like view for symbols in Neovim using the LSP.
|
-- A tree like view for symbols in Neovim using the LSP.
|
||||||
-- https://github.com/simrat39/symbols-outline.nvim
|
-- https://github.com/simrat39/symbols-outline.nvim
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ return {
|
|||||||
|
|
||||||
-- Animate common Neovim actions
|
-- Animate common Neovim actions
|
||||||
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-animate.md
|
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-animate.md
|
||||||
require("mini.animate").setup()
|
-- require("mini.animate").setup()
|
||||||
|
|
||||||
-- Go forward/backward with square brackets
|
-- Go forward/backward with square brackets
|
||||||
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-bracketed.md
|
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-bracketed.md
|
||||||
@@ -120,6 +120,10 @@ return {
|
|||||||
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-statusline.md
|
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-statusline.md
|
||||||
require("mini.statusline").setup()
|
require("mini.statusline").setup()
|
||||||
|
|
||||||
|
-- Fast and feature-rich surround actions
|
||||||
|
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-surround.md
|
||||||
|
require("mini.surround").setup()
|
||||||
|
|
||||||
-- Minimal and fast tabline showing listed buffers
|
-- Minimal and fast tabline showing listed buffers
|
||||||
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-tabline.md
|
-- https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-tabline.md
|
||||||
require("mini.tabline").setup()
|
require("mini.tabline").setup()
|
||||||
|
|||||||
@@ -73,7 +73,6 @@ return {
|
|||||||
use_popups_for_input = false,
|
use_popups_for_input = false,
|
||||||
-- use a custom function for sorting files and directories in the tree
|
-- use a custom function for sorting files and directories in the tree
|
||||||
sort_function = nil,
|
sort_function = nil,
|
||||||
|
|
||||||
event_handlers = {
|
event_handlers = {
|
||||||
-- {
|
-- {
|
||||||
-- event = "before_render",
|
-- event = "before_render",
|
||||||
@@ -127,7 +126,6 @@ return {
|
|||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
default_component_configs = {
|
default_component_configs = {
|
||||||
container = {
|
container = {
|
||||||
enable_character_fade = true,
|
enable_character_fade = true,
|
||||||
@@ -183,57 +181,6 @@ return {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
renderers = {
|
|
||||||
directory = {
|
|
||||||
{ "indent" },
|
|
||||||
{ "icon" },
|
|
||||||
{ "current_filter" },
|
|
||||||
{
|
|
||||||
"container",
|
|
||||||
width = "100%",
|
|
||||||
right_padding = 0,
|
|
||||||
--max_width = 60,
|
|
||||||
content = {
|
|
||||||
{ "name", zindex = 10 },
|
|
||||||
-- {
|
|
||||||
-- "symlink_target",
|
|
||||||
-- zindex = 10,
|
|
||||||
-- highlight = "NeoTreeSymbolicLinkTarget",
|
|
||||||
-- },
|
|
||||||
{ "clipboard", zindex = 10 },
|
|
||||||
{ "diagnostics", errors_only = true, zindex = 20, align = "right" },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
file = {
|
|
||||||
{ "indent" },
|
|
||||||
{ "icon" },
|
|
||||||
{
|
|
||||||
"container",
|
|
||||||
width = "100%",
|
|
||||||
right_padding = 0,
|
|
||||||
--max_width = 60,
|
|
||||||
content = {
|
|
||||||
{
|
|
||||||
"name",
|
|
||||||
use_git_status_colors = false,
|
|
||||||
zindex = 10,
|
|
||||||
},
|
|
||||||
-- {
|
|
||||||
-- "symlink_target",
|
|
||||||
-- zindex = 10,
|
|
||||||
-- highlight = "NeoTreeSymbolicLinkTarget",
|
|
||||||
-- },
|
|
||||||
{ "clipboard", zindex = 10 },
|
|
||||||
{ "bufnr", zindex = 10 },
|
|
||||||
-- { "harpoon_index" }, --> This is what actually adds the component in where you want it
|
|
||||||
{ "modified", zindex = 20, align = "right" },
|
|
||||||
{ "diagnostics", zindex = 20, align = "right" },
|
|
||||||
{ "git_status", zindex = 20, align = "right" },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
-- A list of functions, each representing a global custom command
|
-- A list of functions, each representing a global custom command
|
||||||
-- that will be available in all sources (if not overridden in `opts[source_name].commands`)
|
-- that will be available in all sources (if not overridden in `opts[source_name].commands`)
|
||||||
-- see `:h neo-tree-custom-commands-global`
|
-- see `:h neo-tree-custom-commands-global`
|
||||||
@@ -275,10 +222,10 @@ return {
|
|||||||
["<esc>"] = "cancel",
|
["<esc>"] = "cancel",
|
||||||
["P"] = { "toggle_preview", config = { use_float = true } },
|
["P"] = { "toggle_preview", config = { use_float = true } },
|
||||||
["l"] = "focus_preview",
|
["l"] = "focus_preview",
|
||||||
["S"] = "open_split",
|
-- ["S"] = "open_split",
|
||||||
["s"] = "open_vsplit",
|
-- ["s"] = "open_vsplit",
|
||||||
-- ["S"] = "split_with_window_picker",
|
["S"] = "split_with_window_picker",
|
||||||
-- ["s"] = "vsplit_with_window_picker",
|
["s"] = "vsplit_with_window_picker",
|
||||||
["t"] = "open_tabnew",
|
["t"] = "open_tabnew",
|
||||||
-- ["<cr>"] = "open_drop",
|
-- ["<cr>"] = "open_drop",
|
||||||
-- ["t"] = "open_tab_drop",
|
-- ["t"] = "open_tab_drop",
|
||||||
@@ -344,6 +291,52 @@ return {
|
|||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
renderers = {
|
||||||
|
directory = {
|
||||||
|
{ "indent" },
|
||||||
|
{ "icon" },
|
||||||
|
{ "current_filter" },
|
||||||
|
{
|
||||||
|
"container",
|
||||||
|
width = "100%",
|
||||||
|
right_padding = 0,
|
||||||
|
--max_width = 60,
|
||||||
|
content = {
|
||||||
|
{ "name", zindex = 10 },
|
||||||
|
{ "clipboard", zindex = 10 },
|
||||||
|
{ "diagnostics", errors_only = true, zindex = 20, align = "right" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
file = {
|
||||||
|
{ "indent" },
|
||||||
|
{ "icon" },
|
||||||
|
{
|
||||||
|
"container",
|
||||||
|
width = "100%",
|
||||||
|
right_padding = 0,
|
||||||
|
--max_width = 60,
|
||||||
|
content = {
|
||||||
|
{
|
||||||
|
"name",
|
||||||
|
use_git_status_colors = false,
|
||||||
|
zindex = 10,
|
||||||
|
},
|
||||||
|
-- {
|
||||||
|
-- "symlink_target",
|
||||||
|
-- zindex = 10,
|
||||||
|
-- highlight = "NeoTreeSymbolicLinkTarget",
|
||||||
|
-- },
|
||||||
|
{ "clipboard", zindex = 10 },
|
||||||
|
{ "bufnr", zindex = 10 },
|
||||||
|
{ "harpoon_index", zindex = 20, align = "right" },
|
||||||
|
{ "modified", zindex = 20, align = "right" },
|
||||||
|
{ "diagnostics", zindex = 20, align = "right" },
|
||||||
|
{ "git_status", zindex = 20, align = "right" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
filtered_items = {
|
filtered_items = {
|
||||||
-- when true, they will just be displayed differently than normal items
|
-- when true, they will just be displayed differently than normal items
|
||||||
visible = false,
|
visible = false,
|
||||||
|
|||||||
@@ -14,10 +14,10 @@ return {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
keys = {
|
keys = {
|
||||||
{ "<leader>aa", function() require("neogen").generate({ type = "current" }) end, desc = "Current" },
|
{ "<leader>baa", function() require("neogen").generate({ type = "current" }) end, desc = "Current" },
|
||||||
{ "<leader>ac", function() require("neogen").generate({ type = "class" }) end, desc = "Class" },
|
{ "<leader>bac", function() require("neogen").generate({ type = "class" }) end, desc = "Class" },
|
||||||
{ "<leader>af", function() require("neogen").generate({ type = "func" }) end, desc = "Function" },
|
{ "<leader>baf", function() require("neogen").generate({ type = "func" }) end, desc = "Function" },
|
||||||
{ "<leader>at", function() require("neogen").generate({ type = "type" }) end, desc = "Type" },
|
{ "<leader>bat", function() require("neogen").generate({ type = "type" }) end, desc = "Type" },
|
||||||
{ "<leader>aF", function() require("neogen").generate({ type = "file" }) end, desc = "File" },
|
{ "<leader>baF", function() require("neogen").generate({ type = "file" }) end, desc = "File" },
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,259 +0,0 @@
|
|||||||
-- luacheck: globals vim
|
|
||||||
-- Completion menu.
|
|
||||||
|
|
||||||
-- Icons to display.
|
|
||||||
local icons = {
|
|
||||||
Text = " ",
|
|
||||||
Method = " ",
|
|
||||||
Function = " ",
|
|
||||||
Constructor = " ",
|
|
||||||
Field = " ﰠ ",
|
|
||||||
Variable = " ",
|
|
||||||
Class = " ﴯ ",
|
|
||||||
Interface = " ",
|
|
||||||
Module = " ",
|
|
||||||
Property = " ﰠ ",
|
|
||||||
Unit = " 塞 ",
|
|
||||||
Value = " ",
|
|
||||||
Enum = " ",
|
|
||||||
Keyword = " ",
|
|
||||||
Snippet = " ",
|
|
||||||
Color = " ",
|
|
||||||
File = " ",
|
|
||||||
Reference = " ",
|
|
||||||
Folder = " ",
|
|
||||||
EnumMember = " ",
|
|
||||||
Constant = " ",
|
|
||||||
Struct = " פּ ",
|
|
||||||
Event = " ",
|
|
||||||
Operator = " ",
|
|
||||||
TypeParameter = " T ",
|
|
||||||
Book = " ",
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Load loaders from VSCode.
|
|
||||||
--require("luasnip.loaders.from_vscode").lazy_load({
|
|
||||||
-- paths = { "~/.local/share/lazy/friendly-snippets" }
|
|
||||||
--})
|
|
||||||
|
|
||||||
return {
|
|
||||||
"hrsh7th/nvim-cmp",
|
|
||||||
dependencies = {
|
|
||||||
{ "octaltree/cmp-look" },
|
|
||||||
--
|
|
||||||
{ "hrsh7th/cmp-nvim-lsp" },
|
|
||||||
--
|
|
||||||
{ "hrsh7th/cmp-nvim-lua" },
|
|
||||||
-- Buffer words.
|
|
||||||
{ "hrsh7th/cmp-buffer" },
|
|
||||||
-- Path autocompletion.
|
|
||||||
{ "hrsh7th/cmp-path" },
|
|
||||||
--
|
|
||||||
{ "hrsh7th/cmp-cmdline" },
|
|
||||||
--
|
|
||||||
{ "saadparwaiz1/cmp_luasnip" },
|
|
||||||
--
|
|
||||||
{ "hrsh7th/vim-vsnip" },
|
|
||||||
--
|
|
||||||
{ "rafamadriz/friendly-snippets" },
|
|
||||||
-- Snippets for lua.
|
|
||||||
{ "L3MON4D3/LuaSnip" }, --config = "luasnip" },
|
|
||||||
--
|
|
||||||
{ "hrsh7th/cmp-vsnip" },
|
|
||||||
--
|
|
||||||
-- Signature for functions.
|
|
||||||
--{ 'hrsh7th/cmp-nvim-lsp-signature-help' },
|
|
||||||
--
|
|
||||||
{ "hrsh7th/vim-vsnip-integ" },
|
|
||||||
-- Make arimathetic operations.
|
|
||||||
{ "hrsh7th/cmp-calc" },
|
|
||||||
-- Emoji.
|
|
||||||
{ "hrsh7th/cmp-emoji" },
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
local cmp = require("cmp")
|
|
||||||
local luasnip = require("luasnip")
|
|
||||||
require("luasnip.loaders.from_vscode").lazy_load()
|
|
||||||
luasnip.config.setup({})
|
|
||||||
|
|
||||||
-- Load specialities from LuaSnip.
|
|
||||||
-- Set it with VSCode-like mode.
|
|
||||||
luasnip.config.set_config({
|
|
||||||
history = true,
|
|
||||||
updateevents = "TextChanged,TextChangedI",
|
|
||||||
})
|
|
||||||
|
|
||||||
cmp.setup({
|
|
||||||
|
|
||||||
-- Window documentation, for defining its dimensions.
|
|
||||||
window = {
|
|
||||||
-- Max 10 items on display for documentation.
|
|
||||||
max_height = 10,
|
|
||||||
completion = {
|
|
||||||
side_padding = 0,
|
|
||||||
col_offset = 1,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Snippet support.
|
|
||||||
snippet = {
|
|
||||||
expand = function(args) require("luasnip").lsp_expand(args.body) end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- How the match works based on the input.
|
|
||||||
matching = {
|
|
||||||
-- Whethever we allow fuzzy matching or not.
|
|
||||||
disallow_fuzzy_matching = false,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Mapping each keybind.
|
|
||||||
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.close(),
|
|
||||||
["<CR>"] = cmp.mapping.confirm({
|
|
||||||
behavior = cmp.ConfirmBehavior.Replace,
|
|
||||||
select = true,
|
|
||||||
}),
|
|
||||||
["<Tab>"] = function(fallback)
|
|
||||||
if cmp.visible() then
|
|
||||||
cmp.select_next_item()
|
|
||||||
elseif require("luasnip").expand_or_jumpable() then
|
|
||||||
vim.fn.feedkeys(vim.api.nvim_replace_termcodes("<Plug>luasnip-expand-or-jump", true, true, true), "")
|
|
||||||
else
|
|
||||||
fallback()
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
["<S-Tab>"] = function(fallback)
|
|
||||||
if cmp.visible() then
|
|
||||||
cmp.select_prev_item()
|
|
||||||
elseif require("luasnip").jumpable(-1) then
|
|
||||||
vim.fn.feedkeys(vim.api.nvim_replace_termcodes("<Plug>luasnip-jump-prev", true, true, true), "")
|
|
||||||
else
|
|
||||||
fallback()
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Formatting the menu display.
|
|
||||||
formatting = {
|
|
||||||
expandable_indicator = true,
|
|
||||||
fields = { "kind", "abbr", "menu" },
|
|
||||||
format = function(_, vim_item)
|
|
||||||
vim_item.menu = vim_item.kind
|
|
||||||
|
|
||||||
-- load lspkind icons
|
|
||||||
--vim_item.kind = string.format(
|
|
||||||
-- "%s %s",
|
|
||||||
-- icons[vim_item.kind],
|
|
||||||
-- vim_item.kind
|
|
||||||
--)
|
|
||||||
vim_item.kind = icons[vim_item.kind]
|
|
||||||
|
|
||||||
--vim_item.menu = string.format(
|
|
||||||
-- "%s %s",
|
|
||||||
-- ({
|
|
||||||
-- nvim_lsp = "力",
|
|
||||||
-- nvim_lua = "",
|
|
||||||
-- luasnip = icons.Color,
|
|
||||||
-- path = "",
|
|
||||||
-- buffer = " ",
|
|
||||||
-- look = icons.Book,
|
|
||||||
-- emoji = "😎",
|
|
||||||
-- })[entry.source.name],
|
|
||||||
-- name
|
|
||||||
--)
|
|
||||||
|
|
||||||
return vim_item
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Experimental features.
|
|
||||||
experimental = {
|
|
||||||
|
|
||||||
-- It will type a shadow text of the intended completion.
|
|
||||||
ghost_text = { hl_group = "Comment" },
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Sources for completion, since it is modular; cmp accepts
|
|
||||||
-- Multiple modules.
|
|
||||||
sources = {
|
|
||||||
|
|
||||||
-- Simple signature, normally outside an object.
|
|
||||||
--{ name = 'nvim_lsp_signature_help', priority = 15 },
|
|
||||||
|
|
||||||
-- More snippets.
|
|
||||||
-- For all types of languages.
|
|
||||||
{
|
|
||||||
name = "friendly-snippets",
|
|
||||||
priority = 11,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- For the Nvim lua specifics commands.
|
|
||||||
{
|
|
||||||
name = "nvim_lua",
|
|
||||||
priority = 8,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Support with the current active LSP.
|
|
||||||
-- Anything that LSP supports and can share with CMP.
|
|
||||||
{
|
|
||||||
name = "nvim_lsp",
|
|
||||||
priority = 11,
|
|
||||||
max_item_count = 10,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Snippets in general to facilitate life.
|
|
||||||
-- Type a often typed methods, like for in C.
|
|
||||||
-- { name = "luasnip", priority = 6 },
|
|
||||||
|
|
||||||
-- Show path based on the backslashes.
|
|
||||||
-- Type any path, relatively or globally.
|
|
||||||
{
|
|
||||||
name = "path",
|
|
||||||
priority = 9,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Words from buffer.
|
|
||||||
{
|
|
||||||
name = "buffer",
|
|
||||||
priority = 4,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Max item count.
|
|
||||||
|
|
||||||
-- Dictionary for words.
|
|
||||||
-- Type any word that is on the /usr/share/dict/words
|
|
||||||
--{
|
|
||||||
-- name = 'look',
|
|
||||||
-- priority = 1,
|
|
||||||
-- keyword_length = 3,
|
|
||||||
-- max_item_count = 4,
|
|
||||||
-- option = {
|
|
||||||
-- convert_case = true,
|
|
||||||
-- loud = true,
|
|
||||||
-- dict = '/usr/share/dict/words'
|
|
||||||
-- },
|
|
||||||
--},
|
|
||||||
|
|
||||||
-- Emoji.
|
|
||||||
-- Activate with ":".
|
|
||||||
{ name = "emoji", priority = 2, option = { insert = true } },
|
|
||||||
|
|
||||||
-- Calculate expressions based on the current line.
|
|
||||||
-- Activate with something like "4 + 5".
|
|
||||||
{
|
|
||||||
name = "calc",
|
|
||||||
priority = 10,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
|
|
||||||
-- The line beneath this is called `modeline`. See `:help modeline`
|
|
||||||
-- vim: ts=2 sts=2 sw=2 et
|
|
||||||
@@ -36,25 +36,38 @@ return {
|
|||||||
-- Update this to ensure that you have the debuggers for the langs you want
|
-- Update this to ensure that you have the debuggers for the langs you want
|
||||||
"bash",
|
"bash",
|
||||||
"delve",
|
"delve",
|
||||||
|
"jq",
|
||||||
"js",
|
"js",
|
||||||
"lua",
|
"lua",
|
||||||
"php",
|
"php",
|
||||||
"python",
|
"python",
|
||||||
|
"stylua",
|
||||||
|
},
|
||||||
|
handlers = {
|
||||||
|
function(config)
|
||||||
|
-- all sources with no handler get passed here
|
||||||
|
|
||||||
|
-- Keep original functionality
|
||||||
|
require("mason-nvim-dap").default_setup(config)
|
||||||
|
end,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Basic debugging keymaps, feel free to change to your liking!
|
local wk = require("which-key")
|
||||||
vim.keymap.set("n", "<F5>", dap.continue, { desc = "Debug: Start/Continue" })
|
wk.register({
|
||||||
vim.keymap.set("n", "<F1>", dap.step_into, { desc = "Debug: Step Into" })
|
-- Basic debugging keymaps, feel free to change to your liking!
|
||||||
vim.keymap.set("n", "<F2>", dap.step_over, { desc = "Debug: Step Over" })
|
["<F5>"] = { dap.continue, "Debug: Start/Continue" },
|
||||||
vim.keymap.set("n", "<F3>", dap.step_out, { desc = "Debug: Step Out" })
|
["<F1>"] = { dap.step_into, "Debug: Step Into" },
|
||||||
vim.keymap.set("n", "<leader>Db", dap.toggle_breakpoint, { desc = "Debug: Toggle Breakpoint" })
|
["<F2>"] = { dap.step_over, "Debug: Step Over" },
|
||||||
vim.keymap.set(
|
["<F3>"] = { dap.step_out, "Debug: Step Out" },
|
||||||
"n",
|
["<leader>Db"] = { dap.toggle_breakpoint, "Debug: Toggle Breakpoint" },
|
||||||
"<leader>DB",
|
["<leader>DB"] = {
|
||||||
function() dap.set_breakpoint(vim.fn.input("Breakpoint condition: ")) end,
|
function() dap.set_breakpoint(vim.fn.input("Breakpoint condition: ")) end,
|
||||||
{ desc = "Debug: Set Breakpoint" }
|
"Debug: Set Breakpoint",
|
||||||
)
|
},
|
||||||
|
-- Toggle to see last session result. Without this, you can't see session output in case of unhandled exception.
|
||||||
|
["<F7>"] = { dapui.toggle, "Debug: See last session result." },
|
||||||
|
}, { prefix = "", mode = "n" })
|
||||||
|
|
||||||
-- Dap UI setup
|
-- Dap UI setup
|
||||||
-- For more information, see |:help nvim-dap-ui|
|
-- For more information, see |:help nvim-dap-ui|
|
||||||
@@ -78,9 +91,6 @@ return {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Toggle to see last session result. Without this, you can't see session output in case of unhandled exception.
|
|
||||||
vim.keymap.set("n", "<F7>", dapui.toggle, { desc = "Debug: See last session result." })
|
|
||||||
|
|
||||||
dap.listeners.after.event_initialized["dapui_config"] = dapui.open
|
dap.listeners.after.event_initialized["dapui_config"] = dapui.open
|
||||||
dap.listeners.before.event_terminated["dapui_config"] = dapui.close
|
dap.listeners.before.event_terminated["dapui_config"] = dapui.close
|
||||||
dap.listeners.before.event_exited["dapui_config"] = dapui.close
|
dap.listeners.before.event_exited["dapui_config"] = dapui.close
|
||||||
|
|||||||
@@ -1,15 +1,18 @@
|
|||||||
|
-- Quickstart configs for Nvim LSP
|
||||||
|
-- https://github.com/neovim/nvim-lspconfig
|
||||||
|
-- luacheck: globals vim
|
||||||
return {
|
return {
|
||||||
-- LSP auto-complete.
|
-- LSP auto-complete.
|
||||||
"neovim/nvim-lspconfig",
|
"neovim/nvim-lspconfig",
|
||||||
dependencies = {
|
dependencies = {
|
||||||
-- Automatically install LSPs to stdpath for neovim
|
-- Automatically install LSPs to stdpath for neovim
|
||||||
{ "williamboman/mason.nvim", config = true },
|
{ "williamboman/mason.nvim", config = true },
|
||||||
{ "williamboman/mason-lspconfig.nvim" },
|
{ "williamboman/mason-lspconfig.nvim" },
|
||||||
|
|
||||||
-- Useful status updates for LSP
|
-- Useful status updates for LSP
|
||||||
-- NOTE: `opts = {}` is the same as calling `require('fidget').setup({})`
|
-- NOTE: `opts = {}` is the same as calling `require('fidget').setup({})`
|
||||||
-- NOTE: using tag legacy, fidget is being re-written completely
|
-- NOTE: using tag legacy, fidget is being re-written completely
|
||||||
{ "j-hui/fidget.nvim", event = "LspAttach", tag = "legacy", opts = {} },
|
{ "j-hui/fidget.nvim", event = "LspAttach", tag = "legacy", opts = {} },
|
||||||
|
|
||||||
-- Additional lua configuration, makes nvim stuff amazing!
|
-- Additional lua configuration, makes nvim stuff amazing!
|
||||||
{ "folke/neodev.nvim" },
|
{ "folke/neodev.nvim" },
|
||||||
@@ -17,9 +20,11 @@ return {
|
|||||||
init = function()
|
init = function()
|
||||||
-- disable lsp watcher. Too slow on linux
|
-- disable lsp watcher. Too slow on linux
|
||||||
local ok, wf = pcall(require, "vim.lsp._watchfiles")
|
local ok, wf = pcall(require, "vim.lsp._watchfiles")
|
||||||
if ok then wf._watchfunc = function()
|
if ok then
|
||||||
return function() end
|
wf._watchfunc = function()
|
||||||
end end
|
return function() end
|
||||||
|
end
|
||||||
|
end
|
||||||
end,
|
end,
|
||||||
config = function()
|
config = function()
|
||||||
-- Switch for controlling whether you want autoformatting.
|
-- Switch for controlling whether you want autoformatting.
|
||||||
|
|||||||
@@ -20,38 +20,7 @@ return {
|
|||||||
modules = {},
|
modules = {},
|
||||||
|
|
||||||
-- Add languages to be installed here that you want installed for treesitter
|
-- Add languages to be installed here that you want installed for treesitter
|
||||||
ensure_installed = {
|
ensure_installed = "all",
|
||||||
"bash",
|
|
||||||
"c",
|
|
||||||
"cmake",
|
|
||||||
"comment",
|
|
||||||
"diff",
|
|
||||||
"dockerfile",
|
|
||||||
"gitignore",
|
|
||||||
"go",
|
|
||||||
"graphql",
|
|
||||||
"html",
|
|
||||||
"javascript",
|
|
||||||
"json",
|
|
||||||
"json5",
|
|
||||||
"latex",
|
|
||||||
"lua",
|
|
||||||
"markdown",
|
|
||||||
"php",
|
|
||||||
"phpdoc",
|
|
||||||
"python",
|
|
||||||
"regex",
|
|
||||||
"scss",
|
|
||||||
"terraform",
|
|
||||||
"todotxt",
|
|
||||||
"toml",
|
|
||||||
"tsx",
|
|
||||||
"typescript",
|
|
||||||
"vim",
|
|
||||||
"vimdoc",
|
|
||||||
"vue",
|
|
||||||
"yaml",
|
|
||||||
},
|
|
||||||
|
|
||||||
highlight = {
|
highlight = {
|
||||||
enable = true,
|
enable = true,
|
||||||
@@ -129,5 +98,5 @@ return {
|
|||||||
enable = true,
|
enable = true,
|
||||||
mode = "cursor", -- cursor, or topline
|
mode = "cursor", -- cursor, or topline
|
||||||
},
|
},
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,14 +5,21 @@ return {
|
|||||||
"folke/twilight.nvim",
|
"folke/twilight.nvim",
|
||||||
config = {
|
config = {
|
||||||
dimming = {
|
dimming = {
|
||||||
alpha = 0.5, -- amount of dimming
|
-- amount of dimming
|
||||||
inactive = false, -- when true, other windows will be fully dimmed (unless they contain the same buffer)
|
alpha = 0.2,
|
||||||
|
-- when true, other windows will be fully dimmed (unless they contain the same buffer)
|
||||||
|
inactive = false,
|
||||||
},
|
},
|
||||||
context = 3, -- amount of lines we will try to show around the current line
|
-- amount of lines we will try to show around the current line
|
||||||
treesitter = true, -- use treesitter when available for the filetype
|
context = 3,
|
||||||
|
-- use treesitter when available for the filetype
|
||||||
-- treesitter is used to automatically expand the visible text,
|
-- treesitter is used to automatically expand the visible text,
|
||||||
-- but you can further control the types of nodes that should always be fully expanded
|
-- but you can further control the types of nodes that should always be fully expanded
|
||||||
expand = { -- for treesitter, we we always try to expand to the top-most ancestor with these types
|
|
||||||
|
treesitter = true,
|
||||||
|
|
||||||
|
-- for treesitter, we we always try to expand to the top-most ancestor with these types
|
||||||
|
expand = {
|
||||||
"function",
|
"function",
|
||||||
"while_statement",
|
"while_statement",
|
||||||
"for_statement",
|
"for_statement",
|
||||||
|
|||||||
@@ -20,8 +20,9 @@ return {
|
|||||||
|
|
||||||
wilder.set_option('renderer', wilder.popupmenu_renderer({
|
wilder.set_option('renderer', wilder.popupmenu_renderer({
|
||||||
highlights = {
|
highlights = {
|
||||||
gradient = gradient, -- must be set
|
-- must be set
|
||||||
-- selected_gradient key can be set to apply gradient highlighting for the selected candidate.
|
-- selected_gradient key can be set to apply gradient highlighting for the selected candidate.
|
||||||
|
gradient = gradient,
|
||||||
},
|
},
|
||||||
highlighter = wilder.highlighter_with_gradient({
|
highlighter = wilder.highlighter_with_gradient({
|
||||||
wilder.basic_highlighter(), -- or wilder.lua_fzy_highlighter(),
|
wilder.basic_highlighter(), -- or wilder.lua_fzy_highlighter(),
|
||||||
|
|||||||
Reference in New Issue
Block a user