1
0
Fork 0

nvim un poco mas rapido con lazy loading y cosas asi, ademas pude

modularizar un toque el tema de la configuracion del lsp. tuve que hacer
cambios a dunst para mantenerlo actualizado. y agregue 3 cosos nuevos
ponele.
This commit is contained in:
deadguy 2021-11-17 20:49:07 -03:00
parent 5231721aa8
commit 1ebe08948f
Signed by: dgy
GPG Key ID: 37CA55B52CF63730
37 changed files with 1353 additions and 328 deletions

View File

@ -4,6 +4,7 @@ xsetroot -cursor_name left_ptr &
xcompmgr &
fcitx &
xset r rate 200 30
xset s 0 900
xrdb -merge "$XDG_CONFIG_HOME/X11/xresources"
exec runsvdir -P ~/.local/service.x

368
amfora/config.toml Normal file
View File

@ -0,0 +1,368 @@
# This is the default config file.
# It also shows all the default values, if you don't create the file.
# All URL values may omit the scheme and/or port, as well as the beginning double slash
# Valid URL examples:
# gemini://example.com
# //example.com
# example.com
# example.com:123
[a-general]
# Press Ctrl-H to access it
home = "gemini://gemini.circumlunar.space"
# Follow up to 5 Gemini redirects without prompting.
# A prompt is always shown after the 5th redirect and for redirects to protocols other than Gemini.
# If set to false, a prompt will be shown before following redirects.
auto_redirect = false
# What command to run to open a HTTP(S) URL.
# Set to "default" to try to guess the browser, or set to "off" to not open HTTP(S) URLs.
# If a command is set, than the URL will be added (in quotes) to the end of the command.
# A space will be prepended to the URL.
#
# The best to define a command is using a string array.
# Examples:
# http = ['firefox']
# http = ['custom-browser', '--flag', '--option=2']
# http = ['/path/with spaces/in it/firefox']
#
# Note the use of single quotes, so that backslashes will not be escaped.
# Using just a string will also work, but it is deprecated, and will degrade if
# you use paths with spaces.
http = 'default'
# Any URL that will accept a query string can be put here
search = "gemini://gus.guru/search"
# Whether colors will be used in the terminal
color = true
# Whether ANSI color codes from the page content should be rendered
ansi = true
# Whether to replace list asterisks with unicode bullets
bullets = true
# Whether to show link after link text
show_link = false
# A number from 0 to 1, indicating what percentage of the terminal width the left margin should take up.
left_margin = 0.15
# The max number of columns to wrap a page's text to. Preformatted blocks are not wrapped.
max_width = 100
# 'downloads' is the path to a downloads folder.
# An empty value means the code will find the default downloads folder for your system.
# If the path does not exist it will be created.
# Note the use of single quotes, so that backslashes will not be escaped.
downloads = ''
# Max size for displayable content in bytes - after that size a download window pops up
page_max_size = 2097152 # 2 MiB
# Max time it takes to load a page in seconds - after that a download window pops up
page_max_time = 10
# Whether to replace tab numbers with emoji favicons, which are cached.
emoji_favicons = false
# When a scrollbar appears. "never", "auto", and "always" are the only valid values.
# "auto" means the scrollbar only appears when the page is longer than the window.
scrollbar = "auto"
[auth]
# Authentication settings
# Note the use of single quotes for values, so that backslashes will not be escaped.
[auth.certs]
# Client certificates
# Set domain name equal to path to client cert
# "example.com" = 'mycert.crt'
[auth.keys]
# Client certificate keys
# Set domain name equal to path to key for the client cert above
# "example.com" = 'mycert.key'
[keybindings]
# If you have a non-US keyboard, use bind_tab1 through bind_tab0 to
# setup the shift-number bindings: Eg, for US keyboards (the default):
bind_tab1 = "!"
bind_tab2 = "\""
bind_tab3 = "#"
bind_tab4 = "$"
bind_tab5 = "%"
bind_tab6 = "&"
bind_tab7 = "/"
bind_tab8 = "("
bind_tab9 = ")"
bind_tab0 = "="
# Whitespace is not allowed in any of the keybindings! Use 'Space' and 'Tab' to bind to those keys.
# Multiple keys can be bound to one command, just use a TOML array.
# To add the Alt modifier, the binding must start with Alt-, should be reasonably universal
# Ctrl- won't work on all keys, see this for a list:
# https://github.com/gdamore/tcell/blob/cb1e5d6fa606/key.go#L83
# An example of a TOML array for multiple keys being bound to one command is the default
# binding for reload:
# bind_reload = ["R","Ctrl-R"]
# One thing to note here is that "R" is capitalization sensitive, so it means shift-r.
# "Ctrl-R" means both ctrl-r and ctrl-shift-R (this is a quirk of what ctrl-r means on
# an ANSI terminal)
# The default binding for opening the bottom bar for entering a URL or link number is:
# bind_bottom = "Space"
# This is how to get the Spacebar as a keybinding, if you try to use " ", it won't work.
# And, finally, an example of a simple, unmodified character is:
# bind_edit = "e"
# This binds the "e" key to the command to edit the current URL.
# The bind_link[1-90] options are for the commands to go to the first 10 links on a page,
# typically these are bound to the number keys:
# bind_link1 = "1"
# bind_link2 = "2"
# bind_link3 = "3"
# bind_link4 = "4"
# bind_link5 = "5"
# bind_link6 = "6"
# bind_link7 = "7"
# bind_link8 = "8"
# bind_link9 = "9"
# bind_link0 = "0"
# All keybindings:
#
# bind_bottom
# bind_edit
# bind_home
# bind_bookmarks
# bind_add_bookmark
# bind_save
# bind_reload
# bind_back
# bind_forward
# bind_pgup
# bind_pgdn
# bind_new_tab
# bind_close_tab
# bind_next_tab
# bind_prev_tab
# bind_quit
# bind_help
# bind_sub: for viewing the subscriptions page
# bind_add_sub
[url-handlers]
# Allows setting the commands to run for various URL schemes.
# E.g. to open FTP URLs with FileZilla set the following key:
# ftp = 'filezilla'
# You can set any scheme to "off" or "" to disable handling it, or
# just leave the key unset.
#
# DO NOT use this for setting the HTTP command.
# Use the http setting in the "a-general" section above.
#
# NOTE: These settings are overrided by the ones in the proxies section.
# Note the use of single quotes, so that backslashes will not be escaped.
# This is a special key that defines the handler for all URL schemes for which
# no handler is defined.
other = 'off'
# [[mediatype-handlers]] section
# ---------------------------------
#
# Specify what applications will open certain media types.
# By default your default application will be used to open the file when you select "Open".
# You only need to configure this section if you want to override your default application,
# or do special things like streaming.
#
# Note the use of single quotes for commands, so that backslashes will not be escaped.
#
#
# To open jpeg files with the feh command:
#
[[mediatype-handlers]]
cmd = ['sxiv-gif']
types = ["image/gif"]
#
# Each command that you specify must come under its own [[mediatype-handlers]]. You may
# specify as many [[mediatype-handlers]] as you want to setup multiple commands.
#
# If the subtype is omitted then the specified command will be used for the
# entire type:
#
[[mediatype-handlers]]
command = ['mpd', '-']
types = ["audio", "video"]
stream = true
#
# A catch-all handler can by specified with "*".
# Note that there are already catch-all handlers in place for all OSes,
# that open the file using your default application. This is only if you
# want to override that.
#
# [[mediatype-handlers]]
# cmd = ['some-command']
# types = [
# "application/pdf",
# "*",
# ]
#
# You can also choose to stream the data instead of downloading it all before
# opening it. This is especially useful for large video or audio files, as
# well as radio streams, which will never complete. You can do this like so:
#
# [[mediatype-handlers]]
# cmd = ['vlc', '-']
# types = ["audio", "video"]
# stream = true
#
# This uses vlc to stream all video and audio content.
# By default stream is set to off for all handlers
#
#
# If you want to always open a type in its viewer without the download or open
# prompt appearing, you can add no_prompt = true
#
[[mediatype-handlers]]
cmd = ['sxiv']
types = ["image"]
no_prompt = true
#
# Note: Multiple handlers cannot be defined for the same full media type, but
# still there needs to be an order for which handlers are used. The following
# order applies regardless of the order written in the config:
#
# 1. Full media type: "image/jpeg"
# 2. Just type: "image"
# 3. Catch-all: "*"
[cache]
# Options for page cache - which is only for text pages
# Increase the cache size to speed up browsing at the expense of memory
# Zero values mean there is no limit
max_size = 0 # Size in bytes
max_pages = 30 # The maximum number of pages the cache will store
# How long a page will stay in cache, in seconds.
timeout = 1800 # 30 mins
[proxies]
# Allows setting a Gemini proxy for different schemes.
# The settings are similar to the url-handlers section above.
# E.g. to open a gopher page by connecting to a Gemini proxy server:
# gopher = "example.com:123"
#
# Port 1965 is assumed if no port is specified.
#
# NOTE: These settings override any external handlers specified in
# the url-handlers section.
#
# Note that HTTP and HTTPS are treated as separate protocols here.
[subscriptions]
# For tracking feeds and pages
# Whether a pop-up appears when viewing a potential feed
popup = true
# How often to check for updates to subscriptions in the background, in seconds.
# Set it to 0 to disable this feature. You can still update individual feeds
# manually, or restart the browser.
#
# Note Amfora will check for updates on browser start no matter what this setting is.
update_interval = 1800 # 30 mins
# How many subscriptions can be checked at the same time when updating.
# If you have many subscriptions you may want to increase this for faster
# update times. Any value below 1 will be corrected to 1.
workers = 3
# The number of subscription updates displayed per page.
entries_per_page = 20
[theme]
# This section is for changing the COLORS used in Amfora.
# These colors only apply if 'color' is enabled above.
# Colors can be set using a W3C color name, or a hex value such as "#ffffff".
# Note that not all colors will work on terminals that do not have truecolor support.
# If you want to stick to the standard 16 or 256 colors, you can get
# a list of those here: https://jonasjacek.github.io/colors/
# DO NOT use the names from that site, just the hex codes.
# Definitions:
# bg = background
# fg = foreground
# dl = download
# btn = button
# hdg = heading
# bkmk = bookmark
# modal = a popup window/box in the middle of the screen
# EXAMPLES:
# hdg_1 = "green"
# hdg_2 = "#5f0000"
# Available keys to set:
# bg: background for pages, tab row, app in general
# tab_num: The number/highlight of the tabs at the top
# tab_divider: The color of the divider character between tab numbers: |
# bottombar_label: The color of the prompt that appears when you press space
# bottombar_text: The color of the text you type
# bottombar_bg
# scrollbar: The scrollbar that appears on the right for long pages
# hdg_1
# hdg_2
# hdg_3
# amfora_link: A link that Amfora supports viewing. For now this is only gemini://
# foreign_link: HTTP(S), Gopher, etc
# link_number: The silver number that appears to the left of a link
# regular_text: Normal gemini text, and plaintext documents
# quote_text
# preformatted_text
# list_text
# btn_bg: The bg color for all modal buttons
# btn_text: The text color for all modal buttons
# dl_choice_modal_bg
# dl_choice_modal_text
# dl_modal_bg
# dl_modal_text
# info_modal_bg
# info_modal_text
# error_modal_bg
# error_modal_text
# yesno_modal_bg
# yesno_modal_text
# tofu_modal_bg
# tofu_modal_text
# subscription_modal_bg
# subscription_modal_text
# input_modal_bg
# input_modal_text
# input_modal_field_bg: The bg of the input field, where you type the text
# input_modal_field_text: The color of the text you type
# bkmk_modal_bg
# bkmk_modal_text
# bkmk_modal_label
# bkmk_modal_field_bg
# bkmk_modal_field_text

