Implement sequences feature v1.1.0
- Add -s/--sequence option to select transformation sequences - Add -L flag to list all available sequences - Implement 5 hardcoded sequences: default, lower, upper, minimal, utf-8 - Refactor clean_filename() to support sequence-based transformations - Update all tests to pass sequence parameter (25 tests passing) - Add 8 new integration tests for sequence functionality - Update documentation (README, CHANGELOG, manpage) - Update shell completions (bash, zsh, fish) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
d78e318d8a
commit
2ec4d12d6c
12 changed files with 501 additions and 52 deletions
|
|
@ -8,6 +8,8 @@ _ntu() {
|
|||
|
||||
_arguments -C \
|
||||
'(-r --recursive)'{-r,--recursive}'[Process directories recursively]' \
|
||||
'(-s --sequence)'{-s,--sequence}'[Use transformation sequence]:sequence:(default lower upper minimal utf-8)' \
|
||||
'-L[List available sequences]' \
|
||||
'--conf[Use specific configuration file]:config file:_files' \
|
||||
'(-n --dry-run --no-changes)'{-n,--dry-run,--no-changes}'[Only preview changes without renaming]' \
|
||||
'(-q --quiet)'{-q,--quiet}'[Suppress output]' \
|
||||
|
|
|
|||
|
|
@ -7,10 +7,15 @@ _ntu_completion() {
|
|||
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
||||
|
||||
# All available options
|
||||
opts="--recursive --conf --dry-run --no-changes --quiet --force --exclude --verbose --modify-root --special --no-color --help --version -r -n -q -f -e -v -h -V"
|
||||
opts="--recursive --sequence --conf --dry-run --no-changes --quiet --force --exclude --verbose --modify-root --special --no-color --help --version -r -s -L -n -q -f -e -v -h -V"
|
||||
|
||||
# Handle options that require arguments
|
||||
case "${prev}" in
|
||||
-s|--sequence)
|
||||
# Suggest available sequences
|
||||
COMPREPLY=( $(compgen -W "default lower upper minimal utf-8" -- ${cur}) )
|
||||
return 0
|
||||
;;
|
||||
-e|--exclude)
|
||||
# Suggest glob patterns
|
||||
COMPREPLY=( $(compgen -W '"*.tmp" "*.log" "*.bak" "*.swp" "*~"' -- ${cur}) )
|
||||
|
|
|
|||
|
|
@ -5,6 +5,8 @@ complete -c ntu -f -d 'Sanitize file and directory names to Unix conventions'
|
|||
|
||||
# Options
|
||||
complete -c ntu -s r -l recursive -d 'Process directories recursively'
|
||||
complete -c ntu -s s -l sequence -d 'Use transformation sequence' -xa 'default lower upper minimal utf-8'
|
||||
complete -c ntu -s L -d 'List available sequences'
|
||||
complete -c ntu -l conf -d 'Use specific configuration file' -r -F
|
||||
complete -c ntu -s q -l quiet -d 'Suppress output (no rename information)'
|
||||
complete -c ntu -s n -l dry-run -d 'Show what would be renamed without making changes'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue