39 lines
		
	
	
		
			1009 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1009 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| # -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
 | |
| source "$(dirname -- "$0")/../load.sh" || exit 1
 | |
| require: fndate
 | |
| 
 | |
| : ${EDITOR:=vim}
 | |
| 
 | |
| autoext=1
 | |
| args=(
 | |
|     "créer un nouveau fichier .yaml"
 | |
|     "<files...>"
 | |
|     -j,--no-autoext autoext= "ne pas rajouter l'extension .yaml ni .yml"
 | |
| )
 | |
| parse_args "$@"; set -- "${args[@]}"
 | |
| 
 | |
| [ $# -gt 0 ] || die "vous devez spécifier les noms des fichiers à créer"
 | |
| 
 | |
| for file in "$@"; do
 | |
|     setx file=fndate_verifix "$file" .yml
 | |
|     setx filename=basename -- "$file"
 | |
|     if [[ "$filename" == *.* ]]; then
 | |
|         : # y'a déjà une extension, ne rien faire
 | |
|     elif [ -z "$autoext" ]; then
 | |
|         : # ne pas rajouter d'extension
 | |
|     elif [ -f "$file.yaml" ]; then
 | |
|         file="$file.yaml"
 | |
|     else
 | |
|         file="$file.yml"
 | |
|     fi
 | |
|     [ -e "$file" ] && die "$file: fichier existant"
 | |
|     estep "Création de $file"
 | |
| 
 | |
|     echo  >"$file" "\
 | |
| # -*- coding: utf-8 mode: yaml -*- vim:sw=2:sts=2:et:ai:si:sta:fenc=utf-8
 | |
| 
 | |
| "
 | |
|     "$EDITOR" +3 "$file"
 | |
| done
 |