diff --git a/README.md b/README.md
index ce7e3a7..5c0eb5d 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,7 @@ Available as a command-line utility, a library and a [GitHub Action](https://git
+
## Table of Contents
- [Installation](#installation)
@@ -120,7 +121,7 @@ This comparison is made on a best-effort basis. Please create a PR to fix
outdated information.
| | lychee | [awesome_bot] | [muffet] | [broken-link-checker] | [linkinator] | [linkchecker] | [markdown-link-check] | [fink] |
-|----------------------|---------|---------------|----------|-----------------------|--------------|----------------------|-----------------------|--------|
+| -------------------- | ------- | ------------- | -------- | --------------------- | ------------ | -------------------- | --------------------- | ------ |
| Language | Rust | Ruby | Go | JS | TypeScript | Python | JS | PHP |
| Async/Parallel | ![yes] | ![yes] | ![yes] | ![yes] | ![yes] | ![yes] | ![yes] | ![yes] |
| JSON output | ![yes] | ![no] | ![yes] | ![yes] | ![yes] | ![maybe]1 | ![yes] | ![yes] |
@@ -341,7 +342,7 @@ Options:
Proceed for server connections considered insecure (invalid TLS)
-s, --scheme
- Only test links with the given schemes (e.g. http and https)
+ Only test links with the given schemes (e.g. https). Omit to check links with any other scheme. At the moment, we support http, https, file, and mailto
--offline
Only check local files and block network requests
@@ -575,6 +576,7 @@ If you find a way to make lychee faster, please do reach out.
We collect a list of common workarounds for various websites in our [troubleshooting guide](./docs/TROUBLESHOOTING.md).
## Users
+
- https://github.com/InnerSourceCommons/InnerSourcePatterns
- https://github.com/opensearch-project/OpenSearch
- https://github.com/ramitsurana/awesome-kubernetes
@@ -610,6 +612,5 @@ lychee is licensed under either of
at your option.
-
[🔼 Back to top](#back-to-top)
diff --git a/fixtures/configs/smoketest.toml b/fixtures/configs/smoketest.toml
index fa91e9a..afa526b 100644
--- a/fixtures/configs/smoketest.toml
+++ b/fixtures/configs/smoketest.toml
@@ -52,8 +52,9 @@ accept = [200, 429]
insecure = false
# Only test links with the given schemes (e.g. https).
-# Omit to check links with any scheme.
-scheme = [ "https" ]
+# Omit to check links with any other scheme.
+# At the moment, we support http, https, file, and mailto.
+scheme = ["https"]
# When links are available using HTTPS, treat HTTP links as errors.
require_https = false
@@ -66,7 +67,7 @@ headers = []
# Remap URI matching pattern to different URI.
# This also supports (named) capturing groups.
-remap = [
+remap = [
"https://example.com http://example.invalid",
"https://example.com/(.*) http://example.org/$1",
"https://github.com/(?P.*)/(?P.*) https://gitlab.com/$org/$repo",
@@ -93,13 +94,13 @@ include_verbatim = false
glob_ignore_case = false
# Exclude URLs and mail addresses from checking (supports regex).
-exclude = [ '.*\.github.com\.*' ]
+exclude = ['.*\.github.com\.*']
# Exclude these filesystem paths from getting checked.
exclude_path = ["file/path/to/Ignore", "./other/file/path/to/Ignore"]
# URLs to check (supports regex). Has preference over all excludes.
-include = [ 'gist\.github\.com.*' ]
+include = ['gist\.github\.com.*']
# Exclude all private IPs from checking.
# Equivalent to setting `exclude_private`, `exclude_link_local`, and
diff --git a/lychee-bin/src/options.rs b/lychee-bin/src/options.rs
index 52c2b2e..2e40f37 100644
--- a/lychee-bin/src/options.rs
+++ b/lychee-bin/src/options.rs
@@ -230,7 +230,9 @@ pub(crate) struct Config {
#[serde(default)]
pub(crate) insecure: bool,
- /// Only test links with the given schemes (e.g. http and https)
+ /// Only test links with the given schemes (e.g. https).
+ /// Omit to check links with any other scheme.
+ /// At the moment, we support http, https, file, and mailto.
#[arg(short, long)]
#[serde(default)]
pub(crate) scheme: Vec,
diff --git a/lychee.example.toml b/lychee.example.toml
index 9c23c8a..fab29ac 100644
--- a/lychee.example.toml
+++ b/lychee.example.toml
@@ -52,8 +52,9 @@ accept = [200, 429]
insecure = false
# Only test links with the given schemes (e.g. https).
-# Omit to check links with any scheme.
-scheme = [ "https" ]
+# Omit to check links with any other scheme.
+# At the moment, we support http, https, file, and mailto.
+scheme = ["https"]
# When links are available using HTTPS, treat HTTP links as errors.
require_https = false
@@ -65,7 +66,7 @@ method = "get"
headers = []
# Remap URI matching pattern to different URI.
-remap = [ "https://example.com http://example.invalid" ]
+remap = ["https://example.com http://example.invalid"]
# Base URL or website root directory to check relative URLs.
base = "https://example.com"
@@ -88,16 +89,13 @@ include_verbatim = false
glob_ignore_case = false
# Exclude URLs and mail addresses from checking (supports regex).
-exclude = [
- '^https://www\.linkedin\.com',
- '^https://web\.archive\.org/web/',
-]
+exclude = ['^https://www\.linkedin\.com', '^https://web\.archive\.org/web/']
# Exclude these filesystem paths from getting checked.
exclude_path = ["file/path/to/Ignore", "./other/file/path/to/Ignore"]
# URLs to check (supports regex). Has preference over all excludes.
-include = [ 'gist\.github\.com.*' ]
+include = ['gist\.github\.com.*']
# Exclude all private IPs from checking.
# Equivalent to setting `exclude_private`, `exclude_link_local`, and