🚨 Maintenance notice (November 2023)
This action is now in maintenance only mode.
I am working on a new tool similar to this action but one that reduces false positives and includes the most requested features.
I am currently working on developing and testing Linkspector, and I hope to release it soon. In the meantime, I'll support this utility in maintenance-only mode as I want to focus more on Linkspector. I appreciate your understanding and patience.
If you're interested in Linkspector, follow its progress on its GitHub repository. Thank you for using this action, and I hope you will enjoy Linkspector when it is ready.
|
asciidoc-link-check
(Based on markdown-link-check module)

Local Installation
Install with npm
run:
npm install -g asciidoc-link-check
Usage
(Optional) Use the -p
or --progress
switch to view progress.
Check links for a local file
asciidoc-link-check README.adoc --progress
Check links for an online file
asciidoc-link-check https://github.com/gaurav-nelson/asciidoc-link-check/blob/master/README.adoc
Check links from standard input
cat <filename>.adoc | asciidoc-link-check -p
Check links in all asciidoc files in a directory
Check recursively in the current directory:
find . -name \*.adoc -exec asciidoc-link-check -p {} \;
Check recursively in the other directories:
find <directory> -name \*.adoc -exec asciidoc-link-check -p {} \;
Ignore specific links
- Create a JSON config file containing ignore patterns:
{
"ignorePatterns": [
{ "pattern": "^https://192.17" },
{ "pattern": "^https://www.google" }
]
}
- Use the config file option:
asciidoc-link-check README.adoc -c <configfile.json>
NOTE
To see other options that asciidoc-link-check
supports, see
markdown-link-check
config file format at https://github.com/tcort/markdown-link-check#config-file-format
Using in your node project
To add the module to your project, run:
npm install --save asciidoc-link-check
Docker Run
-
Clone the repository:
git clone https://github.com/gaurav-nelson/asciidoc-link-check.git
-
Open the repository directory:
cd asciidoc-link-check
-
Build a Docker image:
docker build --tag asciidoc-link-check .
-
Add current directory with your test.adoc
file as read only volume to the
docker run
command:
docker run -v ${PWD}:/tmp:ro --rm -i asciidoc-link-check /tmp/test.adoc
API
Use the following function:
asciidocLinkCheck(asciidoc, [opts], callback)
Accepts a string containing asciidoc
formatted text and a callback
function,
extracts all links and checks if they are alive or dead. Then calls the
callback
function with (err, results)
.
-
opts
optional objects
ignorePatterns
: An array of objects of regular expressions patterns.
Examples
JavaScript
'use strict';
var asciidocLinkCheck = require('asciidoc-link-check');
asciidocLinkCheck('xref:https://www.google.com[Google]', function (err, results) {
if (err) {
console.error('Error', err);
return;
}
results.forEach(function (result) {
console.log('%s is %s', result.link, result.status);
});
});