better portable neovim config, link neovim config to vim, start on bar stuff
This commit is contained in:
parent
3723faea0c
commit
adc70176b6
369
de/bar/polybar-config
Normal file
369
de/bar/polybar-config
Normal file
|
@ -0,0 +1,369 @@
|
||||||
|
;=====================================================
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/jaagr/polybar
|
||||||
|
;
|
||||||
|
; The README contains alot of information
|
||||||
|
;
|
||||||
|
;=====================================================
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
;background = ${xrdb:color0:#222}
|
||||||
|
background = #222
|
||||||
|
background-alt = #444
|
||||||
|
;foreground = ${xrdb:color7:#222}
|
||||||
|
foreground = #dfdfdf
|
||||||
|
foreground-alt = #555
|
||||||
|
primary = #ffb52a
|
||||||
|
secondary = #e60053
|
||||||
|
alert = #bd2c40
|
||||||
|
|
||||||
|
[bar/example]
|
||||||
|
;monitor = ${env:MONITOR:HDMI-1}
|
||||||
|
width = 100%
|
||||||
|
height = 27
|
||||||
|
;offset-x = 1%
|
||||||
|
;offset-y = 1%
|
||||||
|
radius = 6.0
|
||||||
|
fixed-center = false
|
||||||
|
|
||||||
|
background = ${colors.background}
|
||||||
|
foreground = ${colors.foreground}
|
||||||
|
|
||||||
|
line-size = 3
|
||||||
|
line-color = #f00
|
||||||
|
|
||||||
|
border-size = 4
|
||||||
|
border-color = #00000000
|
||||||
|
|
||||||
|
padding-left = 0
|
||||||
|
padding-right = 2
|
||||||
|
|
||||||
|
module-margin-left = 1
|
||||||
|
module-margin-right = 2
|
||||||
|
|
||||||
|
font-0 = fixed:pixelsize=10;1
|
||||||
|
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
|
||||||
|
font-2 = siji:pixelsize=10;1
|
||||||
|
|
||||||
|
modules-left = bspwm
|
||||||
|
modules-center = mpd
|
||||||
|
modules-right = filesystem xbacklight volume xkeyboard memory cpu battery temperature date powermenu
|
||||||
|
|
||||||
|
tray-position = right
|
||||||
|
tray-padding = 2
|
||||||
|
;tray-transparent = true
|
||||||
|
;tray-background = #0063ff
|
||||||
|
|
||||||
|
;wm-restack = bspwm
|
||||||
|
;wm-restack = i3
|
||||||
|
|
||||||
|
;override-redirect = true
|
||||||
|
|
||||||
|
;scroll-up = bspwm-desknext
|
||||||
|
;scroll-down = bspwm-deskprev
|
||||||
|
|
||||||
|
;scroll-up = i3wm-wsnext
|
||||||
|
;scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
[module/xwindow]
|
||||||
|
type = internal/xwindow
|
||||||
|
label = %title:0:30:...%
|
||||||
|
|
||||||
|
[module/xkeyboard]
|
||||||
|
type = internal/xkeyboard
|
||||||
|
blacklist-0 = num lock
|
||||||
|
|
||||||
|
format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-prefix-underline = ${colors.secondary}
|
||||||
|
|
||||||
|
label-layout = %layout%
|
||||||
|
label-layout-underline = ${colors.secondary}
|
||||||
|
|
||||||
|
label-indicator-padding = 2
|
||||||
|
label-indicator-margin = 1
|
||||||
|
label-indicator-background = ${colors.secondary}
|
||||||
|
label-indicator-underline = ${colors.secondary}
|
||||||
|
|
||||||
|
[module/filesystem]
|
||||||
|
type = internal/fs
|
||||||
|
interval = 25
|
||||||
|
|
||||||
|
mount-0 = /
|
||||||
|
|
||||||
|
label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
|
||||||
|
label-unmounted = %mountpoint% not mounted
|
||||||
|
label-unmounted-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/bspwm]
|
||||||
|
type = internal/bspwm
|
||||||
|
|
||||||
|
label-focused = %index%
|
||||||
|
label-focused-background = ${colors.background-alt}
|
||||||
|
label-focused-underline= ${colors.primary}
|
||||||
|
label-focused-padding = 2
|
||||||
|
|
||||||
|
label-occupied = %index%
|
||||||
|
label-occupied-padding = 2
|
||||||
|
|
||||||
|
label-urgent = %index%!
|
||||||
|
label-urgent-background = ${colors.alert}
|
||||||
|
label-urgent-padding = 2
|
||||||
|
|
||||||
|
label-empty = %index%
|
||||||
|
label-empty-foreground = ${colors.foreground-alt}
|
||||||
|
label-empty-padding = 2
|
||||||
|
|
||||||
|
[module/i3]
|
||||||
|
type = internal/i3
|
||||||
|
format = <label-state> <label-mode>
|
||||||
|
index-sort = true
|
||||||
|
wrapping-scroll = false
|
||||||
|
|
||||||
|
; Only show workspaces on the same output as the bar
|
||||||
|
;pin-workspaces = true
|
||||||
|
|
||||||
|
label-mode-padding = 2
|
||||||
|
label-mode-foreground = #000
|
||||||
|
label-mode-background = ${colors.primary}
|
||||||
|
|
||||||
|
; focused = Active workspace on focused monitor
|
||||||
|
label-focused = %index%
|
||||||
|
label-focused-background = ${module/bspwm.label-focused-background}
|
||||||
|
label-focused-underline = ${module/bspwm.label-focused-underline}
|
||||||
|
label-focused-padding = ${module/bspwm.label-focused-padding}
|
||||||
|
|
||||||
|
; unfocused = Inactive workspace on any monitor
|
||||||
|
label-unfocused = %index%
|
||||||
|
label-unfocused-padding = ${module/bspwm.label-occupied-padding}
|
||||||
|
|
||||||
|
; visible = Active workspace on unfocused monitor
|
||||||
|
label-visible = %index%
|
||||||
|
label-visible-background = ${self.label-focused-background}
|
||||||
|
label-visible-underline = ${self.label-focused-underline}
|
||||||
|
label-visible-padding = ${self.label-focused-padding}
|
||||||
|
|
||||||
|
; urgent = Workspace with urgency hint set
|
||||||
|
label-urgent = %index%
|
||||||
|
label-urgent-background = ${module/bspwm.label-urgent-background}
|
||||||
|
label-urgent-padding = ${module/bspwm.label-urgent-padding}
|
||||||
|
|
||||||
|
[module/mpd]
|
||||||
|
type = internal/mpd
|
||||||
|
format-online = <label-song> <icon-prev> <icon-stop> <toggle> <icon-next>
|
||||||
|
|
||||||
|
icon-prev =
|
||||||
|
icon-stop =
|
||||||
|
icon-play =
|
||||||
|
icon-pause =
|
||||||
|
icon-next =
|
||||||
|
|
||||||
|
label-song-maxlen = 25
|
||||||
|
label-song-ellipsis = true
|
||||||
|
|
||||||
|
[module/xbacklight]
|
||||||
|
type = internal/xbacklight
|
||||||
|
|
||||||
|
format = <label> <bar>
|
||||||
|
label = BL
|
||||||
|
|
||||||
|
bar-width = 10
|
||||||
|
bar-indicator = |
|
||||||
|
bar-indicator-foreground = #ff
|
||||||
|
bar-indicator-font = 2
|
||||||
|
bar-fill = ─
|
||||||
|
bar-fill-font = 2
|
||||||
|
bar-fill-foreground = #9f78e1
|
||||||
|
bar-empty = ─
|
||||||
|
bar-empty-font = 2
|
||||||
|
bar-empty-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/backlight-acpi]
|
||||||
|
inherit = module/xbacklight
|
||||||
|
type = internal/backlight
|
||||||
|
card = intel_backlight
|
||||||
|
|
||||||
|
[module/cpu]
|
||||||
|
type = internal/cpu
|
||||||
|
interval = 2
|
||||||
|
format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-underline = #f90000
|
||||||
|
label = %percentage%%
|
||||||
|
|
||||||
|
[module/memory]
|
||||||
|
type = internal/memory
|
||||||
|
interval = 2
|
||||||
|
format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-underline = #4bffdc
|
||||||
|
label = %percentage_used%%
|
||||||
|
|
||||||
|
[module/wlan]
|
||||||
|
type = internal/network
|
||||||
|
interface =
|
||||||
|
interval = 3.0
|
||||||
|
|
||||||
|
format-connected = <ramp-signal> <label-connected>
|
||||||
|
format-connected-underline = #9f78e1
|
||||||
|
label-connected = %essid%
|
||||||
|
|
||||||
|
format-disconnected =
|
||||||
|
;format-disconnected = <label-disconnected>
|
||||||
|
;format-disconnected-underline = ${self.format-connected-underline}
|
||||||
|
;label-disconnected = %ifname% disconnected
|
||||||
|
;label-disconnected-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
ramp-signal-0 =
|
||||||
|
ramp-signal-1 =
|
||||||
|
ramp-signal-2 =
|
||||||
|
ramp-signal-3 =
|
||||||
|
ramp-signal-4 =
|
||||||
|
ramp-signal-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/eth]
|
||||||
|
type = internal/network
|
||||||
|
interface =
|
||||||
|
interval = 3.0
|
||||||
|
|
||||||
|
format-connected-underline = #55aa55
|
||||||
|
format-connected-prefix = " "
|
||||||
|
format-connected-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
label-connected = %local_ip%
|
||||||
|
|
||||||
|
format-disconnected =
|
||||||
|
;format-disconnected = <label-disconnected>
|
||||||
|
;format-disconnected-underline = ${self.format-connected-underline}
|
||||||
|
;label-disconnected = %ifname% disconnected
|
||||||
|
;label-disconnected-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 5
|
||||||
|
|
||||||
|
date =
|
||||||
|
date-alt = " %Y-%m-%d"
|
||||||
|
|
||||||
|
time = %H:%M
|
||||||
|
time-alt = %H:%M:%S
|
||||||
|
|
||||||
|
format-prefix =
|
||||||
|
format-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-underline = #0a6cf5
|
||||||
|
|
||||||
|
label = %date% %time%
|
||||||
|
|
||||||
|
[module/volume]
|
||||||
|
type = internal/volume
|
||||||
|
|
||||||
|
format-volume = <label-volume> <bar-volume>
|
||||||
|
label-volume = VOL
|
||||||
|
label-volume-foreground = ${root.foreground}
|
||||||
|
|
||||||
|
format-muted-prefix = " "
|
||||||
|
format-muted-foreground = ${colors.foreground-alt}
|
||||||
|
label-muted = sound muted
|
||||||
|
|
||||||
|
bar-volume-width = 10
|
||||||
|
bar-volume-foreground-0 = #55aa55
|
||||||
|
bar-volume-foreground-1 = #55aa55
|
||||||
|
bar-volume-foreground-2 = #55aa55
|
||||||
|
bar-volume-foreground-3 = #55aa55
|
||||||
|
bar-volume-foreground-4 = #55aa55
|
||||||
|
bar-volume-foreground-5 = #f5a70a
|
||||||
|
bar-volume-foreground-6 = #ff5555
|
||||||
|
bar-volume-gradient = false
|
||||||
|
bar-volume-indicator = |
|
||||||
|
bar-volume-indicator-font = 2
|
||||||
|
bar-volume-fill = ─
|
||||||
|
bar-volume-fill-font = 2
|
||||||
|
bar-volume-empty = ─
|
||||||
|
bar-volume-empty-font = 2
|
||||||
|
bar-volume-empty-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/battery]
|
||||||
|
type = internal/battery
|
||||||
|
battery = BAT0
|
||||||
|
adapter = ADP1
|
||||||
|
full-at = 98
|
||||||
|
|
||||||
|
format-charging = <animation-charging> <label-charging>
|
||||||
|
format-charging-underline = #ffb52a
|
||||||
|
|
||||||
|
format-discharging = <ramp-capacity> <label-discharging>
|
||||||
|
format-discharging-underline = ${self.format-charging-underline}
|
||||||
|
|
||||||
|
format-full-prefix = " "
|
||||||
|
format-full-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-full-underline = ${self.format-charging-underline}
|
||||||
|
|
||||||
|
ramp-capacity-0 =
|
||||||
|
ramp-capacity-1 =
|
||||||
|
ramp-capacity-2 =
|
||||||
|
ramp-capacity-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
animation-charging-0 =
|
||||||
|
animation-charging-1 =
|
||||||
|
animation-charging-2 =
|
||||||
|
animation-charging-foreground = ${colors.foreground-alt}
|
||||||
|
animation-charging-framerate = 750
|
||||||
|
|
||||||
|
[module/temperature]
|
||||||
|
type = internal/temperature
|
||||||
|
thermal-zone = 0
|
||||||
|
warn-temperature = 60
|
||||||
|
|
||||||
|
format = <ramp> <label>
|
||||||
|
format-underline = #f50a4d
|
||||||
|
format-warn = <ramp> <label-warn>
|
||||||
|
format-warn-underline = ${self.format-underline}
|
||||||
|
|
||||||
|
label = %temperature%
|
||||||
|
label-warn = %temperature%
|
||||||
|
label-warn-foreground = ${colors.secondary}
|
||||||
|
|
||||||
|
ramp-0 =
|
||||||
|
ramp-1 =
|
||||||
|
ramp-2 =
|
||||||
|
ramp-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/powermenu]
|
||||||
|
type = custom/menu
|
||||||
|
|
||||||
|
format-spacing = 1
|
||||||
|
|
||||||
|
label-open =
|
||||||
|
label-open-foreground = ${colors.secondary}
|
||||||
|
label-close = cancel
|
||||||
|
label-close-foreground = ${colors.secondary}
|
||||||
|
label-separator = |
|
||||||
|
label-separator-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
menu-0-0 = reboot
|
||||||
|
menu-0-0-exec = menu-open-1
|
||||||
|
menu-0-1 = power off
|
||||||
|
menu-0-1-exec = menu-open-2
|
||||||
|
|
||||||
|
menu-1-0 = cancel
|
||||||
|
menu-1-0-exec = menu-open-0
|
||||||
|
menu-1-1 = reboot
|
||||||
|
menu-1-1-exec = sudo reboot
|
||||||
|
|
||||||
|
menu-2-0 = power off
|
||||||
|
menu-2-0-exec = sudo poweroff
|
||||||
|
menu-2-1 = cancel
|
||||||
|
menu-2-1-exec = menu-open-0
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
screenchange-reload = true
|
||||||
|
;compositing-background = xor
|
||||||
|
;compositing-background = screen
|
||||||
|
;compositing-foreground = source
|
||||||
|
;compositing-border = over
|
||||||
|
|
||||||
|
[global/wm]
|
||||||
|
margin-top = 5
|
||||||
|
margin-bottom = 5
|
||||||
|
|
||||||
|
; vim:ft=dosini
|
40
setup
40
setup
|
@ -31,27 +31,31 @@ fi
|
||||||
# TODO: make sure we have an even number, here
|
# TODO: make sure we have an even number, here
|
||||||
links=(
|
links=(
|
||||||
# desktop environment files
|
# desktop environment files
|
||||||
"$dfp/de/bspwmrc" "$XDG_CONFIG_HOME/bspwm/bspwmrc"
|
"$dfp/de/bspwmrc" "$XDG_CONFIG_HOME/bspwm/bspwmrc"
|
||||||
"$dfp/de/sxhkdrc" "$XDG_CONFIG_HOME/sxhkd/sxhkdrc"
|
"$dfp/de/sxhkdrc" "$XDG_CONFIG_HOME/sxhkd/sxhkdrc"
|
||||||
"$dfp/de/xresources" "$HOME/.Xresources"
|
"$dfp/de/xresources" "$HOME/.Xresources"
|
||||||
"$dfp/de/xinitrc" "$HOME/.xinitrc"
|
"$dfp/de/xinitrc" "$HOME/.xinitrc"
|
||||||
"$dfp/de/xprofile" "$HOME/.xprofile"
|
"$dfp/de/xprofile" "$HOME/.xprofile"
|
||||||
"$dfp/common/colors/xresources" "$HOME/.Xresources.colors"
|
"$dfp/common/colors/xresources" "$HOME/.Xresources.colors"
|
||||||
|
|
||||||
|
# bar files
|
||||||
|
"$dfp/de/bar/polybar-config" "$XDG_CONFIG_HOME/polybar/example"
|
||||||
|
|
||||||
# shell files
|
# shell files
|
||||||
"$dfp/shell/bashrc" "$HOME/.bashrc"
|
"$dfp/shell/bashrc" "$HOME/.bashrc"
|
||||||
"$dfp/shell/bash_profile" "$HOME/.bash_profile"
|
"$dfp/shell/bash_profile" "$HOME/.bash_profile"
|
||||||
"$dfp/shell/tmux.conf" "$HOME/.tmux.conf"
|
"$dfp/shell/tmux.conf" "$HOME/.tmux.conf"
|
||||||
"$dfp/shell/tmux-layouts" "$HOME/.tmux/layouts"
|
"$dfp/shell/tmux-layouts" "$HOME/.tmux/layouts"
|
||||||
|
|
||||||
# text editor files
|
# text editor files
|
||||||
"$dfp/text-editor/neovim" "$XDG_CONFIG_HOME/nvim"
|
"$dfp/text-editor/neovim/" "$XDG_CONFIG_HOME/nvim"
|
||||||
"$dfp/common/colors/vim" "$XDG_CONFIG_HOME/nvim/colors/base16-donokai.vim"
|
"$dfp/text-editor/neovim/" "$HOME/.vim"
|
||||||
|
"$dfp/text-editor/neovim/init.vim" "$HOME/.vimrc"
|
||||||
|
"$dfp/common/colors/vim" "$XDG_CONFIG_HOME/nvim/colors/base16-donokai.vim"
|
||||||
)
|
)
|
||||||
|
|
||||||
source=""
|
source=""
|
||||||
for i in "${links[@]}"; do
|
for i in "${links[@]}"; do
|
||||||
# ls -la --color=auto "$i"
|
|
||||||
if [ -n "$source" ]; then
|
if [ -n "$source" ]; then
|
||||||
if [ -L "$i" ]; then # if symlink exists, delete it
|
if [ -L "$i" ]; then # if symlink exists, delete it
|
||||||
rm -rf "$i"
|
rm -rf "$i"
|
||||||
|
@ -59,12 +63,18 @@ for i in "${links[@]}"; do
|
||||||
if [ -f "$i" ]; then # if file exists, delete it
|
if [ -f "$i" ]; then # if file exists, delete it
|
||||||
rm -rf "$i"
|
rm -rf "$i"
|
||||||
fi
|
fi
|
||||||
# NOTE: maybe warn user again?
|
|
||||||
if [ -d "$i" ]; then # if directory exists, delete it
|
if [ -d "$i" ]; then # if directory exists, delete it
|
||||||
rm -rf "$i"
|
rm -rf "$i"
|
||||||
fi
|
fi
|
||||||
|
# check if the directory that will contain the link exists
|
||||||
|
DIR_TO_LINK=$(dirname "$i")
|
||||||
|
if [ -d "$DIR_TO_LINK" ]; then
|
||||||
|
:
|
||||||
|
else
|
||||||
|
mkdir -p "$DIR_TO_LINK"
|
||||||
|
fi
|
||||||
ln -s "$source" "$i"
|
ln -s "$source" "$i"
|
||||||
echo "Linked $source to $i."
|
echo "Linked $(basename $source) to $i."
|
||||||
source=""
|
source=""
|
||||||
else
|
else
|
||||||
source="$i"
|
source="$i"
|
||||||
|
|
|
@ -1,8 +1,15 @@
|
||||||
" initial plugin manager
|
" initial plugin manager installation
|
||||||
if empty(glob('~/.config/nvim/autoload/plug.vim'))
|
if has('nvim')
|
||||||
silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
if empty(glob('~/.config/nvim/autoload/plug.vim'))
|
||||||
autocmd VimEnter * PlugInstall
|
silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
||||||
endif
|
autocmd VimEnter * PlugInstall
|
||||||
|
endif
|
||||||
|
else
|
||||||
|
if empty(glob('~/.vim/autoload/plug.vim'))
|
||||||
|
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
||||||
|
autocmd VimEnter * PlugInstall
|
||||||
|
endif
|
||||||
|
end
|
||||||
|
|
||||||
" tell vim to reload the init.vim file when it saves it
|
" tell vim to reload the init.vim file when it saves it
|
||||||
autocmd! BufWritePost init.vim source %
|
autocmd! BufWritePost init.vim source %
|
||||||
|
@ -20,7 +27,12 @@ function! DoRemote(arg)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" Initialize plugin manager
|
" Initialize plugin manager
|
||||||
call plug#begin('~/.config/nvim/bundle')
|
if has('nvim')
|
||||||
|
call plug#begin('~/.config/nvim/bundle')
|
||||||
|
else
|
||||||
|
call plug#begin('~/.vim/bundle')
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
" let plugin manager manage itself
|
" let plugin manager manage itself
|
||||||
Plug 'junegunn/vim-plug'
|
Plug 'junegunn/vim-plug'
|
||||||
|
@ -33,7 +45,7 @@ Plug 'junegunn/vim-plug'
|
||||||
if exists('asmanviewer')
|
if exists('asmanviewer')
|
||||||
let g:prosession_dir = '/dev/null'
|
let g:prosession_dir = '/dev/null'
|
||||||
else
|
else
|
||||||
Plug 'tpope/vim-obsession' " session ease-of-use
|
Plug 'tpope/vim-obsession' " session ease-of-use
|
||||||
Plug 'dhruvasagar/vim-prosession' " more session ease-of-use
|
Plug 'dhruvasagar/vim-prosession' " more session ease-of-use
|
||||||
let g:prosession_dir = '~/.config/nvim/session/'
|
let g:prosession_dir = '~/.config/nvim/session/'
|
||||||
endif
|
endif
|
||||||
|
@ -131,11 +143,11 @@ autocmd BufNewFile,BufReadPost *.txt setl spell textwidth=0 wrapmargin=0
|
||||||
set tabstop=2
|
set tabstop=2
|
||||||
set shiftwidth=2
|
set shiftwidth=2
|
||||||
set softtabstop=2
|
set softtabstop=2
|
||||||
set expandtab
|
set noexpandtab
|
||||||
set autoindent smartindent
|
set autoindent smartindent
|
||||||
set list
|
set list
|
||||||
set nostartofline
|
set nostartofline
|
||||||
set listchars=trail:·,tab:\ \
|
set listchars=trail:·,tab:\__
|
||||||
|
|
||||||
" look and feel
|
" look and feel
|
||||||
|
|
||||||
|
@ -203,11 +215,11 @@ endfunction
|
||||||
" a toggle-able minimalistic "distraction-free" text editing mode
|
" a toggle-able minimalistic "distraction-free" text editing mode
|
||||||
let s:distractionFreeMode = 0
|
let s:distractionFreeMode = 0
|
||||||
fun! DistractionFreeModeFunc()
|
fun! DistractionFreeModeFunc()
|
||||||
AirlineToggle
|
AirlineToggle
|
||||||
VimroomToggle
|
VimroomToggle
|
||||||
if s:distractionFreeMode == 0
|
if s:distractionFreeMode == 0
|
||||||
let s:distractionFreeMode = 1
|
let s:distractionFreeMode = 1
|
||||||
set nocursorline
|
set nocursorline
|
||||||
set laststatus=0
|
set laststatus=0
|
||||||
set noshowmode
|
set noshowmode
|
||||||
set noruler
|
set noruler
|
||||||
|
@ -216,22 +228,22 @@ fun! DistractionFreeModeFunc()
|
||||||
hi NonText ctermfg=black guifg=black
|
hi NonText ctermfg=black guifg=black
|
||||||
else
|
else
|
||||||
let s:distractionFreeMode = 0
|
let s:distractionFreeMode = 0
|
||||||
set cursorline
|
set cursorline
|
||||||
set showmode
|
set showmode
|
||||||
set ruler
|
set ruler
|
||||||
set laststatus=2
|
set laststatus=2
|
||||||
set showcmd
|
set showcmd
|
||||||
set number
|
set number
|
||||||
hi NonText ctermfg=gray guifg=gray
|
hi NonText ctermfg=gray guifg=gray
|
||||||
colorscheme base16-donokai
|
colorscheme base16-donokai
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" prevents normal window navigation and closing while in DistractionFreeMode
|
" prevents normal window navigation and closing while in DistractionFreeMode
|
||||||
fun! CheckCloseDistractionFreeMode()
|
fun! CheckCloseDistractionFreeMode()
|
||||||
if s:distractionFreeMode == 1
|
if s:distractionFreeMode == 1
|
||||||
call DistractionFreeModeFunc()
|
call DistractionFreeModeFunc()
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" run the check function every time we leave a window
|
" run the check function every time we leave a window
|
||||||
|
@ -245,17 +257,22 @@ nnoremap <silent> <Leader>mz :DistractionFreeMode<CR>
|
||||||
:command! ShowSpaceIndents call ShowSpaceIndentation()
|
:command! ShowSpaceIndents call ShowSpaceIndentation()
|
||||||
:command! DistractionFreeMode call DistractionFreeModeFunc()
|
:command! DistractionFreeMode call DistractionFreeModeFunc()
|
||||||
|
|
||||||
|
let $vimdir = $HOME.'/.vim'
|
||||||
|
if has('nvim')
|
||||||
|
let $vimdir = $HOME.'/.config/nvim'
|
||||||
|
endif
|
||||||
|
|
||||||
set hidden " allows buffer switching without saving
|
set hidden " allows buffer switching without saving
|
||||||
set shortmess=I
|
set shortmess=I
|
||||||
set history=1000
|
set history=1000
|
||||||
set undofile
|
set undofile
|
||||||
set undodir=$HOME/.config/nvim/undo
|
set undodir=$vimdir/undo
|
||||||
set undolevels=1000
|
set undolevels=1000
|
||||||
set undoreload=10000
|
set undoreload=10000
|
||||||
|
|
||||||
set backupdir=$HOME/.config/nvim/backup
|
set backupdir=$vimdir/backup
|
||||||
set directory=$HOME/.config/nvim/backup
|
set directory=$vimdir/backup
|
||||||
set spellfile=$HOME/.config/nvim/spell/en.utf-8.add
|
set spellfile=$vimdir/spell/en.utf-8.add
|
||||||
|
|
||||||
set ignorecase
|
set ignorecase
|
||||||
set smartcase
|
set smartcase
|
||||||
|
@ -294,18 +311,20 @@ endif
|
||||||
" no empty buffer on startup
|
" no empty buffer on startup
|
||||||
autocmd VimEnter * nested if bufname('')=='' && line('$') == 1 && col('$')==1 && !&modified | bd % | endif
|
autocmd VimEnter * nested if bufname('')=='' && line('$') == 1 && col('$')==1 && !&modified | bd % | endif
|
||||||
|
|
||||||
function! TerminalSplit()
|
if has('nvim')
|
||||||
let current_file = @%
|
function! TerminalSplit()
|
||||||
echo current_file
|
let current_file = @%
|
||||||
if match(current_file, "term://*") != -1
|
echo current_file
|
||||||
split
|
if match(current_file, "term://*") != -1
|
||||||
terminal
|
split
|
||||||
else
|
terminal
|
||||||
vsplit
|
else
|
||||||
vertical resize 80
|
vsplit
|
||||||
terminal
|
vertical resize 80
|
||||||
endif
|
terminal
|
||||||
endfunction
|
endif
|
||||||
|
endfunction
|
||||||
|
endif
|
||||||
|
|
||||||
" bindings
|
" bindings
|
||||||
|
|
||||||
|
@ -319,25 +338,27 @@ command! Q q
|
||||||
" best leader
|
" best leader
|
||||||
let mapleader = "\<Space>"
|
let mapleader = "\<Space>"
|
||||||
|
|
||||||
" terminal mappings
|
if has('nvim')
|
||||||
" open a terminal split at 80 columns
|
" terminal mappings
|
||||||
nnoremap <C-t> :call TerminalSplit()<CR>
|
" open a terminal split at 80 columns
|
||||||
tnoremap <C-t> <C-\><C-n>:call TerminalSplit()<CR>
|
nnoremap <C-t> :call TerminalSplit()<CR>
|
||||||
|
tnoremap <C-t> <C-\><C-n>:call TerminalSplit()<CR>
|
||||||
|
|
||||||
" close the terminal
|
" close the terminal
|
||||||
tnoremap <C-w> <C-\><C-n>:q!<CR>
|
tnoremap <C-w> <C-\><C-n>:q!<CR>
|
||||||
|
|
||||||
" moving between terminal splits
|
" moving between terminal splits
|
||||||
tnoremap <C-h> <C-\><C-n><C-w>h
|
tnoremap <C-h> <C-\><C-n><C-w>h
|
||||||
tnoremap <C-j> <C-\><C-n><C-w>j
|
tnoremap <C-j> <C-\><C-n><C-w>j
|
||||||
tnoremap <C-k> <C-\><C-n><C-w>k
|
tnoremap <C-k> <C-\><C-n><C-w>k
|
||||||
tnoremap <C-l> <C-\><C-n><C-w>l
|
tnoremap <C-l> <C-\><C-n><C-w>l
|
||||||
|
endif
|
||||||
|
|
||||||
" enter insert mode when entering a terminal buffer
|
" enter insert mode when entering a terminal buffer
|
||||||
autocmd BufWinEnter,WinEnter term://* startinsert
|
autocmd BufWinEnter,WinEnter term://* startinsert
|
||||||
|
|
||||||
" change buffers with leader,tab
|
" change buffers with leader,tab
|
||||||
nnoremap <leader><Tab> :bnext<CR>
|
nnoremap <leader><Tab> :bnext<CR>
|
||||||
nnoremap <leader><S-Tab> :bprevious<CR>
|
nnoremap <leader><S-Tab> :bprevious<CR>
|
||||||
|
|
||||||
" don't kill vim
|
" don't kill vim
|
||||||
|
|
Reference in a new issue