Update docs and add an option for graphical login
This commit is contained in:
		
							
								
								
									
										52
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										52
									
								
								README.md
									
									
									
									
									
								
							@ -6,6 +6,7 @@ This is my personal zsh configuraton.
 | 
			
		||||
* [direnv](https://github.com/direnv/direnv)* - runs on cd, safely set enviroment
 | 
			
		||||
* [eza](https://github.com/eza-community/eza)* - better ls
 | 
			
		||||
* [bat](https://github.com/sharkdp/bat)* - better cat, less, man, etc.
 | 
			
		||||
* [trash-cli](https://github.com/andreafrancia/trash-cli)* - safer deletion
 | 
			
		||||
 | 
			
		||||
(* = optional)
 | 
			
		||||
 | 
			
		||||
@ -24,13 +25,48 @@ source "${ZSH_CONFIG_DIR}/init.zsh"
 | 
			
		||||
 * ZSH_BOOKMARK_DIR: Bookmark directory (default: ~/.cache/zsh/bookmarks)
 | 
			
		||||
 * ZSH_BOOKMARK_LS: If true, run `ls` after jumping to a bookmark (default:
 | 
			
		||||
   true)
 | 
			
		||||
 * ZSH_USER_DIR: Directory containing configuration files (see below, default:
 | 
			
		||||
   ~/.zsh.d)
 | 
			
		||||
 * ZSH_GRAPHICAL_LOGIN: Weather or not to enable starting a graphical session
 | 
			
		||||
   when a login shell is started. (default: true)
 | 
			
		||||
   
 | 
			
		||||
### Aliases
 | 
			
		||||
I use a lot of aliases. Because a lot of the aliases are only enabled if the
 | 
			
		||||
corresponding piece of software is installed (see above), it is hard to give a
 | 
			
		||||
full list. Therefore you should think of the following list as a guide and read
 | 
			
		||||
`init.zsh` if you want a full list.
 | 
			
		||||
 * `ls`: eza --git -F
 | 
			
		||||
 * `la`: eza --git -Fa
 | 
			
		||||
 * `l`: eza --git -Fl 
 | 
			
		||||
 * `ll`: eza --git -Fla 
 | 
			
		||||
 * `cat`: bat --paging=never
 | 
			
		||||
 * `pcat`: bat -pp
 | 
			
		||||
 * `ncat`: bat -pp --color=never
 | 
			
		||||
 * `e`: emacsclient -a nvim -nw
 | 
			
		||||
 * `n`: emacsclient -a nvim -nw
 | 
			
		||||
 * `emacs`: emacsclient -a nvim -nw
 | 
			
		||||
 * `d`: *start dired in either the current or provided directory*
 | 
			
		||||
 * `dired`: *start dired in either the current or provided directory*
 | 
			
		||||
 * `se`: sudoedit
 | 
			
		||||
 * `mv`: mv -i
 | 
			
		||||
 * `cp`: cp -i
 | 
			
		||||
 * `rm`: *disabled if trash-cli is installed*
 | 
			
		||||
 * `tp`: trash-put
 | 
			
		||||
 * `trr`: trash-restore
 | 
			
		||||
 * `trl`: trash-list
 | 
			
		||||
 * `tre`: trash-empty
 | 
			
		||||
 * `trm`: trash-rm
 | 
			
		||||
 * `gt`: git status
 | 
			
		||||
 * `ga`: git add
 | 
			
		||||
 * `gaa`: git add -A
 | 
			
		||||
 * `gc`: git commit
 | 
			
		||||
 * `gf`: git fetch
 | 
			
		||||
 * `gu`: git pull
 | 
			
		||||
 * `gp`: git push
 | 
			
		||||
 * `gcm`: *git commit -m, but treat all following args as the message (like echo)*
 | 
			
		||||
 * `gacm`: *git commit -am, but treat all following args as the message (like echo)*
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
###  Configuration
 | 
			
		||||
To configure, create `~/.zsh.d` (or set ZSH_USER_DIR as described above). The
 | 
			
		||||
create either of the option files `init.zsh` and `early-init.zsh`. The former is
 | 
			
		||||
run in the middle of startup, after most plugins have been initialized, but
 | 
			
		||||
before ones related to command history, auto-complete, etc. The latter is run as
 | 
			
		||||
the first thing in the configuration file (after `autoload -U compinit &&
 | 
			
		||||
compinit`).
 | 
			
		||||
Previous versions of this configuration supported files that were not under
 | 
			
		||||
version control to be run during initialization of the shell. However the
 | 
			
		||||
current version does not support this. Configuring the shell requires editing
 | 
			
		||||
either `init.zsh` or `early-init.zsh`.
 | 
			
		||||
 | 
			
		||||
@ -24,7 +24,7 @@ function bm {
 | 
			
		||||
    [ -L "${ZSH_BOOKMARK_DIR}/${1}" ] || { echo "No such bookmark: '${1}'!"; return 1 }
 | 
			
		||||
    [ -e "${ZSH_BOOKMARK_DIR}/${1}" ] || { echo "The bookmark '${1}' refers to a non-existant file!"; return 1 }
 | 
			
		||||
    cd -P "${ZSH_BOOKMARK_DIR}/${1}"
 | 
			
		||||
    [[ -v ZSH_BOOKMARK_LS ]] && "${ZSH_BOOKMARK_LS}" && ls
 | 
			
		||||
    [[ -v ZSH_BOOKMARK_LS ]] && [[ "${ZSH_BOOKMARK_LS}" = 'true' ]] && ls
 | 
			
		||||
}
 | 
			
		||||
function _bm {
 | 
			
		||||
    _arguments '::bookmark:_bookmarks'
 | 
			
		||||
 | 
			
		||||
@ -10,7 +10,8 @@ add_ssh_keys() {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Because I use zsh to start graphical sessions
 | 
			
		||||
if [[ -o login ]]; then
 | 
			
		||||
[[ -v ZSH_GRAPHICAL_LOGIN ]] || ZSH_GRAPHICAL_LOGIN=true
 | 
			
		||||
if [[ -o login ]] && [[ "${ZSH_GRAPHICAL_LOGIN}" = 'true' ]] ; then
 | 
			
		||||
    export LC_ALL=en_US.UTF-8
 | 
			
		||||
    eval "$(gnome-keyring-daemon --start 2>/dev/null)"
 | 
			
		||||
    export SSH_AUTH_SOCK
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user