62 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| # This file is sourced by all *interactive* bash shells on startup,
 | |
| # including some apparently interactive shells such as scp and rcp
 | |
| # that can't tolerate any output.  So make sure this doesn't display
 | |
| # anything or bad things will happen !
 | |
| 
 | |
| # Test for an interactive shell.  There is no need to set anything
 | |
| # past this point for scp and rcp, and it's important to refrain from
 | |
| # outputting anything in those cases.
 | |
| if [[ $- != *i* ]]; then
 | |
| 	# Shell is non-interactive.  Be done now!
 | |
| 	return
 | |
| fi
 | |
| 
 | |
| # DEBUG_BASHRC=true
 | |
| 
 | |
| # Determine path to directory of this file (FIX: remove dependency to readlink for posix compliance)
 | |
| BASEDIR=$(
 | |
| 	source_file=$(readlink -f "${BASH_SOURCE[0]}")
 | |
| 	source_dir=$(dirname "${source_file}")
 | |
| 	cd "${source_dir}" && pwd
 | |
| )
 | |
| 
 | |
| # Source some helpers functions
 | |
| source "${BASEDIR}/_helpers.bash"
 | |
| 
 | |
| # Source custom libs
 | |
| _source_dir_files "${BASEDIR}"/libs
 | |
| 
 | |
| # Source 3rd party libs if they exists
 | |
| _source_file_if_exists "${BASEDIR}/3rd-party/complete-alias/complete_alias"
 | |
| # _source_file_if_exists "${BASEDIR}/3rd-party/z/z.sh" # FIX: Problème de gestion de la variable PROMPT_COMMAND
 | |
| 
 | |
| # Early customization
 | |
| _source_dir_files "${BASEDIR}"/rc.before.d
 | |
| 
 | |
| # Source rc.d/*
 | |
| _source_dir_files "${BASEDIR}"/rc
 | |
| _source_dir_files "${BASEDIR}"/rc.d
 | |
| 
 | |
| # Source alias definitions
 | |
| _source_file_if_exists ~/.bash_aliases
 | |
| _source_file_if_exists "${BASEDIR}"/aliases
 | |
| _source_dir_files "${BASEDIR}"/aliases
 | |
| _source_dir_files "${BASEDIR}"/aliases.d
 | |
| 
 | |
| # Source bash completion definitions
 | |
| # TODO: Améliorer cette partie pour éviter les erreurs quand aucun fichier n'existe
 | |
| for file in /etc/bash*completion /etc/profile.d/bash*completion*; do source "$file"; done
 | |
| 
 | |
| _source_file_if_exists ~/.bash_completion
 | |
| _source_file_if_exists "${BASEDIR}"/completion
 | |
| _source_dir_files "${BASEDIR}"/completion
 | |
| _source_dir_files "${BASEDIR}"/completion.d
 | |
| _source_dir_files ~/.nix-profile/share/bash-completion/completions
 | |
| 
 | |
| if (command -v _complete_alias &>/dev/null); then
 | |
| 	for alias in $(alias -p | awk '{print $2}' | awk -F= '{print $1}'); do complete -o default -F _complete_alias "$alias"; done
 | |
| fi
 | |
| 
 | |
| # Late customization
 | |
| _source_dir_files "${BASEDIR}"/rc.after.d
 |