feat: add nnn and bash config

This commit is contained in:
Max Hohlfeld 2023-03-31 10:48:39 +02:00
parent 90122ec55d
commit cbb3f34dfb
7 changed files with 450 additions and 0 deletions

View File

@ -8,9 +8,13 @@ This project contains my dotfiles and scripts for daily usage. In addition to th
- alacritty - alacritty
- xmobar - xmobar
- dunst - dunst
- nnn
- bash
- dircolours
- neovim - neovim
- git - git
- git delta - git delta
- lazygit - lazygit
- scripts - scripts
- `compiledoc` - compile a markdown or latex file into pdf using pandoc and tectonic - `compiledoc` - compile a markdown or latex file into pdf using pandoc and tectonic
- `open_editor_in_new_shell` - used by nnn to open a file in `$EDITOR` in a new `$TERMINAL`

View File

@ -0,0 +1,3 @@
#!/usr/bin/env sh
$TERMINAL -e $EDITOR $1 &

View File

@ -24,4 +24,5 @@
with_items: with_items:
- { src: compiledoc, dest: ~/.local/bin/compiledoc } - { src: compiledoc, dest: ~/.local/bin/compiledoc }
- { src: inline_code.tex, dest: ~/.local/bin/inline_code.tex } - { src: inline_code.tex, dest: ~/.local/bin/inline_code.tex }
- { src: open_editor_in_new_shell, dest: ~/.local/bin/open_editor_in_new_shell }
tags: pc tags: pc

View File

