Commit Graph

36 Commits

Author SHA1 Message Date
Max 👨🏽‍💻 Coplan 08c0d427bf Add flag --no-require-git to always respect gitignore files
Summary: Currently, `--ignore-vcs` only serves to unset `--no-ignore-vcs`.
There is currently no way to tell fd to respect gitignore files when not in a
git repository.  This commit adds the flag `--no-require-git` to make fd always
respect all gitignore files.

This behaves the same as the `--no-require-git` option in [ripgrep](3bb71b0cb8/crates/core/app.rs (L2214-L2226))

This commit also contains an unrelated wording fix to CONTRIBUTING.md

Test Plan: `tests/tests.rs`

Background: I am using [Sapling](https://sapling-scm.com/docs/introduction/)
for working with git repositories (including this commit ☺️).  Since Sapling
uses `.sl` instead of `.git`, tools using the `ignore` crate (rg and fd) would show gitignored files.
I made a patch (ebf17eef22)
to `ignore` to respect gitignores with _either_ `.git` or `.sl`.  However,
@BurntSushi said he did not want to merge that patch and instead suggested I
use `--no-require-git` (https://github.com/BurntSushi/ripgrep/issues/2374).
This works fine, but I couldn't use this workaround for my other favorite tool!
That's what this patch is for 😁

(a follow-up patch will add a similar `FD_CONFIG_PATH` environment variable
like `RG_CONFIG_PATH`)
2023-01-13 13:52:34 -08:00
Thayne McCombs b7a2f68d59 Mention --changed-after alias in long help 2022-12-06 01:28:15 -07:00
Thayne McCombs e98a6c6755 Use docstrings for long help in clap derive 2022-12-06 01:28:15 -07:00
David Peter 36e60223eb Use allow_hyphen_values = true for --and <pattern> 2022-11-21 21:08:41 +01:00
David Peter 0d9926de40 Move --and option up to other patter-related options 2022-11-21 21:06:48 +01:00
David Peter e147ba901b Minor fixes in help text 2022-11-21 21:06:48 +01:00
Kasper Gałkowski 7e26925933 Added the --and flag for matching multiple patterns 2022-11-21 21:06:48 +01:00
Thayne McCombs 67cf524287 Add --changed-after alias.
And make some small tweaks to the help text and man page.

Closes: #982
2022-11-20 23:21:53 -07:00
Ptipiak 88bebb8aac Using faccess lib to detect executable files
* The detection of executable files was not exactly the same as
the original find
2022-11-15 10:31:44 +01:00
Thayne McCombs 84bf65e023 Use unit type for negating optins with clap_derive
As now supported by https://github.com/clap-rs/clap/pull/4371  and https://github.com/clap-rs/clap/pull/4459
2022-11-11 02:09:41 -07:00
Thayne McCombs 2c3e40c9d9 Use new Shell::from_env method in clap_complete
Instead of having an fd specific implementation.
2022-11-11 02:09:41 -07:00
Thayne McCombs 0773b3067e Fix some warnings from clippy
I'm guessing these are new warnings from the Rust 1.65 release
2022-11-08 01:09:06 -07:00
Dominik Hassler 6ebc366146 anyhow is not only used for the completions feature 2022-11-07 17:11:00 +00:00
David Peter f15be89bff Fix --threads/-j option value parsing 2022-11-02 13:32:22 +01:00
David Peter 12165c73f8 Reorder command line options 2022-11-01 21:17:48 +01:00
David Peter 70c4865191 Set max. term width to make help texts easier to read 2022-11-01 21:14:16 +01:00
David Peter 7f5bc9884f Add simple 'about' text 2022-11-01 21:02:37 +01:00
David Peter ac35b11dc8 Change clap CLI binary name to 'fd' 2022-11-01 21:00:32 +01:00
David Peter 5771e74b95 Add newlines between options 2022-11-01 20:18:17 +01:00
David Peter 55029e889e Minor: add missing full stop 2022-11-01 20:13:32 +01:00
David Peter 3f72ef4cdd Remove outdated TODO comment 2022-11-01 20:07:09 +01:00
Thayne McCombs 36ee44a3f6 Make help output more like what it was before use clap_derive
In particular, we specifically use `long_help` instead of doc comments
because using  doc comments will always trim the "." off the end of the
first paragraph, and will include the short help as the first paragraph
of the full help.
2022-11-01 02:30:22 -06:00
Thayne McCombs 3782278f02 Improve help output 2022-10-20 00:34:52 -06:00
Thayne McCombs aec125637b Fix format 2022-10-14 23:14:03 -06:00
Thayne McCombs b6f0088b68 Change thread option to take u32 instead of usize
To simplify the option parsing.
2022-10-12 00:33:49 -06:00
Thayne McCombs c2115884de Fix deprecations from clap 4.0 2022-10-11 22:27:57 -06:00
Thayne McCombs 86c33492a7 Fix name of powershell in guess_shell 2022-10-09 01:05:27 -06:00
Thayne McCombs c41d61eeda Merge remote-tracking branch 'upstream/master' into clap-derive 2022-10-09 01:00:48 -06:00
Thayne McCombs 5b9e302e9b Support powershell when guessing shell for completions 2022-10-09 00:02:28 -06:00
Thayne McCombs f4c34b81c7 Upgrade to clap 4.0 2022-10-08 23:51:45 -06:00
Thayne McCombs a50e417c67 Add action clap attribute to fixed_strings 2022-10-08 00:42:11 -06:00
Thayne McCombs ff7336b202 clap derive suggestions from epage 2022-10-08 00:42:11 -06:00
Thayne McCombs e6f4805bae Fix clippy warnings 2022-10-08 00:42:11 -06:00
Thayne McCombs 066ce41299 Fix case of color options to ls 2022-10-08 00:42:11 -06:00
Thayne McCombs b7f5f4ac7d Improve help output after switch to clap-derive
Make it more like it used to be.
2022-10-08 00:42:11 -06:00
Thayne McCombs 4e7b403c1f Use clap-derive for option parsing
This makes the definition of arguments to fd a little more ergonomic,
and makes it easier to insure the types for the arguments are consitent.
2022-10-08 00:41:33 -06:00