Skip to content

Commit

Permalink
Split decomposers
Browse files Browse the repository at this point in the history
  • Loading branch information
kou committed Feb 26, 2019
1 parent c399a1f commit 11e8bf5
Show file tree
Hide file tree
Showing 185 changed files with 8,994 additions and 37 deletions.
13 changes: 7 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
notifications:
email:
recipients:
- groonga-commit@lists.osdn.me
webhooks:
- https://webhook.commit-email.info/
addons:
apt:
packages:
- libreoffice
rvm:
- 2.2
- 2.3.3
- 2.4.1
- 2.3
- 2.4
- 2.5
- 2.6
- ruby-head
41 changes: 16 additions & 25 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# -*- ruby -*-
#
# Copyright (C) 2014-2017 Kouhei Sutou <kou@clear-code.com>
# Copyright (C) 2019 Kouhei Sutou <kou@clear-code.com>
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
Expand All @@ -16,33 +16,24 @@
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

task :default => :test

require "pathname"

require "rubygems"
require "bundler/gem_helper"
require "packnga"

base_dir = Pathname(__FILE__).dirname

helper = Bundler::GemHelper.new(base_dir.to_s)
def helper.version_tag
version
end

helper.install
spec = helper.gemspec

Packnga::DocumentTask.new(spec) do |task|
task.original_language = "en"
task.translate_language = "ja"
end

Packnga::ReleaseTask.new(spec) do
end
task :default => :test

desc "Run tests"
task :test do
ruby("test/run-test.rb")
FileList["*/test/run-test.rb"].each do |run_test_rb|
cd(Pathname(run_test_rb).parent.parent) do
ruby("test/run-test.rb")
end
end
end

desc "Release"
task :release do
FileList["*/*.gemspec"].each do |gemspec|
cd(Pathname(gemspec).parent) do
ruby("-S", "rake", "release")
end
end
end
File renamed without changes.
File renamed without changes.
37 changes: 37 additions & 0 deletions chupa-text-decomposer-libreoffice-excel/Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# -*- mode: ruby; coding: utf-8 -*-
#
# Copyright (C) 2014-2019 Kouhei Sutou <kou@clear-code.com>
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

source "https://rubygems.org/"

gemspec

base_dir = File.dirname(__FILE__)

general = "chupa-text-decomposer-libreoffice-general"
gem general, path: File.join(base_dir, "..", general)

local_gem_names = [
"chupa-text",
"chupa-text-decomposer-pdf",
]
local_gem_names.each do |name|
local_dir = File.join(base_dir, "..", "..", name)
if File.exist?(local_dir)
gem name, :path => local_dir
end
end
File renamed without changes.
44 changes: 44 additions & 0 deletions chupa-text-decomposer-libreoffice-excel/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# README

## Name

chupa-text-decomposer-libreoffice-excel

## Description

This is a ChupaText decomposer plugin to extract text and meta-data
from Microsoft Excel binary file format file (`.xls` file). This plugin
uses [LibreOffice](https://www.libreoffice.org/).

You can use `libreoffice-excel` decomposer.

It depends on `pdf` decomposer. Because it converts a office file to
PDF file and extracts text and meta-data by `pdf` decomposer.

## Install

Install chupa-text-decomposer-libreoffice-excel gem:

```
% gem install chupa-text-decomposer-libreoffice-excel
```

Install
[LibreOffice from download page](http://www.libreoffice.org/download).

Now, you can extract text and meta-data from office files:

```
% chupa-text workbook.xls
```

## Author

* Kouhei Sutou `<kou@clear-code.com>`

## License

LGPL 2.1 or later.

(Kouhei Sutou has a right to change the license including contributed
patches.)
48 changes: 48 additions & 0 deletions chupa-text-decomposer-libreoffice-excel/Rakefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# -*- ruby -*-
#
# Copyright (C) 2014-2017 Kouhei Sutou <kou@clear-code.com>
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

task :default => :test

require "pathname"

require "rubygems"
require "bundler/gem_helper"
require "packnga"

base_dir = Pathname(__dir__)

helper = Bundler::GemHelper.new(base_dir.to_s)
def helper.version_tag
"#{name}-#{version}"
end

helper.install
spec = helper.gemspec

Packnga::DocumentTask.new(spec) do |task|
task.original_language = "en"
task.translate_language = "ja"
end

Packnga::ReleaseTask.new(spec) do
end

desc "Run tests"
task :test do
ruby("test/run-test.rb")
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# -*- ruby -*-
#
# Copyright (C) 2014-2019 Kouhei Sutou <kou@clear-code.com>
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

clean_white_space = lambda do |entry|
entry.gsub(/(\A\n+|\n+\z)/, '') + "\n"
end

Gem::Specification.new do |spec|
spec.name = "chupa-text-decomposer-libreoffice-excel"
spec.version = "1.0.0"
spec.homepage = "https://github.com/ranguba/chupa-text-decomposer-libreoffice"
spec.authors = ["Kouhei Sutou"]
spec.email = ["kou@clear-code.com"]
readme = File.read("README.md", :encoding => "UTF-8")
entries = readme.split(/^\#\#\s(.*)$/)
description = clean_white_space.call(entries[entries.index("Description") + 1])
spec.summary = description.split(/\n\n+/, 2).first
spec.description = description
spec.license = "LGPL-2.1+"
spec.files = ["#{spec.name}.gemspec"]
spec.files += ["README.md", "LICENSE.txt", "Rakefile", "Gemfile"]
spec.files += [".yardopts"]
spec.files += Dir.glob("lib/**/*.rb")
spec.files += Dir.glob("doc/text/*")
spec.files += Dir.glob("test/**/*")

spec.add_runtime_dependency("chupa-text-decomposer-libreoffice-general")

spec.add_development_dependency("bundler")
spec.add_development_dependency("rake")
spec.add_development_dependency("test-unit")
spec.add_development_dependency("packnga")
spec.add_development_dependency("redcarpet")
end
5 changes: 5 additions & 0 deletions chupa-text-decomposer-libreoffice-excel/doc/text/news.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# News

## 1.0.0: 2019-02-26

The first release!!!
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Copyright (C) 2019 Kouhei Sutou <kou@clear-code.com>
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

require "chupa-text/decomposers/libreoffice-general"

module ChupaText
module Decomposers
class LibreOfficeExcel < LibreOfficeGeneral
registry.register("libreoffice-excel", self)

def initialize(options)
super
@extension = "xls"
@mime_type = "application/vnd.ms-excel"
end

private
def log_tag
super + "[excel]"
end
end
end
end
File renamed without changes.
File renamed without changes.
File renamed without changes.
31 changes: 31 additions & 0 deletions chupa-text-decomposer-libreoffice-excel/test/run-test.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#!/usr/bin/env ruby
#
# Copyright (C) 2013 Kouhei Sutou <kou@clear-code.com>
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

$VERBOSE = true

require "bundler/setup"

require "test-unit"

require "chupa-text"

ChupaText::Decomposers.load

require_relative "../../chupa-text-decomposer-libreoffice-general/test/helper"

exit(Test::Unit::AutoRunner.run(true))
Loading

0 comments on commit 11e8bf5

Please sign in to comment.