View File

@ -9,56 +9,30 @@
show_age_threshold = -1
word_wrap = no
ignore_newline = yes
# The geometry of the window:
# [{width}]x{height}[+/-{x}+/-{y}]
# The geometry of the message window.
# The height is measured in number of notifications everything else
# in pixels. If the width is omitted but the height is given
# ("-geometry x2"), the message window expands over the whole screen
# (dmenu-like). If width is 0, the window expands to the longest
# message displayed. A positive x is measured from the left, a
# negative from the right side of the screen. Y is measured from
# the top and down respectively.
# The width can be negative. In this case the actual width is the
# screen width minus the width defined in within the geometry option.
geometry = "0x1+0+0"
title = Dunst # Define window title
class = Dunst # Define window class
shrink = yes # Shrink window, or set to 0
idle_threshold = 120 # Keep messages for how long
follow = mouse # Where to display notifications
stack_duplicates = true # Merge multiple similar notifications
width = 0
origin = top-left
offset = 0x0
notification_limit = 1
title = Dunst
class = Dunst
shrink = yes
idle_threshold = 120
follow = mouse
stack_duplicates = true
hide_duplicate_count = true
sticky_history = no
history_length = 1
show_indicators = no
# The spacing between lines. If smaller than font height,
# it will get raised to the font height.
line_height = 0
# The height of the entire notification. If smaller than the
# font height and padding combined, it will be raised to the
# font height and padding.
notification_height = 0
separator_height = 0
padding = 0 # Padding between text and separator.
padding = 0
horizontal_padding = 10
# Define a color for the separator.
# * auto: dunst tries to find a color fitting to the background;
# * foreground: use the same color as the foreground;
# * frame: use the same color as the frame;
# * anything else will be interpreted as a X color.
separator_color = frame
startup_notification = false
dmenu = /usr/bin/dmenu -p dunst:
browser = /usr/bin/firefox -new-tab
icon_position = left # Align icons left/right/off
icon_position = left
max_icon_size = 24
# Paths to default icons.
@ -69,12 +43,6 @@
frame_width = 1
per_monitor_dpi = false
[shortcuts]
close = mod4+apostrophe
close_all = mod4+mod1+apostrophe
history = mod4+ctrl+apostrophe
context = mod4+ctrl+semicolon
[urgency_low]
background = "#080808"
foreground = "#e8d0c0"

View File

@ -1,21 +1,21 @@
marks : /home/corpse/.config/fzf-marks
git : /home/corpse/.config/git/config
gtk3 : /home/corpse/.config/gtk-3.0/settings.ini
lfview : /home/corpse/.local/bin/lfview
gtk2 : /home/corpse/.config/gtk-2.0/gtkrc-2.0
dunst : /home/corpse/.config/dunst/dunstrc
xresources : /home/corpse/.config/X11/xresources
correo : /home/corpse/.config/neomutt
xinit : /home/corpse/.config/X11/xinitrc
terminal : /home/corpse/.config/alacritty.yml
tmux : /home/corpse/.config/tmux/tmux.conf
alias : /home/corpse/.config/zsh/conf/03_aliases.zsh
mpv : /home/corpse/.config/mpv/mpv.conf
lf : /home/corpse/.config/lf/lfrc
zshenv : /home/corpse/.zshenv
polybar : /home/corpse/.config/polybar/config
keys : /home/corpse/.config/sxhkd/sxhkdrc
bspwm : /home/corpse/.config/bspwm/bspwmrc
nvim : /home/corpse/.config/nvim
zsh : /home/corpse/.config/zsh
alias : /home/corpse/.config/zsh/conf/03_aliases.zsh
dunst : /home/corpse/.config/dunst/dunstrc
gtk2 : /home/corpse/.config/gtk-2.0/gtkrc-2.0
gtk3 : /home/corpse/.config/gtk-3.0/settings.ini
tmux : /home/corpse/.config/tmux/tmux.conf
zshenv : /home/corpse/.zshenv
nvim : /home/corpse/.config/nvim

View File

@ -4,7 +4,7 @@
include "/home/corpse/.gtkrc-2.0.mine"
gtk-theme-name="Skeuos-Black-Dark"
gtk-icon-theme-name="BluecurveRH"
gtk-font-name="System Charcoal 10"
gtk-font-name="Noto Sans 10"
gtk-cursor-theme-name="Grounation"
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ

View File

@ -3,7 +3,7 @@ gtk-application-prefer-dark-theme=1
gtk-cursor-theme-name=Grounation
gtk-theme-name=Skeuos-Black-Dark
gtk-icon-theme-name=BluecurveRH
gtk-font-name=System Charcoal 10
gtk-font-name=Noto Sans 10
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
gtk-toolbar-icon-size=GTK_ICON_SIZE_SMALL_TOOLBAR

12
luarocks/config-5.3.lua Normal file
View File

@ -0,0 +1,12 @@
-- LuaRocks configuration
rocks_trees = {
{ name = "user", root = home .. "/.local/share/luarocks" },
{ name = "system", root = "/usr" },
}
lua_interpreter = "lua5.3"
variables = {
LUA_DIR = "/usr",
LUA_INCDIR = "/usr/include/lua5.3",
LUA_BINDIR = "/usr/bin",
}

View File

@ -1,5 +1,7 @@
setlocal iskeyword+="
setlocal noexpandtab
setlocal shiftwidth=4
setlocal softtabstop=4
setlocal tabstop=4
setlocal foldmethod=syntax

View File

@ -2,15 +2,4 @@ setlocal expandtab
setlocal shiftwidth=2
setlocal softtabstop=2
" let g:html_indent_script1 = "auto"
" let g:html_indent_style1 = "auto"
"
" if &completeopt =~# '.*noselect.*'
" iabbrev </ </<C-X><C-O><C-N>
" imap </<CR> </<C-X><C-O><C-N><CR>
" imap ><CR> ><CR></<c-x><c-o><c-n><c-o><s-o>
" else
" iabbrev </ </<C-X><C-O>
" endif
lua require('cmp').setup.buffer({ sources = {{ name = 'nvim_lsp' }, { name = 'luasnip' }, { name = 'buffer' }}})

