init minimal

This commit is contained in:
ackman678
2019-02-06 17:12:59 -08:00
commit 2fd8d2d7d6
15 changed files with 1033 additions and 0 deletions

26
.Xresources Normal file
View File

@@ -0,0 +1,26 @@
!HiDPI displays
! Xft.dpi: 144
! Xft.autohint: 0
! Xft.lcdfilter: lcddefault
! Xft.hintstyle: hintfull
! Xft.hinting: 1
! Xft.antialias: 1
! Xft.rgba: rgb
URxvt.scrollBar: false
URxvt.saveLines: 5000
!DejaVu
!URxvt.font: xft:DejaVu Sans Mono:size=11:antialias=true
!URxvt.boldfont: xft:DejaVu Sans Mono:bold:size=11:antialias=true
!Bitstream
!URxvt.font: xft:bitstream vera sans mono:size=11:antialias=true
!URxvt.boldFont: xft:bitstream vera sans mono:bold:size=11:antialias=true
!URxvt.letterSpace: -1
!Inconsolata
URxvt.font: xft:Inconsolata:style=Regular:size=11
URxvt.boldFont: xft:Inconsolata:style=Bold:size=11
URxvt.letterSpace: -1

10
.bash_profile Normal file
View File

@@ -0,0 +1,10 @@
#
# ~/.bash_profile
#
[[ -f ~/.bashrc ]] && . ~/.bashrc
if [ -z "$DISPLAY" -a $XDG_VTNR -eq 1 ]; then
#date --iso-8601="seconds"
exec startx -- -keeptty >> ~/.xorg.log 2>&1
fi

56
.bashrc Normal file
View File

@@ -0,0 +1,56 @@
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
#customize prompt see https://wiki.archlinux.org/index.php/Bash/Prompt_customization
RED="\[$(tput setaf 1)\]"
YELLOW="\[$(tput setaf 3)\]"
LIGHTBLUE="\[$(tput setaf 4)\]"
BLUE="\[$(tput setaf 27)\]"
RESET="\[$(tput sgr0)\]"
#PS1="${BLUE}\u@\h \W>${RESET} "
PS1="${BLUE}\W>${RESET} "
alias ls='ls --color=auto'
alias l='ls'
alias la='ls -A'
alias ll='ls -lah'
alias tree='tree -CL 2'
#alias vim='nvim'
alias nv='nvim'
export EDITOR=nvim
#alias xclip="xclip -selection clipboard"
#alias ts="date --iso-8601='seconds' | tr -d '\n' | xclip"
# Base16 Shell
BASE16_SHELL="$HOME/.config/base16-shell/"
[ -n "$PS1" ] && \
[ -s "$BASE16_SHELL/profile_helper.sh" ] && \
eval "$("$BASE16_SHELL/profile_helper.sh")"
#add private usr bin to path if exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
#fast fuzzy file searching with fzf and ripgrep if installed
#fzf kbd shortcuts: <alt-c>, <ctrl-t>, <ctrl-p>
source /usr/share/fzf/key-bindings.bash
source /usr/share/fzf/completion.bash
#export FZF_DEFAULT_COMMAND='rg --files --no-ignore --hidden --follow --glob "!.git/*"'
export FZF_DEFAULT_COMMAND='rg -i --files --glob "!.git/*"'
bind -x '"\C-p": nvim $(fzf);'
if [ -d "$HOME/bin/Fiji.app" ]; then
alias fiji="~/bin/Fiji.app/ImageJ-linux64"
fi
#source custom user aliases
if [[ -e $HOME/.myconfig ]]; then
source $HOME/.myconfig
fi

View File

@@ -0,0 +1,18 @@
[Settings]
gtk-theme-name=Arc-Dark-solid
gtk-icon-theme-name=Arc
gtk-font-name=Noto Sans 11
gtk-cursor-theme-name=Adwaita
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_BOTH
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1
gtk-menu-images=1
gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
gtk-xft-rgba=rgb
gtk-decoration-layout=menu:close
gtk-application-prefer-dark-theme=1

273
.config/i3/config Normal file
View File

