sharkdp
37483036e0
Implement --ignore-file
2018-03-26 08:28:22 +02:00
David Peter
8c1b037279
Normalize absolute paths, fixes #268 ( #270 )
...
* Normalize absolute paths, fixes #268
* Split unit tests into several tests
2018-03-25 23:47:58 +02:00
sharkdp
f9a32583a5
Move is_executable to fshelper module
2018-03-25 19:48:09 +02:00
sharkdp
2cf8e7b8a5
Move is_executable to internal module
2018-03-25 18:37:50 +02:00
Pramod Bisht
67f6fdf6a7
Code formating
2018-03-25 16:53:12 +02:00
Pramod Bisht
8ce127e443
changed executable=> executable_only
2018-03-25 16:53:12 +02:00
Pramod Bisht
b1e48efc4a
Addresses #246
...
Some implementation to search by filetype `executables`
2018-03-25 16:53:12 +02:00
sharkdp
5397787824
Skip fifos, sockets, .. when using --type f/d/l
2018-03-15 21:38:52 +01:00
sharkdp
ffd49c60bd
Error if user supplied path instead of pattern
2018-03-15 07:53:00 +01:00
sharkdp
89a8f5573d
Formatting change
2018-03-15 07:53:00 +01:00
sharkdp
c654159bf2
Update to ansi_term 0.11
2018-03-12 23:19:20 +01:00
Josh Stone
588b0dc7c9
Update to regex-syntax 0.5
...
The new regex 0.2.7 has updated to regex-syntax 0.5, so it seems prudent
to update fd's dependency too, if only to avoid duplication.
2018-03-12 22:11:00 +01:00
sharkdp
88fb9d73d1
Run updated version of rustfmt
2018-03-12 17:46:13 +01:00
sharkdp
47d95284aa
Skip invalid utf8 filenames, closes #250
2018-02-26 08:20:31 +01:00
sharkdp
631931b431
Only construct entry_path if needed
2018-02-25 18:17:11 +01:00
sharkdp
40d811c7be
Rewrite of file-type filtering leading to 5% speed-up
2018-02-25 18:17:11 +01:00
sharkdp
e5ee5eb7b3
Minor speedup for strip_prefix
2018-02-25 10:25:59 +01:00
sharkdp
b4be1f161c
Add support for .fdignore files
2018-02-21 22:55:26 +01:00
Pramod Bisht
7a3994decb
Changes as per the instruction of cargo fmt -- --write-mode=diff
2018-02-19 21:17:11 +01:00
Pramod Bisht
7e8c2248d0
Fixes : #234
...
Giving suggestion to use `--fixed-strings` in case user passes invalid metacharacters as a regex.
2018-02-19 21:17:11 +01:00
sharkdp
814d37030e
Implement -F/--fixed-strings/--literal
2018-02-10 15:55:06 +01:00
Martin Larralde
370d9f081f
Use RegexSet instead of hand-written parser
2018-02-10 14:18:37 +01:00
Martin Larralde
86fe9977e8
Implement multiple suffixes extension support with tests ( #214 )
2018-02-10 14:18:37 +01:00
Steve Pentland
b4d39270d6
Allow -exec to work as --exec ( #226 )
...
* Replace usage of `-exec` by `--exec`, except when it is used as a value that is given to `--exec/-exec/-x`.
* Limit usage of --exec option to single instance.
2018-01-29 20:32:46 +01:00
Dock O'Neal
bc2b7a33ae
Fixing exec hang by disabling ctrl-c handling for exec
2018-01-25 07:47:04 +01:00
sharkdp
941caeb053
Update documentation
2018-01-03 10:40:28 +01:00
David Peter
32a34cf8c9
Introduce maximum output buffer size ( #212 )
...
Closes #191
2018-01-03 10:40:08 +01:00
sharkdp
39fb41f05a
Move exit codes to 'internal' module
2018-01-03 10:00:22 +01:00
Dock
26ad7da347
Using wants_to_quit to exit the sender as well as the reciever ( #211 )
...
Closes #210
2018-01-03 09:26:11 +01:00
sharkdp
a5f5ad6254
Re-enable code style check
2018-01-01 16:00:32 +01:00
Thejaswi Kadur
faf934da4b
Added support for filtering by multiple filetypes and extensions ( #205 )
...
Closes #177
Closes #199
2018-01-01 12:09:33 +01:00
Dock
4d66c84109
Correct exit codes ( #202 )
...
* Changed exit code on ctrl-c to 130 to match specification
* Changed exit code when stdout errors. 1 for general error.
2017-12-18 06:53:34 -08:00
sharkdp
aaf9e024d5
Updates for 6.1.0
2017-12-09 21:40:13 -08:00
Matthias Reitinger
5784823aca
Unify execute_command across platforms
2017-12-09 21:10:48 -08:00
Dock
51aea57a6a
Add multiple path support ( #182 )
...
* Adding support for multiple paths. (panic)
- Started adding multiple file support
- fd panics with multiple files right now
* Moved the ctrlc handler to main.
- Moved the ctrlc handler to main so we can search multiple files
* Tests now allow custom directory setup
- TestEnv::new() now takes two arguments, the directories to create and
the files to create inside those directories.
* rust-fmt changes
* rust-fmt changes
* Moving code around, no need to do everything in one big loop
- PathDisplay was never actually used for anything, removed it during refactor of main
- Removed redundant logic for absolute paths
- Moved code placed needlessly inside a loop in the last commit outside of that loop.
* Moving code around, no need to do everything in one big loop
- PathDisplay was never actually used for anything, removed it during refactor of main
- Removed redundant logic for absolute paths
- Moved code placed needlessly inside a loop in the last commit outside of that loop.
* Removed commented code in testenv
* Refactored walk::scan to accept the path buffer vector. Using the ParallelWalker allows for multithreaded searching of multiple directories
* Moved ctrlc handler back into walker, it is only called once from main now.
* Moved the colored output check back to it's original place
* Removing shell-escape, not sure how it got added...
* Added test for `fd 'a.foo' test1` to show that a.foo is only found in the test1 and not the test2 direcotry
* Removing side effect from walk::scan, `dir_vec` is no longer a mutable reference and an iterator is being used instead.
* Running rustfmt to format code correctly
2017-12-06 14:52:23 -08:00
Ubuntu
c165ff0546
Refactorying main.rs : remove unused variable (empty_pattern)
2017-12-03 12:21:09 +01:00
ptzz
9bd1d12c00
Add --no-ignore-vcs option
...
When passed, .gitignore files will not be respected.
2017-11-22 23:18:22 +01:00
Dock
c0bfc65d88
Handle terminal signals ( #128 )
...
fixes #87
2017-11-22 23:05:09 +01:00
sharkdp
5ed7514096
Update error message if command could not be found
2017-11-15 23:24:11 +01:00
Matthias Reitinger
3c5d8a1e86
Fix typos
2017-11-15 23:18:36 +01:00
Matthias Reitinger
ccdbc76f5a
Fix execute_command on Unix
2017-11-15 23:18:36 +01:00
Matthias Reitinger
5f4a1203b4
Update documentation for --exec syntax change
2017-11-15 23:18:36 +01:00
Matthias Reitinger
0f82fe7ec0
Rename TokenizedCommand to CommandTemplate
2017-11-15 23:18:36 +01:00
Matthias Reitinger
c18caaa6f6
Remove CommandTicket to avoid Vec allocation
2017-11-15 23:18:36 +01:00
Matthias Reitinger
18709b1ede
Remove shell with --exec
2017-11-15 23:18:36 +01:00
sharkdp
26f71dd21a
Remove superfluous path.replace
...
See #153
2017-11-11 08:58:55 +01:00
David Peter
46db4a3860
Fix Windows module
2017-10-26 22:20:12 +02:00
sharkdp
b3f1e1844d
Move 'win' crate back into local module
...
This is necessary to publish on crates.io
2017-10-26 21:59:12 +02:00
sharkdp
bba5c4f607
Fix some clippy warnings
2017-10-26 21:13:56 +02:00
J.W
614f576c47
Add TODOs and FIXMEs about Windows
2017-10-26 20:56:32 +02:00
J.W
dc29ef70c4
Fix Input::remove_extension and Input::dirname
2017-10-26 20:56:32 +02:00
J.W
6b232a82ee
Fix --exec
2017-10-26 20:56:32 +02:00
J.W
87ba4e3bb0
Fix root directory for Windows
2017-10-26 20:56:32 +02:00
sharkdp
9d26b74c2a
Workaround for the unsafe
block.
...
See #147
2017-10-25 22:45:00 +02:00
sharkdp
5ad69fb2fb
Add support for exclude-patterns
...
* Add `--exclude`/`-E` option.
* Support for multiple exclude patterns
Example:
``` bash
> fd --exclude 'tests/**/*.rs' mod
src/exec/mod.rs
src/fshelper/mod.rs
src/lscolors/mod.rs
```
Closes #89
2017-10-25 22:22:12 +02:00
J.W
e38b7d7bff
Fix --type: skip if file type is unknown
2017-10-25 18:29:40 +02:00
John L. Villalovos
4bf7ab67d0
Typo fix: Change 'descent' to 'descend'
...
The correct word is 'descend'
Change-Id: I6833bd28e84841799f3f060239a36876949d890e
2017-10-25 18:18:33 +02:00
sharkdp
e9cf8af911
Updates and preparations for v5.0
2017-10-22 12:10:51 +02:00
Antti Keränen
701b8f209b
Relicense under MIT/Apache-2.0
2017-10-22 10:36:42 +02:00
J.W
570ea78d24
jakwings/fd@a44e677 -> subdirectory "win"
2017-10-21 00:33:49 +02:00
J.W
ce73c086b6
Auto disable colored output for unsupported Windows shells
2017-10-21 00:33:49 +02:00
Michael Aaron Murphy
6a01faf6e1
Escape exec Inputs
2017-10-21 00:29:46 +02:00
Jose Narvaez
6dc704a18e
Removed unnecessary exclusion of Redox in cond-compilation and narrowed what we import from .
2017-10-20 12:59:36 +02:00
Jose Narvaez
715b07599b
RedoxOS support.
2017-10-20 12:59:36 +02:00
J.W
8d85debc12
Refactor path handling ( fixes #113 )
...
* Fix path check
* Fix full path matching
* Allow more simple driver names in Windows tests
* Factor out special is_dir() check for "." and ".."
2017-10-18 20:04:34 +02:00
Michael Aaron Murphy
16eed82ca1
Handle OS-specific path separators when manipulating paths
2017-10-15 11:20:55 -04:00
Michael Aaron Murphy
2a23905af5
Fix merge conflicts
2017-10-15 09:37:48 -04:00
J.W
54d9dde0d4
Use .canonicalize() to check paths & Reword comments
2017-10-15 15:01:24 +02:00
J.W
e649c8fa79
Use a uniform output format for searching ../
...
closes #107 , fixes #82 by the way
2017-10-15 15:01:24 +02:00
Michael Aaron Murphy
ad1b4f3b2b
Optimize grouping for *nix archs
2017-10-14 21:45:31 -04:00
Michael Aaron Murphy
1bc58b2fbb
Group outputs from exec
2017-10-14 18:06:49 -04:00
Michael Aaron Murphy
718f723d31
Enable absolute paths w/ exec
2017-10-14 16:42:47 -04:00
Michael Aaron Murphy
884bd41cae
Apply cargo fmt
2017-10-14 14:04:04 -04:00
Michael Aaron Murphy
fb1cd3a322
Fix for older builds
...
Rust 1.19 will be a requirement, however.
2017-10-14 13:38:54 -04:00
Michael Aaron Murphy
137fe2e697
Merge Conflicts
2017-10-14 12:35:16 -04:00
Michael Aaron Murphy
4a5a5faf4d
Implement --exec feature
...
Closes #84
2017-10-14 12:24:17 -04:00
J.W
f2632d5fce
Dot "." also matches newline by default ( closes #111 )
2017-10-14 16:12:11 +02:00
sharkdp
c38ef0e9b2
Fix description of smart-case in help text
2017-10-14 12:09:34 +02:00
Matthias Reitinger
7150c9a3a9
Refactor output.rs
2017-10-14 11:11:06 +02:00
Matthias Reitinger
0b04f39398
Split up print_entry in colorized and uncolorized helper functions.
2017-10-14 11:11:06 +02:00
Matthias Reitinger
0677e6331d
Fix too many path separators on Windows ( #93 ).
2017-10-14 11:11:06 +02:00
Matthias Reitinger
b441528067
Improve smart case to only consider literal uppercase chars ( #103 )
2017-10-14 11:03:21 +02:00
sharkdp
8fc3a83d92
Use absolute path to perform search, fixes #81
...
Previously, we were using the relative path to extract the search
string. For the current directory, the returned relative path was equal
to `""`. This is why the current directory did not show in the search
results (see #81 ).
This commit also changes the way that `--full-path` works, which was
previously working on relative paths. It seems more useful to search the
absolute path, though. Otherwise, search results could change just by
calling fd (with a given search path) from a different directory.
2017-10-13 18:16:26 +02:00
Antti Keränen
049b9ec06b
Format the source code using rustfmt
2017-10-12 19:33:14 +02:00
J.W
e075e1cf7c
Add -i, --ignore-case
2017-10-12 07:28:05 +02:00
Rav Chandra
35e5ecd492
liberally accept >2 -u options as per ripgrep
2017-10-11 23:15:21 +02:00
Rav Chandra
4f2d9e77b3
Add ripgrep aliases for no-ignore and hidden
2017-10-11 23:15:21 +02:00
Garrett Squire
ccb899a511
break main into separate modules
2017-10-11 08:21:09 +02:00
Jean-Christophe Petkovich
affe41949d
Switch symlink arg from 's' to 'l' ( #83 )
...
closes #80
2017-10-09 21:25:30 +02:00
sharkdp
d8da6ec83c
Update long help text
2017-10-07 15:15:30 +02:00
David Peter
4731dc670c
Enhanced Windows support, see #70
...
* Use easier way to convert path components
* Fix failing tests on Windows
2017-10-07 09:40:44 +02:00
Alejandro Baez
a84536a173
app: refactor to ripgrep style for long_help
2017-10-07 09:13:39 +02:00
sharkdp
0aae4a3d46
Update help text
2017-10-05 21:35:22 +02:00
sharkdp
34e4620e26
Code style udpates
2017-10-05 21:31:44 +02:00
Florian Hofmair
396b9baaa5
Use clap to generate shell completions
2017-10-04 18:00:25 +02:00
Antti Keränen
4ec33d064c
Add a comment about the default value of --threads
2017-10-03 20:21:49 +02:00
sharkdp
7399558a06
Re-structure '--help' text
2017-10-03 19:30:39 +02:00
Antti Keränen
4b61beaa75
Add flag to force color
...
Color can now be forced on even when piping the output. Changed the
--no-color flag to --color which uses the same options that ripgrep
uses for --color (excluding ansi).
Closes #49 .
2017-10-03 18:32:24 +02:00
Matthias Reitinger
2256affd8f
Fix extension comparison logic
2017-10-03 18:28:54 +02:00
Matthias Reitinger
32a321aafd
Extract entry extension only when there is an extension filter
2017-10-03 18:28:54 +02:00