View File

@ -0,0 +1,15 @@
setlocal autoindent
setlocal conceallevel=0
setlocal expandtab
setlocal foldmethod=indent
setlocal formatoptions=tcq2l
setlocal shiftwidth=4
setlocal softtabstop=4
setlocal tabstop=8
let s:bufname = expand('%:e')
if s:bufname && s:bufname ==# 'jsonschema'
setlocal shiftwidth=2
setlocal softtabstop=2
setlocal tabstop=4
endif

View File

@ -0,0 +1,8 @@
setlocal autoindent
setlocal conceallevel=0
setlocal expandtab
setlocal foldmethod=syntax
setlocal formatoptions=tcq2l
setlocal shiftwidth=2
setlocal softtabstop=2
setlocal tabstop=4

View File

@ -1,4 +1,4 @@
lua require('cmp').setup.buffer({ sources = { { name = 'nvim_lsp' }, { name = 'luasnip' }, { name = 'buffer' }}})
lua require('cmp').setup.buffer({ sources = { { name = 'nvim_lsp' }, { name = 'nvim_lua' }, { name = 'luasnip' }, { name = 'buffer' }}})
set shiftwidth=2
set tabstop=2

View File

@ -1 +1,5 @@
setlocal noexpandtab
setlocal isfname-== isfname+=32 isfname-=I isfname-=L
setlocal shiftwidth=2
setlocal softtabstop=2
setlocal tabstop=2

View File

@ -0,0 +1,7 @@
setlocal autoindent
setlocal expandtab
setlocal indentkeys-=<:>
setlocal iskeyword+=-,$,#
setlocal shiftwidth=2
setlocal softtabstop=2
setlocal tabstop=2

View File

@ -0,0 +1,15 @@
" Based on vim-json syntax
runtime syntax/json.vim
" Remove syntax group for comments treated as errors
syn clear jsonCommentError
" Define syntax matching comments and their contents
syn keyword jsonCommentTodo FIXME NOTE TBD TODO XXX
syn match jsonLineComment '\/\/.*' contains=@Spell,jsonCommentTodo
syn match jsonCommentSkip '^[ \t]*\*\($\|[ \t]\+\)'
syn region jsonComment start='/\*' end='\*/' contains=@Spell,jsonCommentTodo
" Link comment syntax comment to highlighting
hi! def link jsonLineComment Comment
hi! def link jsonComment Comment

138
nvim/after/syntax/log.vim Normal file
View File

