You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							42 lines
						
					
					
						
							1.2 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							42 lines
						
					
					
						
							1.2 KiB
						
					
					
				
								#!/bin/bash
							 | 
						|
								
							 | 
						|
								# Delete TeX build files when exiting from Vim or call on directory/directly to
							 | 
						|
								# remove from there.
							 | 
						|
								
							 | 
						|
								ext_list="/home/kevin/linux-config/txt/tex-build-files.txt"
							 | 
						|
								raw_build_exts="$(tr '\n' '|' < $ext_list)"
							 | 
						|
								build_exts="(${raw_build_exts::-1})"
							 | 
						|
								# echo "$build_exts"
							 | 
						|
								find_flags=(-maxdepth 1 -type f -regextype gnu-awk -regex)
							 | 
						|
								# match all files with build extensions
							 | 
						|
								regex=(\"^.*\\."$build_exts"$\")
							 | 
						|
								
							 | 
						|
								remove_build_files () {
							 | 
						|
									regex=("$2")
							 | 
						|
									# eval find "$1" "${find_flags[@]}" "${regex[0]}" -delete -print
							 | 
						|
									eval find "$1" "${find_flags[@]}" "${regex[0]}" -delete
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								# when less than one argument, remove build files in current dir
							 | 
						|
								if [[ "$#" -lt 1 ]]; then
							 | 
						|
									regex=(\"^.*\\."$build_exts"$\")
							 | 
						|
									remove_build_files . "${regex[0]}"
							 | 
						|
								else
							 | 
						|
									case "$1" in
							 | 
						|
										# if tex file, remove only build files for that file
							 | 
						|
										*.tex)
							 | 
						|
											file=$(readlink -f "$1")
							 | 
						|
											dir=$(dirname "$file")
							 | 
						|
											base="${file%.*}"
							 | 
						|
											# remove build files matching file name
							 | 
						|
											regex=(\"^"$base"\\."$build_exts"$\")
							 | 
						|
											remove_build_files "$dir" "${regex[0]}" ;;
							 | 
						|
										# remove all build files in directory if given valid one
							 | 
						|
										*)
							 | 
						|
											if [[ -d "$1" ]]; then
							 | 
						|
												remove_build_files "$1" "${regex[0]}"
							 | 
						|
											else
							 | 
						|
												printf "Give .tex file or directory as argument.\\n"
							 | 
						|
											fi ;;
							 | 
						|
									esac
							 | 
						|
								fi
							 |