initial commit
This commit is contained in:
@@ -0,0 +1,3 @@
|
|||||||
|
vim/
|
||||||
|
*.swp
|
||||||
|
*.swo
|
||||||
@@ -0,0 +1,115 @@
|
|||||||
|
# about
|
||||||
|
|
||||||
|
This is an "rsync repo tracked with git" for my dotfiles; see
|
||||||
|
"context" section at the end for more detail.
|
||||||
|
|
||||||
|
It essentially contains the minimal set of deviations from "Devuan
|
||||||
|
with LXDE" defaults that I require in order to not find the computer
|
||||||
|
to be an active hindrance to my productivity:
|
||||||
|
|
||||||
|
# new system config
|
||||||
|
|
||||||
|
## devuan
|
||||||
|
|
||||||
|
- SSH config:
|
||||||
|
|
||||||
|
- copy `id_rsa.pub` from laptop
|
||||||
|
- edit `/etc/ssh/sshd_config` to sane defaults
|
||||||
|
- in particular:
|
||||||
|
|
||||||
|
1. disable root login
|
||||||
|
2. disable password login
|
||||||
|
|
||||||
|
- sudo: add `pharpend` to `sudo` group:
|
||||||
|
|
||||||
|
# apt install sudo
|
||||||
|
# usermod -aG pharpend sudo
|
||||||
|
|
||||||
|
- firefox:
|
||||||
|
% sudo apt install firefox
|
||||||
|
|
||||||
|
- rsync firefox passwords
|
||||||
|
- add to firefox
|
||||||
|
|
||||||
|
- dotfiles:
|
||||||
|
|
||||||
|
% sudo apt install git
|
||||||
|
% mkdir ~/gho
|
||||||
|
% cd ~/gho
|
||||||
|
% git clone https://git.harpending.org/pharpend/dotfiles-ii.git
|
||||||
|
|
||||||
|
- tmux:
|
||||||
|
|
||||||
|
% sudo apt install tmux
|
||||||
|
% cp ~/gho/dotfiles-ii/tmux.conf ~/.tmux.conf
|
||||||
|
|
||||||
|
- zsh:
|
||||||
|
|
||||||
|
% sudo apt install zsh zsh-syntax-highlighting
|
||||||
|
% cp ~/gho/dotfiles-ii/zshrc ~/.zshrc
|
||||||
|
% chsh -s /usr/bin/zsh
|
||||||
|
|
||||||
|
- vim:
|
||||||
|
|
||||||
|
|
||||||
|
## freebsd
|
||||||
|
|
||||||
|
- copy `id_rsa.pub`
|
||||||
|
- enable ssh sysadmin:
|
||||||
|
|
||||||
|
# pw groupmod wheel -m pharpend
|
||||||
|
|
||||||
|
- basic shell utilities
|
||||||
|
|
||||||
|
# pkg install tmux zsh vim rsync git lynx tree bash
|
||||||
|
|
||||||
|
- basic graphical environment
|
||||||
|
|
||||||
|
# pkg install \
|
||||||
|
xorg i3 terminator rxvt-unicode dmenu \
|
||||||
|
liberation-fonts-ttf pulseaudio parcellite dunst \
|
||||||
|
nitrogen redshift firefox-esr fantasque-sans-mono \
|
||||||
|
emacs pcmanfm pavucontrol spectacle plasma6-spectacle \
|
||||||
|
scrot vlc viewnior gthumb \
|
||||||
|
|
||||||
|
linux-brave
|
||||||
|
chromium
|
||||||
|
iridium
|
||||||
|
|
||||||
|
- Erlang/zx
|
||||||
|
|
||||||
|
# pkg install \
|
||||||
|
erlang erlang-wx
|
||||||
|
|
||||||
|
# context
|
||||||
|
|
||||||
|
- I set up new machines pretty frequently
|
||||||
|
- This has endowed me with a strong preference for low-maintenance
|
||||||
|
operating systems with sane defaults
|
||||||
|
- The idea here is to have the "minimal" set of dotfiles where I can
|
||||||
|
clone this repo and just copy everything to its location on the new
|
||||||
|
machine
|
||||||
|
- I have found that the system of directly symlinking my dotfiles
|
||||||
|
from the git repo to the local machine is more trouble than it's
|
||||||
|
worth, due to high volume of per-machine diffs.
|
||||||
|
- e.g. laptop needs battery charge info in i3status bar config,
|
||||||
|
desktop machine doesn't; there's a million little things like that
|
||||||
|
that differ from one machine to another
|
||||||
|
- like i said, this is the set of things that despite my best efforts
|
||||||
|
|
||||||
|
- In the past I used Gentoo and Arch Linux and and and and...
|
||||||
|
- That was fun and fulfilling when I was 17 and I had no serious
|
||||||
|
responsibilities in my life.
|
||||||
|
- to be clear, the "I use Arch BTW" phase was an extremely valuable
|
||||||
|
period in which I learned the skills on which I now rely on a day
|
||||||
|
to day basis.
|
||||||
|
- However I'm now in my 30s, and, for better or for worse, I have
|
||||||
|
aged out of finding Arch Linux interesting.
|
||||||
|
- I just can't bring myself to care about the operating system for
|
||||||
|
its own sake any more.
|
||||||
|
- I have converged on "Devuan for everything" because it annoys me
|
||||||
|
the least
|
||||||
|
- In the past it was "Ubuntu for everything" but replacing the GNU
|
||||||
|
coreutils with the Rust coreutils (why?) was the straw that broke
|
||||||
|
the camel's back for me.
|
||||||
|
- I don't know why systemd or snaps weren't that straw
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
[global_config]
|
||||||
|
[keybindings]
|
||||||
|
[profiles]
|
||||||
|
[[default]]
|
||||||
|
background_color = "#1e1f28"
|
||||||
|
background_darkness = 0.95
|
||||||
|
cursor_blink = False
|
||||||
|
font = Fantasque Sans Mono 12
|
||||||
|
foreground_color = "#f8f8f2"
|
||||||
|
show_titlebar = False
|
||||||
|
scrollbar_position = hidden
|
||||||
|
palette = "#000000:#ff5555:#50fa7b:#f1fa8c:#bd93f9:#ff79c6:#8be9fd:#bbbbbb:#555555:#ff5555:#50fa7b:#f1fa8c:#bd93f9:#ff79c6:#8be9fd:#ffffff"
|
||||||
|
use_system_font = False
|
||||||
|
[layouts]
|
||||||
|
[[default]]
|
||||||
|
[[[window0]]]
|
||||||
|
type = Window
|
||||||
|
parent = ""
|
||||||
|
[[[child1]]]
|
||||||
|
type = Terminal
|
||||||
|
parent = window0
|
||||||
|
[plugins]
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
[global_config]
|
||||||
|
[keybindings]
|
||||||
|
[profiles]
|
||||||
|
[[default]]
|
||||||
|
background_color = "#ffffff"
|
||||||
|
background_darkness = 0.95
|
||||||
|
cursor_blink = False
|
||||||
|
font = Fantasque Sans Mono 12
|
||||||
|
foreground_color = "#000000"
|
||||||
|
show_titlebar = False
|
||||||
|
scrollbar_position = hidden
|
||||||
|
palette = "#000000:#aa0000:#00aa00:#aa5500:#0000aa:#aa00aa:#00aaaa:#aaaaaa:#555555:#ff5555:#55ff55:#ffff55:#5555ff:#ff55ff:#55ffff:#ffffff"
|
||||||
|
use_system_font = False
|
||||||
|
[layouts]
|
||||||
|
[[default]]
|
||||||
|
[[[window0]]]
|
||||||
|
type = Window
|
||||||
|
parent = ""
|
||||||
|
[[[child1]]]
|
||||||
|
type = Terminal
|
||||||
|
parent = window0
|
||||||
|
[plugins]
|
||||||
@@ -0,0 +1,286 @@
|
|||||||
|
# This file has been auto-generated by i2-config-wizard(1).
|
||||||
|
# It will not be overwritten, so edit it as you like.
|
||||||
|
# Should you change your keyboard layout somewhen, delete
|
||||||
|
# this file and re-run i3-config-wizard(1).
|
||||||
|
#
|
||||||
|
|
||||||
|
# i3 config file (v4)
|
||||||
|
#
|
||||||
|
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
|
||||||
|
|
||||||
|
set $mod Mod4
|
||||||
|
|
||||||
|
# Font for window titles. Will also be used by the bar unless a different font
|
||||||
|
# is used in the bar {} block below. ISO 10646 = Unicode
|
||||||
|
# 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, if you need a lot of unicode glyphs or
|
||||||
|
# right-to-left text rendering, you should instead use pango for rendering and
|
||||||
|
# chose a FreeType font, such as:
|
||||||
|
#font pango: Monospace 10
|
||||||
|
#font pango: Ubuntu Mono 11
|
||||||
|
#font pango: Terminus 12
|
||||||
|
#font pango: Liberation Mono 9
|
||||||
|
font pango: Liberation Mono 9
|
||||||
|
#font pango: JetBrains Mono 9
|
||||||
|
#font pango: Noto Sans Mono 10
|
||||||
|
#font pango: Roboto Mono 12
|
||||||
|
#font pango: Hack 10
|
||||||
|
#font pango: Fantasque Sans Mono 10
|
||||||
|
#font pango: Input Mono 10
|
||||||
|
|
||||||
|
# Use Mouse+$mod to drag floating windows to their wanted position
|
||||||
|
floating_modifier $mod
|
||||||
|
|
||||||
|
# start a terminal
|
||||||
|
#bindsym $mod+Return exec urxvt
|
||||||
|
#bindsym $mod+Shift+Return exec terminator
|
||||||
|
|
||||||
|
bindsym $mod+Return exec terminator
|
||||||
|
bindsym $mod+Shift+Return exec urxvt
|
||||||
|
#bindsym $mod+Return exec konsole
|
||||||
|
#bindsym $mod+Return exec terminator
|
||||||
|
#bindsym $mod+Return exec xfce4-terminal
|
||||||
|
#bindsym $mod+Shift+Return exec urxvt
|
||||||
|
|
||||||
|
# kill focused window
|
||||||
|
bindsym $mod+n kill
|
||||||
|
|
||||||
|
# start dmenu (a program launcher)
|
||||||
|
bindsym $mod+q exec dmenu_run
|
||||||
|
|
||||||
|
# It will not be overwritten, so edit it as you like.
|
||||||
|
#
|
||||||
|
# Should you change your keyboard layout somewhen, delete
|
||||||
|
# this file and re-run i3-config-wizard(1).
|
||||||
|
#
|
||||||
|
|
||||||
|
# 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+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+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+semicolon split h
|
||||||
|
# split in vertical orientation
|
||||||
|
bindsym $mod+p split v
|
||||||
|
|
||||||
|
# change container layout (stacked, tabbed, toggle split)
|
||||||
|
bindsym $mod+d layout stacking
|
||||||
|
bindsym $mod+f layout tabbed
|
||||||
|
bindsym $mod+space layout toggle split
|
||||||
|
|
||||||
|
# toggle tiling / floating
|
||||||
|
bindsym $mod+Shift+space floating toggle
|
||||||
|
# focus the parent container
|
||||||
|
bindsym $mod+a focus parent
|
||||||
|
|
||||||
|
# switch to workspace
|
||||||
|
bindsym $mod+1 workspace 1
|
||||||
|
bindsym $mod+2 workspace 2
|
||||||
|
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
|
||||||
|
|
||||||
|
# move focused container to workspace
|
||||||
|
bindsym $mod+Shift+1 move container to workspace 1
|
||||||
|
bindsym $mod+Shift+2 move container to workspace 2
|
||||||
|
bindsym $mod+Shift+3 move container to workspace 3
|
||||||
|
bindsym $mod+Shift+4 move container to workspace 4
|
||||||
|
bindsym $mod+Shift+5 move container to workspace 5
|
||||||
|
bindsym $mod+Shift+6 move container to workspace 6
|
||||||
|
bindsym $mod+Shift+7 move container to workspace 7
|
||||||
|
bindsym $mod+Shift+8 move container to workspace 8
|
||||||
|
bindsym $mod+Shift+9 move container to workspace 9
|
||||||
|
bindsym $mod+Shift+0 move container to workspace 10
|
||||||
|
|
||||||
|
bindsym $mod+i workspace prev
|
||||||
|
bindsym $mod+o workspace next
|
||||||
|
bindsym $mod+Shift+i move container to workspace prev
|
||||||
|
bindsym $mod+Shift+o move container to workspace next
|
||||||
|
|
||||||
|
# Scratchpad stuff
|
||||||
|
bindsym $mod+bracketleft scratchpad show
|
||||||
|
bindsym $mod+bracketright move scratchpad
|
||||||
|
|
||||||
|
# reload the configuration file
|
||||||
|
bindsym $mod+Shift+s 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+f 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'"
|
||||||
|
|
||||||
|
exec setxkbmap us -option terminate:ctrl_alt_bksp,compose:ralt,ctrl:nocaps
|
||||||
|
#exec setxkbmap us -variant colemak -option terminate:ctrl_alt_bksp,compose:ralt,ctrl:nocaps
|
||||||
|
|
||||||
|
|
||||||
|
# Application keybindings
|
||||||
|
bindsym Control+$mod+m exec emacs
|
||||||
|
bindsym Control+$mod+c exec chromium-browser
|
||||||
|
bindsym $mod+c exec firefox
|
||||||
|
#bindsym $mod+s exec thunderbird
|
||||||
|
# bindsym $mod+c exec brave-browser
|
||||||
|
bindsym $mod+e exec pcmanfm
|
||||||
|
bindsym $mod+r exec pavucontrol
|
||||||
|
|
||||||
|
# Resize windows
|
||||||
|
bindsym Control+$mod+h resize shrink width 75 px
|
||||||
|
bindsym Control+$mod+j resize grow height 75 px
|
||||||
|
bindsym Control+$mod+k resize shrink height 75 px
|
||||||
|
bindsym Control+$mod+l resize grow width 75 px
|
||||||
|
bindsym Control+$mod+Left resize shrink width 75 px
|
||||||
|
bindsym Control+$mod+Down resize grow height 75 px
|
||||||
|
bindsym Control+$mod+Up resize shrink height 75 px
|
||||||
|
bindsym Control+$mod+Right resize grow width 75 px
|
||||||
|
|
||||||
|
#bindsym Print exec scrot -e 'mv $f ~/Pictures/screenshots/'
|
||||||
|
bindsym Print exec spectacle --background --fullscreen
|
||||||
|
bindsym $mod+Print exec spectacle --background --activewindow
|
||||||
|
bindsym $mod+Shift+Print exec spectacle --background --region
|
||||||
|
# bindsym XF86AudioMute exec amixer set Master toggle
|
||||||
|
# bindsym XF86AudioLowerVolume exec amixer set Master 8%-
|
||||||
|
# bindsym XF86AudioRaiseVolume exec amixer set Master 8%+
|
||||||
|
# bindsym $mod+F10 exec amixer set Master toggle
|
||||||
|
# bindsym $mod+F11 exec amixer set Master 8%-
|
||||||
|
# bindsym $mod+F12 exec amixer set Master 8%+
|
||||||
|
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
|
||||||
|
bindsym $mod+F10 exec pactl set-sink-mute @DEFAULT_SINK@ toggle
|
||||||
|
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
|
||||||
|
bindsym $mod+F11 exec pactl set-sink-volume @DEFAULT_SINK@ -5%
|
||||||
|
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
|
||||||
|
bindsym $mod+F12 exec pactl set-sink-volume @DEFAULT_SINK@ +5%
|
||||||
|
bindsym $mod+F7 exec mpc prev
|
||||||
|
bindsym $mod+F8 exec mpc toggle
|
||||||
|
bindsym $mod+F9 exec mpc next
|
||||||
|
# bindsym Shift+XF86MonBrightnessDown exec xbacklight -dec 1
|
||||||
|
# bindsym Shift+XF86MonBrightnessUp exec xbacklight -inc 1
|
||||||
|
# bindsym XF86MonBrightnessDown exec xbacklight -dec 5
|
||||||
|
# bindsym XF86MonBrightnessUp exec xbacklight -inc 5
|
||||||
|
bindsym XF86MonBrightnessDown exec $HOME/bin/kb-light.py -
|
||||||
|
bindsym XF86MonBrightnessUp exec $HOME/bin/kb-light.py +
|
||||||
|
|
||||||
|
# Autostarted applications
|
||||||
|
# exec deluge
|
||||||
|
exec blueman-applet
|
||||||
|
#exec dropbox start -i
|
||||||
|
exec guake
|
||||||
|
exec synapse
|
||||||
|
exec nm-applet
|
||||||
|
exec parcellite
|
||||||
|
exec ncmpcpp pause
|
||||||
|
# exec xfce4-power-manager
|
||||||
|
|
||||||
|
# Non-panel things
|
||||||
|
exec dunst
|
||||||
|
#exec emacs26 --daemon
|
||||||
|
exec --no-startup-id $HOME/.local/bin/i3-battery-popup
|
||||||
|
exec mpd
|
||||||
|
exec nitrogen --restore
|
||||||
|
exec redshift -l '43:-123'
|
||||||
|
# OLD: Disables moving the cursor using touchpad
|
||||||
|
#exec synclient TouchpadOff=1
|
||||||
|
# OLD: Disables tapping the touchpad for click
|
||||||
|
#exec xinput --disable 11
|
||||||
|
exec --no-startup-id xinput disable "SynPS/2 Synaptics TouchPad"
|
||||||
|
# higher = faster
|
||||||
|
exec --no-startup-id xinput set-prop 'TPPS/2 IBM TrackPoint' 'libinput Accel Speed' 0.6
|
||||||
|
|
||||||
|
#exec xscreensaver
|
||||||
|
|
||||||
|
## Solarized
|
||||||
|
## BorderFrame Border Title NextWindowGoesHere
|
||||||
|
##---------------------------------------------------------------------------------
|
||||||
|
#client.focused #268bd2 #268bd2 #fdf6e3 #93a1a1
|
||||||
|
#client.focused #f336a2 #f336a2 #fdf6e3 #93a1a1
|
||||||
|
#client.focused_inactive #002b36 #002b36 #d0d0d0 #93a1a1
|
||||||
|
#client.unfocused #002b36 #002b36 #d0d0d0 #93a1a1
|
||||||
|
#client.urgent #dc322f #dc322f #fdf6e3 #cb4b16
|
||||||
|
|
||||||
|
## Monokai
|
||||||
|
## BorderFrame Border Title NextWindowGoesHere
|
||||||
|
##---------------------------------------------------------------------------------
|
||||||
|
#client.focused #b3fc29 #b3fc49 #222222 #aaaaaa
|
||||||
|
#client.focused_inactive #222222 #222222 #dddddd #aaaaaa
|
||||||
|
#client.unfocused #222222 #222222 #dddddd #aaaaaa
|
||||||
|
#client.urgent #ee0000 #ee0000 #ffffff #aaaaaa
|
||||||
|
|
||||||
|
# Blue
|
||||||
|
# BorderFrame Border Title NextWindowGoesHere
|
||||||
|
#---------------------------------------------------------------------------------
|
||||||
|
client.focused #55ffff #55ffff #413101 #ff3399
|
||||||
|
client.focused_inactive #00cccc #005555 #dddddd #cc0000
|
||||||
|
client.unfocused #222222 #222222 #dddddd #cbbb92
|
||||||
|
client.urgent #ee0000 #ee0000 #ffffff #cbbb92
|
||||||
|
|
||||||
|
focus_follows_mouse no
|
||||||
|
|
||||||
|
# change normal to pixel for elimination of title bars
|
||||||
|
for_window [class="^.*"] border pixel 2
|
||||||
|
new_window 1pixel
|
||||||
|
|
||||||
|
#start of bar section
|
||||||
|
bar {
|
||||||
|
output eDP-1
|
||||||
|
tray_output eDP-1
|
||||||
|
position top
|
||||||
|
status_command i3status
|
||||||
|
colors {
|
||||||
|
# bar background color
|
||||||
|
#background $bg
|
||||||
|
# text color used for blocks that do not have a color specified.
|
||||||
|
#statusline $yellow
|
||||||
|
# bdr bg fg
|
||||||
|
#focused_workspace #0a0a0a #0a0a0a #0a0a0a
|
||||||
|
#inactive_workspace #0a0a0a #0a0a0a #0a0a0a
|
||||||
|
#active_workspace #1aAaCa #0a0a0a #0a0a0a
|
||||||
|
#urgent_workspace #EaEa0a #EaEa0a #0a0a0a
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bar {
|
||||||
|
output HDMI-2
|
||||||
|
tray_output eDP-1
|
||||||
|
position top
|
||||||
|
status_command cat
|
||||||
|
colors {
|
||||||
|
# bar background color
|
||||||
|
#background $bg
|
||||||
|
# text color used for blocks that do not have a color specified.
|
||||||
|
#statusline $yellow
|
||||||
|
## workspaces section
|
||||||
|
## border backgr. text
|
||||||
|
#focused_workspace $aqua $aqua $darkgray
|
||||||
|
#inactive_workspace $darkgray $darkgray $yellow
|
||||||
|
#active_workspace $darkgray $darkgray $yellow
|
||||||
|
#urgent_workspace $red $red $bg
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,65 @@
|
|||||||
|
# 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
|
||||||
|
markup = "pango"
|
||||||
|
}
|
||||||
|
|
||||||
|
order += "wireless _first_"
|
||||||
|
order += "ethernet _first_"
|
||||||
|
order += "battery all"
|
||||||
|
order += "load"
|
||||||
|
order += "memory"
|
||||||
|
order += "tztime local"
|
||||||
|
order += "tztime utc"
|
||||||
|
order += "tztime jst"
|
||||||
|
|
||||||
|
wireless _first_ {
|
||||||
|
format_up = "W: %quality"
|
||||||
|
format_down = "W: down"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ethernet _first_ {
|
||||||
|
format_up = "E: %speed"
|
||||||
|
format_down = "E: down"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
battery all {
|
||||||
|
format = "%status %percentage %remaining"
|
||||||
|
low_threshold = 20
|
||||||
|
threshold_type = percentage
|
||||||
|
}
|
||||||
|
|
||||||
|
load {
|
||||||
|
format = "LOAD: %1min"
|
||||||
|
}
|
||||||
|
|
||||||
|
memory {
|
||||||
|
format = "MEM: %used"
|
||||||
|
threshold_degraded = "20%"
|
||||||
|
threshold_critical = "10%"
|
||||||
|
}
|
||||||
|
|
||||||
|
tztime local {
|
||||||
|
# format = "%Z: %Y-%m-%d <span foreground='#c4f'>%H:%M:%S</span>"
|
||||||
|
format = "%Z: %Y-%m-%d <span foreground='#e7f'>%H:%M:%S</span>"
|
||||||
|
}
|
||||||
|
|
||||||
|
tztime utc {
|
||||||
|
format = "%Z: %Y-%m-%d <span foreground='#fe9'>%H:%M:%S</span>"
|
||||||
|
timezone = "UTC"
|
||||||
|
}
|
||||||
|
|
||||||
|
tztime jst {
|
||||||
|
format = "%Z: %Y-%m-%d <span foreground='#f51'>%H:%M:%S</span>"
|
||||||
|
timezone = "Asia/Tokyo"
|
||||||
|
}
|
||||||
@@ -0,0 +1,110 @@
|
|||||||
|
syntax on
|
||||||
|
|
||||||
|
execute pathogen#infect()
|
||||||
|
|
||||||
|
"""""""" dark mode
|
||||||
|
set background=dark
|
||||||
|
"colorscheme odyssey
|
||||||
|
highlight CursorLine cterm=none ctermbg=23
|
||||||
|
highlight CursorLineNr cterm=bold ctermbg=23
|
||||||
|
highlight CursorColumn cterm=none ctermbg=23
|
||||||
|
highlight ColorColumn cterm=none ctermbg=23
|
||||||
|
|
||||||
|
" light mode
|
||||||
|
"set background=light
|
||||||
|
"colorscheme shirotelin
|
||||||
|
""highlight CursorLine cterm=none ctermbg=7
|
||||||
|
""highlight CursorLineNr cterm=bold ctermbg=7
|
||||||
|
""highlight CursorColumn cterm=none ctermbg=7
|
||||||
|
""highlight ColorColumn cterm=none ctermbg=7
|
||||||
|
""highlight trailing whitespace, markers if line goes past screen, special
|
||||||
|
|
||||||
|
" marker for tab characters
|
||||||
|
set list
|
||||||
|
set listchars=trail:-,extends:>,precedes:<,tab:>-
|
||||||
|
|
||||||
|
" Line numbers, highlight current line
|
||||||
|
set number
|
||||||
|
set cursorline
|
||||||
|
set cursorcolumn
|
||||||
|
|
||||||
|
" Autoindentation
|
||||||
|
set autoindent
|
||||||
|
|
||||||
|
" Turn off line wrapping
|
||||||
|
set nowrap
|
||||||
|
set colorcolumn=+1
|
||||||
|
|
||||||
|
" Use 4 spaces instead of tabs
|
||||||
|
set shiftwidth =4
|
||||||
|
set tabstop =4
|
||||||
|
set expandtab
|
||||||
|
" uncomment for stupid backspace
|
||||||
|
"set softtabstop =4
|
||||||
|
|
||||||
|
" NERD tree
|
||||||
|
nnoremap <C-n> :NERDTreeToggle<Return>
|
||||||
|
|
||||||
|
" Show filename in mode line
|
||||||
|
set laststatus =2
|
||||||
|
|
||||||
|
"" Window switching commands
|
||||||
|
noremap <C-h> :wincmd h<Return>
|
||||||
|
noremap <C-j> :wincmd j<Return>
|
||||||
|
noremap <C-k> :wincmd k<Return>
|
||||||
|
noremap <C-l> :wincmd l<Return>
|
||||||
|
|
||||||
|
" highlight when searching
|
||||||
|
set hlsearch
|
||||||
|
|
||||||
|
" Uncomment the following to have Vim jump to the last position when
|
||||||
|
" reopening a file
|
||||||
|
if has("autocmd")
|
||||||
|
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
" tab navigation
|
||||||
|
" From https://vim.fandom.com/wiki/Using_tab_pages
|
||||||
|
cabbrev te tabedit
|
||||||
|
nnoremap <C-i> :tabp<Return>
|
||||||
|
nnoremap <C-o> :tabn<Return>
|
||||||
|
nnoremap <C-t> :tabedit .<Return>
|
||||||
|
nnoremap <C-x> :set number!<Return>
|
||||||
|
nnoremap <C-s> :set cursorline!<Return>:set cursorcolumn!<Return>
|
||||||
|
nnoremap <C-p> :set paste!<Return>
|
||||||
|
|
||||||
|
" read modelines
|
||||||
|
set modeline
|
||||||
|
|
||||||
|
" copy to system clipboard (from grok)
|
||||||
|
vnoremap <C-y> :w !xclip -sel clip<CR><CR>
|
||||||
|
" the practical effect of this augroup thing is that we avoid
|
||||||
|
" non-idempotency problems with autocmd (specifically the autocmd!
|
||||||
|
" inside, which resets all the settings in the group)
|
||||||
|
augroup foo
|
||||||
|
autocmd!
|
||||||
|
" overrides file type plugins that think they know what i want
|
||||||
|
" and i don't
|
||||||
|
" -t = don't do auto line wrapping in insert mode
|
||||||
|
" +q = do on gqq
|
||||||
|
" +n = handle numbered lists automagically
|
||||||
|
" +j = handle comment delimiters on J
|
||||||
|
" +c = autowrap in insert mode only in comments
|
||||||
|
autocmd FileType * setlocal formatoptions-=t formatoptions+=qnjc
|
||||||
|
autocmd FileType * setlocal textwidth=69
|
||||||
|
" markdown paragraph wrap
|
||||||
|
autocmd FileType * setlocal formatoptions+=tn
|
||||||
|
" python: pep8 says best textwidth is 80 chars but fuck pep8
|
||||||
|
" but only gently. we'll go with 79
|
||||||
|
autocmd FileType python setlocal textwidth=79
|
||||||
|
" xml turn off line wrapping
|
||||||
|
autocmd FileType xml setlocal formatoptions-=t
|
||||||
|
" Erlang handle comments beginning with %% | %%% etc
|
||||||
|
autocmd FileType erlang setlocal comments=:%%%%%,:%%%%,:%%%,:%%,:%
|
||||||
|
autocmd FileType erlang setlocal textwidth=55
|
||||||
|
autocmd FileType erlang setlocal formatoptions-=t
|
||||||
|
" handle numbered lists properly in markdown
|
||||||
|
"autocmd FileType markdown setlocal formatoptions+=n
|
||||||
|
" ignore all prior tabs=4spaces settings but only in makefiles
|
||||||
|
autocmd FileType make setlocal noexpandtab
|
||||||
|
augroup END
|
||||||
@@ -0,0 +1,141 @@
|
|||||||
|
# Lines configured by zsh-newuser-install
|
||||||
|
HISTFILE=~/.histfile
|
||||||
|
HISTSIZE=10000
|
||||||
|
SAVEHIST=10000
|
||||||
|
bindkey -e
|
||||||
|
# End of lines configured by zsh-newuser-install
|
||||||
|
# The following lines were added by compinstall
|
||||||
|
zstyle :compinstall filename '~/.zshrc'
|
||||||
|
|
||||||
|
#autoload -U colors && colors
|
||||||
|
autoload -Uz compinit
|
||||||
|
compinit
|
||||||
|
# End of lines added by compinstall
|
||||||
|
#
|
||||||
|
|
||||||
|
# [[ -z "$TMUX" ]] && exec tmux
|
||||||
|
|
||||||
|
# My bash aliases
|
||||||
|
alias ls='ls -F -G'
|
||||||
|
alias l='ls -l'
|
||||||
|
alias la='l -a'
|
||||||
|
alias xv='vim -X'
|
||||||
|
|
||||||
|
genid () {
|
||||||
|
date | sha1sum | sed -e 's/^\([0-9a-z]\{7\}\).\+/\1/'
|
||||||
|
}
|
||||||
|
# thank you claude
|
||||||
|
chpwd() { ls }
|
||||||
|
ggit-branch () {
|
||||||
|
git branch &> /dev/null
|
||||||
|
if [[ $? -eq 0 ]]; then
|
||||||
|
br=$(git branch | \grep \* | sed "s/^\* //")
|
||||||
|
echo " ${br}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
setopt prompt_subst
|
||||||
|
setopt auto_pushd
|
||||||
|
CONFIG="~/.config"
|
||||||
|
|
||||||
|
# [x/y git-branch] % ... pharpend@picklet
|
||||||
|
|
||||||
|
# [src/foo master] % pharpend@picklet
|
||||||
|
#PROMPT='%B[%b%F{cyan}%2~%f%F{red}$(ggit-branch)%f%B]%b %F{green}%#%f '
|
||||||
|
#RPROMPT='%F{red}%n%f%B@%b%F{magenta}%M%f'
|
||||||
|
|
||||||
|
ncolor() {
|
||||||
|
last_md5_digit=$(echo $1 | md5sum | awk '{print substr($1, length($1), 1)}')
|
||||||
|
# 6 colors
|
||||||
|
#colors='red green yellow blue magenta cyan'
|
||||||
|
# 1> [{N, N*(6/16)} || N <- lists:seq(0, 15)].
|
||||||
|
# [{0,0.0},
|
||||||
|
# {1,0.375},
|
||||||
|
# {2,0.75},
|
||||||
|
# {3,1.125},
|
||||||
|
# {4,1.5},
|
||||||
|
# {5,1.875},
|
||||||
|
# {6,2.25},
|
||||||
|
# {7,2.625},
|
||||||
|
# {8,3.0},
|
||||||
|
# {9,3.375},
|
||||||
|
# {10,3.75},
|
||||||
|
# {11,4.125},
|
||||||
|
# {12,4.5},
|
||||||
|
# {13,4.875},
|
||||||
|
# {14,5.25},
|
||||||
|
# {15,5.625}]
|
||||||
|
|
||||||
|
case $last_md5_digit in
|
||||||
|
0|1|2) echo 'red' ;;
|
||||||
|
3|4|5) echo 'green' ;;
|
||||||
|
6|7) echo 'yellow' ;;
|
||||||
|
#8|9|a) echo 'blue' ;;
|
||||||
|
#b|c|d) echo 'magenta' ;;
|
||||||
|
8|9) echo 'blue' ;;
|
||||||
|
a|b|c) echo 'magenta' ;;
|
||||||
|
*) echo 'cyan' ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
ecolor() {
|
||||||
|
for arg in $@; do
|
||||||
|
this_color=$(ncolor ${arg})
|
||||||
|
echo "%F{${this_color}}${arg}%f"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
pcolor() {
|
||||||
|
for arg in $@; do
|
||||||
|
this_color=$(ncolor ${arg})
|
||||||
|
print -P "%F{${this_color}}${arg}%f"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
ucolor() {
|
||||||
|
ecolor $(whoami)
|
||||||
|
}
|
||||||
|
hcolor() {
|
||||||
|
ecolor $(hostname)
|
||||||
|
}
|
||||||
|
#jusername
|
||||||
|
|
||||||
|
# [pharpend@picklet src/foo master] %
|
||||||
|
#PROMPT='%B[%b%F{red}%n%f%B@%b%F{magenta}%M%f %F{cyan}%2~%f%F{red}$(ggit-branch)%f%B]%b %F{green}%#%f '
|
||||||
|
#RPROMPT=''
|
||||||
|
|
||||||
|
# same but randomized colors for username/hostname
|
||||||
|
# [pharpend@picklet src/foo master] %
|
||||||
|
PROMPT='%B[%b$(ucolor)%B@%b$(hcolor) %F{cyan}%2~%f%F{red}$(ggit-branch)%f%B]%b %F{green}%#%f '
|
||||||
|
RPROMPT=''
|
||||||
|
|
||||||
|
# pharpend@picklet
|
||||||
|
#PROMPT='%B[%b%F{cyan}%2~%f%F{red}$(ggit-branch)%f%B]%b %F{green}%#%f '
|
||||||
|
|
||||||
|
# PROMPT='[%2~$(ggit-branch)] %# '
|
||||||
|
#RPROMPT=''
|
||||||
|
# RPROMPT='%n@%M'
|
||||||
|
REPORTTIME=3
|
||||||
|
|
||||||
|
## Erlang
|
||||||
|
##if [[ -d $HOME/.erts ]]; then; . "$HOME"/.erts/28.3/activate; fi
|
||||||
|
#. "$HOME"/.erts/28.3/activate
|
||||||
|
|
||||||
|
## opam configuration
|
||||||
|
#if [[ -d $HOME/.opam ]]; then
|
||||||
|
# test -r /home/pharpend/.opam/opam-init/init.zsh && . /home/pharpend/.opam/opam-init/init.zsh > /dev/null 2> /dev/null || true
|
||||||
|
#fi
|
||||||
|
|
||||||
|
|
||||||
|
# thank you lenovo
|
||||||
|
at () { echo -n '@' }
|
||||||
|
atln () { echo '@' }
|
||||||
|
|
||||||
|
ii () { echo -n '2' }
|
||||||
|
iiln () { echo '2' }
|
||||||
|
|
||||||
|
two () { echo -n '2' }
|
||||||
|
twoln () { echo '2' }
|
||||||
|
|
||||||
|
# syntax highlighting
|
||||||
|
source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||||
Reference in New Issue
Block a user