@ -0,0 +1,138 @@
" Operators
"---------------------------------------------------------------------------
syn match logOperator display '[;,\?\:\.\<=\>\~\/\@\&\!$\%\&\+\-\|\^(){}\*#]'
syn match logBrackets display '[\[\]]'
syn match logEmptyLines display '-\{3,}'
syn match logEmptyLines display '\*\{3,}'
syn match logEmptyLines display '=\{3,}'
syn match logEmptyLines display '- - '
" Constants
"---------------------------------------------------------------------------
syn match logNumber '\<-\?\d\+\>'
syn match logHexNumber '\<0[xX]\x\+\>'
syn match logHexNumber '\<\d\x\+\>'
syn match logBinaryNumber '\<0[bB][01]\+\>'
syn match logFloatNumber '\<\d.\d\+[eE]\?\>'
syn keyword logBoolean TRUE FALSE True False true false
syn keyword logNull NULL Null null
syn region logString start=/"/ end=/"/ end=/$/ skip=/\\./
" Quoted strings, but no match on quotes like "don't", "plurals' elements"
syn region logString start=/'\(s \|t \| \w\)\@!/ end=/'/ end=/$/ end=/s / skip=/\\./
" Dates and Times
"---------------------------------------------------------------------------
" Matches 2018-03-12T or 12/03/2018 or 12/Mar/2018
syn match logDate '\d\{2,4}[-\/]\(\d\{2}\|Jan\|Feb\|Mar\|Apr\|May\|Jun\|Jul\|Aug\|Sep\|Oct\|Nov\|Dec\)[-\/]\d\{2,4}T\?'
" Matches 8 digit numbers at start of line starting with 20
syn match logDate '^20\d\{6}'
" Matches Fri Jan 09 or Feb 11 or Apr 3
syn match logDate '\(\(Mon\|Tue\|Wed\|Thu\|Fri\|Sat\|Sun\) \)\?\(Jan\|Feb\|Mar\|Apr\|May\|Jun\|Jul\|Aug\|Sep\|Oct\|Nov\|Dec\) [0-9 ]\d'
" Matches 12:09:38 or 00:03:38.129Z or 01:32:12.102938 +0700
syn match logTime '\d\{2}:\d\{2}:\d\{2}\(\.\d\{2,6}\)\?\(\s\?[-+]\d\{2,4}\|Z\)\?\>' nextgroup=logTimeZone,logSysColumns skipwhite
" Follows logTime, matches UTC or PDT 2019 or 2019 EDT
syn match logTimeZone '[A-Z]\{2,5}\>\( \d\{4}\)\?' contained
syn match logTimeZone '\d\{4} [A-Z]\{2,5}\>' contained
" Entities
"---------------------------------------------------------------------------
syn match logUrl 'http[s]\?:\/\/[^\n|,; '"]\+'
syn match logDomain /\v(^|\s)(\w|-)+(\.(\w|-)+)+\s/
syn match logUUID '\w\{8}-\w\{4}-\w\{4}-\w\{4}-\w\{12}'
syn match logMD5 '\<[a-z0-9]\{32}\>'
syn match logIPV4 '\<\d\{1,3}\(\.\d\{1,3}\)\{3}\>'
syn match logIPV6 '\<\x\{1,4}\(:\x\{1,4}\)\{7}\>'
syn match logMacAddress '\<\x\{2}\(:\x\{2}\)\{5}'
syn match logFilePath '\<\w:\\[^\n|,; ()'"\]{}]\+'
syn match logFilePath '[^a-zA-Z0-9"']\@<=\/\w[^\n|,; ()'"\]{}]\+'
" Syslog Columns
"---------------------------------------------------------------------------
" Syslog hostname, program and process number columns
syn match logSysColumns '\w\(\w\|\.\|-\)\+ \(\w\|\.\|-\)\+\(\[\d\+\]\)\?:' contains=logOperator,logSysProcess contained
syn match logSysProcess '\(\w\|\.\|-\)\+\(\[\d\+\]\)\?:' contains=logOperator,logNumber,logBrackets contained
" XML Tags
"---------------------------------------------------------------------------
" Simplified matches, not accurate with the spec to avoid false positives
syn match logXmlHeader /<?\(\w\|-\)\+\(\s\+\w\+\(="[^"]*"\|='[^']*'\)\?\)*?>/ contains=logString,logXmlAttribute,logXmlNamespace
syn match logXmlDoctype /<!DOCTYPE[^>]*>/ contains=logString,logXmlAttribute,logXmlNamespace
syn match logXmlTag /<\/\?\(\(\w\|-\)\+:\)\?\(\w\|-\)\+\(\(\n\|\s\)\+\(\(\w\|-\)\+:\)\?\(\w\|-\)\+\(="[^"]*"\|='[^']*'\)\?\)*\s*\/\?>/ contains=logString,logXmlAttribute,logXmlNamespace
syn match logXmlAttribute contained "\w\+=" contains=logOperator
syn match logXmlAttribute contained "\(\n\|\s\)\(\(\w\|-\)\+:\)\?\(\w\|-\)\+\(=\)\?" contains=logXmlNamespace,logOperator
syn match logXmlNamespace contained "\(\w\|-\)\+:" contains=logOperator
syn region logXmlComment start=/<!--/ end=/-->/
syn match logXmlCData /<!\[CDATA\[.*\]\]>/
syn match logXmlEntity /\&\w\+;/
" Levels
"---------------------------------------------------------------------------
syn keyword logLevelEmergency EMERGENCY EMERG
syn keyword logLevelAlert ALERT
syn keyword logLevelCritical CRITICAL CRIT FATAL
syn keyword logLevelError ERROR ERR FAILURE SEVERE
syn keyword logLevelWarning WARNING WARN
syn keyword logLevelNotice NOTICE
syn keyword logLevelInfo INFO
syn keyword logLevelDebug DEBUG FINE
syn keyword logLevelTrace TRACE FINER FINEST
" Highlight links
"---------------------------------------------------------------------------
hi def link logNumber Number
hi def link logHexNumber Number
hi def link logBinaryNumber Number
hi def link logFloatNumber Float
hi def link logBoolean Boolean
hi def link logNull Constant
hi def link logString String
hi def link logDate Identifier
hi def link logTime Function
hi def link logTimeZone Identifier
hi def link logUrl Underlined
hi def link logDomain Label
hi def link logUUID Label
hi def link logMD5 Label
hi def link logIPV4 Label
hi def link logIPV6 ErrorMsg
hi def link logMacAddress Label
hi def link logFilePath Conditional
hi def link logSysColumns Conditional
hi def link logSysProcess Include
hi def link logXmlHeader Function
hi def link logXmlDoctype Function
hi def link logXmlTag Identifier
hi def link logXmlAttribute Type
hi def link logXmlNamespace Include
hi def link logXmlComment Comment
hi def link logXmlCData String
hi def link logXmlEntity Special
hi def link logOperator Operator
hi def link logBrackets Comment
hi def link logEmptyLines Comment
hi def link logLevelEmergency ErrorMsg
hi def link logLevelAlert ErrorMsg
hi def link logLevelCritical ErrorMsg
hi def link logLevelError ErrorMsg
hi def link logLevelWarning WarningMsg
hi def link logLevelNotice Character
hi def link logLevelInfo Repeat
hi def link logLevelDebug Debug
hi def link logLevelTrace Comment

View File

@ -0,0 +1,3 @@
syn match makePreCondit "^\s*\(ifeq\>\|else\>\|endif\>\|ifneq\>\|ifdef\>\|ifndef\>\)"
syn match makeIdent "^\s*[^:#= \t]*\s*[:+?!*]="me=e-2
syn match makeIdent "^\s*[^:#= \t]*\s*="me=e-1

56
nvim/after/syntax/sh.vim Normal file
View File

@ -0,0 +1,56 @@
" Shebang
syn match shShebang "^#!.*$" containedin=shComment
" Operators
syn match shOperator '||'
syn match shOperator '&&'
" Match semicolons as Delimiter rather than Operator
syn match shSemicolon ';' containedin=shOperator,zshOperator
" Highlight braces, brackets and parens as Delimiters in zsh
syn match zshDelim '\v(\(|\))' containedin=zshParentheses
syn match zshDelim '\v(\{|\})' containedin=zshBraces
syn match zshDelim '\v(\[|\])' containedin=zshParentheses
" Match command flags in zsh
syn match zshFlag "\v<-\w+" containedin=zshBrackets,zshParentheses
" Special files as Constants
syn match Constant "\v/dev/\w+"
\ containedin=shFunctionOne,shIf,shCmdParenRegion,shCommandSub
" Common commands
let commands = [ 'arch', 'awk', 'b2sum', 'base32', 'base64', 'basename', 'basenc', 'bash', 'brew', 'cat', 'chcon', 'chgrp', 'chown', 'chroot', 'cksum', 'comm', 'cp', 'csplit', 'curl', 'cut', 'date', 'dd', 'defaults', 'df', 'dir', 'dircolors', 'dirname', 'ed', 'env', 'expand', 'factor', 'fmt', 'fold', 'git', 'grep', 'groups', 'head', 'hexdump', 'hostid', 'hostname', 'hugo', 'id', 'install', 'join', 'killall', 'link', 'ln', 'logname', 'md5sum', 'mkdir', 'mkfifo', 'mknod', 'mktemp', 'nice', 'nl', 'nohup', 'npm', 'nproc', 'numfmt', 'od', 'open', 'paste', 'pathchk', 'pr', 'printenv', 'printf', 'ptx', 'readlink', 'realpath', 'rg', 'runcon', 'scutil', 'sed', 'seq', 'sha1sum', 'sha2', 'shred', 'shuf', 'split', 'stat', 'stdbuf', 'stty', 'sudo', 'sum', 'sync', 'tac', 'tee', 'terminfo', 'timeout', 'tmux', 'top', 'touch', 'tput', 'tr', 'truncate', 'tsort', 'tty', 'uname', 'unexpand', 'uniq', 'unlink', 'uptime', 'users', 'vdir', 'vim', 'wc', 'who', 'whoami', 'yabai', 'yes' ]
for i in commands
execute 'syn match shStatement "\v(\w|-)@<!'
\ . i
\ . '(\w|-)@!" containedin=shFunctionOne,shIf,shCmdParenRegion,shCommandSub,zshBrackets'
endfor
" Fix default highlighting groups
hi def link bashSpecialVariables Identifier
hi def link shCmdSubRegion Delimiter
hi def link shDerefSimple Identifier
hi def link shFor Identifier
hi def link shFunctionKey Statement
hi def link shQuote StringDelimiter
hi def link shRange Delimiter
hi def link shSnglCase Delimiter
hi def link shStatement Statement
hi def link shTestOpr Operator
hi def link shVarAssign Operator
hi def link zshDeref Identifier
hi def link zshFunction Function
hi def link zshOperator Operator
hi def link zshStringDelimiter StringDelimiter
hi def link zshSubst Identifier
hi def link zshSubstDelim Delimiter
hi def link zshVariableDef Identifier
" Link custom groups
hi def link shSemicolon Delimiter
hi def link shShebang PreProc
hi def link zshDelim Delimiter
hi def link zshFlag Special

View File

@ -4,11 +4,5 @@ endif
let b:sh_indent_options['continuation-line'] = 2
if executable('shfmt')
let &l:formatprg='shfmt -i ' . &l:shiftwidth . ' -ln posix -sr -ci -s'
endif
nnoremap <buffer> D :Man <c-r><c-w><CR>
" allow for commands with - in the name
set iskeyword+=-

View File

@ -1,75 +1,125 @@
vim.g.mapleader = " "
vim.g.maplocalleader = ","
vim.o.termguicolors = true
local install_path = vim.fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim"
if vim.fn.empty(vim.fn.glob(install_path)) > 0 then
vim.fn.execute("!git clone https://github.com/wbthomason/packer.nvim " .. install_path)
end
vim.g.did_load_filetypes = 1
vim.api.nvim_command([[packadd packer.nvim]])
require("packer").startup({
function(use)
use("wbthomason/packer.nvim")
use({ "wbthomason/packer.nvim", opt = true })
use({
"lewis6991/impatient.nvim",
config = function()
require("impatient")
end,
})
use({ "nathom/filetype.nvim" })
use({
"neovim/nvim-lspconfig",
requires = { "ray-x/lsp_signature.nvim" },
config = [[ require('plugins/lspconfig') ]],
})
use({
"hrsh7th/nvim-cmp",
requires = {
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-nvim-lua",
"hrsh7th/cmp-buffer",
"hrsh7th/cmp-path",
"saadparwaiz1/cmp_luasnip",
},
config = [[ require('plugins/cmp') ]],
})
use({ "L3MON4D3/LuaSnip", requires = { "rafamadriz/friendly-snippets" } })
use({ "windwp/nvim-autopairs", config = [[ require('plugins/autopairs') ]] })
use({
"nvim-telescope/telescope.nvim",
requires = {
{ "nvim-lua/plenary.nvim", opt = true },
{ "nvim-telescope/telescope-fzf-native.nvim", opt = true, run = "make" },
},
config = [[ require('plugins/telescope') ]],
})
use({ "nvim-treesitter/nvim-treesitter", run = ":TSUpdate", config = [[ require('plugins/treesitter') ]] })
use("nathom/filetype.nvim")
use("nvim-lua/plenary.nvim")
use({ "ellisonleao/gruvbox.nvim", requires = { "rktjmp/lush.nvim", opt = true } })
use({
"kyazdani42/nvim-web-devicons",
after = "gruvbox.nvim",
opt = true,
config = [[ require('plugins/webdevicons_nvim') ]],
config = function()
require("plugins.webdevicons_nvim")
end,
})
use({
"nvim-treesitter/nvim-treesitter",
event = "CursorHold",
run = ":TSUpdate",
config = function()
require("plugins.treesitter")
end,
})
use({
"norcalli/nvim-colorizer.lua",
event = "CursorHold",
config = function()
require("plugins.colorizer")
end,
})
use({ "numToStr/Comment.nvim", require("Comment").setup() })
use({ "norcalli/nvim-colorizer.lua", config = [[ require('plugins/colorizer') ]] })
use({ "tpope/vim-fugitive", opt = true, cmd = { "Git", "Gdiff", "Gblame", "Glog", "Git mergetool" } })
use({
"lewis6991/gitsigns.nvim",
event = { "BufRead", "BufNewFile" },
requires = { "nvim-lua/plenary.nvim", opt = true },
config = [[ require('plugins/gitsigns_nvim') ]],
event = { "BufRead" },
config = function()
require("plugins.gitsigns_nvim")
end,
})
use({
"folke/lsp-trouble.nvim",
requires = { "kyazdani42/nvim-web-devicons", opt = true },
config = [[ require('plugins/trouble) ]],
cmd = { "LspTrouble" },
"nvim-telescope/telescope.nvim",
event = "CursorHold",
config = function()
require("plugins.telescope")
end,
}, {
"nvim-telescope/telescope-fzf-native.nvim",
after = "telescope.nvim",
run = "make",
config = function()
require("telescope").load_extension("fzf")
end,
})
use({
"numToStr/Comment.nvim",
event = "BufRead",
config = function()
require("Comment").setup()
end,
})
use({
"neovim/nvim-lspconfig",
event = "BufRead",
config = function()
require("plugins.lsp.lsp-config")
end,
requires = { "ray-x/lsp_signature.nvim", "hrsh7th/cmp-nvim-lsp" },
})
use({
"jose-elias-alvarez/null-ls.nvim",
requires = { "nvim-lua/plenary.nvim", "neovim/nvim-lspconfig" },
config = [[ require('plugins/nulls') ]],
after = "nvim-lspconfig",
config = function()
require("plugins.lsp.null-ls")
end,
})
use({
{
"hrsh7th/nvim-cmp",
event = "InsertEnter",
config = function()
require("plugins.lsp.nvim-cmp")
end,
requires = {
{
"L3MON4D3/LuaSnip",
event = "CursorHold",
config = function()
require("plugins.lsp.luasnip")
end,
requires = { "rafamadriz/friendly-snippets" },
},
},
},
{ "saadparwaiz1/cmp_luasnip", after = "nvim-cmp" },
{ "hrsh7th/cmp-path", after = "nvim-cmp" },
{ "hrsh7th/cmp-buffer", after = "nvim-cmp" },
{ "hrsh7th/cmp-nvim-lua", after = "nvim-cmp" },
})
use({
"windwp/nvim-autopairs",
event = "InsertCharPre",
after = "nvim-cmp",
config = function()
require("plugins.autopairs")
end,
})
use({
"folke/lsp-trouble.nvim",
cmd = { "LspTrouble" },
config = function()
require("plugins.trouble")
end,
})
end,
config = {
@ -82,4 +132,3 @@ require("packer").startup({
},
})
require("packer_compiled")
vim.g.did_load_filetypes = 1

View File

@ -0,0 +1,304 @@
-- Automatically generated packer.nvim plugin loader code
if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then
vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"')
return
end
vim.api.nvim_command('packadd packer.nvim')
local no_errors, error_msg = pcall(function()
local time
local profile_info
local should_profile = false
if should_profile then
local hrtime = vim.loop.hrtime
profile_info = {}
time = function(chunk, start)
if start then
profile_info[chunk] = hrtime()
else
profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6
end
end
else
time = function(chunk, start) end
end
local function save_profiles(threshold)
local sorted_times = {}
for chunk_name, time_taken in pairs(profile_info) do
sorted_times[#sorted_times + 1] = {chunk_name, time_taken}
end
table.sort(sorted_times, function(a, b) return a[2] > b[2] end)
local results = {}
for i, elem in ipairs(sorted_times) do
if not threshold or threshold and elem[2] > threshold then
results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms'
end
end
_G._packer = _G._packer or {}
_G._packer.profile_output = results
end
time([[Luarocks path setup]], true)
local package_path_str = "/home/corpse/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/corpse/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/corpse/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/corpse/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua"
local install_cpath_pattern = "/home/corpse/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so"
if not string.find(package.path, package_path_str, 1, true) then
package.path = package.path .. ';' .. package_path_str
end
if not string.find(package.cpath, install_cpath_pattern, 1, true) then
package.cpath = package.cpath .. ';' .. install_cpath_pattern
end
time([[Luarocks path setup]], false)
time([[try_loadstring definition]], true)
local function try_loadstring(s, component, name)
local success, result = pcall(loadstring(s))
if not success then
vim.schedule(function()
vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {})
end)
end
return result
end
time([[try_loadstring definition]], false)
time([[Defining packer_plugins]], true)
_G.packer_plugins = {
["Comment.nvim"] = {
config = { "\27LJ\2\0025\0\0\2\0\3\0\0066\0\0\0'\1\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\fComment\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/Comment.nvim",
url = "https://github.com/numToStr/Comment.nvim"
},
LuaSnip = {
config = { "\27LJ\2\0023\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\24plugins.lsp.luasnip\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/LuaSnip",
url = "https://github.com/L3MON4D3/LuaSnip"
},
["cmp-buffer"] = {
after_files = { "/home/corpse/.local/share/nvim/site/pack/packer/opt/cmp-buffer/after/plugin/cmp_buffer.lua" },
load_after = {
["nvim-cmp"] = true
},
loaded = false,
needs_bufread = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/cmp-buffer",
url = "https://github.com/hrsh7th/cmp-buffer"
},
["cmp-nvim-lsp"] = {
loaded = true,
path = "/home/corpse/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
},
["cmp-nvim-lua"] = {
after_files = { "/home/corpse/.local/share/nvim/site/pack/packer/opt/cmp-nvim-lua/after/plugin/cmp_nvim_lua.lua" },
load_after = {
["nvim-cmp"] = true
},
loaded = false,
needs_bufread = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/cmp-nvim-lua",
url = "https://github.com/hrsh7th/cmp-nvim-lua"
},
["cmp-path"] = {
after_files = { "/home/corpse/.local/share/nvim/site/pack/packer/opt/cmp-path/after/plugin/cmp_path.lua" },
load_after = {
["nvim-cmp"] = true
},
loaded = false,
needs_bufread = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/cmp-path",
url = "https://github.com/hrsh7th/cmp-path"
},
cmp_luasnip = {
after_files = { "/home/corpse/.local/share/nvim/site/pack/packer/opt/cmp_luasnip/after/plugin/cmp_luasnip.lua" },
load_after = {
["nvim-cmp"] = true
},
loaded = false,
needs_bufread = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/cmp_luasnip",
url = "https://github.com/saadparwaiz1/cmp_luasnip"
},
["filetype.nvim"] = {
loaded = true,
path = "/home/corpse/.local/share/nvim/site/pack/packer/start/filetype.nvim",
url = "https://github.com/nathom/filetype.nvim"
},
["friendly-snippets"] = {
loaded = true,
path = "/home/corpse/.local/share/nvim/site/pack/packer/start/friendly-snippets",
url = "https://github.com/rafamadriz/friendly-snippets"
},
["gitsigns.nvim"] = {
config = { "\27LJ\2\0025\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\26plugins.gitsigns_nvim\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/gitsigns.nvim",
url = "https://github.com/lewis6991/gitsigns.nvim"
},
["gruvbox.nvim"] = {
loaded = true,
path = "/home/corpse/.local/share/nvim/site/pack/packer/start/gruvbox.nvim",
url = "https://github.com/ellisonleao/gruvbox.nvim"
},
["impatient.nvim"] = {
config = { "\27LJ\2\2)\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\14impatient\frequire\0" },
loaded = true,
path = "/home/corpse/.local/share/nvim/site/pack/packer/start/impatient.nvim",
url = "https://github.com/lewis6991/impatient.nvim"
},
["lsp-trouble.nvim"] = {
commands = { "LspTrouble" },
config = { "\27LJ\2\2/\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\20plugins.trouble\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/lsp-trouble.nvim",
url = "https://github.com/folke/lsp-trouble.nvim"
},
["lsp_signature.nvim"] = {
loaded = true,
path = "/home/corpse/.local/share/nvim/site/pack/packer/start/lsp_signature.nvim",
url = "https://github.com/ray-x/lsp_signature.nvim"
},
["lush.nvim"] = {
loaded = true,
path = "/home/corpse/.local/share/nvim/site/pack/packer/start/lush.nvim",
url = "https://github.com/rktjmp/lush.nvim"
},
["null-ls.nvim"] = {
config = { "\27LJ\2\0023\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\24plugins.lsp.null-ls\frequire\0" },
load_after = {
["nvim-lspconfig"] = true
},
loaded = false,
needs_bufread = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/null-ls.nvim",
url = "https://github.com/jose-elias-alvarez/null-ls.nvim"
},
["nvim-autopairs"] = {
config = { "\27LJ\2\0021\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\22plugins.autopairs\frequire\0" },
load_after = {
["nvim-cmp"] = true
},
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/nvim-autopairs",
url = "https://github.com/windwp/nvim-autopairs"
},
["nvim-cmp"] = {
after = { "nvim-autopairs", "cmp-buffer", "cmp_luasnip", "cmp-nvim-lua", "cmp-path" },
config = { "\27LJ\2\0024\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\25plugins.lsp.nvim-cmp\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/nvim-cmp",
url = "https://github.com/hrsh7th/nvim-cmp"
},
["nvim-colorizer.lua"] = {
config = { "\27LJ\2\0021\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\22plugins.colorizer\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/nvim-colorizer.lua",
url = "https://github.com/norcalli/nvim-colorizer.lua"
},
["nvim-lspconfig"] = {
after = { "null-ls.nvim" },
config = { "\27LJ\2\0026\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\27plugins.lsp.lsp-config\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/nvim-lspconfig",
url = "https://github.com/neovim/nvim-lspconfig"
},
["nvim-treesitter"] = {
config = { "\27LJ\2\0022\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\23plugins.treesitter\frequire\0" },
loaded = false,
needs_bufread = true,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/nvim-treesitter",
url = "https://github.com/nvim-treesitter/nvim-treesitter"
},
["nvim-web-devicons"] = {
config = { "\27LJ\2\0028\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\29plugins.webdevicons_nvim\frequire\0" },
loaded = false,
needs_bufread = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/nvim-web-devicons",
url = "https://github.com/kyazdani42/nvim-web-devicons"
},
["packer.nvim"] = {
loaded = false,
needs_bufread = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/packer.nvim",
url = "https://github.com/wbthomason/packer.nvim"
},
["plenary.nvim"] = {
loaded = true,
path = "/home/corpse/.local/share/nvim/site/pack/packer/start/plenary.nvim",
url = "https://github.com/nvim-lua/plenary.nvim"
},
["telescope.nvim"] = {
config = { "\27LJ\2\0021\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\22plugins.telescope\frequire\0" },
loaded = false,
needs_bufread = true,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/telescope.nvim",
url = "https://github.com/nvim-telescope/telescope.nvim"
},
["vim-fugitive"] = {
commands = { "Git", "Gdiff", "Gblame", "Glog", "Git mergetool" },
loaded = false,
needs_bufread = true,
only_cond = false,
path = "/home/corpse/.local/share/nvim/site/pack/packer/opt/vim-fugitive",
url = "https://github.com/tpope/vim-fugitive"
}
}
time([[Defining packer_plugins]], false)
-- Config for: impatient.nvim
time([[Config for impatient.nvim]], true)
try_loadstring("\27LJ\2\2)\0\0\2\0\2\0\0046\0\0\0'\1\1\0B\0\2\1K\0\1\0\14impatient\frequire\0", "config", "impatient.nvim")
time([[Config for impatient.nvim]], false)
-- Command lazy-loads
time([[Defining lazy-load commands]], true)
pcall(vim.cmd, [[command -nargs=* -range -bang -complete=file LspTrouble lua require("packer.load")({'lsp-trouble.nvim'}, { cmd = "LspTrouble", l1 = <line1>, l2 = <line2>, bang = <q-bang>, args = <q-args>, mods = "<mods>" }, _G.packer_plugins)]])
pcall(vim.cmd, [[command -nargs=* -range -bang -complete=file Gdiff lua require("packer.load")({'vim-fugitive'}, { cmd = "Gdiff", l1 = <line1>, l2 = <line2>, bang = <q-bang>, args = <q-args>, mods = "<mods>" }, _G.packer_plugins)]])
pcall(vim.cmd, [[command -nargs=* -range -bang -complete=file Gblame lua require("packer.load")({'vim-fugitive'}, { cmd = "Gblame", l1 = <line1>, l2 = <line2>, bang = <q-bang>, args = <q-args>, mods = "<mods>" }, _G.packer_plugins)]])
pcall(vim.cmd, [[command -nargs=* -range -bang -complete=file Git lua require("packer.load")({'vim-fugitive'}, { cmd = "Git", l1 = <line1>, l2 = <line2>, bang = <q-bang>, args = <q-args>, mods = "<mods>" }, _G.packer_plugins)]])
pcall(vim.cmd, [[au CmdUndefined Git mergetool ++once lua require"packer.load"({'vim-fugitive'}, {}, _G.packer_plugins)]])
pcall(vim.cmd, [[command -nargs=* -range -bang -complete=file Glog lua require("packer.load")({'vim-fugitive'}, { cmd = "Glog", l1 = <line1>, l2 = <line2>, bang = <q-bang>, args = <q-args>, mods = "<mods>" }, _G.packer_plugins)]])
time([[Defining lazy-load commands]], false)
vim.cmd [[augroup packer_load_aucmds]]
vim.cmd [[au!]]
-- Event lazy-loads
time([[Defining lazy-load event autocommands]], true)
vim.cmd [[au InsertCharPre * ++once lua require("packer.load")({'nvim-autopairs'}, { event = "InsertCharPre *" }, _G.packer_plugins)]]
vim.cmd [[au CursorHold * ++once lua require("packer.load")({'nvim-treesitter', 'LuaSnip', 'telescope.nvim', 'nvim-colorizer.lua'}, { event = "CursorHold *" }, _G.packer_plugins)]]
vim.cmd [[au InsertEnter * ++once lua require("packer.load")({'nvim-cmp'}, { event = "InsertEnter *" }, _G.packer_plugins)]]
vim.cmd [[au BufRead * ++once lua require("packer.load")({'gitsigns.nvim', 'nvim-lspconfig', 'Comment.nvim'}, { event = "BufRead *" }, _G.packer_plugins)]]
time([[Defining lazy-load event autocommands]], false)
vim.cmd("augroup END")
if should_profile then save_profiles() end
end)
if not no_errors then
vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None')
end

View File

@ -49,3 +49,5 @@ require("nvim-autopairs").add_rules({
end)
:use_key("]"),
})
require("cmp").event:on("confirm_done", require("nvim-autopairs.completion.cmp").on_confirm_done())

View File

@ -1,7 +1,3 @@
if not packer_plugins["plenary.nvim"].loaded then
vim.cmd([[packadd plenary.nvim]])
end
require("gitsigns").setup({
signcolumn = true,
current_line_blame_opts = { delay = 2000, virt_text_pos = "right_align" },
@ -10,7 +6,12 @@ require("gitsigns").setup({
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" },
changedelete = {
hl = "GitSignsChange",
text = "",
numhl = "GitSignsChangeNr",
linehl = "GitSignsChangeLn",
},
},
update_debounce = 200,
use_internal_diff = true,
@ -23,13 +24,11 @@ require("gitsigns").setup({
vim.g.fugitive_summary_format = "%an\t%s"
local map = vim.api.nvim_set_keymap
local default_opts = { noremap = true, silent = true }
map("n", "<Leader>tt", ":Gitsigns toggle_signs<CR>", default_opts)
map("n", "<Leader>tb", ":Gitsigns toggle_current_line_blame<CR>", default_opts)
map("n", "<Leader>ff", ":G<CR>", default_opts)
map("n", "<Leader>fc", ":GCheckout<CR>", default_opts)
map("n", "<Leader>fd", ":Gvdiffsplit!<CR>", default_opts)
map("n", "<Leader>fh", ":diffget //2<CR>", default_opts)
map("n", "<Leader>fl", ":diffget //3<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<Leader>tt", ":Gitsigns toggle_signs<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<Leader>tb", ":Gitsigns toggle_current_line_blame<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<Leader>ff", ":G<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<Leader>fc", ":GCheckout<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<Leader>fd", ":Gvdiffsplit!<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<Leader>fh", ":diffget //2<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<Leader>fl", ":diffget //3<CR>", default_opts)

View File

@ -0,0 +1,101 @@
local lsconf = require("lspconfig")
local lsp_utils = require("plugins.lsp.lsp-utils")
local capabilities = lsp_utils.capabilities()
local flags = {
allow_incremental_sync = true,
debounce_text_changes = 200,
}
local runtime_path = vim.split(package.path, ";")
table.insert(runtime_path, "lua/?.lua")
table.insert(runtime_path, "lua/?/init.lua")
local sumneko_root_path = "/mnt/wd1tb/catacombs/code/lua-language-server"
local sumneko_binary = sumneko_root_path .. "/bin/Linux/lua-language-server"
local handlers = {
["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
update_in_insert = true,
severity_sort = true,
virtual_text = false,
}),
["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { border = "single" }),
["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, { border = "single" }),
["textDocument/definition"] = lsp_utils.goto_split("split"),
}
local on_attach = function(client, bufnr)
lsp_utils.disable_formatting(client)
lsp_utils.mappings(bufnr)
require("lsp_signature").on_attach({
bind = true,
hint_prefix = "",
fix_pos = true,
padding = " ",
handler_opts = { border = "shadow" },
})
end
lsconf.sumneko_lua.setup({
cmd = { sumneko_binary, "-E", sumneko_root_path .. "/main.lua" },
flags = flags,
capabilities = capabilities,
on_attach = on_attach,
handlers = handlers,
settings = {
Lua = {
completion = {
enable = true,
showWord = "Disable",
},
runtime = {
version = "LuaJIT",
path = runtime_path,
},
diagnostics = {
globals = { "vim" },
},
workspace = {
library = vim.api.nvim_get_runtime_file("", true),
},
telemetry = {
enable = false,
},
},
},
})
require("lspconfig/configs").ls_emmet = {
flags = flags,
capabilities = capabilities,
on_attach = on_attach,
handlers = handlers,
default_config = {
cmd = { "ls_emmet", "--stdio" },
filetypes = {
"html",
"css",
"scss",
"xml",
"xsl",
"sass",
"stylus",
"less",
"sss",
"svelte",
},
root_dir = function(fname)
return vim.loop.cwd()
end,
settings = {},
},
}
local servers = { "html", "cssls", "gopls", "tailwindcss", "vimls", "jsonls" }
for _, lsp in ipairs(servers) do
lsconf[lsp].setup({
on_attach = on_attach,
capabilities = capabilities,
handlers = handlers,
flags = flags,
})
end

View File

@ -0,0 +1,74 @@
vim.cmd([[
highlight LspDiagnosticsLineNrError guibg=#51202A guifg=#FF0000 gui=bold
highlight LspDiagnosticsLineNrWarning guibg=#51412A guifg=#FFA500 gui=bold
highlight LspDiagnosticsLineNrInformation guibg=#1E535D guifg=#00FFFF gui=bold
highlight LspDiagnosticsLineNrHint guibg=#1E205D guifg=#008bbd gui=bold
sign define LspDiagnosticsSignError text= texthl=LspDiagnosticsSignError linehl= numhl=LspDiagnosticsLineNrError
sign define LspDiagnosticsSignWarning text= texthl=LspDiagnosticsSignWarning linehl= numhl=LspDiagnosticsLineNrWarning
sign define LspDiagnosticsSignInformation text= texthl=LspDiagnosticsSignInformation linehl= numhl=LspDiagnosticsLineNrInformation
sign define LspDiagnosticsSignHint text= texthl=LspDiagnosticsSignHint linehl= numhl=LspDiagnosticsLineNrHint
]])
local U = {}
function U.fmt_on_save(client)
if client.resolved_capabilities.document_formatting then
vim.api.nvim_command("autocmd BufWritePre <buffer> lua vim.lsp.buf.formatting_sync()")
end
end
function U.capabilities()
local capabilities = vim.lsp.protocol.make_client_capabilities()
return require("cmp_nvim_lsp").update_capabilities(capabilities)
end
---Disable formatting for servers. Handles by null-ls
---@source https://github.com/jose-elias-alvarez/null-ls.nvim/wiki/Avoiding-LSP-formatting-conflicts
function U.disable_formatting(client)
client.resolved_capabilities.document_formatting = false
client.resolved_capabilities.document_range_formatting = false
end
function U.mappings(bufnr)
local opts = { noremap = true, silent = true }
vim.api.nvim_buf_set_keymap(bufnr, "n", "gD", "<cmd>lua vim.lsp.buf.declaration()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gd", "<cmd>lua vim.lsp.buf.definition()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gh", "<cmd>lua vim.lsp.buf.hover()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gr", "<cmd>lua vim.lsp.buf.references()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "i", "<C-h>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>ca", "<cmd>lua vim.lsp.buf.code_action()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "{g", "<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "}g", "<cmd>lua vim.lsp.diagnostic.goto_next()<CR>", opts)
end
function U.goto_split(split_cmd)
local handler = function(_, result, ctx)
if result == nil or vim.tbl_isempty(result) then
local _ = require("vim.lsp.log").info() and require("vim.lsp.log").info(ctx.method, "No location found")
return nil
end
if split_cmd then
vim.cmd(split_cmd)
end
if vim.tbl_islist(result) then
vim.lsp.util.jump_to_location(result[1])
if #result > 1 then
vim.lsp.util.set_qflist(vim.lsp.util.locations_to_items(result))
vim.api.nvim_command("copen")
vim.api.nvim_command("wincmd p")
end
else
vim.lsp.util.jump_to_location(result)
end
end
return handler
end
return U

View File

@ -0,0 +1,19 @@
local types = require("luasnip.util.types")
require("luasnip").config.setup({
ext_opts = {
[types.choiceNode] = {
active = {
virt_text = { { "", "GruvboxOrange" } },
},
},
[types.insertNode] = {
active = {
virt_text = { { "", "DiffDelete" } },
},
},
},
})
-- Loading any vscode snippets from plugins
require("luasnip.loaders.from_vscode").lazy_load()

View File

@ -0,0 +1,37 @@
local lsp_utils = require("plugins.lsp.lsp-utils")
local fmt = require("null-ls").builtins.formatting
local dgn = require("null-ls").builtins.diagnostics
require("null-ls").config({
sources = {
-- # FORMATTING #
fmt.trim_whitespace.with({
filetypes = { "text", "sh", "zsh", "yaml", "toml", "make", "conf" },
}),
-- NOTE:
-- 1. both needs to be enabled to so prettier can apply eslint fixes
-- 2. and prettierd should come first
fmt.prettierd,
fmt.eslint_d,
fmt.rustywind,
fmt.stylua,
fmt.gofmt,
fmt.shfmt,
-- # DIAGNOSTICS #
dgn.eslint_d,
dgn.shellcheck,
dgn.luacheck.with({
extra_args = { "--globals", "vim", "--std", "luajit" },
}),
require("null-ls").builtins.code_actions.gitsigns,
},
})
-- NOTE: don't move this setup() call elsewhere
require("lspconfig")["null-ls"].setup({
on_attach = function(client, bufnr)
lsp_utils.fmt_on_save(client)
lsp_utils.mappings(bufnr)
end,
})

View File

@ -1,14 +1,5 @@
local has_words_before = function()
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
end
if not packer_plugins["plenary.nvim"].loaded then
vim.cmd([[packadd plenary.nvim]])
end
local luasnip = require("luasnip")
local cmp = require("cmp")
local luasnip = require("luasnip")
cmp.setup({
formatting = {
@ -51,11 +42,6 @@ cmp.setup({
return vim_item
end,
},
snippet = {
expand = function(args)
luasnip.lsp_expand(args.body)
end,
},
mapping = {
["<C-p>"] = cmp.mapping.select_prev_item(),
["<C-n>"] = cmp.mapping.select_next_item(),
@ -65,43 +51,38 @@ cmp.setup({
return vim.fn.pumvisible() == 1 and cmp.close() or cmp.complete()
end),
["<C-e>"] = cmp.mapping.close(),
["<CR>"] = cmp.mapping.confirm({ select = true }),
["<Tab>"] = cmp.mapping(function(fallback)
["<CR>"] = cmp.mapping.confirm({
behavior = cmp.ConfirmBehavior.Replace,
select = true,
}),
["<Tab>"] = function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip and luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
elseif has_words_before() then
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("<tab>", true, true, true), "n", true)
elseif 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, {
"i",
"s",
}),
["<S-Tab>"] = cmp.mapping(function(fallback)
end,
["<S-Tab>"] = function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip and luasnip.jumpable(-1) then
luasnip.jump(-1)
elseif has_words_before() then
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("<s-tab>", true, true, true), "n", true)
elseif luasnip.jumpable(-1) then
vim.fn.feedkeys(vim.api.nvim_replace_termcodes("<Plug>luasnip-jump-prev", true, true, true), "")
else
fallback()
end
end, {
"i",
"s",
}),
end,
},
preselect = cmp.PreselectMode.Item,
sources = {
{ name = "path" },
{ name = "buffer", Keyword_length = 5 },
sources = cmp.config.sources({
{ name = "luasnip", max_item_count = 5 },
{ name = "nvim_lsp", max_item_count = 5 },
{ name = "path", max_item_count = 10 },
{ name = "buffer", max_item_count = 10 },
}),
snippet = {
expand = function(args)
require("luasnip").lsp_expand(args.body)
end,
},
experimental = { native_menu = false },
})
local cmp_autopairs = require("nvim-autopairs.completion.cmp")
cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done())

View File

@ -1,116 +0,0 @@
vim.cmd([[
highlight LspDiagnosticsLineNrError guibg=#51202A guifg=#FF0000 gui=bold
highlight LspDiagnosticsLineNrWarning guibg=#51412A guifg=#FFA500 gui=bold
highlight LspDiagnosticsLineNrInformation guibg=#1E535D guifg=#00FFFF gui=bold
highlight LspDiagnosticsLineNrHint guibg=#1E205D guifg=#008bbd gui=bold
sign define LspDiagnosticsSignError text= texthl=LspDiagnosticsSignError linehl= numhl=LspDiagnosticsLineNrError
sign define LspDiagnosticsSignWarning text= texthl=LspDiagnosticsSignWarning linehl= numhl=LspDiagnosticsLineNrWarning
sign define LspDiagnosticsSignInformation text= texthl=LspDiagnosticsSignInformation linehl= numhl=LspDiagnosticsLineNrInformation
sign define LspDiagnosticsSignHint text= texthl=LspDiagnosticsSignHint linehl= numhl=LspDiagnosticsLineNrHint
]])
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
update_in_insert = true,
severity_sort = true,
virtual_text = false,
})
local nvim_lsp = require("lspconfig")
local on_attach = function(client, bufnr)
vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc")
local opts = { noremap = true, silent = true }
vim.api.nvim_buf_set_keymap(bufnr, "n", "gd", "<cmd>lua vim.lsp.buf.definition()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "K", "<cmd>lua vim.lsp.buf.hover()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "<C-k>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gr", "<cmd>lua vim.lsp.buf.references()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>ca", "<cmd>lua vim.lsp.buf.code_action()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "}d", "<cmd>lua vim.lsp.diagnostic.goto_next()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "qq", "<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>", opts)
vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, {
border = "single",
})
require("lsp_signature").on_attach({
bind = true,
hint_prefix = "",
handler_opts = { border = "rounded" },
})
if client.resolved_capabilities.document_formatting then
vim.cmd("autocmd BufWritePre <buffer> lua vim.lsp.buf.formatting_sync()")
end
end
require("lspconfig/configs").ls_emmet = {
default_config = {
cmd = { "ls_emmet", "--stdio" },
filetypes = {
"html",
"css",
"scss",
"xml",
"xsl",
"sass",
"stylus",
"less",
"sss",
"svelte",
},
root_dir = function(fname)
return vim.loop.cwd()
end,
settings = {},
},
}
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.documentationFormat = { "markdown", "plaintext" }
capabilities.textDocument.completion.completionItem.snippetSupport = true
capabilities.textDocument.completion.completionItem.preselectSupport = true
capabilities.textDocument.completion.completionItem.insertReplaceSupport = true
capabilities.textDocument.completion.completionItem.labelDetailsSupport = true
capabilities.textDocument.completion.completionItem.deprecatedSupport = true
capabilities.textDocument.completion.completionItem.commitCharactersSupport = true
capabilities.textDocument.completion.completionItem.tagSupport = { valueSet = { 1 } }
capabilities.textDocument.completion.completionItem.resolveSupport = {
properties = { "documentation", "detail", "additionalTextEdits" },
}
capabilities = require("cmp_nvim_lsp").update_capabilities(capabilities)
local servers = { "html", "cssls", "gopls", "tailwindcss", "vimls", "ls_emmet", "null-ls" }
for _, lsp in ipairs(servers) do
nvim_lsp[lsp].setup({
on_attach = on_attach,
capabilities = capabilities,
flags = { debounce_text_changes = 150 },
})
end
local sumneko_root_path = "/mnt/wd1tb/catacombs/code/lua-language-server"
local sumneko_binary = sumneko_root_path .. "/bin/Linux/lua-language-server"
local runtime_path = vim.split(package.path, ";")
table.insert(runtime_path, "lua/?.lua")
table.insert(runtime_path, "lua/?/init.lua")
require("lspconfig").sumneko_lua.setup({
cmd = { sumneko_binary, "-E", sumneko_root_path .. "/main.lua" },
on_attach = on_attach,
capabilities = capabilities,
settings = {
Lua = {
runtime = {
version = "LuaJIT",
path = runtime_path,
},
diagnostics = {
globals = { "vim" },
},
workspace = {
library = vim.api.nvim_get_runtime_file("", true),
},
telemetry = {
enable = false,
},
},
},
})

View File

@ -1,9 +0,0 @@
require("null-ls").config({
sources = {
require("null-ls").builtins.formatting.prettierd,
require("null-ls").builtins.formatting.rustywind,
require("null-ls").builtins.formatting.stylua,
require("null-ls").builtins.formatting.shfmt,
require("null-ls").builtins.diagnostics.shellcheck,
},
})

View File

@ -1,6 +1,3 @@
vim.cmd([[packadd plenary.nvim]])
vim.cmd([[packadd telescope-fzf-native.nvim]])
local actions = require("telescope.actions")
local previewers = require("telescope.previewers")
local Job = require("plenary.job")
@ -130,14 +127,17 @@ require("telescope").setup({
},
},
})
require("telescope").load_extension("fzf")
local map = vim.api.nvim_set_keymap
local default_opts = { noremap = true, silent = true }
map("n", "<F1>", "<cmd>Telescope help_tags<CR>", default_opts)
map("n", "<F2>", '<cmd>lua require("telescope.builtin").find_files({cwd = "%:h", hidden=true})<CR>', default_opts)
map("n", "<F3>", "<cmd>Telescope file_browser hidden=true<CR>", default_opts)
map("n", "<F4>", "<cmd>Telescope buffers<CR>", default_opts)
map("n", "<M-f>", "<cmd>Telescope live_grep<CR>", default_opts)
map("n", "<M-g>", "<cmd>Telescope git_commits<CR>", default_opts)
map("n", "<M-S-r>", "<cmd>Telescope resume<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<F1>", "<cmd>Telescope help_tags<CR>", default_opts)
vim.api.nvim_set_keymap(
"n",
"<F2>",
'<cmd>lua require("telescope.builtin").find_files({cwd = "%:h", hidden=true})<CR>',
default_opts
)
vim.api.nvim_set_keymap("n", "<F3>", "<cmd>Telescope file_browser hidden=true<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<F4>", "<cmd>Telescope buffers<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<M-f>", "<cmd>Telescope live_grep<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<M-g>", "<cmd>Telescope git_commits<CR>", default_opts)
vim.api.nvim_set_keymap("n", "<M-S-r>", "<cmd>Telescope resume<CR>", default_opts)

View File

@ -0,0 +1,11 @@
require("trouble").setup()({
use_lsp_diagnostic_signs = true,
})
local opts = { noremap = true, silent = true }
vim.api.nvim_set_keymap("n", "<leader>xx", "<cmd>Trouble<cr>", opts)
vim.api.nvim_set_keymap("n", "<leader>xw", "<cmd>Trouble lsp_workspace_diagnostics<cr>", opts)
vim.api.nvim_set_keymap("n", "<leader>xd", "<cmd>Trouble lsp_document_diagnostics<cr>", opts)
vim.api.nvim_set_keymap("n", "<leader>xl", "<cmd>Trouble loclist<cr>", opts)
vim.api.nvim_set_keymap("n", "<leader>xq", "<cmd>Trouble quickfix<cr>", opts)
vim.api.nvim_set_keymap("n", "gR", "<cmd>Trouble lsp_references<cr>", opts)

View File

@ -1,8 +1,6 @@
local cmd = vim.cmd
local M = {}
function M.init()
cmd([[packadd nvim-web-devicons]])
require("nvim-web-devicons").setup({
override = {
html = {

View File

@ -13,9 +13,8 @@ if !exists('autocommands_loaded') && has('autocmd')
aug Miscs
au TextYankPost * silent! lua vim.highlight.on_yank{timeout = 80, on_visual=true}
au FileType TelescopePrompt lua require('cmp').setup.buffer { enabled = false }
au BufEnter * set fo-=c fo-=r fo-=o
au CursorHold,CursorHoldI * lua vim.lsp.diagnostic.show_line_diagnostics({focusable=false})
au CursorHold,CursorHoldI * lua vim.lsp.diagnostic.show_line_diagnostics({focusable=false, show_header=false})
aug END
aug OnSave

View File

@ -1,4 +1,5 @@
local disabled_builtin_plugins = {
"man",
"gzip",
"zip",
"zipPlugin",

View File

@ -1,8 +0,0 @@
package main
import "fmt"
func main() {
{{++}}
fmt.Println("vim-go")
}

View File

@ -1,7 +1,8 @@
MangoHud-0.6.5_1
SDL-1.2.15_12
SDL_mixer-1.2.12_14
StyLua-0.11.1_1
StyLua-0.11.2_1
Vulkan-Headers-1.2.182_1
alacritty-0.9.0_1
alsa-plugins-1.2.5_1
alsa-plugins-ffmpeg-1.2.5_1
@ -10,6 +11,7 @@ alsa-plugins-pulseaudio-1.2.5_1
alsa-utils-1.2.5.1_1
amdvlk-2021.Q3.7_1
amdvlk-32bit-2021.Q3.7_1
amfora-1.8.0_1
android-tools-31.0.3_1
android-udev-rules-20210501_1
audacious-4.1_1
@ -23,13 +25,13 @@ catgirl-1.9a_2
cgo-0.6.1_1
chrony-4.1_1
cmake-3.21.1_1
curl-7.79.1_2
curl-7.80.0_1
delta-0.9.2_1
delve-1.7.1_1
dfc-3.1.1_2
dkms-2.8.4_2
droidcam-1.7.3_1
dunst-1.6.1_1
dunst-1.7.1_1
elinks-0.14.3_1
fcitx-4.2.9.8_5
fcitx-configtool-0.4.10_2
@ -47,7 +49,7 @@ git-2.33.1_1
git-libsecret-2.33.1_1
glu-9.0.2_2
glxinfo-8.4.0_3
gmic-2.8.0_1
gmic-2.9.9_1
gnome-ssh-askpass-8.8p1_1
gnupg2-2.2.32_1
go-1.17.2_1
@ -130,13 +132,14 @@ sxhkd-0.6.2_1
sxiv-26_1
tmux-3.2a_1
toilet-0.3_3
trackballs-1.3.3_1
transmission-3.00_5
tremc-0.9.2_2
tty-solitaire-1.3.1_1
udevil-0.4.4_5
unclutter-xfixes-1.6_1
unrar-6.0.7_1
vkBasalt-0.3.2.4_1
vkBasalt-32bit-0.3.2.4_1
vkd3d-1.2_1
vkd3d-32bit-1.2_1
void-repo-multilib-6_3