All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add option
--function
which replaces--modify
(#87).
- Make option
--modify
obsolete (#87).
- [CLI] Fix reading of redirected input (PR)
- Add globbing functionality (#74).
- Add options
--include
,--exclude
. - Make option
--include-directory
obsolete.
- Add options
- Update logo (#72).
- Open help in browser on
orang help <COMMAND>
(#76).- Deprecate options
--online
and--filter
.
- Deprecate options
- Change traversal to depth-first (#77).
- Remove deprecated options (#83).
- Remove option
--display
- Remove option
--evaluator
- Remove option
- Add command
regex create
(#45). - Add parameter
--max-depth
for maximum directory depth (#44).- Add property
Orang.FileSystem.DirectoryMatcher.MaxDepth
- Add property
- Fix exit code of command
spellcheck
(#63).
- Fix validation of group name (#58).
- Migrate documentation to Docusaurus (#48).
- Check correctly if name changed during renaming (#54).
- Migrate script to PowerShell (#40).
- Replace ruleset with editorconfig (#39).
- Format changelog according to 'Keep a Changelog' (#37).
- Rename
master
tomain
.
- Specify max matching files with
--max-count
correctly (commit).
- Change shortcut for
--attributes-to-skip
from-b
to-A
- Empty name pattern matches entire name (or its part):
--name ""
- Empty content pattern matches entire file's content:
--content ""
- Matching lines/values are not indented by default
- Add allowed values for option
--modify
count
sort-by=count
- Add option
--max-matches-in-file
- Add option
--max-matching-files
- Add option
--max-word-length
(commandspellcheck
) - Add option
-P,--no-path
(a shortcut for--path-mode omit
) - Add option
-C,--no-content
(a shortcut for--content-mode omit
) - Deprecate option
--display
and replace it with:--after-context
--before-context
--content-mode
--context
--count
--line-number
--path-mode
-u,--summary
--align-columns
- Deprecate command
escape
and replace it withregex escape
- Deprecate command
list-patterns
and replace it withregex list
- Deprecate command
match
and replace it withregex match
- Deprecate command
split
and replace it withregex split
- Add command
sync
(commit) - Target directory can be also specified as a last unnamed parameter (applies to
copy
andmove
commands) (commit)
- Add command
spellcheck
(commit) - Add option
--interactive
(applies torename
andreplace
commands) (commit) - Add value
culture-invariant
to option--sort
(commit)
- Update target framework to .netcoreapp3.1 (LTS)
- Update Roslyn reference to 3.8.0
- Disallow empty regex pattern
- Copy/move directory including its content
- Add option
--split
(applies tofind
command) - Add option
--pipe p[aths]
to use piped input as a list of paths (applies tofind
andreplace
commands) - Add option value
--modify group
to group paths by matched value (applies tofind
command) - Add option value
--display c[ontent]=o[mit]
to not display content of a file (applies tofind
andreplace
commands) - Add option
-o|--online
to open help in a default browser
- Redirected/piped input is used by default as a text not as a list of paths (applies to
find
andreplace
commands) - Filter for
list-patterns
command uses regex search instead of simple text search and search is case-insensitive by default - Filter for
help
command is case-insensitive by default - Option
--ask
has no value (applies tocopy
andmove
) - Change option value
new-line
tonewline
and remove shortcutnl
- Change shortcut
ao
too
(aggregate-only
) - Change shortcut
t
toco
(context
) - Change shortcut
ta
toa
(context-after
) - Change shortcut
tb
tob
(context-before
)
- Enable 'except' for more than two files
- Use C# code to compute replacements (issue)
--replace <CSHARP_EXPRESSION> cs[harp]
--replace <CSHARP_CODE_FILE_PATH> cs[harp] f[rom-file]
- Deprecate option
--evaluator
and replace it with--replace "DllPath,FullTypeName.MethodName" from-dll
- Add option
--display no-align
to disable alignment of columns - Add option
--paths
- Use this option when you need to specify path(s) at a different than first position
- Add shortcut 'b' for option '--attributes-to-skip'
- Add shortcut 'tb' for option 'context-before'
- Add shortcut 'ta' for option 'context-after'
- Change target framework to 'netcoreapp3.0'
- Enable escape sequences in the input (applies to 'replace' command)
- Rename option
--conflict-resolution rename
to--conflict-resolution suffix
(applies to 'copy', 'move' and 'rename' commands) - Add option
--conflict-resolution
to 'rename' command - Verify if new file name contains invalid characters (applies to 'rename' command)
- Add option
-f|--filter
(applies to 'help' command) - Change option
-m|--max-count
--max-count <NUM>
: Stop searching after<NUM>
matching files and/or directories.--max-count m[atches]=<NUM>
: Stop searching in each file after<NUM>
matches.
- Add option to recognize escape sequences in the input string (applies to 'match' and 'split' commands)
- Add option to display lines before and after matching line.
- Add option
--display context=<NUM>
or-y t=<NUM>
- Add option
--display context-before=<NUM>
- Add option
--display context-after=<NUM>
- Add option
- Rename command 'list-syntax' to 'list-patterns'
- Replace option
-v|--values
with-v|--verbosity d[etailed]
(applies to 'help' command) - Add ability to separate matching lines with newline:
--display separator=\n
- Remove shortcut 't' from option 'trim-line'
- Add shortcut '-i' for option '--input' (applies to 'match' and 'split' command)
- Add ability to list syntax that matches specified character (applies to 'list-syntax' command)
- Add ability to list syntax that matches specified character (applies to 'list-syntax' command)
- Add 'copy' and 'move' commands
- Add option '--modify' (applies to 'find', 'rename' and 'replace' commands)
- Add pattern options 'starts-with' and 'ends-with'
- Rename pattern option 'whole-input' to 'equals'
- Make extension filter case-insensitive by default
- Display summary when explicitly required even if verbosity is set to 'quiet'
- Count processed files/directories in dry run but display it in gray colors
- Change display of renamed paths
- Require '--name' option only when no path is specified (i.e. current directory is used) (applies to 'delete' command)
- Compare paths based on current OS
- Calculate directory size
- Add option to display only match:
--display path=match
- Initial release