le fichier est spécifié avec une option
This commit is contained in:
parent
17c0490ddd
commit
62aed20aee
32
fconv
32
fconv
|
@ -7,7 +7,7 @@ function display_help() {
|
|||
uecho "$scriptname: convertir un fichier ou les fichiers d'un répertoire
|
||||
|
||||
USAGE
|
||||
$scriptname [options] <file|dir> [cmds...]
|
||||
$scriptname [options] [cmds...]
|
||||
|
||||
Une ou plusieurs commandes peuvent être spécifiées, séparées //
|
||||
La commande par défaut est 'lf'
|
||||
|
@ -21,6 +21,10 @@ OPTIONS
|
|||
-r, --reverse
|
||||
Pour la commande conv, inverser src_enc et dest_enc, qui doivent être
|
||||
tous les deux spécifiés.
|
||||
-f, --file FILE
|
||||
Spécifier le fichier ou le répertoire concerné par la conversion. Par
|
||||
défaut, convertir l'entrée standard. Les options -d et --dir sont aussi
|
||||
reconnus et sont des aliases de convenance
|
||||
|
||||
COMMANDES
|
||||
c, conv dest_enc [src_enc]
|
||||
|
@ -28,9 +32,9 @@ COMMANDES
|
|||
dest_enc est l'encoding destination. Il doit être spécifié.
|
||||
src_enc est l'encoding source. S'il n'est pas spécifié ou vaut 'detect',
|
||||
il est autodétecté.
|
||||
utf8 [src_enc]
|
||||
u, utf8 [src_enc]
|
||||
Equivalent à conv utf8 src_enc
|
||||
latin1 [src_enc]
|
||||
l, latin1 [src_enc]
|
||||
Equivalent à conv latin1 src_enc
|
||||
lf
|
||||
crlf
|
||||
|
@ -38,7 +42,7 @@ COMMANDES
|
|||
Convertir respectivement les caractères de fin de ligne en LF, CR/LF ou CR
|
||||
lc, latin1compat
|
||||
Transformer certains caratères UTF-8 en équivalents qui existent en Latin1
|
||||
n, noaccents
|
||||
na, noaccents
|
||||
Transformer les caractères accentués en caractères non accentués"
|
||||
}
|
||||
|
||||
|
@ -100,8 +104,8 @@ function parse_cmd() {
|
|||
local cmd="$1"; shift
|
||||
local -a args
|
||||
case "$cmd" in
|
||||
utf8) parse_cmd conv utf8 "$@";;
|
||||
latin1) parse_cmd conv latin1 "$@";;
|
||||
utf8|u) parse_cmd conv utf8 "$@";;
|
||||
latin1|l) parse_cmd conv latin1 "$@";;
|
||||
conv|c)
|
||||
local to="$CONV_TO" from="$CONV_FROM"
|
||||
[ -n "$to" ] || to="$1"; shift
|
||||
|
@ -132,7 +136,7 @@ function parse_cmd() {
|
|||
crlf) echo _nl2crlf;;
|
||||
cr) echo _nl2cr;;
|
||||
latin1compat|lc) echo _latin1compat;;
|
||||
noaccents|noa|n|fixchars) echo _noaccents;;
|
||||
noaccents|na|fixchars|fc) echo _noaccents;;
|
||||
*)
|
||||
echo "$cmd: commande invalide"
|
||||
return 1
|
||||
|
@ -153,17 +157,21 @@ function ffconv() {
|
|||
eend
|
||||
}
|
||||
|
||||
OPTIMIZE_CONV=1
|
||||
REVERSE_CONV=
|
||||
CONV_FROM=
|
||||
CONV_TO=
|
||||
OPTIMIZE_CONV=1
|
||||
REVERSE_CONV=
|
||||
FILE=
|
||||
show_cmd=
|
||||
parse_opts + "${PRETTYOPTS[@]}" \
|
||||
--help '$exit_with display_help' \
|
||||
-N,--detect-always OPTIMIZE_CONV= \
|
||||
-r,--reverse REVERSE_CONV=1 \
|
||||
-f:,--file:,-d:,--dir: FILE= \
|
||||
--show-cmd show_cmd=1 \
|
||||
@ args -- "$@" && set -- "${args[@]}" || die "$args"
|
||||
|
||||
FILE="${1:--}"; shift
|
||||
[ -n "$FILE" ] || FILE=-
|
||||
[ "$FILE" == - ] && FILE=/dev/stdin
|
||||
if [ "$FILE" != /dev/stdin ]; then
|
||||
[ -e "$FILE" ] || die "$FILE: fichier introuvable"
|
||||
|
@ -199,7 +207,9 @@ while [ $# -gt 0 ]; do
|
|||
fi
|
||||
done
|
||||
|
||||
if [ "$FILE" == /dev/stdin ]; then
|
||||
if [ -n "$show_cmd" ]; then
|
||||
echo "$CMD"
|
||||
elif [ "$FILE" == /dev/stdin ]; then
|
||||
eval "$CMD"
|
||||
elif [ -f "$FILE" ]; then
|
||||
ffconv
|
||||
|
|
Loading…
Reference in New Issue