mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 01:30:22 +00:00
Fix adding/replacing a grammar (#4097)
* Licensed needs a full path now
* Add docker installed/running guard
* Docker is required for adding/replacing grammars
* Use more elegant method
Hat-tip to @Alhadis 🎩
This commit is contained in:
@@ -28,9 +28,9 @@ To run Linguist from the cloned repository:
|
|||||||
|
|
||||||
### Dependencies
|
### Dependencies
|
||||||
|
|
||||||
Linguist uses the [`charlock_holmes`](https://github.com/brianmario/charlock_holmes) character encoding detection library which in turn uses [ICU](http://site.icu-project.org/), and the libgit2 bindings for Ruby provided by [`rugged`](https://github.com/libgit2/rugged). These components have their own dependencies - `icu4c`, and `cmake` and `pkg-config` respectively - which you may need to install before you can install Linguist.
|
Linguist uses the [`charlock_holmes`](https://github.com/brianmario/charlock_holmes) character encoding detection library which in turn uses [ICU](http://site.icu-project.org/), and the libgit2 bindings for Ruby provided by [`rugged`](https://github.com/libgit2/rugged). [Docker](https://www.docker.com/) is also required when adding or updating grammars. These components have their own dependencies - `icu4c`, and `cmake` and `pkg-config` respectively - which you may need to install before you can install Linguist.
|
||||||
|
|
||||||
For example, on macOS with [Homebrew](http://brew.sh/): `brew install cmake pkg-config icu4c` and on Ubuntu: `apt-get install cmake pkg-config libicu-dev`.
|
For example, on macOS with [Homebrew](http://brew.sh/): `brew install cmake pkg-config icu4c docker` and on Ubuntu: `apt-get install cmake pkg-config libicu-dev docker-ce`.
|
||||||
|
|
||||||
## Adding an extension to a language
|
## Adding an extension to a language
|
||||||
|
|
||||||
|
|||||||
@@ -84,6 +84,10 @@ unless $url
|
|||||||
exit 1;
|
exit 1;
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Exit early if docker isn't installed or running.
|
||||||
|
log "Checking docker is installed and running"
|
||||||
|
command('docker', 'ps')
|
||||||
|
|
||||||
# Ensure the given URL is an HTTPS link
|
# Ensure the given URL is an HTTPS link
|
||||||
parts = parse_url $url
|
parts = parse_url $url
|
||||||
https = "https://#{parts[:host]}/#{parts[:user]}/#{parts[:repo]}"
|
https = "https://#{parts[:host]}/#{parts[:user]}/#{parts[:repo]}"
|
||||||
@@ -107,6 +111,7 @@ log "Confirming license"
|
|||||||
if repo_old
|
if repo_old
|
||||||
command('script/licensed')
|
command('script/licensed')
|
||||||
else
|
else
|
||||||
|
repo_new = File.absolute_path(repo_new)
|
||||||
command('script/licensed', '--module', repo_new)
|
command('script/licensed', '--module', repo_new)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user