@ -0,0 +1,78 @@
# ~/.bashrc
# colouring terminal
export PS1='\[\033[38;5;174m\]\u\[\033[38;5;187m\]@\h\[\033[00m\]:\[\033[38;5;174m\] \w \[\033[00m\]\$ '
# colouring ls
eval $(dircolors -b $HOME/.config/dircolours)
# set vi mode for bash
set -o vi
# aliases
alias ls='ls --color'
alias la='ls -lah'
alias gf='git fetch'
alias gd='git diff'
alias gl='git log'
alias gpl='git pull'
alias gps='git push'
alias ga='git add'
alias gst='git status'
alias gck='git checkout'
alias gcm='git commit'
alias gcl='git clone'
alias gb='git branch'
alias gr='git reset'
alias grm='git rm'
# starting ssh-agent
if [ -z "$SSH_AUTH_SOCK" ] ; then
eval `ssh-agent -s` 2>&1 >/dev/null
fi
# nnn config
export NNN_OPTS="eE"
export NNN_COLORS='#a744b322'
export NNN_FCOLORS='dfdfdf6c0000df42bbbaba5f'
export NNN_TRASH=1
export NNN_ARCHIVE="\\.(7z|a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|rar|rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip)$"
export NNN_BMS='b:~/bilder;d:~/downloads;D:~/dokumente;v:~/videos;m:~/music;c:~/.config'
export NNN_PLUG='m:nmount'
# nnn cd on quit
n ()
{
# Block nesting of nnn in subshells
if [ -n $NNNLVL ] && [ "${NNNLVL:-0}" -ge 1 ]; then
echo "nnn is already running"
return
fi
NNN_TMPFILE="${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.lastd"
nnn "$@"
if [ -f "$NNN_TMPFILE" ]; then
. "$NNN_TMPFILE"
rm -f "$NNN_TMPFILE" > /dev/null
fi
}
# vimwiki
vw () {
if [[ $# == 0 ]]
then
git -C ~/.local/share/vimwiki pull
nvim ~/.local/share/vimwiki/index.md
git -C ~/.local/share/vimwiki add ~/.local/share/vimwiki/*
git -C ~/.local/share/vimwiki commit -m "autosync-$(date +%FT%T)"
git -C ~/.local/share/vimwiki push
elif [[ $1 == 'g' ]]
then
git -C ~/.local/share/vimwiki ${@:2}
else
echo 'Usage: vw [g] [args ...]'
fi
}

View File

@ -0,0 +1,268 @@
# Zenburn color theme for the color GNU ls utility.
# Ivaylo Kuzev <ivkuzev@gmail.com>, 2014 - 2015
# Term Section
TERM Eterm
TERM ansi
TERM color-xterm
TERM con132x25
TERM con132x30
TERM con132x43
TERM con132x60
TERM con80x25
TERM con80x28
TERM con80x30
TERM con80x43
TERM con80x50
TERM con80x60
TERM cons25
TERM console
TERM cygwin
TERM dtterm
TERM eterm-color
TERM gnome
TERM gnome-256color
TERM jfbterm
TERM konsole
TERM kterm
TERM linux
TERM linux-c
TERM mach-color
TERM mlterm
TERM putty
TERM rxvt
TERM rxvt-256color
TERM rxvt-cygwin
TERM rxvt-cygwin-native
TERM rxvt-unicode
TERM rxvt-unicode256
TERM rxvt-unicode-256color
TERM screen
TERM screen-256color
TERM screen-256color-bce
TERM screen-bce
TERM screen-w
TERM screen.linux
TERM st
TERM st-meta
TERM st-256color
TERM st-meta-256color
TERM vt100
TERM xterm
TERM xterm-16color
TERM xterm-256color
TERM xterm-88color
TERM xterm-color
TERM xterm-debian
TERM xterm-termite
## Documentation
#
# Attribute codes:
# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
# Text color codes:
# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
# Background color codes:
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
#
# Text 256 color coding:
# 38;5;COLOR_NUMBER
# Background 256 color coding:
# 48;5;COLOR_NUMBER
# block device driver:
BLK 48;5;108;38;5;223;01
# file with capability:
CAPABILITY 01;38;5;95
# character device driver:
CHR 48;5;108;38;5;223;01
# directory:
DIR 48;5;237;01;38;5;223
# door:
DOOR 48;5;237;38;5;180;01
# This is for files with execute permission:
EXEC 01;38;5;108
# pipe:
FIFO 48;5;237;38;5;180;01
# regular file:
#FILE 00
# symbolic link:
LINK 48;5;237;38;5;223
# normal (nonfilename) text:
#NORMAL 00
# orphaned symbolic link:
ORPHAN 48;5;237;38;5;187
# directory that is other-writable (o+w) and not sticky:
OTHER_WRITABLE 48;5;237;38;5;180
# file that is setuid (u+s):
SETUID 48;5;237;38;5;66
# file that is setgid (g+s):
SETGID 48;5;237;38;5;66
# socket:
SOCK 48;5;237;38;5;180;01
# directory with the sticky bit set (+t) and not other-writable:
STICKY 48;5;180;38;5;234
# dir that is sticky and other-writable (+t,o+w):
STICKY_OTHER_WRITABLE 48;5;180;38;5;234
# archives
.7z 01;38;5;174
.arj 01;38;5;174
.bz2 01;38;5;174
.bz 01;38;5;174
.gz 01;38;5;174
.rar 01;38;5;174
.tar 01;38;5;174
.tgz 01;38;5;174
.tbz 01;38;5;174
.tbz2 01;38;5;174
.xz 01;38;5;174
.zip 01;38;5;174
# packaged apps
.apk 01;38;5;95
.deb 01;38;5;174
.jad 01;38;5;95
.jar 01;38;5;95
.rpm 01;38;5;174
# images|graphics
.bmp 00;38;5;109
.gif 00;38;5;109
.ico 00;38;5;109
.jpg 00;38;5;109
.JPG 00;38;5;109
.jpeg 00;38;5;109
.png 00;38;5;109
.svg 00;38;5;109
.xbm 00;38;5;109
.xpm 00;38;5;109
# audio formats
.aac 00;38;5;116
.au 00;38;5;116
.flac 00;38;5;116
.mid 00;38;5;116
.midi 00;38;5;116
.mka 00;38;5;116
.mp3 00;38;5;116
.mpc 00;38;5;116
.ogg 00;38;5;116
.ra 00;38;5;116
.wav 00;38;5;116
# video formats
.mov 00;38;5;66
.mpg 00;38;5;66
.mpeg 00;38;5;66
.m2v 00;38;5;66
.mkv 00;38;5;66
.ogm 00;38;5;66
.mp4 00;38;5;66
.m4v 00;38;5;66
.mp4v 00;38;5;66
.vob 00;38;5;66
.qt 00;38;5;66
.nuv 00;38;5;66
.wmv 00;38;5;66
.asf 00;38;5;66
.rm 00;38;5;66
.rmvb 01;38;5;66
.flc 00;38;5;66
.avi 00;38;5;66
.fli 00;38;5;66
.flv 00;38;5;66
.gl 00;38;5;66
.m2ts 00;38;5;66
.divx 00;38;5;66
.webm 00;38;5;66
# shell
.awk 00;38;5;151
.bash 00;38;5;151
.bat 00;38;5;151
.BAT 00;38;5;151
.sed 00;38;5;151
.sh 00;38;5;151
.zsh 00;38;5;151
# build
*CMakeLists.txt 00;38;5;187
.cabal 00;38;5;187
*Makefile 00;38;5;187
.mk 00;38;5;187
.make 00;38;5;187
# source files
.c 01;38;5;187
.h 01;38;5;187
.s 01;38;5;187
.cs 01;38;5;187
.java 01;38;5;187
.scala 01;38;5;187
.hs 01;38;5;187
.py 01;38;5;187
.rb 01;38;5;187
.php 01;38;5;187
.pl 01;38;5;187
.vim 01;38;5;187
.js 01;38;5;187
.coffee 01;38;5;187
.go 01;38;5;187
.lisp 01;38;5;187
.scm 01;38;5;187
# documents
.txt 04;38;5;188
.tex 04;38;5;188
.html 04;38;5;188
.xhtml 04;38;5;188
.xml 04;38;5;188
.md 04;38;5;188
.mkd 04;38;5;188
.markdown 04;38;5;188
.org 04;38;5;188
.pandoc 04;38;5;188
.pdc 04;38;5;188
.pdf 04;38;5;188
# Files of special interest
*rc 04;38;5;180
.conf 04;38;5;180
*Dockerfile 04;38;5;180
# meta
*README 04;38;5;187
*LICENSE 04;38;5;187
*AUTHORS 04;38;5;187
# version control
.gitignore 00;38;5;248
.gitmodules 00;38;5;248
# logs and backups
.log 00;38;5;234
.bak 00;38;5;234
.aux 00;38;5;234
.toc 00;38;5;234
*~ 00;38;5;234
*# 00;38;5;234
.swp 00;38;5;234
.tmp 00;38;5;234
.temp 00;38;5;234
.o 00;38;5;234
.pyc 00;38;5;234
.class 00;38;5;234
.cache 00;38;5;234
# pacman files
.pacnew 48;5;95;38;5;108
.pacsave 48;5;95;38;5;108
.pacorig 48;5;95;38;5;108
*PKGBUILD 00;38;5;110
# rpm files
.rpmsave 48;5;95;38;5;108
.rpmorig 48;5;95;38;5;108
.rpmnew 48;5;95;38;5;108
.spec 00;38;5;110

View File

@ -0,0 +1,60 @@
# first read by bash on login
# colour scheme for terminal
export TERM=xterm-256color
# colour scheme for gtk applications
export GTK_THEME=Adwaita:dark
# default programs
export EDITOR="nvim"
export TERMINAL="alacritty"
export VISUAL="open_editor_in_new_shell"
export READER="zathura"
export BROWSER="firefox"
# environment variables
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_CACHE_HOME="$HOME/.cache"
export XDG_DATA_HOME="$HOME/.local/share"
export XDG_RUNTIME_DIR="/run/user/1000"
export GNUPGHOME="$XDG_DATA_HOME/gnupg"
export WINEPREFIX="$XDG_DATA_HOME/wine"
export LESSHISTFILE=-
#export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority"
export XINITRC="$XDG_CONFIG_HOME/X11/xinitrc"
export XSERVERRC="$XDG_CONFIG_HOME/X11/xserverrc"
export HISTFILE="$XDG_DATA_HOME/bash/history"
export WGETRC="$XDG_CONFIG_HOME/wget/wgetrc"
export KDEHOME="$XDG_CONFIG_HOME/kde4"
export ANDROID_SDK_ROOT="$XDG_CONFIG_HOME/android"
export ADB_VENDOR_KEY="$XDG_CONFIG_HOME/android"
export SQLITE_HISTORY="$XDG_DATA_HOME/sqlite_history"
export ASPELL_CONF="per-conf $XDG_CONFIG_HOME/aspell/aspell.conf; personal $XDG_CONFIG_HOME/aspell/de.pws; repl $XDG_CONFIG_HOME/aspell/de.prepl"
export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc"
export TS3_CONFIG_DIR="$XDG_CONFIG_HOME/ts3client"
export XMONAD_CONFIG_HOME="$XDG_CONFIG_HOME/xmonad"
export XMONAD_DATA_HOME="$XDG_DATA_HOME/xmonad"
export XMONAD_CACHE_HOME="$XDG_CACHE_HOME/xmonad"
export RUSTUP_HOME="$XDG_DATA_HOME/rustup"
export CARGO_HOME="$XDG_DATA_HOME/cargo"
export PASSWORD_STORE_DIR="$XDG_DATA_HOME/pass"
export DVDCSS_CACHE="$XDG_DATA_HOME/dvdcss"
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export ANSIBLE_HOME="$XDG_CONFIG_HOME/ansible"
export ANSIBLE_CONFIG="$XDG_CONFIG_HOME/ansible.cfg"
export ANSIBLE_GALAXY_CACHE_DIR="$XDG_CACHE_HOME/ansible/galaxy_cache"
export AZURE_CONFIG_DIR="$XDG_DATA_HOME/azure"
export NUGET_PACKAGES="$XDG_CACHE_HOME/NuGetPackages"
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
# add private bin and its subdirectories to the $PATH
export PATH="$PATH:$XDG_DATA_HOME/cargo/bin:~/.dotnet/tools:$(du "$HOME/.local/bin" | cut -f2 | grep -v git | paste -s -d ':')"

View File

@ -11,6 +11,11 @@
- cmus - cmus
- lightdm - lightdm
- lightdm-gtk-greeter - lightdm-gtk-greeter
- nnn
- tar
- zip
- unzip
- unrar
state: present state: present
become: true become: true
tags: pc tags: pc
@ -53,6 +58,13 @@
mode: '0644' mode: '0644'
tags: pc tags: pc
- name: Copy over dircolours
ansible.builtin.copy:
src: dircolours
dest: ~/.config/dircolours
mode: '0644'
tags: pc
- name: Copy over cmus config - name: Copy over cmus config
ansible.builtin.copy: ansible.builtin.copy:
src: "{{ item }}" src: "{{ item }}"
@ -61,6 +73,28 @@
with_fileglob: "cmus/*" with_fileglob: "cmus/*"
tags: pc tags: pc
- name: Create nnn config directory
ansible.builtin.file:
path: "~/.config/nnn"
state: directory
mode: '0755'
tags: pc
- name: Clone nnn repository into temp
ansible.builtin.git:
repo: https://github.com/jarun/nnn.git
force: true
dest: /tmp/nnn
tags: pc
- name: Move nnn plugins into right place
ansible.builtin.copy:
remote_src: true
src: /tmp/nnn/plugins
dest: ~/.config/nnn/plugins
mode: '0755'
tags: pc
- name: Copy over T460p config files - name: Copy over T460p config files
ansible.builtin.copy: ansible.builtin.copy:
src: "{{ item.src }}" src: "{{ item.src }}"
@ -69,6 +103,8 @@
with_items: with_items:
- { src: xmonad_t460p.hs, dest: ~/.config/xmonad/xmonad.hs } - { src: xmonad_t460p.hs, dest: ~/.config/xmonad/xmonad.hs }
- { src: xmobarrc_t460p, dest: ~/.config/xmobar/xmobarrc } - { src: xmobarrc_t460p, dest: ~/.config/xmobar/xmobarrc }
- { src: bashrc_t460p, dest: ~/.bashrc }
- { src: profile_t460p, dest: ~/.profile }
tags: t460p tags: t460p
- name: Copy over qwerty config files - name: Copy over qwerty config files