Update configs

This commit is contained in:
Sanchayan Maity 2017-10-19 14:42:12 +05:30
parent eafd45df5a
commit aa4677c1ec
3 changed files with 342 additions and 172 deletions

412
i3/config
View file

@ -1,30 +1,29 @@
# 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) # i3 config file (v4)
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference! # Please see http://i3wm.org/docs/userguide.html for a complete reference!
# Set mod key (Mod1=<Alt>, Mod4=<Super>)
set $mod Mod4 set $mod Mod4
# set default desktop layout (default is tiling)
# workspace_layout tabbed <stacking|tabbed>
# Configure border style <normal|1pixel|pixel xx|none|pixel>
new_window pixel 1
new_float normal
# Hide borders
hide_edge_borders none
# change borders
bindsym $mod+u border none
bindsym $mod+y border pixel 1
bindsym $mod+n border normal
# Font for window titles. Will also be used by the bar unless a different font # Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below. # is used in the bar {} block below.
# This font is widely installed, provides lots of unicode glyphs, right-to-left font xft:Noto Sans 16
# text rendering and scalability on retina/hidpi displays (thanks to pango).
# font pango:DejaVu Sans Mono 8
font pango:System San Francisco Display 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 # Use Mouse+$mod to drag floating windows
floating_modifier $mod floating_modifier $mod
# start a terminal # start a terminal
@ -33,18 +32,51 @@ bindsym $mod+Return exec gnome-terminal
# kill focused window # kill focused window
bindsym $mod+Shift+q kill bindsym $mod+Shift+q kill
# start dmenu (a program launcher) # start program launcher
bindsym $mod+d exec rofi -show run bindsym $mod+d exec --no-startup-id rofi -show 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 # launch categorized menu
# installed. bindsym $mod+z exec --no-startup-id morc_menu
# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
################################################################################################
## sound-section - DO NOT EDIT if you wish to automatically upgrade Alsa -> Pulseaudio later! ##
################################################################################################
exec --no-startup-id volumeicon
bindsym $mod+Ctrl+m exec terminal -e 'alsamixer'
#exec --no-startup-id pulseaudio
#exec --no-startup-id pa-applet
#bindsym $mod+Ctrl+m exec pavucontrol
################################################################################################
# Screen brightness controls
# bindsym XF86MonBrightnessUp exec "xbacklight -inc 10; notify-send 'brightness up'"
# bindsym XF86MonBrightnessDown exec "xbacklight -dec 10; notify-send 'brightness down'"
# Start Applications
bindsym $mod+Ctrl+b exec terminal -e 'bmenu'
bindsym $mod+F2 exec google-chrome-stable
bindsym $mod+F3 exec pcmanfm
# bindsym $mod+F3 exec ranger
bindsym $mod+Shift+F3 exec gksu pcmanfm
bindsym $mod+F5 exec terminal -e 'mocp'
bindsym $mod+t exec --no-startup-id pkill compton
bindsym $mod+Ctrl+t exec --no-startup-id compton -b
bindsym $mod+Shift+d --release exec "killall dunst; exec notify-send 'restart dunst'"
bindsym Print exec --no-startup-id i3-scrot
bindsym $mod+Print --release exec --no-startup-id i3-scrot -w
bindsym $mod+Shift+Print --release exec --no-startup-id i3-scrot -s
bindsym $mod+Shift+h exec xdg-open /usr/share/doc/manjaro/i3_help.pdf
bindsym $mod+Ctrl+x --release exec --no-startup-id xkill
# focus_follows_mouse no
# change focus # change focus
bindsym $mod+j focus left bindsym $mod+j focus left
bindsym $mod+k focus down bindsym $mod+k focus down
bindsym $mod+l focus up bindsym $mod+l focus up
bindsym $mod+semicolon focus right bindsym $mod+odiaeresis focus right
# alternatively, you can use the cursor keys: # alternatively, you can use the cursor keys:
bindsym $mod+Left focus left bindsym $mod+Left focus left
@ -56,7 +88,7 @@ bindsym $mod+Right focus right
bindsym $mod+Shift+j move left bindsym $mod+Shift+j move left
bindsym $mod+Shift+k move down bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up bindsym $mod+Shift+l move up
bindsym $mod+Shift+semicolon move right bindsym $mod+Shift+odiaeresis move right
# alternatively, you can use the cursor keys: # alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left bindsym $mod+Shift+Left move left
@ -64,14 +96,18 @@ bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right bindsym $mod+Shift+Right move right
# split in horizontal orientation # workspace back and forth (with/without active container)
bindsym $mod+h split h workspace_auto_back_and_forth yes
bindsym $mod+b workspace back_and_forth
bindsym $mod+Shift+b move container to workspace back_and_forth; workspace back_and_forth
# split in vertical orientation # split orientation
bindsym $mod+v split v bindsym $mod+h split h;exec notify-send 'tile horizontally'
bindsym $mod+v split v;exec notify-send 'tile vertically'
bindsym $mod+q split toggle
# enter fullscreen mode for the focused container # toggle fullscreen mode for the focused container
bindsym $mod+f fullscreen bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split) # change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking bindsym $mod+s layout stacking
@ -84,67 +120,152 @@ bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows # change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle bindsym $mod+space focus mode_toggle
# toggle sticky
bindsym $mod+Shift+s sticky toggle
# focus the parent container # focus the parent container
bindsym $mod+a focus parent bindsym $mod+a focus parent
# focus the child container # move the currently focused window to the scratchpad
#bindsym $mod+d focus child bindsym $mod+Shift+minus move scratchpad
# switch to workspace 1-10 # Show the next scratchpad window or hide the focused scratchpad window.
bindsym $mod+1 workspace 1 # If there are multiple scratchpad windows, this command cycles through them.
bindsym $mod+2 workspace 2 bindsym $mod+minus scratchpad show
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10
# switch to workspace 11-20 #navigate workspaces next / previous
bindsym Mod1+1 workspace 11 bindsym $mod+Ctrl+Right workspace next
bindsym Mod1+2 workspace 12 bindsym $mod+Ctrl+Left workspace prev
bindsym Mod1+3 workspace 13
bindsym Mod1+4 workspace 14
bindsym Mod1+5 workspace 15
bindsym Mod1+6 workspace 16
bindsym Mod1+7 workspace 17
bindsym Mod1+8 workspace 18
bindsym Mod1+9 workspace 19
bindsym Mod1+0 workspace 20
# move focused container to workspace # Workspace names
bindsym $mod+Shift+1 move container to workspace 1 # to display names or symbols instead of plain workspace numbers you can use
bindsym $mod+Shift+2 move container to workspace 2 # something like: set $ws1 1:mail
bindsym $mod+Shift+3 move container to workspace 3 # set $ws2 2:
bindsym $mod+Shift+4 move container to workspace 4 set $ws1 1
bindsym $mod+Shift+5 move container to workspace 5 set $ws2 2
bindsym $mod+Shift+6 move container to workspace 6 set $ws3 3
bindsym $mod+Shift+7 move container to workspace 7 set $ws4 4
bindsym $mod+Shift+8 move container to workspace 8 set $ws5 5
bindsym $mod+Shift+9 move container to workspace 9 set $ws6 6
bindsym $mod+Shift+0 move container to workspace 10 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+Ctrl+1 move container to workspace $ws1
bindsym $mod+Ctrl+2 move container to workspace $ws2
bindsym $mod+Ctrl+3 move container to workspace $ws3
bindsym $mod+Ctrl+4 move container to workspace $ws4
bindsym $mod+Ctrl+5 move container to workspace $ws5
bindsym $mod+Ctrl+6 move container to workspace $ws6
bindsym $mod+Ctrl+7 move container to workspace $ws7
bindsym $mod+Ctrl+8 move container to workspace $ws8
bindsym $mod+Ctrl+9 move container to workspace $ws9
bindsym $mod+Ctrl+0 move container to workspace $ws10
# Move to workspace with focused container
bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10; workspace $ws10
# Move the current workspace to the next output
# (effectively toggles when you only have two outputs)
bindsym $mod+x move workspace to output right
# Open applications on specific workspaces
# assign [class="Thunderbird"] $ws1
# assign [class="Pale moon"] $ws2
# assign [class="Pcmanfm"] $ws3
# assign [class="Skype"] $ws5
# Open specific applications in floating mode
for_window [title="alsamixer"] floating enable border pixel 1
for_window [class="Calamares"] floating enable border normal
for_window [class="Clipgrab"] floating enable
for_window [title="File Transfer*"] floating enable
for_window [class="Galculator"] floating enable border pixel 1
for_window [class="GParted"] floating enable border normal
for_window [title="i3_help"] floating enable sticky enable border normal
for_window [class="Lightdm-gtk-greeter-settings"] floating enable
for_window [class="Lxappearance"] floating enable sticky enable border normal
for_window [class="Manjaro-hello"] floating enable
for_window [class="Manjaro Settings Manager"] floating enable border normal
for_window [title="MuseScore: Play Panel"] floating enable
for_window [class="Nitrogen"] floating enable sticky enable border normal
for_window [class="Oblogout"] fullscreen enable
for_window [class="octopi"] floating enable
for_window [class="Pamac-manager"] floating enable
for_window [class="Pavucontrol"] floating enable
for_window [class="qt5ct"] floating enable sticky enable border normal
for_window [class="Qtconfig-qt4"] floating enable sticky enable border normal
for_window [class="(?i)System-config-printer.py"] floating enable border normal
for_window [class="Skype"] floating enable border normal
for_window [class="Thus"] floating enable border normal
for_window [class="Timeset-gui"] floating enable border normal
for_window [class="(?i)virtualbox"] floating enable border normal
for_window [class="Xfburn"] floating enable
# switch to workspace with urgent window automatically
for_window [urgent=latest] focus
# reload the configuration file # reload the configuration file
bindsym $mod+Shift+c reload bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session) # 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'" 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) # Set shut down, restart and locking features
bindsym $mod+Shift+p mode "$mode_system"
set $mode_system (l)ock, (e)xit, switch_(u)ser, (s)uspend, (h)ibernate, (r)eboot, (Shift+s)hutdown
mode "$mode_system" {
bindsym l exec --no-startup-id i3exit lock, mode "default"
bindsym s exec --no-startup-id i3exit suspend, mode "default"
bindsym u exec --no-startup-id i3exit switch_user, mode "default"
bindsym e exec --no-startup-id i3exit logout, mode "default"
bindsym h exec --no-startup-id i3exit hibernate, mode "default"
bindsym r exec --no-startup-id i3exit reboot, mode "default"
bindsym Shift+s exec --no-startup-id i3exit shutdown, mode "default"
# exit system mode: "Enter" or "Escape"
bindsym Return mode "default"
bindsym Escape mode "default"
}
# Resize window (you can also use the mouse for that)
bindsym $mod+r mode "resize"
mode "resize" { mode "resize" {
# These bindings trigger as soon as you enter the resize mode # These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width. # Pressing left will shrink the windows width.
# Pressing right will grow the windows width. # Pressing right will grow the windows width.
# Pressing up will shrink the windows height. # Pressing up will shrink the windows height.
# Pressing down will grow the windows height. # Pressing down will grow the windows height.
bindsym j resize shrink width 10 px or 10 ppt bindsym j resize shrink width 5 px or 5 ppt
bindsym k resize grow height 10 px or 10 ppt bindsym k resize grow height 5 px or 5 ppt
bindsym l resize shrink height 10 px or 10 ppt bindsym l resize shrink height 5 px or 5 ppt
bindsym semicolon resize grow width 10 px or 10 ppt bindsym odiaeresis resize grow width 5 px or 5 ppt
# same bindings, but for the arrow keys # same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt bindsym Left resize shrink width 10 px or 10 ppt
@ -152,66 +273,123 @@ mode "resize" {
bindsym Up resize shrink 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 bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape # exit resize mode: Enter or Escape
bindsym Return mode "default" bindsym Return mode "default"
bindsym Escape mode "default" bindsym Escape mode "default"
} }
bindsym $mod+r mode "resize" # Lock screen
bindsym Mod1+Ctrl+l exec --no-startup-id blurlock
# Start i3bar to display a workspace bar (plus the system information i3status # Autostart applications
# finds out, if available) exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec --no-startup-id nitrogen --restore; sleep 1; compton -b
#exec --no-startup-id manjaro-hello
exec --no-startup-id nm-applet
exec --no-startup-id xfce4-power-manager
exec --no-startup-id pamac-tray
exec --no-startup-id clipit
# exec --no-startup-id blueman
# exec_always --no-startup-id sbxkb
exec --no-startup-id start_conky_maia
# exec --no-startup-id start_conky_green
exec --no-startup-id xautolock -time 10 -locker blurlock
exec_always --no-startup-id fix_xcursor
# Start i3bar to display a workspace bar (plus the system information i3status if available)
bar { bar {
status_command i3status status_command i3status
position bottom
## please set your primary output first. Example: 'xrandr --output eDP1 --primary'
# tray_output primary
# tray_output eDP1
bindsym button4 nop
bindsym button5 nop
font xft:Noto Sans 10.5
strip_workspace_numbers yes
colors {
# background $transparent
background #2B2C2B
statusline #F9FAF9
separator #454947
# border backgr. text
focused_workspace #F9FAF9 #16A085 #2B2C2B
active_workspace #595B5B #353836 #FDF6E3
inactive_workspace #595B5B #353836 #EEE8D5
urgent_workspace #16A085 #FDF6E3 #E5201D
}
} }
# ALSA Mixer based # hide/unhide i3status bar
#bindsym XF86AudioRaiseVolume exec amixer -q set Master 2%+ unmute bindsym $mod+m bar mode toggle
#bindsym XF86AudioLowerVolume exec amixer -q set Master 2%- unmute
#bindsym XF86AudioMute exec amixer -q set Master toggle
# Pulseaudio based # Theme colors
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume 0 +5% # class border backgr. text indic. child_border
bindsym XF86AudioLowerVolume exec pactl set-sink-volume 0 -5% client.focused #808280 #808280 #80FFF9 #FDF6E3
bindsym XF86AudioMute exec pactl set-sink-mute 0 toggle client.focused_inactive #434745 #434745 #16A085 #454948
client.unfocused #434745 #434745 #16A085 #454948
client.urgent #CB4B16 #FDF6E3 #16A085 #268BD2
client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
# Sreen brightness controls client.background #2B2C2B
bindsym XF86MonBrightnessUp exec xbacklight -inc 10 # increase screen brightness
bindsym XF86MonBrightnessDown exec xbacklight -dec 10 # decrease screen brightness
# Media player controls #############################
bindsym XF86AudioPlay exec playerctl play ### settings for i3-gaps: ###
bindsym XF86AudioPause exec playerctl pause #############################
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
# screen locker (first move to "safe" workspace without any chat app) # Set inner/outer gaps
bindsym Control+Mod1+l exec i3-msg workspace 1 && i3lock -c 111111 -d -i ${HOME}/Pictures/matrixcode.png gaps inner 10
gaps outer -4
exec --no-startup-id feh --bg-fill ${HOME}/Pictures/archlinux-simplyblack.png # Additionally, you can issue commands with the following syntax. This is useful to bind keys to changing the gap size.
exec --no-startup-id /usr/bin/xrdb ${HOME}/.Xresources # gaps inner|outer current|all set|plus|minus <px>
exec --no-startup-id /usr/bin/urxvtd -q -f -o # gaps inner all set 10
# gaps outer all plus 5
# Move the current workspace to the next output # Smart gaps (gaps used if only more than one container on the workspace)
# (effectively toggles when you only have two outputs) smart_gaps on
bindsym $mod+x move workspace to output right
set $Locker i3lock && sleep 1 # Smart borders (draw borders around container only if it is not the only container on this workspace)
# on|no_gaps (on=always activate and no_gaps=only activate if the gap size to the edge of the screen is 0)
smart_borders on
set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown # Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps. Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace). If you also press Shift with these keys, the change will be global for all workspaces.
mode "$mode_system" { set $mode_gaps Gaps: (o) outer, (i) inner
bindsym l exec --no-startup-id $Locker, mode "default" set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
bindsym e exec --no-startup-id i3-msg exit, mode "default" set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
bindsym s exec --no-startup-id $Locker && shutdown -h now, mode "default" bindsym $mod+Shift+g mode "$mode_gaps"
bindsym h exec --no-startup-id $Locker && systemctl hibernate, mode "default"
bindsym r exec --no-startup-id systemctl reboot, mode "default"
bindsym Shift+s exec --no-startup-id systemctl poweroff -i, mode "default"
# back to normal: Enter or Escape mode "$mode_gaps" {
bindsym Return mode "default" bindsym o mode "$mode_gaps_outer"
bindsym Escape mode "default" bindsym i mode "$mode_gaps_inner"
bindsym Return mode "default"
bindsym Escape mode "default"
} }
mode "$mode_gaps_inner" {
bindsym plus gaps inner current plus 5
bindsym minus gaps inner current minus 5
bindsym 0 gaps inner current set 0
bindsym $mod+Shift+p mode "$mode_system" bindsym Shift+plus gaps inner all plus 5
bindsym Shift+minus gaps inner all minus 5
bindsym Shift+0 gaps inner all set 0
exec_always compton -f bindsym Return mode "default"
bindsym Escape mode "default"
}
mode "$mode_gaps_outer" {
bindsym plus gaps outer current plus 5
bindsym minus gaps outer current minus 5
bindsym 0 gaps outer current set 0
bindsym Shift+plus gaps outer all plus 5
bindsym Shift+minus gaps outer all minus 5
bindsym Shift+0 gaps outer all set 0
bindsym Return mode "default"
bindsym Escape mode "default"
}

