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
|
||||
"This gem provides parser dictionary data for AnyStyle.")
|
||||
(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