wwwjdic 13.0.0 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +63 -1
  3. data/Gemfile +9 -1
  4. data/README.md +499 -225
  5. data/Rakefile +12 -3
  6. data/copyright.md +17 -29
  7. data/examples/basics.rb +55 -45
  8. data/examples/translate.rb +161 -86
  9. data/examples/uri.rb +50 -78
  10. data/html/CHANGELOG.html +80 -21
  11. data/html/COPYING_md.html +13 -24
  12. data/html/Gemfile.html +12 -21
  13. data/html/Object.html +810 -45
  14. data/html/README_md.html +309 -161
  15. data/html/Rakefile.html +15 -24
  16. data/html/WWWJDic.html +41 -81
  17. data/html/WWWJDic/ParsableDuckType.html +15 -34
  18. data/html/WWWJDic/Parser.html +25 -64
  19. data/html/WWWJDic/Parsers.html +8 -13
  20. data/html/WWWJDic/Parsers/Dict.html +29 -54
  21. data/html/WWWJDic/Parsers/Display.html +24 -47
  22. data/html/WWWJDic/Parsers/Key.html +25 -48
  23. data/html/WWWJDic/Parsers/Search.html +19 -38
  24. data/html/WWWJDic/Parsers/Server.html +24 -47
  25. data/html/WWWJDic/Splitter.html +49 -142
  26. data/html/WWWJDic/Utils.html +9 -14
  27. data/html/WWWJDic/Utils/Downloader.html +8 -13
  28. data/html/WWWJDic/Utils/Downloader/Downloader.html +29 -63
  29. data/html/WWWJDic/Utils/Raisers.html +21 -72
  30. data/html/WWWJDic/WWWJDic.html +131 -312
  31. data/html/copyright_md.html +206 -225
  32. data/html/created.rid +33 -58
  33. data/html/css/rdoc.css +35 -6
  34. data/html/index.html +301 -169
  35. data/html/js/darkfish.js +22 -99
  36. data/html/js/navigation.js +4 -40
  37. data/html/js/navigation.js.gz +0 -0
  38. data/html/js/search.js +32 -31
  39. data/html/js/search_index.js +1 -1
  40. data/html/js/search_index.js.gz +0 -0
  41. data/html/js/searcher.js +6 -6
  42. data/html/js/searcher.js.gz +0 -0
  43. data/html/table_of_contents.html +160 -197
  44. data/lib/wwwjdic.rb +16 -15
  45. data/lib/wwwjdic/application.rb +69 -36
  46. data/lib/wwwjdic/constants.rb +48 -10
  47. data/lib/wwwjdic/locales/de.yml +9 -4
  48. data/lib/wwwjdic/locales/en.yml +9 -4
  49. data/lib/wwwjdic/locales/es.yml +9 -4
  50. data/lib/wwwjdic/locales/fr.yml +9 -4
  51. data/lib/wwwjdic/locales/hu.yml +9 -4
  52. data/lib/wwwjdic/locales/it.yml +9 -4
  53. data/lib/wwwjdic/locales/ja.yml +11 -5
  54. data/lib/wwwjdic/locales/nl.yml +9 -4
  55. data/lib/wwwjdic/locales/ru.yml +9 -4
  56. data/lib/wwwjdic/locales/sl.yml +9 -4
  57. data/lib/wwwjdic/locales/sv.yml +9 -4
  58. data/lib/wwwjdic/parser.rb +15 -8
  59. data/lib/wwwjdic/parsers/dict.rb +13 -8
  60. data/lib/wwwjdic/parsers/display.rb +10 -3
  61. data/lib/wwwjdic/parsers/key.rb +11 -3
  62. data/lib/wwwjdic/parsers/search.rb +12 -3
  63. data/lib/wwwjdic/parsers/server.rb +10 -3
  64. data/lib/wwwjdic/utils/downloader.rb +27 -30
  65. data/lib/wwwjdic/utils/raisers.rb +14 -15
  66. data/lib/wwwjdic/utils/splitter.rb +33 -18
  67. data/lib/wwwjdic/version.rb +28 -20
  68. data/test/test_helper.rb +12 -1
  69. data/test/test_wwwjdic.rb +12 -4
  70. data/test/wwwjdic/locales/de.yml +9 -1
  71. data/test/wwwjdic/locales/en.yml +9 -1
  72. data/test/wwwjdic/locales/es.yml +9 -1
  73. data/test/wwwjdic/locales/fr.yml +9 -1
  74. data/test/wwwjdic/locales/hu.yml +9 -1
  75. data/test/wwwjdic/locales/it.yml +10 -1
  76. data/test/wwwjdic/locales/ja.yml +11 -2
  77. data/test/wwwjdic/locales/nl.yml +9 -1
  78. data/test/wwwjdic/locales/ru.yml +9 -1
  79. data/test/wwwjdic/locales/sl.yml +9 -1
  80. data/test/wwwjdic/locales/sv.yml +9 -1
  81. data/test/wwwjdic/locales/test_locales.rb +43 -24
  82. data/test/wwwjdic/parsers/test_dict.rb +67 -37
  83. data/test/wwwjdic/parsers/test_display.rb +13 -5
  84. data/test/wwwjdic/parsers/test_key.rb +12 -4
  85. data/test/wwwjdic/parsers/test_server.rb +13 -5
  86. data/test/wwwjdic/test_application.rb +201 -149
  87. data/test/wwwjdic/test_parsable_duck_type.rb +11 -6
  88. data/test/wwwjdic/utils/test_downloader.rb +9 -1
  89. data/test/wwwjdic/utils/test_raisers.rb +48 -29
  90. data/wwwjdic.gemspec +46 -26
  91. metadata +55 -43
  92. data/acknowledgements.md +0 -55
  93. data/authors.md +0 -67
  94. data/html/acknowledgements_md.html +0 -149
  95. data/html/authors_md.html +0 -181
  96. data/html/js/jquery.js +0 -4
  97. data/html/wwwjdic_gemspec.html +0 -161
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 18fd836dcc7f4cdfaf5a1e558d4c184b78e48862720a320df568529e457cc5ea
4
- data.tar.gz: f2e33c8588457a59368368be7dda0070f6d99c8816fbd8ed80b8a30c6a3065e1
3
+ metadata.gz: 4d84ff5bb501abaa948b8332878634f294cdd75edc235119aa16222ed16b0c69
4
+ data.tar.gz: e640c8693b708a7722049b2a1278b871e26cee18a85dd079a38d3567f16a89b8
5
5
  SHA512:
6
- metadata.gz: f6b3279337e90f78ae7f48a26b5e5153000da68049a67693cd01bd0ba8fd9a6ccdd70a700b13dfa274db4df40bf3c3ca4782e1d6c5b89ab0e18b6bcee5b9d7b1
7
- data.tar.gz: 31d96732e8891393ac5b4b2248b9aaa48b5af7e36eedfd7ce74abb4a48428a72939c249a166e4e9853f4e406ac7767dfea0fa3311c18fa3d44a83a2f92b258f7
6
+ metadata.gz: d907e73f5b066a3d5dc0f5c7246c096571027d5f27cc2d1020a7f75b343ac7b2315eca4ee88d0a4e55cb9487a0939ffe54d2f099caffdb5c512a6a537317951b
7
+ data.tar.gz: ba5aa97fa7ccabd08cb1a21dc273001c91c1b74da3dc231ff97be04db5b96d5813ee1a45b16717a9a48d24fc8b84a063ab327358701c07ca3f9ee805c80e8e1f
data/CHANGELOG CHANGED
@@ -1,3 +1,65 @@
1
+ = Version 16.0.0
2
+ * MAJOR update from Ruby '~> 2.7' to Ruby '~> 3.0'.
3
+ * MINOR update IntelliJ IDEA (RubyGem) project configuration.
4
+ * PATCH update gem dependencies.
5
+ * IN PROGRESS: restoring key configuration as allowed parameter, to
6
+ allow user asking for specific searches. Search key currently fixed
7
+ to 'E' (exact match) type search.
8
+ * IN PROGRESS: improving application RDoc to better comply with SemVer
9
+ point 1 (Software using Semantic Versioning MUST declare a public
10
+ API. This API could be declared in the code itself or exist strictly
11
+ in documentation. However it is done, it should be precise and
12
+ comprehensive.)
13
+
14
+ = Version 15.0.0
15
+ * MAJOR changed key search type default from "exact" to "english".
16
+ * MAJOR changed Monash dictionary server reference URL.
17
+ * MINOR introduce compliance to REUSE tool from FSF Europe
18
+ * MINOR add dependency to Rubocop
19
+ * PATCH update copyright notices
20
+ * PATCH remove test data form I18N files.
21
+ * PATCH update gem dependencies.
22
+ * PATCH update IntelliJ IDEA (RubyGem) project configuration.
23
+ * PATCH update to Ruby 2.7.x new things
24
+ * IN PROGRESS: restoring key configuration as allowed parameter, to
25
+ allow user asking for specific searches. Search key currently fixed
26
+ to 'E' (exact match) type search.
27
+ * IN PROGRESS: improving application RDoc to better comply with SemVer
28
+ point 1 (Software using Semantic Versioning MUST declare a public
29
+ API. This API could be declared in the code itself or exist strictly
30
+ in documentation. However it is done, it should be precise and
31
+ comprehensive.)
32
+
33
+ = Version 14.0.0
34
+ * MAJOR update from Ruby '~> 2.6' to Ruby '~> 2.7'.
35
+ * MINOR update IntelliJ IDEA (RubyGem) project configuration.
36
+ * MINOR add simplecov code coverage.
37
+ * PATCH update gem dependencies.
38
+ * PATCH change all asserts to matchers
39
+ * PATCH update copyright notice
40
+ * PATCH Fix deprecated methods calls for Minitest version 6.
41
+ * IN PROGRESS: translation example.
42
+ * IN PROGRESS: restoring key configuration as allowed parameter, to
43
+ allow user asking for specific searches. Search key currently fixed
44
+ to 'Q' (exact match) type search.
45
+ * IN PROGRESS: improving application RDoc to better comply with SemVer
46
+ point 1 (Software using Semantic Versioning MUST declare a public
47
+ API. This API could be declared in the code itself or exist strictly
48
+ in documentation. However it is done, it should be precise and
49
+ comprehensive.)
50
+
51
+ = Version 13.0.1
52
+ * PATCH updating gem dependencies.
53
+ * IN PROGRESS: translation example.
54
+ * IN PROGRESS: restoring key configuration as allowed parameter, to
55
+ allow user asking for specific searches. Search key currently fixed
56
+ to 'Q' (exact match) type search.
57
+ * IN PROGRESS: improving application RDoc to better comply with SemVer
58
+ point 1 (Software using Semantic Versioning MUST declare a public
59
+ API. This API could be declared in the code itself or exist strictly
60
+ in documentation. However it is done, it should be precise and
61
+ comprehensive.)
62
+
1
63
  = Version 13.0.0
2
64
  * MAJOR moving from a_gem.required_ruby_version = '~> 2.5' to
3
65
  a_gem.required_ruby_version = '~> 2.6'.
@@ -401,7 +463,7 @@
401
463
 
402
464
  wwwjdic
403
465
 
404
- Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
466
+ Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Marco Bresciani
405
467
 
406
468
  This file is part of wwwjdic.
407
469
 
data/Gemfile CHANGED
@@ -1,5 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # wwwjdic
2
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
4
+ # rubocop:disable Style/AsciiComments
5
+ # © 2014 Marco Bresciani
6
+ # rubocop:enable Style/AsciiComments
3
7
  #
4
8
  # This file is part of wwwjdic.
5
9
  #
@@ -15,6 +19,10 @@
15
19
  #
16
20
  # You should have received a copy of the GNU General Public License
17
21
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
22
+ #
23
+ # SPDX-FileCopyrightText: 2014 Marco Bresciani
24
+ #
25
+ # SPDX-<span></span>License-Identifier: FSFAP
18
26
 
19
27
  source 'https://rubygems.org'
20
28
 
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  <!--
2
2
  wwwjdic
3
3
 
4
- Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
4
+ (C) 2014 Marco Bresciani
5
5
 
6
6
  This file is part of wwwjdic.
7
7
 
@@ -17,275 +17,549 @@ more details.
17
17
 
18
18
  You should have received a copy of the GNU General Public License along
19
19
  with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
20
- -->
21
20
 
21
+ SPDX-FileCopyrightText: 2014 Marco Bresciani
22
+
23
+ SPDX-License-Identifier: GFDL-1.3-or-later
24
+ -->
22
25
  # WWWJDic
23
- ![Gem](https://img.shields.io/gem/v/wwwjdic.svg?style=plastic)
24
- ![Gem](https://img.shields.io/gem/dt/wwwjdic.svg?style=plastic)
25
- ![Gem](https://img.shields.io/gem/dtv/wwwjdic.svg?style=plastic)
26
- ![Gem download rank](https://img.shields.io/gem/rt/wwwjdic.svg?style=plastic)
27
- ![Gem download rank (daily)](https://img.shields.io/gem/rd/wwwjdic.svg?style=plastic)
28
- ![Dependent repos (via libraries.io)](https://img.shields.io/librariesio/dependent-repos/rubygems/wwwjdic.svg?style=plastic)
26
+ ![name](https://badgen.net/rubygems/n/wwwjdic)
27
+ ![version (latest)](https://badgen.net/rubygems/v/wwwjdic/latest)
28
+ ![platform](https://badgen.net/rubygems/p/wwwjdic)
29
29
 
30
- Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
30
+ [![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgreen.svg?style=plastic)](https://github.com/RichardLitt/standard-readme)
31
+ [![Ruby Style Guide](https://img.shields.io/badge/code_style-rubocop-brightgreen.svg)](https://github.com/rubocop-hq/rubocop)
32
+ [![REUSE status](https://api.reuse.software/badge/git.fsfe.org/reuse/api)](https://api.reuse.software/info/git.fsfe.org/reuse/api)
31
33
 
32
- This file is part of wwwjdic.
34
+ ![total downloads](https://badgen.net/rubygems/dt/wwwjdic)
35
+ ![latest version downloads](https://badgen.net/rubygems/dv/wwwjdic)
33
36
 
34
- wwwjdic is free software: you can redistribute it and/or modify it under
35
- the terms of the GNU General Public License as published by the Free
36
- Software Foundation, either version 3 of the License, or (at your
37
- option) any later version.
37
+ ![Gem download rank](https://img.shields.io/gem/rt/wwwjdic.svg?style=plastic)
38
+ ![Gem download rank (daily)](https://img.shields.io/gem/rd/wwwjdic.svg?style=plastic)
39
+ ![Dependent repos (via libraries.io)](https://img.shields.io/librariesio/dependent-repos/rubygems/wwwjdic.svg?style=plastic)
40
+ ![Gems](https://img.shields.io/gem/u/MarcoBresciani?style=plastic)
38
41
 
39
- wwwjdic is distributed in the hope that it will be useful, but WITHOUT
40
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
41
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
42
- more details.
42
+ ![Security Headers](https://img.shields.io/security-headers?style=plastic&url=https%3A%2F%2Fsavannah.nongnu.org%2Fprojects%2Faamfp)
43
+ ![Chromium HSTS preload](https://img.shields.io/hsts/preload/savannah.nongnu.org?style=plastic)
44
+ ![Mozilla HTTP Observatory Grade](https://img.shields.io/mozilla-observatory/grade/savannah.nongnu.org?publish&style=plastic)
45
+ ![Website](https://img.shields.io/website?style=plastic&url=https%3A%2F%2Fsavannah.nongnu.org%2Fprojects%2Faamfp)
43
46
 
44
- You should have received a copy of the GNU General Public License along
45
- with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
47
+ This gem uses WWWJDic Backdoor Entry/API to interact with WWWJDic and
48
+ translate to and from Japanese language.
46
49
 
47
- ## Description
48
50
  This gem uses WWWJDic Backdoor Entry/API as described by
49
- http://www.csse.monash.edu.au/~jwb/wwwjdicinf.html#backdoor_tag to
50
- interact with WWWJDic and translate to and from Japanese language.
51
-
51
+ http://www.edrdg.org/wwwjdic/wwwjdicinf.html#backdoor_tag to interact
52
+ with WWWJDic and translate to and from Japanese language.
52
53
  WWWJDic is an online Japanese translation server made by Jim Breen and
53
- available at http://www.edrdg.org/cgi-bin/wwwjdic/wwwjdic?1C .
54
-
55
- GNU GPLv3 license; source code (not yet) available through anonymous
56
- checkout: `hg clone http://hg.savannah.nongnu.org/hgweb/wwwjdic/` or
57
- write me and I'll send it.
58
-
54
+ available at http://www.edrdg.org/cgi-bin/wwwjdic/wwwjdic?1C.
55
+ GNU GPLv3 license; source code available through anonymous checkout:
56
+ `hg clone http://hg.savannah.nongnu.org/hgweb/wwwjdic/` or write me, and
57
+ I'll send it.
59
58
  You can even decide to contribute to this little free software project
60
- by registering to Savannah and ask to be part of the 'WWWJDic' project!
61
- With contributions from: Jim Breen, 新部裕, Jon Maken.
62
-
63
- ## Documentation
64
- WWWJDic tries to follow semantic versioning (see http://semver.org/).
65
- There may be backward incompatible changes each time minor version
66
- number changes, but that any tiny version number change should be bug
67
- fixes and internal changes only. Be sure to read the CHANGELOG each time
68
- we cut a new release and lock your gems accordingly.
69
-
70
- RDoc documentation available in the html folder.
71
-
72
- ### Installing WWWJDic
73
- RubyGems is the preferred easy install method for WWWJDic. WWWJDic is
74
- intended to be installed via the
75
- [RubyGems](http://rubyforge.org/projects/rubygems/) system. To get the
76
- latest version, simply enter the following into your command prompt:
77
- `gem install wwwjdic`.
78
-
79
- ### Supported Ruby Versions and Implementations
80
- Because WWWJDic is pure Ruby, it should run pretty much anywhere,
81
- including Rubinius, JRuby, MacRuby, etc. Officially the support is for
82
- 2.x MRI.
83
-
84
- ### Support
85
- The easiest way to get help with WWWJDic is to post a message to the
86
- mailing list: `http://lists.nongnu.org/mailman/listinfo/wwwjdic-users`
87
-
88
- Feel free to post any question there, developers are responsive and will
89
- be happy to help you figure out how to use WWWJDic, or help you
90
- determine whether it's the right tool for the task you are working on.
59
+ by registering to Savannah and ask to be part of the `wwwjdic` project!
60
+
61
+ ## Table of Contents
62
+ * [Background](#background)
63
+ * [Install](#install)
64
+ * [Savannah](#savannah)
65
+ * [RubyGems](#rubygems)
66
+ * [Usage](#usage)
67
+ * [Maintainers](#maintainers)
68
+ * [Thanks](#thanks)
69
+ * [Contributing](#contributing)
70
+ * [License](#license)
71
+
72
+ ## Background
73
+ This gem uses WWWJDic Backdoor Entry/API as described by
74
+ http://www.edrdg.org/wwwjdic/wwwjdicinf.html#backdoor_tag to interact
75
+ with WWWJDic and translate to and from Japanese language.
91
76
 
92
- Please make your posts to the list as specific as possible, including
93
- code samples and output where relevant. Do not post any information that
94
- should not be shared publicly, and be sure to reduce your example code
95
- as much as possible so that those who are responding to your question
96
- can more easily see what the issue might be.
77
+ WWWJDic is an online Japanese translation server made by Jim Breen and
78
+ available at http://www.edrdg.org/cgi-bin/wwwjdic/wwwjdic?1C.
97
79
 
98
- ### Contributing
99
- If you've found a bug, want to submit a patch, or have a feature
100
- request, please enter a ticket into our bug tracker:
101
- `https://savannah.nongnu.org/bugs/?func=additem&group=wwwjdic`
80
+ Jim Breen's Japanese Page lists this gem:
81
+ http://nihongo.monash.edu/japanese.html#links_software
102
82
 
103
- We strongly encourage bug reports to come with failing tests or at least
104
- a reduced example that demonstrates the problem.
83
+ GNU GPLv3 license; source code available through anonymous checkout:
84
+ `hg clone http://hg.savannah.nongnu.org/hgweb/wwwjdic/` or write me, and
85
+ I'll send it.
105
86
 
106
- Similarly, patches should include tests, API documentation, and an
107
- update to the manual where relevant. Feel free to clone early though and
108
- participate in the project, if you just want some feedback or a code
109
- review before preparing your code to be merged.
87
+ You can even decide to contribute to this little free software project
88
+ by registering to Savannah and ask to be part of the `wwwjdic` project!
110
89
 
111
- If you are unsure about whether or not you've found a bug, or want to
112
- check to see whether we'd be interested in the feature you want to add
113
- before you start working on it, feel free to post to our mailing list.
90
+ With great contributions from: Jim Breen, 新部裕, Jon Maken.
114
91
 
115
- ### License
116
- WWWJDic is released under GNU GPL v3 license: if you wish to contribute
117
- to WWWJDic, you will retain your own copyright but must agree to license
118
- your code under the same terms as the project itself (or any compatible
119
- license according to [GPL Compatible
120
- Licenses](http://www.gnu.org/licenses/license-list.en.html#GPLCompatibleLicenses)).
92
+ ## Install
93
+ RubyGems is the preferred easy install method for WWWJDic.
94
+ WWWJDic should be installed via the
95
+ [RubyGems](http://rubyforge.org/projects/rubygems/) system.
96
+ To get the latest version, simply enter the following into your command
97
+ prompt: `gem install wwwjdic`.
121
98
 
122
- ### Links
99
+ Because WWWJDic is pure Ruby, it should run pretty much anywhere,
100
+ including Rubinius, JRuby, MacRuby, etc.
101
+ Officially the support is for \>= 2.7 YARV/KRI.
123
102
 
124
103
  #### Savannah
125
- * Project page: https://savannah.nongnu.org/projects/wwwjdic/
126
- * Source code (Mercurial) repository: http://hg.savannah.gnu.org/hgweb/wwwjdic/
127
- * Known Bugs: https://savannah.nongnu.org/bugs/?group=wwwjdic
128
- * Users Mailing List: https://savannah.nongnu.org/mail/?group=wwwjdic
129
- * News: https://savannah.nongnu.org/news/?group=wwwjdic
104
+ * Project page: <https://savannah.nongnu.org/projects/wwwjdic/>
105
+ * Source code (Mercurial) repository: <http://hg.savannah.gnu.org/hgweb/wwwjdic/>
106
+ * Known Bugs: <https://savannah.nongnu.org/bugs/?group=wwwjdic>
107
+ * Users Mailing List: <https://savannah.nongnu.org/mail/?group=wwwjdic>
108
+ * News: <https://savannah.nongnu.org/news/?group=wwwjdic>
130
109
 
131
110
  #### RubyGems
132
- * Gem page: https://rubygems.org/gems/wwwjdic
133
- * Online RDoc: http://rubydoc.info/gems/wwwjdic/
134
- * Gem updates Atom Feed: https://rubygems.org/gems/wwwjdic/versions.atom
135
-
136
- #### Other links
137
- * WWWJDic: http://www.edrdg.org/cgi-bin/wwwjdic/wwwjdic?1C .
138
- * Jim Breen's Japanese Page: http://nihongo.monash.edu/japanese.html#links_software
139
- * "An HTTP/HTTPS/FTP file downloader library/CLI based upon
140
- MiniPortile's HTTP implementation." gist by Jon Maken:
141
- https://gist.github.com/jonforums/2202048.
142
-
143
- ### Usage Examples
144
- See `examples` folder. To run the examples just run
145
- `ruby examples/`{EXAMPLE_NAME}`.rb`. Running the examples you'll see
146
- both the example description and correct code usage to perform such
147
- action. Here below are listed the currently available examples:
148
-
111
+ * Gem page: <https://rubygems.org/gems/wwwjdic>
112
+ * Online RDoc: <http://rubydoc.info/gems/wwwjdic/>
113
+ * Gem updates Atom Feed:
114
+ <https://rubygems.org/gems/wwwjdic/versions.atom>
115
+
116
+ ## Usage
117
+ See `examples` folder.
118
+ To run the examples just run `ruby `{EXAMPLE_NAME}`.rb`.
119
+ Running the examples you'll see both the example description and correct
120
+ code usage to perform such action.
121
+ Here below there are the currently available examples:
149
122
  * The `basics.rb` example (run `ruby examples/basics.rb`) shows how to
150
123
  initialize and use a WWWJDic object through the `breener` factory
151
124
  method;
152
125
  * The `uri.rb` example (run `ruby examples/uri.rb`) shows how to ask for
153
- translation URI at WWWJDic, with all available options and
154
- configurations.
155
- * The `translate.rb` example (run `ruby examples/translate.rb`) shows
126
+ different types of translation URIs at WWWJDic, with all available
127
+ options and configurations.
128
+ * The `translate.rb` example (run `ruby examples/translate.rb`) shows
156
129
  how to ask for an actual translation through WWWJDic Backdoor/API,
157
- with all available options and configurations. It will also show how
158
- to download such translation;
159
-
160
- Using this API is pretty simple. First, get a reference to the WWWJDic
161
- object, through its factory method with
162
-
163
- my_wwwjdic = WWWJDic::breener
164
-
130
+ with all available options and configurations.
131
+ It will also show how to download such translation;
132
+
133
+ Using this API is pretty simple.
134
+ First, remember that this API maintains a context, so you can save your
135
+ preferred configuration of server, dictionary, output formats, ... by
136
+ assigning those value to your object.
137
+ Get a reference to the WWWJDic object, through its factory method, with
138
+ `my_wwwjdic = WWWJDic::breener`.
165
139
  This will save a WWWJDic instance in your `my_wwwjdic` object.
166
-
167
- #### Parameters
168
- You can then start possibly manipulating some basic parameters that can
169
- be set and read from the API. These are not mandatory settings, but are
170
- useful whether you'll use your `my_wwwjdic` object for further similar
171
- requests: settings these values internally will save you type more
172
- parameters in the request, leaving only the word to search/translate as
173
- needed.
174
-
175
- * the `server` name/URL to use:
176
-
177
- my_wwwjdic.server # returns the default server URL http://www.csse.monash.edu.au/~jwb/cgi-bin/wwwjdic.cgi?
178
- my_wwwjdic.to_s # contains the URL above
179
-
180
- # this below is (again) the default configured server
181
- my_wwwjdic.server = :edrdg
182
- my_wwwjdic.server # returns the URL http://www.edrdg.org/cgi-bin/wwwjdic/wwwjdic.cgi?
183
- my_wwwjdic.to_s # contains the URL above
184
-
185
- # this is the additional server
186
- my_wwwjdic.server = :monash
187
- my_wwwjdic.server # returns the URL http://www.csse.monash.edu.au/~jwb/cgi-bin/wwwjdic.cgi?
188
- my_wwwjdic.to_s # contains the URL above
189
- * the default reference `dictionary` to use for translations. All
190
- currently available dictionaries strings can be used: `'1'`, `'2'`,
191
- `'3'`, `'4'`, `'5'`, `'6'`, `'7'`, `'8'`, `'9'`, `'A'`, `'B'`, `'C'`,
192
- `'D'`, `'E'`, `'F'`, `'G'`, `'H'`, `'I'`, `'J'`, `'K'`, `'L'`, `'M'`,
193
- `'N'`, `'O'`, `'P'`, `'Q'` and `'R'`.
194
- You can even use the whole (exact) dictionary strings as listed in the
195
- WWWJDic HTML source code: `'Jpn-Eng General (EDICT)'`,
196
- `'Japanese Names (ENAMDICT)'`, `'Computing/Telecomms'`,
197
- `'Life Sciences/Bio-Med'`, `'Legal Terms'`, `'Finance/Marketing'`,
198
- `'Buddhism'`, `'Miscellaneous'`, `'Special Text-glossing'`,
199
- `'Engineering/Science'`, `'Linguistics'`, `'River & Water Systems'`,
200
- `'Automobile Industry'`, `'Japanese Wordnet'`,
201
- `'Work-in-progress File'`, `'Japanese-German (WaDoku)'`,
202
- `'Japanese-French'`, `'Japanese-Russian'`, `'Japanese-Swedish'`,
203
- `'Japanese-Hungarian'`, `'Japanese-Spanish'`, `'Japanese-Dutch'`,
204
- `'Japanese-Slovenian'`, `'Japanese-Italian'`, `'Untranslated'`,
205
- `'Combined Jpn-Eng'`, `'Expanded Text-glossing'`.
206
-
207
- my_wwwjdic.dictionary # returns 0 as default, if not set
208
-
209
- my_wwwjdic.dictionary = '7'
210
- my_wwwjdic.dictionary # returns the string '7'
211
- * Then you can obviously ask for a translation reference URL. Basic
212
- examples:
213
-
214
- my_wwwjdic.uri 'word' # this return the URL for translation of 'word', with normal display format
215
-
216
- my_wwwjdic.raw_uri 'word' # this return the URL for translation of 'word', with raw display format
217
-
218
- my_wwwjdic.json_uri 'word' # this return the URL for translation of 'word', returning a JSON data as { 'word': 'url' } with normal display format
219
- * Then, instead of the pure URL to reference the WWWJDic site, you can
220
- retrieve the actual translation itself or save it to a file:
221
-
222
- my_wwwjdic.translate 'word' # returns a string containing the web page content of the raw display format
223
-
224
- my_wwwjdic.translate 'word', nil, filename # regardless the nil (see it later) the third parameter is the filename where to save the retrieved translation
225
- * Another possible result for translation is to get it in JSON format
226
- also with the possibility to save it in a file.
227
-
228
- my_wwwjdic.json_translate 'word' # returns the JSON format of the translation.
229
-
230
- For this, the resulting JSON format will be:
231
-
140
+ At this point the object does contain a default configuration in terms
141
+ of dictionary, server, ...
142
+
143
+ You can take a look at the current status/configuration of your
144
+ `my_wwwjdic` object using the `dictionary` method
145
+ `my_wwwjdic.dictionary` that shows the dictionary currently in use
146
+ (default is `Jpn-Eng General (EDICT)`), or using the `server` method
147
+ `my_wwwjdic.server` that shows the dictionary server currently in use
148
+ (default is `http://www.edrdg.org/cgi-bin/wwwjdic/wwwjdic.cgi?`).
149
+
150
+ * `dictionary`: you can set your own dictionary through the same
151
+ `dictionary` method, by assigning it one of the available
152
+ dictionaries, either using the dictionary number, or the (exact)
153
+ dictionary name.
154
+
155
+ | Number | Dictionary Name |
156
+ |:------:|---------------------------|
157
+ | 1 | Jpn-Eng General (EDICT) |
158
+ | 2 | Japanese Names (ENAMDICT) |
159
+ | 3 | Computing/Telecomms |
160
+ | 4 | Life Sciences/Bio-Med |
161
+ | 5 | Legal Terms |
162
+ | 6 | Finance/Marketing |
163
+ | 7 | Buddhism |
164
+ | 8 | Miscellaneous |
165
+ | 9 | Special Text-glossing |
166
+ | A | Engineering/Science |
167
+ | B | Linguistics |
168
+ | C | River & Water Systems |
169
+ | D | Automobile Industry |
170
+ | E | Japanese Wordnet |
171
+ | F | Work-in-progress File |
172
+ | G | Japanese-German (WaDoku) |
173
+ | H | Japanese-French |
174
+ | I | Japanese-Russian |
175
+ | J | Japanese-Swedish |
176
+ | K | Japanese-Hungarian |
177
+ | L | Japanese-Spanish |
178
+ | M | Japanese-Dutch |
179
+ | N | Japanese-Slovenian |
180
+ | O | Japanese-Italian |
181
+ | P | Untranslated |
182
+ | Q | Combined Jpn-Eng |
183
+ | R | Expanded Text-glossing |
184
+
185
+ For example, with `my_wwwjdic.dictionary = '7'` you set the `Buddhism`
186
+ dictionary or with `my_wwwjdic.dictionary = 'Japanese Wordnet'` you
187
+ just set the `Japanese Wordnet` one.
188
+ Your `my_wwwjdic` object saves and maintains these values unless
189
+ reset.
190
+ * `server`: you can set your own server through the same `server`
191
+ method, by assigning it one of the available servers.
192
+ Using `my_wwwjdic.server = :edrdg` the library will use the main
193
+ (default) URL at <http://www.edrdg.org/cgi-bin/wwwjdic/wwwjdic.cgi?>
194
+ for the dictionary server while instead using
195
+ `my_wwwjdic.server = :monash` will use the URL
196
+ <http://nihongo.monash.edu/cgi-bin/wwwjdic?> that relays on Monash
197
+ University mirror.
198
+ * `uri`: you can ask for a translation reference URL; that is not a
199
+ translation by itself, but it's the full URL where to find the
200
+ translation.
201
+ * You can get the translation URL of a specific word using the command
202
+ `my_wwwjdic.uri '`word`'` that returns the normal URL.
203
+ * Then you can use the `my_wwwjdic.raw_uri '`word`'`, for the raw
204
+ display format.
205
+ The raw dictionary display option is useful for calls from other
206
+ programs, smartphones, etc.
207
+ It omits all header and footer information from the pages, and
208
+ displays the unedited dictionary entries in EDICT and KANJIDIC
209
+ format, one-per-line and encapsulated by <pre> ... </pre>.
210
+ In this option the output is always in UTF-8 coding.
211
+ * the `my_wwwjdic.json_uri '`word`'` command, instead, returns the URL
212
+ for translation of `word` in a JSON format as `{ "`word`: "`url`" }`
213
+ with normal display format.
214
+ * `translate`: you can, finaly, obviously ask for a specific translation
215
+ using the configured parameters.
216
+ * you can get a simple translation with the command
217
+ `my_wwwjdic.translate 'word'`, that returns a string containing the
218
+ web page content of the translation of `word` in the raw display
219
+ format.
220
+ It's equivalent to `my_wwwjdic.translate 'word', display: :raw`.
221
+ * `my_wwwjdic.translate 'word', nil, filename`, regardless the `nil`
222
+ (see it later), the third `filename` parameter is the name of the
223
+ file where the translation will be saved into.
224
+ Specifying this `filename` parameter, the translation will not be
225
+ shown, but it will be saved in the specified file.
226
+ * Another possible result for translation is to get it in JSON format
227
+ also with the possibility to save it in a file:
228
+ `my_wwwjdic.json_translate 'word'`, returns the JSON format of the
229
+ translation:
230
+ * The JSON will contain a field having the same name of the word to
231
+ be translated that contains the URL of the translation from the
232
+ reference dictionary server used.
233
+ The URL is exatcly the same used to retrieve the translation and
234
+ filling the resulting JSON.
235
+ * The `title` field will contain the title of the translation page
236
+ result.
237
+ * The `translation` field will contain the raw translation as
238
+ received from the server.
239
+ * The `message` field will contain all the text that will possibly
240
+ be included as error message in the translation.
241
+ This means that if any `<p>` tag encloses some text, such text
242
+ will be presented in this `message` field.
243
+ * The `lines` field will contain an array of all the lines of the
244
+ translation, that is: the `lines` field contains a split of the
245
+ `translation` field using its existing `\n` characters.
246
+ * The `content` field contains an array of JSON objects, each
247
+ containing the formatted translation of each line:
248
+ * a field with the name of the word asked for translation,
249
+ containing the actual translation, first field of the
250
+ translation in each line;
251
+ * a `kana` field with the kana writing for the translation, as
252
+ shown in brackets, in each line;
253
+ * a `text` field containing the explanation associated to such
254
+ translation;
255
+ * a `meanings` field containing the different meaning associated
256
+ to each line.
257
+ The `/` characters mark the splitting point for each line.
258
+
259
+ So, basically, the JSON will contain the whole raw translation, the
260
+ same translation split into different lines, when asked by the
261
+ translation itself, and each of those lines above split again into a
262
+ set of available meanings.
263
+
264
+ For the example translation above, the resulting JSON format is:
265
+ ```json5
266
+ {
267
+ "word": "http://www.edrdg.org/cgi-bin/wwwjdic/wwwjdic.cgi?1ZDQword",
268
+ "title": "WWWJDIC: Word Display",
269
+ "translation": "伝言 [つてこと] /(n) (1) (See 伝言・でんごん) verbal message/word (from someone)/(n) (2) rumour/rumor/\n伝言 [でんごん] /(n,vs) verbal message/word (from someone)/(P)/\n一議 [いちぎ] /(n) word (opinion, objection)/\n言の葉 [ことのは;ことのえ] /(n) (1) (arch) word/(n) (2) (See 和歌) waka (classic Japanese poem, esp. a tanka)/\nワード /(n) (1) word/(n) (2) {comp} word/(n) (3) {comp} Word/Microsoft Word/(P)/\n語 [ご] /(n,n-suf) (1) language/(n,n-suf,ctr) (2) word/(P)/\n単語 [たんご] /(n,adj-no) {ling} word/vocabulary/(usually) single-character word/(P)/\n訪れ [おとずれ] /(n) (1) visit/call/(n) (2) arrival (e.g. of spring)/advent/coming/appearance/(n) (3) news/tidings/word/(P)/\n音沙汰;音さた [おとさた] /(n) news (from someone)/word/contact/\n言 [げん(P);こと] /(n) word/remark/statement/(P)/\n知らせ(P);報せ [しらせ] /(n) (1) (See お知らせ) news/word/tidings/notice/notification/information/(n) (2) omen/(P)/\n言葉(P);詞;辞 [ことば(P);けとば(言葉)(ok)] /(n) (1) (See 言語) language/dialect/(n) (2) (See 単語) word/words/phrase/term/expression/remark/(n) (3) speech/(manner of) speaking/(n) (4) learning to speak/language acquisition/(P)/",
270
+ "message": null,
271
+ "lines": [
272
+ "伝言 [つてこと] /(n) (1) (See 伝言・でんごん) verbal message/word (from someone)/(n) (2) rumour/rumor/",
273
+ "伝言 [でんごん] /(n,vs) verbal message/word (from someone)/(P)/",
274
+ "一議 [いちぎ] /(n) word (opinion, objection)/",
275
+ "言の葉 [ことのは;ことのえ] /(n) (1) (arch) word/(n) (2) (See 和歌) waka (classic Japanese poem, esp. a tanka)/",
276
+ "ワード /(n) (1) word/(n) (2) {comp} word/(n) (3) {comp} Word/Microsoft Word/(P)/",
277
+ "語 [ご] /(n,n-suf) (1) language/(n,n-suf,ctr) (2) word/(P)/",
278
+ "単語 [たんご] /(n,adj-no) {ling} word/vocabulary/(usually) single-character word/(P)/",
279
+ "訪れ [おとずれ] /(n) (1) visit/call/(n) (2) arrival (e.g. of spring)/advent/coming/appearance/(n) (3) news/tidings/word/(P)/",
280
+ "音沙汰;音さた [おとさた] /(n) news (from someone)/word/contact/",
281
+ "言 [げん(P);こと] /(n) word/remark/statement/(P)/",
282
+ "知らせ(P);報せ [しらせ] /(n) (1) (See お知らせ) news/word/tidings/notice/notification/information/(n) (2) omen/(P)/",
283
+ "言葉(P);詞;辞 [ことば(P);けとば(言葉)(ok)] /(n) (1) (See 言語) language/dialect/(n) (2) (See 単語) word/words/phrase/term/expression/remark/(n) (3) speech/(manner of) speaking/(n) (4) learning to speak/language acquisition/(P)/"
284
+ ],
285
+ "content": [
286
+ {
287
+ "word": "伝言",
288
+ "kana": "つてこと",
289
+ "text": "(n)(1) (See 伝言・でんごん) verbal message/word (from someone)/(n) (2) rumour/rumor",
290
+ "meanings": [
291
+ "(n) (1) (See 伝言・でんごん) verbal message",
292
+ "word (from someone)",
293
+ "(n) (2) rumour",
294
+ "rumor"
295
+ ]
296
+ },
232
297
  {
233
- word : translation uri for raw display format
234
- 'title' : title (extracted from <br>TITLE<br> tags in raw display format)
235
- 'translation' : translation content (extracted from <pre>TRANSLATION</pre> raw display format
236
- 'message' : possible error message or result (extracted from <p>MESSAGE\n raw display format
298
+ "word": "伝言",
299
+ "kana": "でんごん",
300
+ "text": "(n,vs) verbal message/word (from someone)/(P)",
301
+ "meanings": [
302
+ "(n,vs) verbal message",
303
+ "word (from someone)",
304
+ "(P)"
305
+ ]
306
+ },
307
+ {
308
+ "word": "一議",
309
+ "kana": "いちぎ",
310
+ "text": "(n) word (opinion, objection)"
311
+ },
312
+ {
313
+ "word": "言の葉",
314
+ "kana": "ことのは;ことのえ",
315
+ "text": "(n) (1) (arch) word/(n) (2) (See 和歌) waka (classic Japanese poem, esp. a tanka)",
316
+ "meanings": [
317
+ "(n) (1) (arch) word",
318
+ "(n) (2) (See 和歌) waka (classic Japanese poem, esp. a tanka)"
319
+ ]
320
+ },
321
+ {
322
+ "kana": "ワード",
323
+ "word": "ワード",
324
+ "text": "(n) (1) word/(n) (2) {comp} word/(n) (3) {comp} Word/Microsoft Word/(P)",
325
+ "meanings": [
326
+ "(n) (1) word",
327
+ "(n) (2) {comp} word",
328
+ "(n) (3) {comp} Word",
329
+ "Microsoft Word",
330
+ "(P)"
331
+ ]
332
+ },
333
+ {
334
+ "word": "語",
335
+ "kana": "ご",
336
+ "text": "(n,n-suf) (1) language/(n,n-suf,ctr) (2) word/(P)",
337
+ "meanings": [
338
+ "(n,n-suf) (1) language",
339
+ "(n,n-suf,ctr) (2) word",
340
+ "(P)"
341
+ ]
342
+ },
343
+ {
344
+ "word": "単語",
345
+ "kana": "たんご",
346
+ "text": "(n,adj-no) {ling} word/vocabulary/(usually) single-character word/(P)",
347
+ "meanings": [
348
+ "(n,adj-no) {ling} word",
349
+ "vocabulary",
350
+ "(usually) single-character word",
351
+ "(P)"
352
+ ]
353
+ },
354
+ {
355
+ "word": "訪れ",
356
+ "kana": "おとずれ",
357
+ "text": "(n) (1) visit/call/(n) (2) arrival (e.g. of spring)/advent/coming/appearance/(n) (3) news/tidings/word/(P)",
358
+ "meanings": [
359
+ "(n) (1) visit",
360
+ "call",
361
+ "(n) (2) arrival (e.g. of spring)",
362
+ "advent",
363
+ "coming",
364
+ "appearance",
365
+ "(n) (3) news",
366
+ "tidings",
367
+ "word",
368
+ "(P)"
369
+ ]
370
+ },
371
+ {
372
+ "word": "音沙汰;音さた",
373
+ "kana": "おとさた",
374
+ "text": "(n) news (from someone)/word/contact",
375
+ "meanings": [
376
+ "(n) news (from someone)",
377
+ "word",
378
+ "contact"
379
+ ]
380
+ },
381
+ {
382
+ "word": "言",
383
+ "kana": "げん(P);こと",
384
+ "text": "(n) word/remark/statement/(P)",
385
+ "meanings": [
386
+ "(n) word",
387
+ "remark",
388
+ "statement",
389
+ "(P)"
390
+ ]
391
+ },
392
+ {
393
+ "word": "知らせ(P);報せ",
394
+ "kana": "しらせ",
395
+ "text": "(n) (1) (See お知らせ) news/word/tidings/notice/notification/information/(n) (2) omen/(P)",
396
+ "meanings": [
397
+ "(n) (1) (See お知らせ) news",
398
+ "word",
399
+ "tidings",
400
+ "notice",
401
+ "notification",
402
+ "information",
403
+ "(n) (2) omen",
404
+ "(P)"
405
+ ]
406
+ },
407
+ {
408
+ "word": "言葉(P);詞;辞",
409
+ "kana": "ことば(P);けとば(言葉)(ok)",
410
+ "text": "(n) (1) (See 言語) language/dialect/(n) (2) (See 単語) word/words/phrase/term/expression/remark/(n) (3) speech/(manner of) speaking/(n) (4) learning to speak/language acquisition/(P)",
411
+ "meanings": [
412
+ "(n) (1) (See 言語) language",
413
+ "dialect",
414
+ "(n) (2) (See 単語) word",
415
+ "words",
416
+ "phrase",
417
+ "term",
418
+ "expression",
419
+ "remark",
420
+ "(n) (3) speech",
421
+ "(manner of) speaking",
422
+ "(n) (4) learning to speak",
423
+ "language acquisition",
424
+ "(P)"
425
+ ]
237
426
  }
238
-
427
+ ]
428
+ }
429
+ ```
430
+ Please note that the resulting JSON is not pretty-printed, as shown
431
+ here.
239
432
  * Now let's come to the second parameter of the methods above (set to
240
- `nil` in the examples), the arguments for the translation. The default
241
- is to translate to/from English/Japanese with normal display layout
242
- and no other specificities, except that the API automatically
243
- identifies Japanese or English and manages the romaji and so on. The
244
- returned URL is the default EDR&amp;DG one. What if the user wants to
245
- customize something? The `args`, second parameter of all those methods
246
- above, is a dictionary (hash map) that allows to specify which
247
- parameters and to which values they shall be set.
248
-
249
- Valid parameters, and their values are:
250
-
433
+ `nil` in the examples), the arguments for the translation.
434
+ The default is to translate to/from English/Japanese with normal
435
+ display layout and no other specificities, except that the API
436
+ automatically identifies Japanese or English and manages the romaji
437
+ and so on.
438
+ The returned URL is the default EDR&DG one, as required by Jim Breen
439
+ himself.
440
+ What if the user wants to customize something?
441
+ The `args`, second parameter of all those methods above, is a
442
+ dictionary (hash map) that allows specifying which parameters and to
443
+ which values they shall be set.
444
+
445
+ Valid parameters, and their values are:
251
446
  * `dict` parameter allows both numbers and (exact) strings to select
252
- dictionaries: `'1'`, `'2'`, `'3'`, `'4'`, `'5'`, `'6'`, `'7'`,
253
- `'8'`, `'9'`, `'A'`, `'B'`, `'C'`, `'D'`, `'E'`, `'F'`, `'G'`,
254
- `'H'`, `'I'`, `'J'`, `'K'`, `'L'`, `'M'`, `'N'`, `'O'`, `'P'`,
255
- `'Q'`, and `'R'`, together with the full (exact) strings
256
- `'Jpn-Eng General (EDICT)'`, `'Japanese Names (ENAMDICT)'`,
257
- `'Computing/Telecomms'`, `'Life Sciences/Bio-Med'`,
258
- `'Legal Terms'`, `'Finance/Marketing'`, `'Buddhism'`,
259
- `'Miscellaneous'`, `'Special Text-glossing'`,
260
- `'Engineering/Science'`, `'Linguistics'`,
261
- `'River & Water Systems'`, `'Automobile Industry'`,
262
- `'Japanese Wordnet'`, `'Work-in-progress File'`,
263
- `'Japanese-German (WaDoku)'`, `'Japanese-French'`,
264
- `'Japanese-Russian'`, `'Japanese-Swedish'`,
265
- `'Japanese-Hungarian'`, `'Japanese-Spanish'`, `'Japanese-Dutch'`,
266
- `'Japanese-Slovenian'`, `'Japanese-Italian'`, `'Untranslated'`,
267
- `'Combined Jpn-Eng'` and `'Expanded Text-glossing'`.
447
+ dictionaries:
448
+
449
+ | Number | Dictionary Name |
450
+ |:------:|---------------------------|
451
+ | 1 | Jpn-Eng General (EDICT) |
452
+ | 2 | Japanese Names (ENAMDICT) |
453
+ | 3 | Computing/Telecomms |
454
+ | 4 | Life Sciences/Bio-Med |
455
+ | 5 | Legal Terms |
456
+ | 6 | Finance/Marketing |
457
+ | 7 | Buddhism |
458
+ | 8 | Miscellaneous |
459
+ | 9 | Special Text-glossing |
460
+ | A | Engineering/Science |
461
+ | B | Linguistics |
462
+ | C | River & Water Systems |
463
+ | D | Automobile Industry |
464
+ | E | Japanese Wordnet |
465
+ | F | Work-in-progress File |
466
+ | G | Japanese-German (WaDoku) |
467
+ | H | Japanese-French |
468
+ | I | Japanese-Russian |
469
+ | J | Japanese-Swedish |
470
+ | K | Japanese-Hungarian |
471
+ | L | Japanese-Spanish |
472
+ | M | Japanese-Dutch |
473
+ | N | Japanese-Slovenian |
474
+ | O | Japanese-Italian |
475
+ | P | Untranslated |
476
+ | Q | Combined Jpn-Eng |
477
+ | R | Expanded Text-glossing |
478
+
268
479
  * `display` parameter to select the final format of the referred
269
480
  HTML page (either regular HTML or raw): `:regular`, `:raw`.
270
481
  * `server` allows the user to select from the default URL (at
271
482
  Electronic Dictionaries R&D Group) or the Monash university URL:
272
483
  `:edrdg`, `:monash`.
273
484
 
274
- Some examples of these parameters' usage:
485
+ Some examples of these parameters' usage:
486
+ * `my_wwwjdic.translate 'Sprache', dict: 'G', key: english`, this
487
+ translates using the `F` dictionary, that is the German one
488
+ * `my_wwwjdic.uri 'Sprache', dict: 'G'`, same as above, but returns
489
+ the translation URL, instead
490
+ * `my_wwwjdic.raw_uri 'Sprache', dict: 'G'`, same as above, but
491
+ returns the translation URL with raw display, instead
492
+ * `my_wwwjdic.uri 'Sprache', dict: 'G', display: raw`
493
+
494
+ ## Maintainers
495
+ * [Marco Bresciani](https://savannah.nongnu.org/users/marcobresciani)
496
+
497
+ ## Thanks
498
+ * *Contributor*: [Jim
499
+ Breen](http://www.csse.monash.edu.au/~jwb/index.html)
500
+
501
+ * *Author*: [Jon Maken](mailto:jon.forums@gmail.com), [An HTTP/HTTPS/FTP
502
+ file downloader library/CLI based upon MiniPortile's HTTP
503
+ implementation.](https://gist.github.com/jonforums/2202048)
504
+ About *An HTTP/HTTPS/FTP file downloader library/CLI based upon
505
+ MiniPortile's HTTP implementation*, please note that "License:
506
+ 3-clause BSD".
507
+ This license is GNU GPLv3 compatible according to
508
+ <http://www.gnu.org/licenses/license-list.en.html#ModifiedBSD>.
509
+
510
+ FSIJ理事会の理事長、[新部裕](mailto:gniibe@fsij.org)さんの日本語の翻訳。
511
+ Japanese translation by [Yutaka Niibe](mailto:gniibe@fsij.org),
512
+ President of Free Software Initiative of Japan.
513
+
514
+ Thanks to Łukasz Niemier for his suggestions on possible improvements.
515
+
516
+ ## Contributing
517
+ WWWJDic tries to follow semantic versioning (see <http://semver.org/>).
518
+ There may be backward incompatible changes each time minor version
519
+ number changes, but that any tiny version number change should be bug
520
+ fixes and internal changes only.
521
+ Be sure to read the `CHANGELOG` each time we cut a new release and lock
522
+ your gems accordingly.
275
523
 
276
- my_wwwjdic.translate 'sprache', dict: 'F' # this translates using the 'F' dictionary, that is the German one
524
+ RDoc documentation available in the `html` folder.
277
525
 
278
- my_wwwjdic.uri 'sprache', dict: 'F' # same as above, but returns the translation URL, instead
526
+ The easiest way to get help with WWWJDic is to post a message to the
527
+ mailing list: `http://lists.nongnu.org/mailman/listinfo/wwwjdic-users`
279
528
 
280
- my_wwwjdic.raw_uri 'sprache', dict: 'F' # same as above, but returns the translation URL with raw display, instead
529
+ Feel free to post any question there, developers are responsive and will
530
+ be happy to help you figure out how to use WWWJDic, or help you
531
+ determine whether it's the right tool for the task you are working on.
281
532
 
282
- my_wwwjdic.uri 'sprache', dict: 'F', display: raw # same as above
533
+ Please make your posts to the list as specific as possible, including
534
+ code samples and output where relevant.
535
+ Do not post any information that should not be shared publicly, and be
536
+ sure to reduce your example code as much as possible so that those who
537
+ are responding to your question can more easily see what the issue might
538
+ be.
283
539
 
284
- ------------------------------------------
540
+ If you've found a bug, want to submit a patch, or have a feature
541
+ request, please enter a ticket into our bug tracker:
542
+ `https://savannah.nongnu.org/bugs/?func=additem&group=wwwjdic`
285
543
 
286
- wwwjdic
544
+ We strongly encourage adding bug reports with failing tests or at least
545
+ a reduced example that demonstrates the problem.
546
+
547
+ Similarly, patches should include tests, API documentation, and an
548
+ update to the manual where relevant.
549
+ Feel free to clone early though and participate in the project, if you
550
+ just want some feedback, or a code review before preparing your code to
551
+ be merged.
552
+
553
+ If you are unsure about whether you've found a bug, or want to check to
554
+ see whether we'd be interested in the feature you want to add before you
555
+ start working on it, feel free to post to our mailing list.
556
+
557
+ ## License
558
+ SPDX-FileCopyrightText: 2014 Marco Bresciani
559
+
560
+ SPDX-License-Identifier: GFDL-1.3-or-later
287
561
 
288
- Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
562
+ (C) 2014 Marco Bresciani
289
563
 
290
564
  This file is part of wwwjdic.
291
565