@@ -0,0 +1,273 @@
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
#jba
#bindsym --release $mod+z exec scrot -s
bindsym --release $mod+z exec scrot -u '%Y-%m-%d_$wx$h.png' -e '~/bin/mv2figs.sh $f'
bindsym $mod+Shift+z exec "date --iso-8601='seconds' | tr -d '\n' | xclip -selection clipboard"
#audio output kbd control- pulse audio
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume 0 +5%
bindsym XF86AudioLowerVolume exec pactl set-sink-volume 0 -5%
bindsym XF86AudioMute exec pactl set-sink-mute 0 toggle
#audio output kbd control- alsa utils
#bindsym XF86AudioRaiseVolume exec amixer -q set Master 2dB+ unmute
#bindsym XF86AudioRaiseVolume exec amixer -q set Master 2dB+ unmute
#bindsym XF86AudioMute exec amixer -q set Master toggle
#display brigthnesss
#bindsym XF86MonBrightnessDown exec brightnessctl set 5%-
#bindsym XF86MonBrightnessUp exec brightnessctl set +5%
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango:monospace 8
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# Before i3 v4.8, we used to recommend this one as the default:
# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# The font above is very space-efficient, that is, it looks good, sharp and
# clear in small sizes. However, its unicode glyph coverage is limited, the old
# X core fonts rendering does not support right-to-left and this being a bitmap
# font, it doesnt scale on retina/hidpi displays.
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
bindsym $mod+Return exec i3-sensible-terminal
# kill focused window
bindsym $mod+Shift+q kill
# start dmenu (a program launcher)
bindsym $mod+d exec dmenu_run
# There also is the (new) i3-dmenu-desktop which only displays applications
# shipping a .desktop file. It is a wrapper around dmenu, so you need that
# installed.
# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
## change focus
#bindsym $mod+j focus left
#bindsym $mod+k focus down
#bindsym $mod+l focus up
#bindsym $mod+semicolon focus right
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
## move focused window
#bindsym $mod+Shift+j move left
#bindsym $mod+Shift+k move down
#bindsym $mod+Shift+l move up
#bindsym $mod+Shift+semicolon move right
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
#bindsym $mod+h split h
bindsym $mod+Shift+v split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym j resize shrink width 10 px or 10 ppt
bindsym k resize grow height 10 px or 10 ppt
bindsym l resize shrink height 10 px or 10 ppt
bindsym semicolon resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
#bar {
# status_command i3status
#}
#bindsym $mod+F1 exec firefox
########################################################################33
## Base16 Default Dark
# Author: Chris Kempson (http://chriskempson.com)
#
# You can use these variables anywhere in the i3 configuration file.
set $base00 #181818
set $base01 #282828
set $base02 #383838
set $base03 #585858
set $base04 #b8b8b8
set $base05 #d8d8d8
set $base06 #e8e8e8
set $base07 #f8f8f8
set $base08 #ab4642
set $base09 #dc9656
set $base0A #f7ca88
set $base0B #a1b56c
set $base0C #86c1b9
set $base0D #7cafc2
set $base0E #ba8baf
set $base0F #a16946
# Basic bar configuration using the Base16 variables.
bar {
status_command i3status
position top
mode dock
hidden_state hide
modifier Mod1
colors {
background $base00
separator $base01
statusline $base04
# State Border BG Text
focused_workspace $base05 $base0D $base00
active_workspace $base05 $base03 $base00
inactive_workspace $base03 $base01 $base05
urgent_workspace $base08 $base08 $base00
binding_mode $base00 $base0A $base00
}
# colors {
# background #000000
# statusline #ffffff
# separator #666666
#
# focused_workspace #4c7899 #285577 #ffffff
# active_workspace #333333 #5f676a #ffffff
# inactive_workspace #333333 #222222 #888888
# urgent_workspace #2f343a #900000 #ffffff
# binding_mode #2f343a #900000 #ffffff
# }
}
# Toggle between dock mode and hide mode for i3 bar
bindsym $mod+Shift+b bar mode toggle
# Basic color configuration using the Base16 variables for windows and borders.
# Property Name Border BG Text Indicator Child Border
#client.focused $base05 $base0D $base00 $base0D $base0D
#client.focused_inactive $base01 $base01 $base05 $base03 $base01
#client.unfocused $base01 $base00 $base05 $base01 $base01
#client.urgent $base08 $base08 $base00 $base08 $base08
#client.placeholder $base00 $base00 $base05 $base00 $base00
#client.background $base07
#Can use the following with custom workspace save files to reload layouts
#exec --no-startup-id "i3-msg 'workspace 1; append_layout ~/.config/i3/workspace-1.json'"

122
.config/i3/workspace-1.json Normal file
View File