View file

@ -5,8 +5,11 @@ call plug#begin('~/.config/nvim/plugged')
Plug 'benekastah/neomake' Plug 'benekastah/neomake'
" Automatically match brackets as you type " Automatically match brackets as you type
Plug 'Raimondi/delimitMate' Plug 'Raimondi/delimitMate'
" Tab completion
Plug 'ervandew/supertab'
" Haskell " Haskell
Plug 'neovimhaskell/haskell-vim', { 'for': [ 'haskell', 'cabal' ] } Plug 'neovimhaskell/haskell-vim', { 'for': [ 'haskell', 'cabal' ] }
Plug 'alx741/vim-hindent'
" Lisp " Lisp
Plug 'vim-scripts/paredit.vim', { 'for': [ 'scheme', 'lisp', 'commonlisp' ] } Plug 'vim-scripts/paredit.vim', { 'for': [ 'scheme', 'lisp', 'commonlisp' ] }
" LaTeX Editing " LaTeX Editing
@ -22,8 +25,8 @@ Plug 'thirtythreeforty/lessspace.vim'
Plug 'bling/vim-airline' Plug 'bling/vim-airline'
Plug 'airblade/vim-gitgutter' Plug 'airblade/vim-gitgutter'
" Manage Project sessions " Manage Project sessions
Plug 'xolox/vim-session' Plug 'tpope/vim-obsession'
Plug 'xolox/vim-misc' Plug 'dhruvasagar/vim-prosession'
" Explore filesystem " Explore filesystem
Plug 'scrooloose/nerdtree' Plug 'scrooloose/nerdtree'
" Tags " Tags
@ -32,18 +35,19 @@ Plug 'universal-ctags/ctags'
Plug 'scrooloose/nerdcommenter' Plug 'scrooloose/nerdcommenter'
" Theme " Theme
Plug 'sickill/vim-monokai' Plug 'sickill/vim-monokai'
" Gtags " Auto Completion with Deoplete
Plug 'vim-scripts/gtags.vim' Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
" Autocomplete for Python
Plug 'unblevable/quick-scope' Plug 'zchee/deoplete-jedi'
Plug 'justinmk/vim-sneak' " Autocomplete for Rust
Plug 'wellle/targets.vim' Plug 'sebastianmarkow/deoplete-rust'
Plug 'kana/vim-submode' | Plug 'jocap/jumpinline.vim' Plug 'rust-lang/rust.vim'
" Initialize plugin system " Initialize plugin system
call plug#end() call plug#end()
syntax on syntax on
filetype plugin indent on
" Don't mess up undo history " Don't mess up undo history
let g:jedi#show_call_signatures = "0" let g:jedi#show_call_signatures = "0"
@ -116,13 +120,6 @@ nnoremap <Leader>b :CtrlPBuffer<CR>
nnoremap <Leader>f :CtrlPMRUFiles<CR> nnoremap <Leader>f :CtrlPMRUFiles<CR>
" Open NerdTree " Open NerdTree
nnoremap <Leader>n :NERDTree<CR> nnoremap <Leader>n :NERDTree<CR>
" Gtags
nnoremap <Leader>] :Gtags<CR><CR>
nnoremap <Leader>\ :Gtags -r<CR><CR>
nnoremap <Leader>c :cclose<CR>
nnoremap <Leader>k :cp<CR>
nnoremap <Leader>j :cn<CR>
nnoremap <Leader>l :cl<CR>
" Manage splits " Manage splits
set splitbelow set splitbelow
@ -135,18 +132,11 @@ colorscheme monokai
" Key Bindings to help with terminal mode " Key Bindings to help with terminal mode
:tnoremap <Esc> <C-\><C-n> :tnoremap <Esc> <C-\><C-n>
:tnoremap <A-h> <C-\><C-N><C-w>h " Key bindings to move between window splits
:tnoremap <A-j> <C-\><C-N><C-w>j nnoremap <A-h> <C-w>h
:tnoremap <A-k> <C-\><C-N><C-w>k nnoremap <A-j> <C-w>j
:tnoremap <A-l> <C-\><C-N><C-w>l nnoremap <A-k> <C-w>k
:inoremap <A-h> <C-\><C-N><C-w>h nnoremap <A-l> <C-w>l
:inoremap <A-j> <C-\><C-N><C-w>j
:inoremap <A-k> <C-\><C-N><C-w>k
:inoremap <A-l> <C-\><C-N><C-w>l
:nnoremap <A-h> <C-w>h
:nnoremap <A-j> <C-w>j
:nnoremap <A-k> <C-w>k
:nnoremap <A-l> <C-w>l
" Disable Arrow Keys " Disable Arrow Keys
inoremap <Up> <NOP> inoremap <Up> <NOP>
@ -159,6 +149,7 @@ noremap <Left> <NOP>
noremap <Right> <NOP> noremap <Right> <NOP>
" For Haskell " For Haskell
let g:haskell_indent_disable = 1 " to disabled indentation
let g:haskell_enable_quantification = 1 " to enable highlighting of `forall` let g:haskell_enable_quantification = 1 " to enable highlighting of `forall`
let g:haskell_enable_recursivedo = 1 " to enable highlighting of `mdo` and `rec` let g:haskell_enable_recursivedo = 1 " to enable highlighting of `mdo` and `rec`
let g:haskell_enable_arrowsyntax = 1 " to enable highlighting of `proc` let g:haskell_enable_arrowsyntax = 1 " to enable highlighting of `proc`
@ -166,16 +157,17 @@ let g:haskell_enable_pattern_synonyms = 1 " to enable highlighting of `pattern`
let g:haskell_enable_typeroles = 1 " to enable highlighting of type roles let g:haskell_enable_typeroles = 1 " to enable highlighting of type roles
let g:haskell_enable_static_pointers = 1 " to enable highlighting of `static` let g:haskell_enable_static_pointers = 1 " to enable highlighting of `static`
let g:haskell_backpack = 1 " to enable highlighting of backpack keywords let g:haskell_backpack = 1 " to enable highlighting of backpack keywords
let g:haskell_indent_if = 3 let g:hindent_on_save = 1
let g:haskell_indent_case = 2 let g:hindent_indent_size = 4
let g:haskell_indent_let = 4 let g:hindent_line_length = 80
let g:haskell_indent_where = 6
let g:haskell_indent_before_where = 2 " For Rust
let g:haskell_indent_after_bare_where = 2 let g:deoplete#sources#rust#racer_binary='/home/sanchayan/.cargo/bin/racer'
let g:haskell_indent_do = 3 let g:deoplete#sources#rust#rust_source_path='/home/sanchayan/GitSources/rust/src'
let g:haskell_indent_in = 1
let g:haskell_indent_guard = 2 " Use deoplete.
let g:cabal_indent_section = 2 let g:deoplete#enable_at_startup = 1
let g:deoplete#enable_smart_case = 1
let g:airline#extensions#tabline#enabled = 2 let g:airline#extensions#tabline#enabled = 2
let g:airline#extensions#tabline#fnamemod = ':t' let g:airline#extensions#tabline#fnamemod = ':t'

