diff --git a/.config/bspwm/bspwmrc b/.config/bspwm/bspwmrc index 9f04aa8..ee091fb 100755 --- a/.config/bspwm/bspwmrc +++ b/.config/bspwm/bspwmrc @@ -1,14 +1,11 @@ #! /bin/sh # Autostart -xrandr --display 0 144 & -xrandr --display 1 60 & grep -x dunst > /dev/null || dunst -conf $HOME/.config/dunst/dunstrc & sxhkd & xrdb $HOME/.Xresources $HOME/.config/polybar/launch.sh & pgrep -x polkit-gnome-au > /dev/null || /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & -#pgrep -x glava > /dev/null || glava --desktop & feh --bg-fill --randomize $HOME/backgrounds/* /usr/share/backgrounds/* & pgrep -x nm-applet > /dev/null || nm-applet & pgrep -x pasystray > /dev/null || pasystray & @@ -26,4 +23,3 @@ bspc config window_gap 12 bspc config split_ratio 0.50 bspc config borderless_monocle true bspc config gapless_monocle true - diff --git a/.config/glava/bars b/.config/glava/bars deleted file mode 120000 index 09377e3..0000000 --- a/.config/glava/bars +++ /dev/null @@ -1 +0,0 @@ -/etc/xdg/glava//bars \ No newline at end of file diff --git a/.config/glava/bars.glsl b/.config/glava/bars.glsl deleted file mode 100755 index 5f6bf94..0000000 --- a/.config/glava/bars.glsl +++ /dev/null @@ -1,33 +0,0 @@ - -/* Center line thickness (pixels) */ -#define C_LINE 1 -/* Width (in pixels) of each bar */ -#define BAR_WIDTH 4 -/* Width (in pixels) of each bar gap */ -#define BAR_GAP 2 -/* Outline color */ -#define BAR_OUTLINE #262626 -/* Outline width (in pixels, set to 0 to disable outline drawing) */ -#define BAR_OUTLINE_WIDTH 0 -/* Amplify magnitude of the results each bar displays */ -#define AMPLIFY 300 -/* Whether the current settings use the alpha channel; - enabling this is required for alpha to function - correctly on X11 with `"native"` transparency. */ -#define USE_ALPHA 0 -/* How strong the gradient changes */ -#define GRADIENT_POWER 60 -/* Bar color changes with height */ -/* define GRADIENT (d / GRADIENT_POWER + 1) */ -/* Bar color */ -#define COLOR mix(#882222, #2233FF, clamp(d / 100, 0, 1)) -/* Direction that the bars are facing, 0 for inward, 1 for outward */ -#define DIRECTION 0 -/* Whether to switch left/right audio buffers */ -#define INVERT 0 -/* Whether to flip the output vertically */ -#define FLIP 0 -/* Whether to mirror output along `Y = X`, causing output to render on the left side of the window */ -/* Use with `FLIP 1` to render on the right side */ -#define MIRROR_YX 0 - diff --git a/.config/glava/circle b/.config/glava/circle deleted file mode 120000 index f53c651..0000000 --- a/.config/glava/circle +++ /dev/null @@ -1 +0,0 @@ -/etc/xdg/glava//circle \ No newline at end of file diff --git a/.config/glava/circle.glsl b/.config/glava/circle.glsl deleted file mode 100755 index 83b8ad3..0000000 --- a/.config/glava/circle.glsl +++ /dev/null @@ -1,24 +0,0 @@ -/* center radius (pixels) */ -#define C_RADIUS 128 -/* center line thickness (pixels) */ -#define C_LINE 1.5 -/* outline color */ -#define OUTLINE #333333 -/* Amplify magnitude of the results each bar displays */ -#define AMPLIFY 150 -/* Angle (in radians) for how much to rotate the visualizer */ -#define ROTATE (PI / 2) -/* Whether to switch left/right audio buffers */ -#define INVERT 0 -/* Whether to fill in the space between the line and inner circle */ -#define C_FILL 0 -/* Whether to apply a post-processing image smoothing effect - 1 to enable, 0 to disable. Only works with `xroot` transparency, - and improves performance if disabled. */ -#define C_SMOOTH 1 - -/* Gravity step, overrude frin `smooth_parameters.glsl` */ -#request setgravitystep 6.0 - -/* Smoothing factor, override from `smooth_parameters.glsl` */ -#request setsmoothfactor 0.01 diff --git a/.config/glava/env_KWin.glsl b/.config/glava/env_KWin.glsl deleted file mode 100755 index aa168ba..0000000 --- a/.config/glava/env_KWin.glsl +++ /dev/null @@ -1,8 +0,0 @@ -#request setdecorated false -#request setxwintype "normal" -#request addxwinstate "below" -#request addxwinstate "skip_taskbar" -#request addxwinstate "skip_pager" -#request addxwinstate "pinned" -#request setclickthrough true - diff --git a/.config/glava/env_Openbox.glsl b/.config/glava/env_Openbox.glsl deleted file mode 100755 index c95c616..0000000 --- a/.config/glava/env_Openbox.glsl +++ /dev/null @@ -1,2 +0,0 @@ -#request setxwintype "desktop" -#request addxwinstate "pinned" diff --git a/.config/glava/env_Xfwm4.glsl b/.config/glava/env_Xfwm4.glsl deleted file mode 100755 index 1c20359..0000000 --- a/.config/glava/env_Xfwm4.glsl +++ /dev/null @@ -1,3 +0,0 @@ -#request setxwintype "desktop" -#request addxwinstate "pinned" -#request addxwinstate "below" diff --git a/.config/glava/env_awesome.glsl b/.config/glava/env_awesome.glsl deleted file mode 100755 index 7f2bba3..0000000 --- a/.config/glava/env_awesome.glsl +++ /dev/null @@ -1 +0,0 @@ -#request setxwintype "!-" diff --git a/.config/glava/env_default.glsl b/.config/glava/env_default.glsl deleted file mode 100755 index 90336cc..0000000 --- a/.config/glava/env_default.glsl +++ /dev/null @@ -1 +0,0 @@ -#request setxwintype "desktop" diff --git a/.config/glava/env_i3.glsl b/.config/glava/env_i3.glsl deleted file mode 100755 index 7f2bba3..0000000 --- a/.config/glava/env_i3.glsl +++ /dev/null @@ -1 +0,0 @@ -#request setxwintype "!-" diff --git a/.config/glava/graph b/.config/glava/graph deleted file mode 120000 index 2ad2983..0000000 --- a/.config/glava/graph +++ /dev/null @@ -1 +0,0 @@ -/etc/xdg/glava//graph \ No newline at end of file diff --git a/.config/glava/graph.glsl b/.config/glava/graph.glsl deleted file mode 100755 index 546d8d4..0000000 --- a/.config/glava/graph.glsl +++ /dev/null @@ -1,31 +0,0 @@ - -/* Vertical scale, larger values will amplify output */ -#define VSCALE 300 -/* Rendering direction, either -1 (outwards) or 1 (inwards). */ -#define DIRECTION 1 - -/* Color gradient scale, (optionally) used in `COLOR` macro */ -#define GRADIENT_SCALE 75 -/* Color definition. By default this is a gradient formed by mixing two colors. - `pos` represents the pixel position relative to the visualizer baseline. */ -#define COLOR mix(#802A2A, #4F4F92, clamp(pos / GRADIENT_SCALE, 0, 1)) -/* 1 to draw outline, 0 to disable */ -#define DRAW_OUTLINE 0 -/* 1 to draw edge highlight, 0 to disable */ -#define DRAW_HIGHLIGHT 1 -/* Whether to anti-alias the border of the graph, creating a smoother curve. - This may have a small impact on performance. - Note: requires `xroot` or `none` opacity to be set */ -#define ANTI_ALIAS 0 -/* outline color */ -#define OUTLINE #262626 -/* 1 to join the two channels together in the middle, 0 to clamp both down to zero */ -#define JOIN_CHANNELS 0 -/* 1 to invert (vertically), 0 otherwise */ -#define INVERT 0 - -/* Gravity step, overrude from `smooth_parameters.glsl` */ -#request setgravitystep 2.4 - -/* Smoothing factor, override from `smooth_parameters.glsl` */ -#request setsmoothfactor 0.015 diff --git a/.config/glava/radial b/.config/glava/radial deleted file mode 120000 index 04fe5e4..0000000 --- a/.config/glava/radial +++ /dev/null @@ -1 +0,0 @@ -/etc/xdg/glava//radial \ No newline at end of file diff --git a/.config/glava/radial.glsl b/.config/glava/radial.glsl deleted file mode 100755 index 4689be6..0000000 --- a/.config/glava/radial.glsl +++ /dev/null @@ -1,39 +0,0 @@ - -/* center radius (pixels) */ -#define C_RADIUS 128 -/* center line thickness (pixels) */ -#define C_LINE 2 -/* outline color */ -#define OUTLINE #333333 -/* number of bars (use even values for best results) */ -#define NBARS 180 -/* width (in pixels) of each bar*/ -#define BAR_WIDTH 3.5 -/* outline color */ -#define BAR_OUTLINE OUTLINE -/* outline width (in pixels, set to 0 to disable outline drawing) */ -#define BAR_OUTLINE_WIDTH 0 -/* Amplify magnitude of the results each bar displays */ -#define AMPLIFY 300 -/* Bar color */ -#define COLOR (#cc3333 * ((d / 40) + 1)) -/* Angle (in radians) for how much to rotate the visualizer */ -#define ROTATE (PI / 2) -/* Whether to switch left/right audio buffers */ -#define INVERT 0 -/* Aliasing factors. Higher values mean more defined and jagged lines. - Note: aliasing does not have a notable impact on performance, but requires - `xroot` transparency to be enabled since it relies on alpha blending with - the background. */ -#define BAR_ALIAS_FACTOR 1.2 -#define C_ALIAS_FACTOR 1.8 -/* Offset (Y) of the visualization */ -#define CENTER_OFFSET_Y 0 -/* Offset (X) of the visualization */ -#define CENTER_OFFSET_X 0 - -/* Gravity step, override from `smooth_parameters.glsl` */ -#request setgravitystep 5.0 - -/* Smoothing factor, override from `smooth_parameters.glsl` */ -#request setsmoothfactor 0.02 diff --git a/.config/glava/rc.glsl b/.config/glava/rc.glsl deleted file mode 100755 index fc2b9fe..0000000 --- a/.config/glava/rc.glsl +++ /dev/null @@ -1,227 +0,0 @@ - -/* The module to use. A module is a set of shaders used to produce - the visualizer. The structure for a module is the following: - - module_name [directory] - 1.frag [file: fragment shader], - 2.frag [file: fragment shader], - ... - - Shaders are loaded in numerical order, starting at '1.frag', - continuing indefinitely. The results of each shader (except - for the final pass) is given to the next shader in the list - as a 2D sampler. - - See documentation for more details. */ -#request mod bars - -/* Window hints */ -#request setfloating false -#request setdecorated true -#request setfocused false -#request setmaximized false - -/* Set window background opacity mode. Possible values are: - - "native" - True transparency provided by the compositor. Can - reduce performance on some systems, depending on - the compositor used. - - "xroot" - Maintain a copy of the root window's pixmap - (usually the desktop background) to provide a - pseudo-transparent effect. Useful when no compositor - is available or native transparency isn't nessecary. - Has very little performance impact. - - "none" - Disable window opacity completely. */ -#request setopacity "native" - -/* Whether to mirror left and right audio input channels from PulseAudio.*/ -#request setmirror false - -/* OpenGL context and GLSL shader versions, do not change unless - you *absolutely* know what you are doing. */ -#request setversion 3 3 -#request setshaderversion 330 - -/* Window title */ -#request settitle "GLava" - -/* Window geometry (x, y, width, height) */ -#request setgeometry 0 0 3840 1080 - -/* Window background color (RGB format). - Does not work with `setopacity "xroot"` */ -#request setbg 00000000 - -/* (X11 only) EWMH Window type. Possible values are: - - "desktop", "dock", "toolbar", "menu", - "utility", "splash", "dialog", "normal" - - This will set _NET_WM_WINDOW_TYPE to _NET_WM_WINDOW_TYPE_(TYPE), - where (TYPE) is the one of the window types listed (after being - converted to uppercase). - - Alternatively, you can set this value to "!", which will cause - the window to be unmanaged. If this is set, then `addxwinstate` - will do nothing, but you can use "!+" and "!-" to stack on top - or below other windows. -*/ -#request setxwintype "normal" - -/* (X11 only) EWMH Window state atoms (multiple can be specified). - Possible values are: - - "modal", "sticky", "maximized_vert", "maximized_horz", - "shaded", "skip_taskbar", "skip_pager", "hidden", "fullscreen", - "above", "below", "demands_attention", "focused", "pinned" - - This will add _NET_WM_STATE_(TYPE) atoms to _NET_WM_STATE, - where (TYPE) is one of the window states listed (after being - converted to uppercase). - - The lines below (commented out by default) are of relevance - if you are trying to get GLava to behave as a desktop widget - and your WM is not correctly responding to the "desktop" value - for `setxwintype`. -*/ -// #request addxwinstate "sticky" -// #request addxwinstate "skip_taskbar" -// #request addxwinstate "skip_pager" -// #request addxwinstate "above" -// #request addxwinstate "pinned" - -/* (X11 only) Use the XShape extension to support clicking through - the GLava window. Useful when you want to interact with other - desktop windows (icons, menus, desktop shells). Enabled by - default when GLava itself is a desktop window. */ -#request setclickthrough false - -/* Audio source - - When the "pulseaudio" backend is set, this can be a number or - a name of an audio sink or device to record from. Set to "auto" - to use the default output device. - - When the "fifo" backend is set, "auto" is interpreted as - "/tmp/mpd.fifo". Otherwise, a valid path should be provided. */ -#request setsource "auto" - -/* Buffer swap interval (vsync), set to '0' to prevent - waiting for refresh, '1' (or more) to wait for the specified - amount of frames. */ -#request setswap 1 - -/* Linear interpolation for audio data frames. Drastically - improves smoothness with configurations that yield low UPS - (`setsamplerate` and `setsamplesize`), or monitors that have - high refresh rates. - - This feature itself, however, will effect performance as it - will have to interpolate data every frame on the CPU. It will - automatically (and temporarily) disable itself if the update - rate is close to, or higher than the framerate: - - if (update_rate / frame_rate > 0.9) disable_interpolation; - - This will delay data output by one update frame, so it can - desync audio with visual effects on low UPS configs. */ -#request setinterpolate true - -/* Frame limiter, set to the frames per second (FPS) desired or - simply set to zero (or lower) to disable the frame limiter. */ -#request setframerate 60 - -/* Suspends rendering if a fullscreen window is focused while - GLava is still visible (ie. on another monitor). This prevents - rendering from interfering with other graphically intensive - tasks. - - If GLava is minimized or completely obscured, it will not - render regardless of this option. */ -#request setfullscreencheck false - -/* Enable/disable printing framerate every second. 'FPS' stands - for 'Frames Per Second', and 'UPS' stands for 'Updates Per - Second'. Updates are performed when new data is submitted - by pulseaudio, and require transformations to be re-applied - (thus being a good measure of how much work your CPU has to - perform over time) */ -#request setprintframes true - -/* PulseAudio sample buffer size. Lower values result in more - frequent audio updates (also depends on sampling rate), but - will also require all transformations to be applied much - more frequently (CPU intensive). - - High (>2048, with 22050 Hz) values will decrease accuracy - (as some signals can be missed by transformations like FFT) - - The following settings (@22050 Hz) produce the listed rates: - - Sample UPS Description - - 2048 -> 43.0 (low accuracy, cheap), use with < 60 FPS - - 1024 -> 86.1 (high accuracy, expensive), use with >= 60 FPS - - 512 -> 172.3 (extreme accuracy, very expensive), use only - for graphing accurate spectrum data with - custom modules. - - If the framerate drops below the update rate, the update rate - will be locked to the framerate (to prevent wasting CPU time). - This behaviour means you can use a 1024 sample size on a 60Hz - monitor with vsync enabled to get 60FPS and 60UPS. - - For high refresh rate monitors (120+ Hz), it's recommended to - also stick with the 1024 sample size and use interpolation to - smooth the data, as accuracy beyond this setting is mostly - meaningless for visual purposes. -*/ -#request setsamplesize 1024 - -/* Audio buffer size to be used for processing and shaders. - Increasing this value can have the effect of adding 'gravity' - to FFT output, as the audio signal will remain in the buffer - longer. - - This value has a _massive_ effect on FFT performance and - quality for some modules. */ -#request setbufsize 4096 - -/* PulseAudio sample rate. Lower values can add 'gravity' to - FFT output, but can also reduce accuracy. Most hardware - samples at 44100Hz. - - Lower sample rates also can make output more choppy, when - not using interpolation. It's generally OK to leave this - value unless you have a strange PulseAudio configuration. - - This option does nothing when using the "fifo" audio - backend. Instead, an ideal rate should be be configured - in the application generating the output. */ -#request setsamplerate 22050 - -/* ** DEPRECATED ** - Force window geometry (locking the window in place), useful - for some pesky WMs that try to reposition the window when - embedding in the desktop. - - This routinely sends X11 events and should be avoided. */ -#request setforcegeometry false - -/* ** DEPRECATED ** - Force window to be raised (focused in some WMs), useful for - WMs that have their own stacking order for desktop windows. - - This routinely sends X11 events and should be avoided. */ -#request setforceraised false - -/* ** DEPRECATED ** - Scale down the audio buffer before any operations are - performed on the data. Higher values are faster. - - This value can affect the output of various transformations, - since it applies (crude) averaging to the data when shrinking - the buffer. It is reccommended to use `setsamplerate` and - `setsamplesize` to improve performance or accuracy instead. */ -#request setbufscale 1 diff --git a/.config/glava/smooth_parameters.glsl b/.config/glava/smooth_parameters.glsl deleted file mode 100755 index bfea307..0000000 --- a/.config/glava/smooth_parameters.glsl +++ /dev/null @@ -1,78 +0,0 @@ - -/* Settings for smoothing functions and transformations commonly - used to display FFT output. - - IMPORTANT: THESE VALUES CAN BE OVERRIDDEN IN MODULE CONFIG - FILES, IF CHANGING VALUES HERE DOES NOT WORK, CHECK - TO MAKE SURE THEY ARE NOT BEING SET ELSEWHERE. -*/ - -/* The type of formula to use for weighting values when smoothing. - Possible values: - - - circular heavily rounded points - - sinusoidal rounded at both low and high weighted values - like a sine wave - - linear not rounded at all; linear distance - */ -#define ROUND_FORMULA sinusoidal - -/* The sampling mode for processing raw FFT input: - - - average averages all the inputs in the sample range for - a given point. Produces smooth output, but peaks - are not well represented - - maximum obtains the best value from the closest peak in - the sample range. Very accurate peaks, but - output is jagged and sporadic. - - hybrid uses the results from both `average` and `maximum` - with the weight provided in `SAMPLE_HYBRID_WEIGHT` */ -#define SAMPLE_MODE average -/* Weight should be provided in the range (0, 1). Higher values favour - averaged results. `hybrid` mode only. */ -#define SAMPLE_HYBRID_WEIGHT 0.65 - -/* Factor used to scale frequencies. Lower values allows lower - frequencies to occupy more space. */ -#define SAMPLE_SCALE 8 - -/* The frequency range to sample. 1.0 would be the entire FFT output, - and lower values reduce the displayed frequencies in a log-like - scale. */ -#define SAMPLE_RANGE 0.9 - -/* Factor for how to scale higher frequencies. Used in a linear equation - which is multiplied by the result of the fft transformation. */ -#request setfftscale 10.2 - -/* Cutoff for the bass end of the audio data when scaling frequencies. - Higher values cause more of the bass frequencies to be skipped when - scaling. */ -#request setfftcutoff 0.3 - -/* How many frames to queue and run through the average function. - Increasing this value will create latency between the audio and the - animation, but will make for much smoother results. */ -#request setavgframes 6 - -/* Whether to window frames ran through the average function (new & old - frames are weighted less). This massively helps smoothing out - spontaneous values in the animation. */ -#request setavgwindow true - -/* Gravity step, higher values means faster drops. The step is applied - in a rate independant method like so: - - val -= (gravitystep) * (seconds per update) */ -#request setgravitystep 4.2 - -/* Smoothing factor. Larger values mean more smoothing in the output, - however high values can be expensive to compute. Values are in - normalized width: [0.0, 1.0) */ -#request setsmoothfactor 0.025 - -/* Whether to use a separate pass for audio data while smoothing. On - most hardware, this will improve performance, but involves doing a - separate render step for each audio texture and will add some driver - (CPU) overhead. */ -#request setsmoothpass true diff --git a/.config/glava/util b/.config/glava/util deleted file mode 120000 index 3cbab73..0000000 --- a/.config/glava/util +++ /dev/null @@ -1 +0,0 @@ -/etc/xdg/glava//util \ No newline at end of file diff --git a/.config/glava/wave b/.config/glava/wave deleted file mode 120000 index 3cba0de..0000000 --- a/.config/glava/wave +++ /dev/null @@ -1 +0,0 @@ -/etc/xdg/glava//wave \ No newline at end of file diff --git a/.config/glava/wave.glsl b/.config/glava/wave.glsl deleted file mode 100755 index 6a59fbe..0000000 --- a/.config/glava/wave.glsl +++ /dev/null @@ -1,14 +0,0 @@ -/* min (vertical) line thickness */ -#define MIN_THICKNESS 1 - -/* max (vertical) line thickness */ -#define MAX_THICKNESS 6 - -/* base color to use, distance from center will multiply the RGB components */ -#define BASE_COLOR vec4(0.7, 0.2, 0.45, 1) - -/* amplitude */ -#define AMPLIFY 500 - -/* outline color */ -#define OUTLINE vec4(0.15, 0.15, 0.15, 1) diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua new file mode 100644 index 0000000..cfd3ef9 --- /dev/null +++ b/.config/nvim/init.lua @@ -0,0 +1,21 @@ +require("user.options") +require("user.keymaps") +require("user.plugins") +require("user.cmp") +require("user.lsp") +require("user.colorscheme") +require("user.telescope") +require("user.treesitter") +require("user.autopairs") +require("user.comment") +require("user.gitsigns") +require("user.nvimtree") +require("user.bufferline") +require("user.whitespace") +require("user.lualine") +require("user.toggleterm") +require("user.impatient") +require("user.indentline") +require("user.alpha") +require("user.whichkey") +require("user.trouble") diff --git a/.config/nvim/lua/user/alpha.lua b/.config/nvim/lua/user/alpha.lua new file mode 100644 index 0000000..535bb93 --- /dev/null +++ b/.config/nvim/lua/user/alpha.lua @@ -0,0 +1,37 @@ +local status_ok, alpha = pcall(require, "alpha") +if not status_ok then + return +end + +local dashboard = require("alpha.themes.dashboard") +dashboard.section.header.val = { + " ▟▙", + " ▝▘", + "██▃▅▇█▆▖ ▗▟████▙▖ ▄████▄ ██▄ ▄██ ██ ▗▟█▆▄▄▆█▙▖", + "██▛▔ ▝██ ██▄▄▄▄██ ██▛▔▔▜██ ▝██ ██▘ ██ ██▛▜██▛▜██", + "██ ██ ██▀▀▀▀▀▘ ██▖ ▗██ ▜█▙▟█▛ ██ ██ ██ ██", + "██ ██ ▜█▙▄▄▄▟▊ ▀██▙▟██▀ ▝████▘ ██ ██ ██ ██", + "▀▀ ▀▀ ▝▀▀▀▀▀ ▀▀▀▀ ▀▀ ▀▀ ▀▀ ▀▀ ▀▀", +} +dashboard.section.buttons.val = { + dashboard.button("f", " Find file", ":Telescope find_files "), + dashboard.button("e", " New file", ":ene startinsert "), + dashboard.button("p", " Find project", ":Telescope project "), + dashboard.button("r", " Recently used files", ":Telescope oldfiles "), + dashboard.button("t", " Find text", ":Telescope live_grep "), + dashboard.button("c", " Configuration", ":e ~/.config/nvim/init.lua "), + dashboard.button("q", " Quit Neovim", ":qa"), +} + +local function footer() + return "I use Arch BTW" +end + +dashboard.section.footer.val = footer() + +dashboard.section.footer.opts.hl = "Type" +dashboard.section.header.opts.hl = "Include" +dashboard.section.buttons.opts.hl = "Keyword" + +dashboard.opts.opts.noautocmd = true +alpha.setup(dashboard.opts) diff --git a/.config/nvim/lua/user/autopairs.lua b/.config/nvim/lua/user/autopairs.lua new file mode 100644 index 0000000..b849633 --- /dev/null +++ b/.config/nvim/lua/user/autopairs.lua @@ -0,0 +1,30 @@ +local status_ok, npairs = pcall(require, "nvim-autopairs") +if not status_ok then + return +end + +npairs.setup({ + check_ts = true, + ts_config = { + lua = { "string", "source" }, + }, + disable_filetype = { "TelescopePrompt" }, + fast_wrap = { + map = "", + chars = { "{", "[", "(", '"', "'" }, + pattern = string.gsub([[ [%'%"%)%>%]%)%}%,] ]], "%s+", ""), + offset = 0, + end_key = "$", + keys = "qwertyuiopzxcvbnmasdfghjkl", + check_comma = true, + highlight = "PmenuSel", + highlight_grey = "LineNr", + }, +}) + +local cmp_autopairs = require("nvim-autopairs.completion.cmp") +local cmp_status_ok, cmp = pcall(require, "cmp") +if not cmp_status_ok then + return +end +cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done({ map_char = { tex = "" } })) diff --git a/.config/nvim/lua/user/bufferline.lua b/.config/nvim/lua/user/bufferline.lua new file mode 100644 index 0000000..777afa3 --- /dev/null +++ b/.config/nvim/lua/user/bufferline.lua @@ -0,0 +1,34 @@ +local status_ok, bufferline = pcall(require, "bufferline") +if not status_ok then + return +end + +bufferline.setup({ + options = { + numbers = "ordinal", + close_command = "Bdelete! %d", + right_mouse_command = "Bdelete! %d", + left_mouse_command = "buffer %d", + middle_mouse_command = nil, + indicator_icon = "▎", + buffer_close_icon = "", + modified_icon = "●", + close_icon = "", + left_trunc_marker = "", + right_trunc_marker = "", + max_name_length = 30, + max_prefix_length = 30, + tab_size = 21, + diagnostics = "nvim_lsp", + diagnostics_update_in_insert = true, + offsets = { { filetype = "NvimTree", text = "", padding = 1 } }, + show_buffer_icons = true, + show_buffer_close_icons = true, + show_close_icon = true, + show_tab_indicators = true, + persist_buffer_sort = true, + separator_style = "thin", + enforce_regular_tabs = true, + always_show_bufferline = true, + }, +}) diff --git a/.config/nvim/lua/user/cmp.lua b/.config/nvim/lua/user/cmp.lua new file mode 100644 index 0000000..fbc0b1f --- /dev/null +++ b/.config/nvim/lua/user/cmp.lua @@ -0,0 +1,139 @@ +local cmp_status_ok, cmp = pcall(require, "cmp") +if not cmp_status_ok then + return +end + +local snip_status_ok, luasnip = pcall(require, "luasnip") +if not snip_status_ok then + return +end + +require("luasnip/loaders/from_vscode").lazy_load() + +local check_backspace = function() + local col = vim.fn.col(".") - 1 + return col == 0 or vim.fn.getline("."):sub(col, col):match("%s") +end + +local kind_icons = { + Text = "", + Method = "m", + Function = "", + Constructor = "", + Field = "", + Variable = "", + Class = "", + Interface = "", + Module = "", + Property = "", + Unit = "", + Value = "", + Enum = "", + Keyword = "", + Snippet = "", + Color = "", + File = "", + Reference = "", + Folder = "", + EnumMember = "", + Constant = "", + Struct = "", + Event = "", + Operator = "", + TypeParameter = "", +} + +cmp.setup({ + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) + end, + }, + mapping = { + [""] = cmp.mapping.select_prev_item(), + [""] = cmp.mapping.select_next_item(), + [""] = cmp.mapping(cmp.mapping.scroll_docs(-1), { "i", "c" }), + [""] = cmp.mapping(cmp.mapping.scroll_docs(1), { "i", "c" }), + [""] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }), + [""] = cmp.config.disable, + [""] = cmp.mapping({ + i = cmp.mapping.abort(), + c = cmp.mapping.close(), + }), + [""] = cmp.mapping.confirm({ select = true }), + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + elseif luasnip.expandable() then + luasnip.expand() + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() + elseif check_backspace() then + fallback() + else + fallback() + end + end, { + "i", + "s", + }), + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_prev_item() + elseif luasnip.jumpable(-1) then + luasnip.jump(-1) + else + fallback() + end + end, { + "i", + "s", + }), + }, + formatting = { + fields = { "abbr", "kind", "menu" }, + format = function(entry, vim_item) + vim_item.kind = string.format("%s", kind_icons[vim_item.kind]) + vim_item.menu = ({ + nvim_lsp = "[LSP]", + nvim_lua = "[NVIM_LUA]", + luasnip = "[Snippet]", + buffer = "[Buffer]", + path = "[Path]", + })[entry.source.name] + return vim_item + end, + }, + sources = { + { name = "nvim_lsp" }, + { name = "nvim_lua" }, + { name = "luasnip" }, + { name = "buffer" }, + { name = "path" }, + }, + confirm_opts = { + behavior = cmp.ConfirmBehavior.Replace, + select = false, + }, + documentation = { + border = { "╭", "─", "╮", "│", "╯", "─", "╰", "│" }, + }, + experimental = { + ghost_text = true, + native_menu = false, + }, +}) + +cmp.setup.cmdline("/", { + sources = { + { name = "buffer" }, + }, +}) + +cmp.setup.cmdline(":", { + sources = cmp.config.sources({ + { name = "path" }, + }, { + { name = "cmdline" }, + }), +}) diff --git a/.config/nvim/lua/user/colorscheme.lua b/.config/nvim/lua/user/colorscheme.lua new file mode 100644 index 0000000..818e615 --- /dev/null +++ b/.config/nvim/lua/user/colorscheme.lua @@ -0,0 +1,4 @@ +vim.g.nord_italic = false +vim.g.nord_contrast = true +vim.g.nord_borders = true +require("nord").set() diff --git a/.config/nvim/lua/user/comment.lua b/.config/nvim/lua/user/comment.lua new file mode 100644 index 0000000..07c1a2a --- /dev/null +++ b/.config/nvim/lua/user/comment.lua @@ -0,0 +1,22 @@ +local status_ok, comment = pcall(require, "Comment") +if not status_ok then + return +end + +comment.setup({ + pre_hook = function(ctx) + local U = require("Comment.utils") + + local location = nil + if ctx.ctype == U.ctype.block then + location = require("ts_context_commentstring.utils").get_cursor_location() + elseif ctx.cmotion == U.cmotion.v or ctx.cmotion == U.cmotion.V then + location = require("ts_context_commentstring.utils").get_visual_start_location() + end + + return require("ts_context_commentstring.internal").calculate_commentstring({ + key = ctx.ctype == U.ctype.line and "__default" or "__multiline", + location = location, + }) + end, +}) diff --git a/.config/nvim/lua/user/gitsigns.lua b/.config/nvim/lua/user/gitsigns.lua new file mode 100644 index 0000000..62320ca --- /dev/null +++ b/.config/nvim/lua/user/gitsigns.lua @@ -0,0 +1,52 @@ +local status_ok, gitsigns = pcall(require, "gitsigns") +if not status_ok then + return +end + +gitsigns.setup({ + signs = { + add = { hl = "GitSignsAdd", text = "▎", numhl = "GitSignsAddNr", linehl = "GitSignsAddLn" }, + change = { hl = "GitSignsChange", text = "▎", numhl = "GitSignsChangeNr", linehl = "GitSignsChangeLn" }, + delete = { hl = "GitSignsDelete", text = "契", numhl = "GitSignsDeleteNr", linehl = "GitSignsDeleteLn" }, + topdelete = { hl = "GitSignsDelete", text = "契", numhl = "GitSignsDeleteNr", linehl = "GitSignsDeleteLn" }, + changedelete = { + hl = "GitSignsChange", + text = "▎", + numhl = "GitSignsChangeNr", + linehl = "GitSignsChangeLn", + }, + }, + signcolumn = true, + numhl = false, + linehl = false, + word_diff = false, + watch_gitdir = { + interval = 1000, + follow_files = true, + }, + attach_to_untracked = true, + current_line_blame = true, + current_line_blame_opts = { + virt_text = true, + virt_text_pos = "eol", + delay = 1000, + ignore_whitespace = false, + }, + current_line_blame_formatter_opts = { + relative_time = false, + }, + sign_priority = 6, + update_debounce = 100, + status_formatter = nil, + max_file_length = 40000, + preview_config = { + border = "single", + style = "minimal", + relative = "cursor", + row = 0, + col = 1, + }, + yadm = { + enable = false, + }, +}) diff --git a/.config/nvim/lua/user/impatient.lua b/.config/nvim/lua/user/impatient.lua new file mode 100644 index 0000000..fa64f00 --- /dev/null +++ b/.config/nvim/lua/user/impatient.lua @@ -0,0 +1,6 @@ +local status_ok, impatient = pcall(require, "impatient") +if not status_ok then + return +end + +impatient.enable_profile() diff --git a/.config/nvim/lua/user/indentline.lua b/.config/nvim/lua/user/indentline.lua new file mode 100644 index 0000000..6ebf918 --- /dev/null +++ b/.config/nvim/lua/user/indentline.lua @@ -0,0 +1,16 @@ +local status_ok, indent_blankline = pcall(require, "indent_blankline") +if not status_ok then + return +end + +vim.g.indent_blankline_filetype_exclude = { + "help", + "packer", + "NvimTree", + "Trouble", + "alpha", +} + +indent_blankline.setup({ + show_current_context = true, +}) diff --git a/.config/nvim/lua/user/keymaps.lua b/.config/nvim/lua/user/keymaps.lua new file mode 100644 index 0000000..c4ada3b --- /dev/null +++ b/.config/nvim/lua/user/keymaps.lua @@ -0,0 +1,85 @@ +local opts = { noremap = true, silent = true } + +local term_opts = { silent = true } + +-- Shorten function name +local keymap = vim.api.nvim_set_keymap + +--Remap space as leader key +keymap("", "", "", opts) +vim.g.mapleader = " " +vim.g.maplocalleader = " " + +-- Modes +-- normal_mode = "n", +-- insert_mode = "i", +-- visual_mode = "v", +-- visual_block_mode = "x", +-- term_mode = "t", +-- command_mode = "c", + +-- Normal -- +-- Better window navigation +keymap("n", "", "h", opts) +keymap("n", "", "j", opts) +keymap("n", "", "k", opts) +keymap("n", "", "l", opts) + +-- Resize with arrows +keymap("n", "", ":resize +2", opts) +keymap("n", "", ":resize -2", opts) +keymap("n", "", ":vertical resize -2", opts) +keymap("n", "", ":vertical resize +2", opts) + +-- Navigate buffers +keymap("n", "", ":bnext", opts) +keymap("n", "", ":bprevious", opts) + +-- Telescope +keymap("n", "ff", ":Telescope frecency", opts) +keymap("n", "fg", ":Telescope live_grep", opts) +keymap("n", "fb", ":Telescope buffers", opts) +keymap("n", "fe", ":Telescope emoji", opts) +keymap("n", "fp", ":Telescope project", opts) + +-- Comment +keymap("n", "/", ":lua require('Comment').toggle()", opts) + +-- Nvim-Tree +keymap("n", "e", ":NvimTreeToggle", opts) + +-- Trouble +keymap("n", "xx", ":Trouble", opts) +keymap("n", "xw", ":Trouble workspace_diagnostics", opts) +keymap("n", "xd", ":Trouble document_diagnostics", opts) +keymap("n", "xl", ":Trouble loclist", opts) +keymap("n", "xq", ":Trouble quickfix", opts) + +-- Insert -- + +-- Visual -- +-- Stay in indent mode +keymap("v", "<", "", ">gv", opts) + +-- Move text up and down +keymap("v", "", ":m .+1==", opts) +keymap("v", "", ":m .-2==", opts) +keymap("v", "p", '"_dP', opts) + +-- Comment +keymap("v", "/", ':lua require("Comment.api").gc(vim.fn.visualmode())', opts) + +-- Visual Block -- +-- Move text up and down +keymap("x", "J", ":move '>+1gv-gv", opts) +keymap("x", "K", ":move '<-2gv-gv", opts) +keymap("x", "", ":move '>+1gv-gv", opts) +keymap("x", "", ":move '<-2gv-gv", opts) + +-- Terminal -- +-- Better terminal navigation +keymap("t", "", "h", term_opts) +keymap("t", "", "j", term_opts) +keymap("t", "", "k", term_opts) +keymap("t", "", "l", term_opts) diff --git a/.config/nvim/lua/user/lsp/handlers.lua b/.config/nvim/lua/user/lsp/handlers.lua new file mode 100644 index 0000000..58ec079 --- /dev/null +++ b/.config/nvim/lua/user/lsp/handlers.lua @@ -0,0 +1,92 @@ +local M = {} + +M.setup = function() + local signs = { + { name = "DiagnosticSignError", text = "" }, + { name = "DiagnosticSignWarn", text = "" }, + { name = "DiagnosticSignHint", text = "" }, + { name = "DiagnosticSignInfo", text = "" }, + } + + for _, sign in ipairs(signs) do + vim.fn.sign_define(sign.name, { texthl = sign.name, text = sign.text, numhl = "" }) + end + + local config = { + virtual_text = false, + signs = { + active = signs, + }, + update_in_insert = true, + underline = true, + severity_sort = true, + float = { + focusable = false, + style = "minimal", + border = "rounded", + source = "always", + header = "", + prefix = "", + }, + } + + vim.diagnostic.config(config) + + vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { + border = "rounded", + }) + + vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, { + border = "rounded", + }) +end + +local function lsp_highlight_document(client) + if client.resolved_capabilities.document_highlight then + vim.api.nvim_exec( + [[ + augroup lsp_document_highlight + autocmd! * + autocmd CursorHold lua vim.lsp.buf.document_highlight() + autocmd CursorMoved lua vim.lsp.buf.clear_references() + augroup END + ]], + false + ) + end +end + +local function lsp_keymaps(bufnr) + local opts = { noremap = true, silent = true } + + vim.api.nvim_buf_set_keymap(bufnr, "n", "gD", ":lua vim.lsp.buf.declaration()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "gd", ":lua vim.lsp.buf.definition()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "K", ":lua vim.lsp.buf.hover()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "gi", ":lua vim.lsp.buf.implementation()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "", ":lua vim.lsp.buf.signature_help()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "grn", ":lua vim.lsp.buf.rename()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "gr", ":lua vim.lsp.buf.references()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "gca", ":lua vim.lsp.buf.code_action()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "gl", ":lua vim.diagnostic.open_float()", opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "[d", ':lua vim.diagnostic.goto_prev({ border = "rounded" })', opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "]d", ':lua vim.diagnostic.goto_next({ border = "rounded" })', opts) + vim.api.nvim_buf_set_keymap(bufnr, "n", "q", "lua vim.diagnostic.setloclist()", opts) + vim.cmd([[ command! Format execute 'lua vim.lsp.buf.formatting()' ]]) +end + +M.on_attach = function(client, bufnr) + lsp_keymaps(bufnr) + lsp_highlight_document(client) +end + +local capabilities = vim.lsp.protocol.make_client_capabilities() + +local status_ok, cmp_nvim_lsp = pcall(require, "cmp_nvim_lsp") + +if not status_ok then + return +end + +M.capabilities = cmp_nvim_lsp.update_capabilities(capabilities) + +return M diff --git a/.config/nvim/lua/user/lsp/init.lua b/.config/nvim/lua/user/lsp/init.lua new file mode 100644 index 0000000..9610eff --- /dev/null +++ b/.config/nvim/lua/user/lsp/init.lua @@ -0,0 +1,9 @@ +local status_ok, _ = pcall(require, "lspconfig") +if not status_ok then + return +end + +require("user.lsp.installer") +require("user.lsp.nlsp") +require("user.lsp.nullls") +require("user.lsp.handlers").setup() diff --git a/.config/nvim/lua/user/lsp/installer.lua b/.config/nvim/lua/user/lsp/installer.lua new file mode 100644 index 0000000..af1aa07 --- /dev/null +++ b/.config/nvim/lua/user/lsp/installer.lua @@ -0,0 +1,19 @@ +local status_ok, lsp_installer = pcall(require, "nvim-lsp-installer") +if not status_ok then + return +end + +lsp_installer.on_server_ready(function(server) + local opts = { + on_attach = require("user.lsp.handlers").on_attach, + capabilities = require("user.lsp.handlers").capabilities, + } + + if server.name == "jsonls" then + opts.settings = { + json = { schemas = require("nlspsettings.jsonls").get_default_schemas() }, + } + end + + server:setup(opts) +end) diff --git a/.config/nvim/lua/user/lsp/nlsp.lua b/.config/nvim/lua/user/lsp/nlsp.lua new file mode 100644 index 0000000..0b45199 --- /dev/null +++ b/.config/nvim/lua/user/lsp/nlsp.lua @@ -0,0 +1,10 @@ +local nlsp_status_ok, nlspsettings = pcall(require, "nlspsettings") +if not nlsp_status_ok then + return +end + +nlspsettings.setup({ + config_home = vim.fn.stdpath("config") .. "/lua/user/lsp/settings", + local_settings_root_markers = { ".git" }, + jsonls_append_default_schemas = true, +}) diff --git a/.config/nvim/lua/user/lsp/nullls.lua b/.config/nvim/lua/user/lsp/nullls.lua new file mode 100644 index 0000000..5fd6114 --- /dev/null +++ b/.config/nvim/lua/user/lsp/nullls.lua @@ -0,0 +1,24 @@ +local null_ls_status_ok, null_ls = pcall(require, "null-ls") +if not null_ls_status_ok then + return +end + +local formatting = null_ls.builtins.formatting +-- local diagnostics = null_ls.builtins.diagnostics + +null_ls.setup({ + debug = false, + sources = { + formatting.stylua, + }, + on_attach = function(client) + if client.resolved_capabilities.document_formatting then + vim.cmd([[ + augroup LspFormatting + autocmd! * + autocmd BufWritePre lua vim.lsp.buf.formatting_sync() + augroup END + ]]) + end + end, +}) diff --git a/.config/nvim/lua/user/lsp/settings/sumneko_lua.json b/.config/nvim/lua/user/lsp/settings/sumneko_lua.json new file mode 100644 index 0000000..68be2cb --- /dev/null +++ b/.config/nvim/lua/user/lsp/settings/sumneko_lua.json @@ -0,0 +1,3 @@ +{ + "Lua.diagnostics.globals": ["vim"] +} diff --git a/.config/nvim/lua/user/lualine.lua b/.config/nvim/lua/user/lualine.lua new file mode 100644 index 0000000..8ef6751 --- /dev/null +++ b/.config/nvim/lua/user/lualine.lua @@ -0,0 +1,33 @@ +local status_ok, lualine = pcall(require, "lualine") +if not status_ok then + return +end + +lualine.setup({ + options = { + icons_enabled = true, + theme = "auto", + component_separators = { left = "", right = "" }, + section_separators = { left = "", right = "" }, + disabled_filetypes = { "alpha", "NvimTree" }, + always_divide_middle = true, + }, + sections = { + lualine_a = { "mode" }, + lualine_b = { "branch", "diff", "diagnostics" }, + lualine_c = { "filename", "filesize" }, + lualine_x = { "encoding", "fileformat", "filetype" }, + lualine_y = { "progress" }, + lualine_z = { "location" }, + }, + inactive_sections = { + lualine_a = {}, + lualine_b = {}, + lualine_c = { "filename" }, + lualine_x = { "location" }, + lualine_y = {}, + lualine_z = {}, + }, + tabline = {}, + extensions = {}, +}) diff --git a/.config/nvim/lua/user/nvimtree.lua b/.config/nvim/lua/user/nvimtree.lua new file mode 100644 index 0000000..c738646 --- /dev/null +++ b/.config/nvim/lua/user/nvimtree.lua @@ -0,0 +1,96 @@ +vim.g.nvim_tree_icons = { + default = "", + symlink = "", + git = { + unstaged = "", + staged = "S", + unmerged = "", + renamed = "➜", + deleted = "", + untracked = "U", + ignored = "◌", + }, + folder = { + default = "", + open = "", + empty = "", + empty_open = "", + symlink = "", + }, +} + +local status_ok, nvim_tree = pcall(require, "nvim-tree") +if not status_ok then + return +end + +local config_status_ok, nvim_tree_config = pcall(require, "nvim-tree.config") +if not config_status_ok then + return +end + +local tree_cb = nvim_tree_config.nvim_tree_callback + +nvim_tree.setup({ + disable_netrw = true, + hijack_netrw = true, + open_on_setup = false, + ignore_ft_on_setup = { + "alpha", + }, + auto_close = true, + open_on_tab = false, + hijack_cursor = true, + update_cwd = true, + update_to_buf_dir = { + enable = true, + auto_open = true, + }, + diagnostics = { + enable = true, + icons = { + hint = "", + info = "", + warning = "", + error = "", + }, + }, + update_focused_file = { + enable = true, + update_cwd = true, + ignore_list = {}, + }, + git = { + enable = true, + ignore = true, + timeout = 500, + }, + view = { + width = 30, + height = 30, + hide_root_folder = false, + side = "left", + auto_resize = true, + mappings = { + custom_only = false, + list = { + { key = { "l", "", "o" }, cb = tree_cb("edit") }, + { key = "h", cb = tree_cb("close_node") }, + { key = "v", cb = tree_cb("vsplit") }, + }, + }, + number = false, + relativenumber = false, + }, + quit_on_open = 0, + git_hl = 1, + disable_window_picker = 0, + root_folder_modifier = ":t", + show_icons = { + git = 1, + folders = 1, + files = 1, + folder_arrows = 1, + tree_width = 30, + }, +}) diff --git a/.config/nvim/lua/user/options.lua b/.config/nvim/lua/user/options.lua new file mode 100644 index 0000000..dad6ca3 --- /dev/null +++ b/.config/nvim/lua/user/options.lua @@ -0,0 +1,42 @@ +vim.opt.backup = false +vim.opt.clipboard = "unnamedplus" +vim.opt.cmdheight = 2 +vim.opt.completeopt = { "menuone", "noselect" } +vim.opt.conceallevel = 0 +vim.opt.fileencoding = "utf-8" +vim.opt.hlsearch = true +vim.opt.ignorecase = true +vim.opt.mouse = "a" +vim.opt.pumheight = 10 +vim.opt.showmode = false +vim.opt.showtabline = 2 +vim.opt.smartcase = true +vim.opt.smartindent = true +vim.opt.splitbelow = true +vim.opt.splitright = true +vim.opt.swapfile = false +vim.opt.termguicolors = true +vim.opt.timeoutlen = 500 +vim.opt.undofile = true +vim.opt.updatetime = 50 +vim.opt.writebackup = false +vim.opt.expandtab = false +vim.opt.shiftwidth = 2 +vim.opt.tabstop = 2 +vim.opt.number = true +vim.opt.relativenumber = false +vim.opt.numberwidth = 4 +vim.opt.signcolumn = "yes" +vim.opt.wrap = false +vim.opt.scrolloff = 8 +vim.opt.sidescrolloff = 8 +vim.opt.shortmess:append("c") +vim.opt.guicursor = "" +vim.opt.incsearch = true +vim.opt.colorcolumn = "120" +vim.opt.list = true +vim.opt.listchars:append("lead:.") + +vim.cmd("set whichwrap+=<,>,[,],h,l") +vim.cmd([[set iskeyword+=-]]) +vim.cmd([[set formatoptions-=cro]]) diff --git a/.config/nvim/lua/user/plugins.lua b/.config/nvim/lua/user/plugins.lua new file mode 100644 index 0000000..251aa22 --- /dev/null +++ b/.config/nvim/lua/user/plugins.lua @@ -0,0 +1,125 @@ +local fn = vim.fn + +local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim" +if fn.empty(fn.glob(install_path)) > 0 then + PACKER_BOOTSTRAP = fn.system({ + "git", + "clone", + "--depth", + "1", + "https://github.com/wbthomason/packer.nvim", + install_path, + }) + print("Installing packer close and reopen Neovim...") + vim.cmd([[packadd packer.nvim]]) +end + +vim.cmd([[ + augroup packer_user_config + autocmd! + autocmd BufWritePost plugins.lua source | PackerSync + augroup end +]]) + +local status_ok, packer = pcall(require, "packer") +if not status_ok then + return +end + +packer.init({ + display = { + open_fn = function() + return require("packer.util").float({ border = "rounded" }) + end, + }, +}) + +return packer.startup(function(use) + use("wbthomason/packer.nvim") + + -- Plugin Deps + use("nvim-lua/popup.nvim") + use("nvim-lua/plenary.nvim") + use("kyazdani42/nvim-web-devicons") + use("tami5/sqlite.lua") + + -- Themes + use("shaunsingh/nord.nvim") + + -- Completion + use("hrsh7th/nvim-cmp") + use("hrsh7th/cmp-buffer") + use("hrsh7th/cmp-path") + use("hrsh7th/cmp-cmdline") + use("saadparwaiz1/cmp_luasnip") + use("hrsh7th/cmp-nvim-lsp") + use("hrsh7th/cmp-nvim-lua") + + -- Snippets + use("L3MON4D3/LuaSnip") + use("rafamadriz/friendly-snippets") + + -- LSP + use("neovim/nvim-lspconfig") + use("williamboman/nvim-lsp-installer") + use("tamago324/nlsp-settings.nvim") + use("jose-elias-alvarez/null-ls.nvim") + use("folke/trouble.nvim") + + -- Telescope + use("nvim-telescope/telescope.nvim") + use("nvim-telescope/telescope-media-files.nvim") + use("nvim-telescope/telescope-node-modules.nvim") + use("cljoly/telescope-repo.nvim") + use("xiyaowong/telescope-emoji.nvim") + use("nvim-telescope/telescope-project.nvim") + use("nvim-telescope/telescope-frecency.nvim") + use({ "nvim-telescope/telescope-fzf-native.nvim", run = "make" }) + + -- Treesitter + use({ "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" }) + use("p00f/nvim-ts-rainbow") + use("nvim-treesitter/playground") + use("JoosepAlviste/nvim-ts-context-commentstring") + + -- Autopairs + use("windwp/nvim-autopairs") + + -- Comments + use("numToStr/Comment.nvim") + + -- Git + use("lewis6991/gitsigns.nvim") + + -- Nvim-Tree + use("kyazdani42/nvim-tree.lua") + + -- Bufferline + use("akinsho/bufferline.nvim") + use("moll/vim-bbye") + + -- Whitespace + use("ntpeters/vim-better-whitespace") + + -- Lualine + use("nvim-lualine/lualine.nvim") + + -- Toggleterm + use("akinsho/toggleterm.nvim") + + -- Impatient + use("lewis6991/impatient.nvim") + + -- Indent Line + use("lukas-reineke/indent-blankline.nvim") + + -- Alpha + use("goolord/alpha-nvim") + + -- WhichKey + use("folke/which-key.nvim") + + if PACKER_BOOTSTRAP then + require("packer").sync() + end +end) diff --git a/.config/nvim/lua/user/telescope.lua b/.config/nvim/lua/user/telescope.lua new file mode 100644 index 0000000..d2d2c24 --- /dev/null +++ b/.config/nvim/lua/user/telescope.lua @@ -0,0 +1,81 @@ +local status_ok, telescope = pcall(require, "telescope") +if not status_ok then + return +end + +telescope.load_extension("media_files") +telescope.load_extension("fzf") +telescope.load_extension("node_modules") +telescope.load_extension("repo") +telescope.load_extension("emoji") +telescope.load_extension("project") +telescope.load_extension("frecency") + +local actions = require("telescope.actions") + +telescope.setup({ + defaults = { + prompt_prefix = " ", + selection_caret = " ", + path_display = { "smart" }, + mappings = { + i = { + [""] = actions.cycle_history_next, + [""] = actions.cycle_history_prev, + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, + [""] = actions.close, + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, + [""] = actions.select_default, + [""] = actions.select_horizontal, + [""] = actions.select_vertical, + [""] = actions.select_tab, + [""] = actions.preview_scrolling_up, + [""] = actions.preview_scrolling_down, + [""] = actions.results_scrolling_up, + [""] = actions.results_scrolling_down, + [""] = actions.toggle_selection + actions.move_selection_worse, + [""] = actions.toggle_selection + actions.move_selection_better, + [""] = actions.send_to_qflist + actions.open_qflist, + [""] = actions.send_selected_to_qflist + actions.open_qflist, + [""] = actions.complete_tag, + [""] = actions.which_key, + }, + n = { + [""] = actions.close, + [""] = actions.select_default, + [""] = actions.select_horizontal, + [""] = actions.select_vertical, + [""] = actions.select_tab, + [""] = actions.toggle_selection + actions.move_selection_worse, + [""] = actions.toggle_selection + actions.move_selection_better, + [""] = actions.send_to_qflist + actions.open_qflist, + [""] = actions.send_selected_to_qflist + actions.open_qflist, + ["j"] = actions.move_selection_next, + ["k"] = actions.move_selection_previous, + ["H"] = actions.move_to_top, + ["M"] = actions.move_to_middle, + ["L"] = actions.move_to_bottom, + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, + ["gg"] = actions.move_to_top, + ["G"] = actions.move_to_bottom, + [""] = actions.preview_scrolling_up, + [""] = actions.preview_scrolling_down, + [""] = actions.results_scrolling_up, + [""] = actions.results_scrolling_down, + ["?"] = actions.which_key, + }, + }, + }, + pickers = {}, + extensions = { + fzf = { + fuzzy = true, + override_generic_sorter = true, + override_file_sorter = true, + case_mode = "ignore_case", + }, + }, +}) diff --git a/.config/nvim/lua/user/toggleterm.lua b/.config/nvim/lua/user/toggleterm.lua new file mode 100644 index 0000000..a12e361 --- /dev/null +++ b/.config/nvim/lua/user/toggleterm.lua @@ -0,0 +1,27 @@ +local status_ok, toggleterm = pcall(require, "toggleterm") +if not status_ok then + return +end + +toggleterm.setup({ + size = 20, + open_mapping = [[]], + hide_numbers = true, + shade_filetypes = {}, + shade_terminals = true, + shading_factor = 2, + start_in_insert = true, + insert_mappings = true, + persist_size = true, + direction = "float", + close_on_exit = true, + shell = vim.o.shell, + float_opts = { + border = "curved", + winblend = 0, + highlights = { + border = "Normal", + background = "Normal", + }, + }, +}) diff --git a/.config/nvim/lua/user/treesitter.lua b/.config/nvim/lua/user/treesitter.lua new file mode 100644 index 0000000..68e1021 --- /dev/null +++ b/.config/nvim/lua/user/treesitter.lua @@ -0,0 +1,22 @@ +local configs = require("nvim-treesitter.configs") +configs.setup({ + ensure_installed = "all", + sync_install = false, + ignore_install = { "" }, + highlight = { + enable = true, + disable = { "" }, + additional_vim_regex_highlighting = true, + }, + rainbow = { + enable = true, + }, + autopairs = { + enable = true, + }, + context_commentstring = { + enable = true, + enable_autocmd = false, + }, + indent = { enable = true, disable = { "yaml" } }, +}) diff --git a/.config/nvim/lua/user/trouble.lua b/.config/nvim/lua/user/trouble.lua new file mode 100644 index 0000000..f92d2cc --- /dev/null +++ b/.config/nvim/lua/user/trouble.lua @@ -0,0 +1,6 @@ +local status_ok, trouble = pcall(require, "trouble") +if not status_ok then + return +end + +trouble.setup({}) diff --git a/.config/nvim/lua/user/whichkey.lua b/.config/nvim/lua/user/whichkey.lua new file mode 100644 index 0000000..d63b00b --- /dev/null +++ b/.config/nvim/lua/user/whichkey.lua @@ -0,0 +1,6 @@ +local status_ok, which_key = pcall(require, "which-key") +if not status_ok then + return +end + +which_key.setup({}) diff --git a/.config/nvim/lua/user/whitespace.lua b/.config/nvim/lua/user/whitespace.lua new file mode 100644 index 0000000..d9abc3e --- /dev/null +++ b/.config/nvim/lua/user/whitespace.lua @@ -0,0 +1,14 @@ +vim.g.better_whitespace_enabled = 1 +vim.g.strip_whitespace_on_save = 1 +vim.g.show_spaces_that_precede_tabs = 1 +vim.g.strip_whitelines_at_eof = 1 +vim.g.better_whitespace_filetypes_blacklist = { + "diff", + "git", + "gitcommit", + "unite", + "qf", + "help", + "markdown", + "fugitive", +} diff --git a/.config/nvim/plugin/packer_compiled.lua b/.config/nvim/plugin/packer_compiled.lua new file mode 100644 index 0000000..54b182c --- /dev/null +++ b/.config/nvim/plugin/packer_compiled.lua @@ -0,0 +1,306 @@ +-- 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/relms/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/relms/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/relms/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/relms/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" +local install_cpath_pattern = "/home/relms/.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), name, _G.packer_plugins[name]) + 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"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/Comment.nvim", + url = "https://github.com/numToStr/Comment.nvim" + }, + LuaSnip = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/LuaSnip", + url = "https://github.com/L3MON4D3/LuaSnip" + }, + ["alpha-nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/alpha-nvim", + url = "https://github.com/goolord/alpha-nvim" + }, + ["bufferline.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/bufferline.nvim", + url = "https://github.com/akinsho/bufferline.nvim" + }, + ["cmp-buffer"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/cmp-buffer", + url = "https://github.com/hrsh7th/cmp-buffer" + }, + ["cmp-cmdline"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/cmp-cmdline", + url = "https://github.com/hrsh7th/cmp-cmdline" + }, + ["cmp-nvim-lsp"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp", + url = "https://github.com/hrsh7th/cmp-nvim-lsp" + }, + ["cmp-nvim-lua"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/cmp-nvim-lua", + url = "https://github.com/hrsh7th/cmp-nvim-lua" + }, + ["cmp-path"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/cmp-path", + url = "https://github.com/hrsh7th/cmp-path" + }, + cmp_luasnip = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/cmp_luasnip", + url = "https://github.com/saadparwaiz1/cmp_luasnip" + }, + ["friendly-snippets"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/friendly-snippets", + url = "https://github.com/rafamadriz/friendly-snippets" + }, + ["gitsigns.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/gitsigns.nvim", + url = "https://github.com/lewis6991/gitsigns.nvim" + }, + ["impatient.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/impatient.nvim", + url = "https://github.com/lewis6991/impatient.nvim" + }, + ["indent-blankline.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim", + url = "https://github.com/lukas-reineke/indent-blankline.nvim" + }, + ["lualine.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/lualine.nvim", + url = "https://github.com/nvim-lualine/lualine.nvim" + }, + ["nlsp-settings.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nlsp-settings.nvim", + url = "https://github.com/tamago324/nlsp-settings.nvim" + }, + ["nord.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nord.nvim", + url = "https://github.com/shaunsingh/nord.nvim" + }, + ["null-ls.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/null-ls.nvim", + url = "https://github.com/jose-elias-alvarez/null-ls.nvim" + }, + ["nvim-autopairs"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-autopairs", + url = "https://github.com/windwp/nvim-autopairs" + }, + ["nvim-cmp"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-cmp", + url = "https://github.com/hrsh7th/nvim-cmp" + }, + ["nvim-lsp-installer"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-lsp-installer", + url = "https://github.com/williamboman/nvim-lsp-installer" + }, + ["nvim-lspconfig"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-lspconfig", + url = "https://github.com/neovim/nvim-lspconfig" + }, + ["nvim-tree.lua"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-tree.lua", + url = "https://github.com/kyazdani42/nvim-tree.lua" + }, + ["nvim-treesitter"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-treesitter", + url = "https://github.com/nvim-treesitter/nvim-treesitter" + }, + ["nvim-ts-context-commentstring"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-ts-context-commentstring", + url = "https://github.com/JoosepAlviste/nvim-ts-context-commentstring" + }, + ["nvim-ts-rainbow"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-ts-rainbow", + url = "https://github.com/p00f/nvim-ts-rainbow" + }, + ["nvim-web-devicons"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/nvim-web-devicons", + url = "https://github.com/kyazdani42/nvim-web-devicons" + }, + ["packer.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/packer.nvim", + url = "https://github.com/wbthomason/packer.nvim" + }, + playground = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/playground", + url = "https://github.com/nvim-treesitter/playground" + }, + ["plenary.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/plenary.nvim", + url = "https://github.com/nvim-lua/plenary.nvim" + }, + ["popup.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/popup.nvim", + url = "https://github.com/nvim-lua/popup.nvim" + }, + ["sqlite.lua"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/sqlite.lua", + url = "https://github.com/tami5/sqlite.lua" + }, + ["telescope-emoji.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/telescope-emoji.nvim", + url = "https://github.com/xiyaowong/telescope-emoji.nvim" + }, + ["telescope-frecency.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim", + url = "https://github.com/nvim-telescope/telescope-frecency.nvim" + }, + ["telescope-fzf-native.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/telescope-fzf-native.nvim", + url = "https://github.com/nvim-telescope/telescope-fzf-native.nvim" + }, + ["telescope-media-files.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/telescope-media-files.nvim", + url = "https://github.com/nvim-telescope/telescope-media-files.nvim" + }, + ["telescope-node-modules.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/telescope-node-modules.nvim", + url = "https://github.com/nvim-telescope/telescope-node-modules.nvim" + }, + ["telescope-project.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/telescope-project.nvim", + url = "https://github.com/nvim-telescope/telescope-project.nvim" + }, + ["telescope-repo.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/telescope-repo.nvim", + url = "https://github.com/cljoly/telescope-repo.nvim" + }, + ["telescope.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/telescope.nvim", + url = "https://github.com/nvim-telescope/telescope.nvim" + }, + ["toggleterm.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/toggleterm.nvim", + url = "https://github.com/akinsho/toggleterm.nvim" + }, + ["trouble.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/trouble.nvim", + url = "https://github.com/folke/trouble.nvim" + }, + ["vim-bbye"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/vim-bbye", + url = "https://github.com/moll/vim-bbye" + }, + ["vim-better-whitespace"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/vim-better-whitespace", + url = "https://github.com/ntpeters/vim-better-whitespace" + }, + ["which-key.nvim"] = { + loaded = true, + path = "/home/relms/.local/share/nvim/site/pack/packer/start/which-key.nvim", + url = "https://github.com/folke/which-key.nvim" + } +} + +time([[Defining packer_plugins]], false) +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 diff --git a/.config/polybar/config b/.config/polybar/config index 637af8b..c203ec5 100644 --- a/.config/polybar/config +++ b/.config/polybar/config @@ -44,10 +44,6 @@ modules-left = bspwm RightArrow RightStripe RightArrow modules-center = xwindow modules-right = LeftArrow3 LeftStripe LeftArrow3 pulseaudio LeftArrow1 filesystem LeftArrow2 cpu LeftArrow1 memory LeftArrow2 date -tray-position = right -tray-padding = 1 -tray-background = ${colors.cyan} - cursor-click = pointer cursor-scroll = ns-resize diff --git a/.nvidia-settings-rc b/.nvidia-settings-rc deleted file mode 100644 index 42f02a4..0000000 --- a/.nvidia-settings-rc +++ /dev/null @@ -1,94 +0,0 @@ -# -# /home/relms/.nvidia-settings-rc -# -# Configuration file for nvidia-settings - the NVIDIA X Server Settings utility -# Generated on Sat Oct 23 18:54:02 2021 -# - -# ConfigProperties: - -RcFileLocale = C -DisplayStatusBar = Yes -SliderTextEntries = Yes -IncludeDisplayNameInConfigFile = No -ShowQuitDialog = Yes -UpdateRulesOnProfileNameChange = Yes -Timer = PowerMizer_Monitor_(GPU_0),Yes,1000 -Timer = Thermal_Monitor_(GPU_0),Yes,1000 -Timer = Memory_Used_(GPU_0),Yes,3000 - -# Attributes: - -0/SyncToVBlank=1 -0/LogAniso=4 -0/FSAA=11 -0/TextureClamping=1 -0/FXAA=0 -0/AllowFlipping=1 -0/FSAAAppControlled=0 -0/LogAnisoAppControlled=0 -0/OpenGLImageSettings=0 -0/FSAAAppEnhanced=1 -0/ShowGraphicsVisualIndicator=0 -[DPY:DP-0]/Dithering=0 -[DPY:DP-0]/DitheringMode=0 -[DPY:DP-0]/DitheringDepth=0 -[DPY:DP-0]/ColorSpace=0 -[DPY:DP-0]/ColorRange=0 -[DPY:DP-0]/SynchronousPaletteUpdates=0 -[DPY:DP-1]/Dithering=0 -[DPY:DP-1]/DitheringMode=0 -[DPY:DP-1]/DitheringDepth=0 -[DPY:DP-1]/ColorSpace=0 -[DPY:DP-1]/ColorRange=0 -[DPY:DP-1]/SynchronousPaletteUpdates=0 -[DPY:DP-2]/RedBrightness=0.000000 -[DPY:DP-2]/GreenBrightness=0.000000 -[DPY:DP-2]/BlueBrightness=0.000000 -[DPY:DP-2]/RedContrast=0.000000 -[DPY:DP-2]/GreenContrast=0.000000 -[DPY:DP-2]/BlueContrast=0.000000 -[DPY:DP-2]/RedGamma=1.000000 -[DPY:DP-2]/GreenGamma=1.000000 -[DPY:DP-2]/BlueGamma=1.000000 -[DPY:DP-2]/Dithering=0 -[DPY:DP-2]/DitheringMode=0 -[DPY:DP-2]/DitheringDepth=0 -[DPY:DP-2]/DigitalVibrance=0 -[DPY:DP-2]/ColorSpace=0 -[DPY:DP-2]/ColorRange=0 -[DPY:DP-2]/SynchronousPaletteUpdates=0 -[DPY:DP-3]/Dithering=0 -[DPY:DP-3]/DitheringMode=0 -[DPY:DP-3]/DitheringDepth=0 -[DPY:DP-3]/ColorSpace=0 -[DPY:DP-3]/ColorRange=0 -[DPY:DP-3]/SynchronousPaletteUpdates=0 -[DPY:HDMI-0]/RedBrightness=0.000000 -[DPY:HDMI-0]/GreenBrightness=0.000000 -[DPY:HDMI-0]/BlueBrightness=0.000000 -[DPY:HDMI-0]/RedContrast=0.000000 -[DPY:HDMI-0]/GreenContrast=0.000000 -[DPY:HDMI-0]/BlueContrast=0.000000 -[DPY:HDMI-0]/RedGamma=1.000000 -[DPY:HDMI-0]/GreenGamma=1.000000 -[DPY:HDMI-0]/BlueGamma=1.000000 -[DPY:HDMI-0]/Dithering=0 -[DPY:HDMI-0]/DitheringMode=0 -[DPY:HDMI-0]/DitheringDepth=0 -[DPY:HDMI-0]/DigitalVibrance=0 -[DPY:HDMI-0]/ColorSpace=0 -[DPY:HDMI-0]/ColorRange=0 -[DPY:HDMI-0]/SynchronousPaletteUpdates=0 -[DPY:DP-4]/Dithering=0 -[DPY:DP-4]/DitheringMode=0 -[DPY:DP-4]/DitheringDepth=0 -[DPY:DP-4]/ColorSpace=0 -[DPY:DP-4]/ColorRange=0 -[DPY:DP-4]/SynchronousPaletteUpdates=0 -[DPY:DP-5]/Dithering=0 -[DPY:DP-5]/DitheringMode=0 -[DPY:DP-5]/DitheringDepth=0 -[DPY:DP-5]/ColorSpace=0 -[DPY:DP-5]/ColorRange=0 -[DPY:DP-5]/SynchronousPaletteUpdates=0 diff --git a/.tmux.conf b/.tmux.conf deleted file mode 100644 index 105cd1f..0000000 --- a/.tmux.conf +++ /dev/null @@ -1,3 +0,0 @@ -set -g default-terminal 'screen-256color' -set -g history-limit 10000 -set -g mouse on diff --git a/.zshrc b/.zshrc index 52d28ec..7be70be 100644 --- a/.zshrc +++ b/.zshrc @@ -1,5 +1,5 @@ # Set path -export PATH=$HOME/flutter/bin:$HOME/.cargo/bin:$HOME/.local/bin:$HOME/.dotnet/tools:$HOME/.local/share/gem/ruby/3.0.0/bin:$HOME/.yarn/bin:$HOME/bin:/usr/local/bin:/var/lib/flatpak/exports/bin:$PATH +export PATH=$HOME/.local/bin:$HOME/.dotnet/tools:$HOME/.yarn/bin:$HOME/bin:/usr/local/bin:/var/lib/flatpak/exports/bin:$PATH # Path to your oh-my-zsh installation. export ZSH="$HOME/.oh-my-zsh" @@ -51,12 +51,6 @@ alias grep="batgrep" alias man="batman" alias gitdiff="batdiff" -# Spicetify -export SPICETIFY_INSTALL="/usr/share/spicetify-cli" - -# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. -[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh - # Prevent dotnet from tracking me export DOTNET_CLI_TELEMETRY_OPTOUT=true diff --git a/bin/update-flutter b/bin/update-flutter deleted file mode 100755 index 54cb613..0000000 --- a/bin/update-flutter +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -flutter upgrade -flutter update-packages -flutter precache -flutter ide-config --overwrite -flutter doctor -v diff --git a/bin/update-mirrors b/bin/update-mirrors deleted file mode 100755 index 8146753..0000000 --- a/bin/update-mirrors +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -sudo reflector --protocol http --protocol https --threads 16 --age 12 --verbose --sort rate --country "United States" --save /etc/pacman.d/mirrorlist