@@ -0,0 +1,122 @@
// vim:ts=4:sw=4:et
{
// splith split container with 2 children
"border": "normal",
"floating": "auto_off",
"layout": "splith",
"percent": null,
"type": "con",
"nodes": [
{
// splitv split container with 2 children
"border": "normal",
"floating": "auto_off",
"layout": "splitv",
"percent": 0.5,
"type": "con",
"nodes": [
{
// stacked split container with 1 children
"border": "normal",
"floating": "auto_off",
"layout": "stacked",
"percent": 0.5,
"type": "con",
"nodes": [
{
"border": "normal",
"current_border_width": 2,
"floating": "auto_off",
"geometry": {
"height": 388,
"width": 564,
"x": 0,
"y": 0
},
"name": "Welcome to i3wm. Press cmd-return or cmd-d to begin",
"percent": 1,
"swallows": [
{
"class": "^URxvt$",
"instance": "^urxvt$"
}
],
"type": "con"
}
]
},
{
"border": "normal",
"current_border_width": 2,
"floating": "auto_off",
"geometry": {
"height": 388,
"width": 564,
"x": 0,
"y": 0
},
"name": " ",
"percent": 0.5,
"swallows": [
{
"class": "^URxvt$",
"instance": "^urxvt$"
}
],
"type": "con"
}
]
},
{
// stacked split container with 2 children
"border": "normal",
"floating": "auto_off",
"layout": "stacked",
"percent": 0.5,
"type": "con",
"nodes": [
{
"border": "normal",
"current_border_width": 2,
"floating": "auto_off",
"geometry": {
"height": 388,
"width": 564,
"x": 0,
"y": 0
},
"name": " ",
"percent": 0.5,
"swallows": [
{
"class": "^URxvt$",
"instance": "^urxvt$"
}
],
"type": "con"
},
{
"border": "normal",
"current_border_width": 2,
"floating": "auto_off",
"geometry": {
"height": 388,
"width": 564,
"x": 0,
"y": 0
},
"name": " ",
"percent": 0.5,
"swallows": [
{
"class": "^URxvt$",
"instance": "^urxvt$"
}
],
"type": "con"
}
]
}
]
}

71
.config/i3status/config Normal file
View File

@@ -0,0 +1,71 @@
# i3status configuration file.
# see "man i3status" for documentation.
# It is important that this file is edited as UTF-8.
# The following line should contain a sharp s:
# ß
# If the above line is not correctly displayed, fix your editor first!
general {
colors = true
interval = 5
color_good = "#7cafc2"
color_degraded = "#dc9656"
color_bad = "#ab4642"
}
#color_good = "#a1b56c" #light green
#color_degraded = "#f7ca88" #light yellow
#color_degraded = "#dc9656" #light orange
#color_bad = "#ab4642" #light red
#color_good = "#86c1b9" #light cyan
#color_good = "#7cafc2" #light blue
#color_good = "#4A6EF" #blue
#color_degraded = "#85678F"
#color_bad = "#FF1D1D" #red
order += "ipv6"
order += "disk /"
order += "wireless _first_"
order += "ethernet _first_"
#order += "run_watch DHCP"
order += "path_exists VPN"
order += "battery all"
order += "load"
order += "tztime local"
wireless _first_ {
format_up = "W: (%quality at %essid) %ip"
format_down = "W: down"
}
ethernet _first_ {
# if you use %speed, i3status requires root privileges
format_up = "E: %ip (%speed)"
format_down = "E: down"
}
battery all {
format = "%status %percentage %remaining"
}
tztime local {
format = "%Y-%m-%d %H:%M:%S"
}
load {
format = "%1min"
}
disk "/" {
format = "%avail"
}
path_exists VPN {
# path exists when a VPN tunnel launched by nmcli/nm-applet is active
path = "/proc/sys/net/ipv4/conf/tun0"
}
run_watch DHCP {
pidfile = "/var/run/dhclient*.pid"
}

135
.config/nvim/defaults.vim Normal file
View File