View file

@ -17,29 +17,34 @@ values."
;; List of configuration layers to load. If it is the symbol `all' instead ;; List of configuration layers to load. If it is the symbol `all' instead
;; of a list then all discovered layers will be installed. ;; of a list then all discovered layers will be installed.
dotspacemacs-configuration-layers dotspacemacs-configuration-layers
'( '(yaml
shell-scripts shell-scripts
python
asm asm
;; ---------------------------------------------------------------- ;; ----------------------------------------------------------------
;; Example of useful layers you may want to use right away. ;; Example of useful layers you may want to use right away.
;; Uncomment some layer names and press <SPC f e R> (Vim style) or ;; Uncomment some layer names and press <SPC f e R> (Vim style) or
;; <M-m f e R> (Emacs style) to install them. ;; <M-m f e R> (Emacs style) to install them.
;; ---------------------------------------------------------------- ;; ----------------------------------------------------------------
;; auto-completion auto-completion
;; better-defaults ;; better-defaults
emacs-lisp emacs-lisp
git git
markdown markdown
;; (shell :variables (shell :variables
;; shell-default-height 30 shell-default-height 30
;; shell-default-position 'bottom) shell-default-position 'bottom
shell-default-shell 'eshell
shell-enable-smart-eshell t)
;; spell-checking ;; spell-checking
;; syntax-checking ;; syntax-checking
;; version-control ;; version-control
c-c++
rust
haskell haskell
rust
scheme
clojure
emacs-lisp
c-c++
python
gtags gtags
latex latex
) )
@ -206,6 +211,8 @@ user code."
This function is called at the very end of Spacemacs initialization after This function is called at the very end of Spacemacs initialization after
layers configuration. You are free to put any user code." layers configuration. You are free to put any user code."
(intero-global-mode 1)
(require 'helm-bookmark)
(xterm-mouse-mode -1) (xterm-mouse-mode -1)
(setq-default tab-width 8 indent-tabs-mode t) (setq-default tab-width 8 indent-tabs-mode t)
(global-set-key (kbd "TAB") 'self-insert-command) (global-set-key (kbd "TAB") 'self-insert-command)
@ -215,12 +222,11 @@ layers configuration. You are free to put any user code."
(windmove-default-keybindings) (windmove-default-keybindings)
(setq windmove-wrap-around t) (setq windmove-wrap-around t)
(setq TeX-view-program-selection '((output-pdf "Okular"))) (setq TeX-view-program-selection '((output-pdf "Evince")))
(setq TeX-source-correlate-mode t) (setq TeX-source-correlate-mode t)
(setq TeX-source-correlate-start-server t) (setq TeX-source-correlate-start-server t)
(setq TeX-source-correlate-method 'synctex) (setq TeX-source-correlate-method 'synctex)
(setq TeX-view-program-list (setq TeX-engine 'xetex)
'(("Okular" "okular --unique %o#src:%n%b")))
(require 'desktop) (require 'desktop)
@ -289,12 +295,6 @@ layers configuration. You are free to put any user code."
(directory-files my-desktop-session-dir)) (directory-files my-desktop-session-dir))
nil nil nil my-desktop-session-name-hist default))) nil nil nil my-desktop-session-name-hist default)))
(defun on-frame-open (frame)
(if (not (display-graphic-p frame))
(set-face-background 'default "unspecified-bg" frame)))
(on-frame-open (selected-frame))
(add-hook 'after-make-frame-functions 'on-frame-open)
(define-key global-map "\M-[1~" 'beginning-of-line) (define-key global-map "\M-[1~" 'beginning-of-line)
(define-key global-map [select] 'end-of-line) (define-key global-map [select] 'end-of-line)