gnu: Add ruby-anystyle.
* gnu/packages/ruby.scm (ruby-anystyle): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
parent
8d4670f4d1
commit
3b017b9400
|
@ -13480,3 +13480,74 @@ the power of the built-in @code{OptionParser}.")
|
||||||
(description
|
(description
|
||||||
"This gem provides parser dictionary data for AnyStyle.")
|
"This gem provides parser dictionary data for AnyStyle.")
|
||||||
(license license:bsd-2)))
|
(license license:bsd-2)))
|
||||||
|
|
||||||
|
(define-public ruby-anystyle
|
||||||
|
(let ((commit "50f1dd547d28ab4b830e45d70e840cb1898a37b0")
|
||||||
|
(revision "1"))
|
||||||
|
;; Releases point to specific commits, but recent releases haven't been
|
||||||
|
;; tagged in Git. Meanwhile, the rubygems archive lacks tests.
|
||||||
|
(package
|
||||||
|
(name "ruby-anystyle")
|
||||||
|
(version (git-version "1.3.14" revision commit))
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/inukshuk/anystyle")
|
||||||
|
(commit commit)))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0f4qcrywl1kl6qysn24lj3yp85ln4i7za7b7ld2fglyzwcggxwb0"))
|
||||||
|
(snippet
|
||||||
|
;; There is an optional dependency on
|
||||||
|
;; <https://github.com/feedbackmine/language_detector>, which
|
||||||
|
;; seems like it was intended to be free software, but
|
||||||
|
;; doesn't have a clear license statement. Maybe someone can
|
||||||
|
;; do more sleuthing, or else find a replacement? See also
|
||||||
|
;; <https://github.com/inukshuk/anystyle/issues/186>. For
|
||||||
|
;; now, patch it out, but leave a pointer to follow up.
|
||||||
|
#~(begin
|
||||||
|
(use-modules (guix build utils))
|
||||||
|
(substitute* "Gemfile"
|
||||||
|
(("gem 'language_detector', github: '[^']*'" orig)
|
||||||
|
(string-append "# " orig " # unclear license")))
|
||||||
|
(substitute* "spec/anystyle/parser_spec.rb"
|
||||||
|
(("language: 'en'," orig)
|
||||||
|
(string-append "# " orig " # no lanugage_detector")))))
|
||||||
|
(file-name (git-file-name name version))))
|
||||||
|
(build-system ruby-build-system)
|
||||||
|
(propagated-inputs
|
||||||
|
(list ruby-anystyle-data
|
||||||
|
ruby-bibtex-ruby
|
||||||
|
ruby-namae
|
||||||
|
ruby-wapiti))
|
||||||
|
(native-inputs
|
||||||
|
(list ruby-byebug
|
||||||
|
ruby-citeproc
|
||||||
|
ruby-edtf
|
||||||
|
ruby-rspec
|
||||||
|
ruby-unicode-scripts))
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:test-target "spec"
|
||||||
|
#:phases
|
||||||
|
#~(modify-phases %standard-phases
|
||||||
|
(add-after 'extract-gemspec 'avoid-bundler
|
||||||
|
(lambda args
|
||||||
|
(substitute* "Rakefile"
|
||||||
|
(("require 'bundler" orig)
|
||||||
|
(string-append "# " orig " # patched for Guix"))
|
||||||
|
(("Bundler\\.setup" orig)
|
||||||
|
(string-append "true # " orig " # patched for Guix")))))
|
||||||
|
(add-after 'replace-git-ls-files 'replace-another-git-ls-files
|
||||||
|
(lambda args
|
||||||
|
(substitute* "anystyle.gemspec"
|
||||||
|
(("`git ls-files spec`")
|
||||||
|
"`find spec -type f | sort`")))))))
|
||||||
|
(home-page "https://anystyle.io")
|
||||||
|
(synopsis "Fast and smart citation reference parsing (Ruby library)")
|
||||||
|
(description
|
||||||
|
"AnyStyle is a very fast and smart parser for academic reference lists
|
||||||
|
and bibliographies. AnyStyle uses powerful machine learning heuristics based
|
||||||
|
on Conditional Random Fields and aims to make it easy to train the model with
|
||||||
|
data that is relevant to your parsing needs.")
|
||||||
|
(license license:bsd-2))))
|
||||||
|
|
Reference in New Issue