@@ -0,0 +1,135 @@
" The default vimrc file.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last change: 2017 Jun 13
"
" This is loaded if no vimrc file was found.
" Except when Vim is run with "-u NONE" or "-C".
" Individual settings can be reverted with ":set option&".
" Other commands can be reverted as mentioned below.
" When started as "evim", evim.vim will already have done these settings.
if v:progname =~? "evim"
finish
endif
" Bail out if something that ran earlier, e.g. a system wide vimrc, does not
" want Vim to use these default values.
if exists('skip_defaults_vim')
finish
endif
" Use Vim settings, rather than Vi settings (much better!).
" This must be first, because it changes other options as a side effect.
" Avoid side effects when it was already reset.
if &compatible
set nocompatible
endif
" When the +eval feature is missing, the set command above will be skipped.
" Use a trick to reset compatible only when the +eval feature is missing.
silent! while 0
set nocompatible
silent! endwhile
" Allow backspacing over everything in insert mode.
set backspace=indent,eol,start
set history=200 " keep 200 lines of command line history
set ruler " show the cursor position all the time
set showcmd " display incomplete commands
set wildmenu " display completion matches in a status line
set ttimeout " time out for key codes
set ttimeoutlen=100 " wait up to 100ms after Esc for special key
" Show @@@ in the last line if it is truncated.
set display=truncate
" Show a few lines of context around the cursor. Note that this makes the
" text scroll if you mouse-click near the start or end of the window.
set scrolloff=5
" Do incremental searching when it's possible to timeout.
if has('reltime')
set incsearch
endif
" Do not recognize octal numbers for Ctrl-A and Ctrl-X, most users find it
" confusing.
set nrformats-=octal
" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries.
if has('win32')
set guioptions-=t
endif
" Don't use Ex mode, use Q for formatting.
" Revert with ":unmap Q".
map Q gq
" CTRL-U in insert mode deletes a lot. Use CTRL-G u to first break undo,
" so that you can undo CTRL-U after inserting a line break.
" Revert with ":iunmap <C-U>".
inoremap <C-U> <C-G>u<C-U>
" In many terminal emulators the mouse works just fine. By enabling it you
" can position the cursor, Visually select and scroll with the mouse.
if has('mouse')
set mouse=a
endif
" Switch syntax highlighting on when the terminal has colors or when using the
" GUI (which always has colors).
if &t_Co > 2 || has("gui_running")
" Revert with ":syntax off".
syntax on
" I like highlighting strings inside C comments.
" Revert with ":unlet c_comment_strings".
let c_comment_strings=1
endif
" Only do this part when compiled with support for autocommands.
if has("autocmd")
" Enable file type detection.
" Use the default filetype settings, so that mail gets 'tw' set to 72,
" 'cindent' is on in C files, etc.
" Also load indent files, to automatically do language-dependent indenting.
" Revert with ":filetype off".
filetype plugin indent on
" Put these in an autocmd group, so that you can revert them with:
" ":augroup vimStartup | au! | augroup END"
augroup vimStartup
au!
" When editing a file, always jump to the last known cursor position.
" Don't do it when the position is invalid, when inside an event handler
" (happens when dropping a file on gvim) and for a commit message (it's
" likely a different one than last time).
autocmd BufReadPost *
\ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
\ | exe "normal! g`\""
\ | endif
augroup END
endif " has("autocmd")
" Convenient command to see the difference between the current buffer and the
" file it was loaded from, thus the changes you made.
" Only define it when not defined already.
" Revert with: ":delcommand DiffOrig".
if !exists(":DiffOrig")
command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_ | diffthis
\ | wincmd p | diffthis
endif
if has('langmap') && exists('+langremap')
" Prevent that the langmap option applies to characters that result from a
" mapping. If set (default), this may break plugins (but it's backward
" compatible).
set nolangremap
endif

1
.config/nvim/init.vim Symbolic link
View File

@@ -0,0 +1 @@
../../.vimrc

View File

@@ -0,0 +1,7 @@
[Unit]
Description=check-battery
[Service]
Type=oneshot
ExecStart=%h/bin/check-battery.sh

View File

@@ -0,0 +1,8 @@
[Unit]
Description=Timer to run check-battery.service every 10 minutes
[Timer]
OnCalendar=*:0/10
[Install]
WantedBy=timers.target

23
.ctags.d/config.ctags Normal file
View File

@@ -0,0 +1,23 @@
--langdef=markdown
--langmap=markdown:.md
--regex-markdown=/^#[ \t]+(.*)/\1/h,Heading_L1/
--regex-markdown=/^##[ \t]+(.*)/\1/i,Heading_L2/
--regex-markdown=/^###[ \t]+(.*)/\1/k,Heading_L3/
--langdef=bib
--langmap=bib:.bib
--regex-bib=/^@article\{([^,]*)/\1/a,article/i
--regex-bib=/^@book\{([^,]*)/\1/b,book/i
--regex-bib=/^@booklet\{([^,]*)/\1/L,booklet/i
--regex-bib=/^@conference\{([^,]*)/\1/c,conference/i
--regex-bib=/^@inbook\{([^,]*)/\1/B,inbook/i
--regex-bib=/^@incollection\{([^,]*)/\1/C,incollection/i
--regex-bib=/^@inproceedings\{([^,]*)/\1/P,inproceedings/i
--regex-bib=/^@manual\{([^,]*)/\1/m,manual/i
--regex-bib=/^@mastersthesis\{([^,]*)/\1/T,mastersthesis/i
--regex-bib=/^@misc\{([^,]*)/\1/M,misc/i
--regex-bib=/^@phdthesis\{([^,]*)/\1/t,phdthesis/i
--regex-bib=/^@proceedings\{([^,]*)/\1/p,proceedings/i
--regex-bib=/^@techreport\{([^,]*)/\1/r,techreport/i
--regex-bib=/^@unpublished\{([^,]*)/\1/u,unpublished/i

1
.cups/lpoptions Normal file
View File

@@ -0,0 +1 @@
Default HP402dn

224
.vimrc Normal file
View File

@@ -0,0 +1,224 @@
set runtimepath^=~/.vim runtimepath+=~/.vim/after
let &packpath = &runtimepath
"/usr/share/vim/vim81/defaults.vim, normally sourced in default arch linux vim
source ~/.config/nvim/defaults.vim
"https://wiki.archlinux.org/index.php/Neovim
"ln -s ~/.vimrc ~/.config/nvim/init.vim
"set rtp^=/usr/share/vim/vimfiles/
if &t_Co > 2 || has("gui_running")
" Switch on highlighting the last used search pattern.
set hlsearch
endif
" Only do this part when compiled with support for autocommands.
if has("autocmd")
" Put these in an autocmd group, so that we can delete them easily.
augroup vimrcEx
au!
" For all text files set 'textwidth' to 78 characters.
autocmd FileType text setlocal textwidth=78
augroup END
else
set autoindent " always set autoindenting on
endif " has("autocmd")
" Setup vim-plugin
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 --sync | source $MYVIMRC
endif
call plug#begin('~/.vim/plugged')
Plug '/usr/bin/fzf'
Plug 'junegunn/fzf.vim'
Plug 'tpope/vim-sensible'
Plug 'chriskempson/base16-vim'
" Comments
"Plug 'tpope/vim-commentary'
"Plug 'tpope/surround'
"use \cc \cl c<space>, \cm \ci for commenting lines blocks in vis, norm modes
"use ,c<space> to comment out line(s)
Plug 'scrooloose/nerdcommenter'
Plug 'majutsushi/tagbar'
" Plug 'vimwiki/vimwiki'
"Plug 'jedi-vim'
"Plug 'bling/vim-airline'
"Plug 'vim-airline/vim-airline-themes'
" Denite, like emacs 'Helm' app
"Plug 'Shougo/denite.nvim'
" Search
"Plug 'ctrlpvim/ctrlp.vim'
"Plug 'vim-grepper'
"Plug 'vim-netranger'
" Git integration
"Plug 'tpope/vim-fugitive'
"Plug 'airblade/vim-gitgutter'
" Linting
" Plug 'neomake/neomake'
" Plug 'w0rp/ale'
" Syntax
"Plug 'sheerun/vim-polyglot'
"Plug 'matthewbdaly/vim-filetype-settings'
"Plug 'rhysd/vim-grammarous' "cmd :GrammarousCheck, req java
" External languages
" Plug 'Vigemus/iron.nvim'
" Plug 'bfredl/nvim-ipy'
" Plug 'jalvesaq/Nvim-R'
"Plug 'python-mode/python-mode', { 'branch': 'develop' }
"latex
"Plug 'lervag/vimtex'
"Plug 'vim-pandoc'
" Markdown
"Plug 'suan/vim-instant-markdown' " Markdown preview instant-markdown-d
"next one uses a rust lib for fast async md, requires rust/cargo install
"Plug 'euclio/vim-markdown-composer'
"Plug 'aaren/notedown'
"https://github.com/iamcco/markdown-preview.nvim
" if have nodejs and yarn, this is markdown-it js lib based
" Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app & yarn install' }
call plug#end()
filetype plugin indent on
"Syntax highlighting in Markdown
"au BufNewFile,BufReadPost *.md set filetype=markdown
"let g:polyglot_disabled = ['markdown']
let g:markdown_fenced_languages = ['html','r', 'javascript', 'python', 'sh', 'bash=sh', 'css', 'js=javascript', 'json=javascript']
let g:tagbar_type_markdown = {
\ 'ctagstype' : 'markdown',
\ 'kinds' : [
\ 'h:Heading_L1',
\ 'i:Heading_L2',
\ 'k:Heading_L3'
\ ]
\ }
let g:tagbar_type_bib = {
\ 'ctagstype' : 'bib',
\ 'kinds' : [
\ 'a:Articles',
\ 'b:Books',
\ 'L:Booklets',
\ 'c:Conferences',
\ 'B:Inbook',
\ 'C:Incollection',
\ 'P:Inproceedings',
\ 'm:Manuals',
\ 'T:Masterstheses',
\ 'M:Misc',
\ 't:Phdtheses',
\ 'p:Proceedings',
\ 'r:Techreports',
\ 'u:Unpublished',
\ ]
\ }
let g:python_host_prog = '/usr/bin/python3'
let g:loaded_python3_provider = 1
":vertical terminal ipython
"set updatetime=100
"nnoremap yr :IronRepl<cr>
"nmap ,r <Plug>(iron-send-motion)
"xmap ,r <Plug>(iron-send-motion)
"nmap yR V,r
" Neomake config
" Full config: when writing or reading a buffer, and on changes in insert and
" normal mode (after 1s; no delay when writing).
"call neomake#configure#automake('nrwi', 500)
set tabstop=4
set shiftwidth=4
set expandtab
" set number
" set relativenumber
" set hlsearch
" set spell
" set mouse=a "already set by defaults.vim
set mouse=n
" OR try set mouse=r mouse=&
" shortcuts for next or prev file like after vim *.py
" :map v :n<enter>
" :map V :N<enter>
" or just use :n or :N followed by the dot . cmd!
" quick save from insert mode if any changes
imap jjw <ESC>:update<enter>
"<CR> vs <enter> and running code
imap jk <ESC>`^
":imap kj <ESC>
" Two semicolons are easy to type. The `^ fixes the cursor position.
" imap ;; <ESC>`^
inoremap <Tab> <Esc>`^
"imap ;; i
" Just press Space to enter insert mode.
nmap <Space> i
" On gvim and Linux console Vim, you can also use ctrl-Space.
" :imap <C-Space> <>
"copy with ctrl-c in visual highlight mode
vmap <C-c> "+y
"use system clipboard: Now yank y, delete d, or paste p work to/from system
set clipboard=unnamedplus
"auto fix common sp errors
:ab teh the
:ab Teh The
:ab adn and
:ab Adn And
let mapleader = ','
nmap <F8> :TagbarToggle<CR>
if filereadable(expand("~/.vimrc_background"))
let base16colorspace=256
source ~/.vimrc_background
endif
augroup resCur
autocmd!
autocmd BufReadPost * call setpos(".", getpos("'\""))
augroup END
set title
" latex settings
"let g:tex_flavor="latex"
"let g:Tex_DefaultTargetFormat =" pdf"
"let g:Tex_IgnoredWarnings =''
" make vimtex work with neovim
"let g:vimtex_compiler_progname='nvr'
"let g:vimtex_view_use_temp_files=2
"let g:vimtex_view_method='zathura'
"let g:vimtex_quickfix_mode=0 " do not open the quickfix window automatically
" Allow commenting and inverting empty lines (useful when commenting a region
let g:NERDCommentEmptyLines = 1
" Add spaces after comment delimiters by default
let g:NERDSpaceDelims = 1
" Use compact syntax for prettified multi-line comments
let g:NERDCompactSexyComs = 1

58
.xinitrc Normal file
View File

@@ -0,0 +1,58 @@
#!/bin/sh
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f "$userresources" ]; then
xrdb -merge "$userresources"
fi
if [ -f "$usermodmap" ]; then
xmodmap "$usermodmap"
fi
# start some nice programs
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
[ -x "$f" ] && . "$f"
done
unset f
fi
systemctl --user start check-battery.timer &
#twm &
#xclock -geometry 50x50-1+1 &
#xterm -geometry 80x50+494+51 &
#xterm -geometry 80x20+494-0 &
#exec xterm -geometry 80x66+0+0 -name login
# Adjust keyboard typematic delay and rate
#xset r rate 270 30
# Fix fonts for high resolution retina/hidpi display:
# Start Xorg server at this DPI
#xrandr --dpi 144
# QT and GTK autodetect retina screen and autoadjust
#export QT_AUTO_SCREEN_SCALE_FACTOR=1
#export GDK_SCALE=2
#export GDK_DPI_SCALE=0.5
#xrdb -merge ~/.Xresources #already performed above
#exec openbox-session
exec i3