latinirb 1.0.pre.3 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 65e117fbf0fd295f157d7eeff05fcdc23e54acf1
4
- data.tar.gz: 9c67d963bcf03cb9a53edcb12932b3f65e522911
2
+ SHA256:
3
+ metadata.gz: eaadf5a40d1097441bc2b6a201c6381723769ceee5954226697acca7ef6a2c46
4
+ data.tar.gz: c5c055cee696462f548e47fac842dbf691fd508c2dcecdfd77ed8c8e75ff18c2
5
5
  SHA512:
6
- metadata.gz: 7965156c7e956cf6458a3637c1bd1ab9e0248c81136eeac223aa082dca259cdd3b7276ac611d28ee24237cde6d39bd4f1ded71a541e4ab2f59ae97de9b85c666
7
- data.tar.gz: 1acf9cd8d26e9aaa997b611e7dacf30caf199b32cfd6a0aa7a5cf21e92e01b54459646dccb1998f004d9e43312954744ef9ee4beb505e1b58750e2945b6d913c
6
+ metadata.gz: a275f0f6b46d7942b7f1d864be2e8484ec933668a93fec7a883b25eff725c829fdb15c4852087b3b7bae1cb01e99e673b87fc5c68243fb763cf3f5601309057d
7
+ data.tar.gz: 75b50250d3be1928de3b59c7f6d76bef483d8ff464c69cc9e448e84071c171c61d1ddf7c925e1efb32d086949f843b439e5f8d955abfd489b9a0b756c021a1f2
@@ -1,7 +1,4 @@
1
1
  #!/usr/bin/env ruby
2
-
3
- require 'active_support/all'
4
2
  require 'latinirb'
5
- require 'pp'
6
3
 
7
4
  Linguistics::Latin::Util::LatinIRB.begin
@@ -46,7 +46,7 @@ module Linguistics
46
46
  @CONF = IRB.conf
47
47
 
48
48
  # This will be the script IRB sources on execution. You can
49
- # pre-define variables (@aFirst, etc.) and convenience methods here.
49
+ # pre-define variables (AFIRST, etc.) and convenience methods here.
50
50
 
51
51
  @CONF[:SCRIPT]=File.join(File.dirname(__FILE__), %w|latinirb_paradigmatic_verbs.rb|)
52
52
 
@@ -84,14 +84,17 @@ As well as some primary irregulars:
84
84
 
85
85
  Tab-completion of the conjugation \"vectors\" is supported.
86
86
 
87
- Helpful methods `chart(verb)` which prints a verb's chart as well as `b(verb)`
88
- which prints the
89
- `active_voice_indicative_mood_present_tense_first_person_singular_number` of
90
- `verb`.
87
+ Helpful methods:
88
+
89
+ * `LatinVerb.new("amō amāre amāvī amatum")`: create a new LatinVerb instance
90
+ * `v(latex_representation_of_macronized_string)`
91
+ * `chart(verb)`: prints a verb's chart
92
+ * `b(verb)`: prints the `active_voice_indicative_mood_present_tense_first_person_singular_number` of `verb`
91
93
 
92
94
  Verb strings can be entered using the LaTeX-style ASCII representations of
93
95
  macron-bearing letters e.g.: \\={e}, \\={a}, and NB: \\={\\i}
94
- EOT
96
+ EOT
97
+ puts ""
95
98
  end
96
99
 
97
100
  def self.set_required_main_irb_context
@@ -3,9 +3,11 @@ TO_BE = Linguistics::Latin::Verb::LatinVerb.new %q(sum esse fuī futūrus)
3
3
  TO_CARRY = Linguistics::Latin::Verb::LatinVerb.new %q(ferō ferre tulī lātum)
4
4
  TO_COME = Linguistics::Latin::Verb::LatinVerb.new %q(eō īre ivī itum)
5
5
 
6
- AFIRST_ASCII_STRING = 'am\={o}, am\={a}re, am\={a}v\={\i}, amatum'
6
+ AFIRST_ASCII_STRING = 'am\={o} am\={a}re am\={a}v\={\i} amatum'
7
7
  AFIRST_STRING = Text::Latex::Util::Macronconversions.convert(AFIRST_ASCII_STRING, 'mc')
8
8
 
9
+ SEED = {}
10
+
9
11
  def j
10
12
  puts AFIRST.active_voice_indicative_mood_present_tense_first_person_singular_number
11
13
  end
@@ -15,6 +17,8 @@ def b(f)
15
17
  end
16
18
 
17
19
  module Kernel
20
+ LatinVerb = Linguistics::Latin::Verb::LatinVerb
21
+
18
22
  def chart(latin_verb=nil)
19
23
  puts "USAGE: chart (a_latin_verb|latin_verb_string)" if latin_verb.nil?
20
24
  verb = is_latinverb?(latin_verb) ? latin_verb : verb_for_string(latin_verb)
@@ -26,9 +30,34 @@ module Kernel
26
30
  end
27
31
 
28
32
  def verb_for_string(verb_string)
33
+ if verb_string !~ /\\/
34
+ raise ArgumentError.new "No \\ characters detected in #{verb_string}. Use single-quote to ensure they aren't escaped."
35
+ end
29
36
  macronized_string = Text::Latex::Util::Macronconversions.convert(verb_string, 'mc').gsub(',', '')
30
37
  Linguistics::Latin::Verb::LatinVerb.new(macronized_string)
31
38
  end
39
+
40
+ def load_seedfile
41
+ if File.exists?("seedfile.txt")
42
+ File.open("seedfile.txt")
43
+ .readlines
44
+ .to_a
45
+ .filter { |e| e =~ /\w+/ }
46
+ .reduce(SEED) do |memo, l|
47
+ k, v = l.split(':')
48
+ memo[k] = verb_for_string(v)
49
+ memo
50
+ end
51
+ end
52
+ keys = SEED.keys
53
+ if keys.count > 0 && keys.count < 10
54
+ puts "Imported #{SEED.keys.count} items:"
55
+ keys.each { |k| puts k }
56
+ end
57
+ end
58
+
59
+ alias :s :load_seedfile
60
+ alias :v :verb_for_string
32
61
  end
33
62
 
34
63
  # Start up the REPL
@@ -2,7 +2,7 @@ module Linguistics
2
2
  module Latin
3
3
  module Util
4
4
  class LatinIRB
5
- VERSION = "1.0.pre.3"
5
+ VERSION = "1.0.4"
6
6
  end
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,85 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: latinirb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.pre.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven G. Harms
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-19 00:00:00.000000000 Z
11
+ date: 2020-09-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: activesupport
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '4'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '4'
27
- - !ruby/object:Gem::Dependency
28
- name: latinverb
14
+ name: linguistics_latin
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
- - - ">="
17
+ - - "~>"
32
18
  - !ruby/object:Gem::Version
33
- version: 1.0.0.pre.2
19
+ version: '1.0'
34
20
  type: :runtime
35
21
  prerelease: false
36
22
  version_requirements: !ruby/object:Gem::Requirement
37
23
  requirements:
38
- - - ">="
24
+ - - "~>"
39
25
  - !ruby/object:Gem::Version
40
- version: 1.0.0.pre.2
26
+ version: '1.0'
41
27
  - !ruby/object:Gem::Dependency
42
- name: linguistics_latin
28
+ name: macronconversions
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
- - - ">="
31
+ - - "~>"
46
32
  - !ruby/object:Gem::Version
47
- version: '0'
33
+ version: '1.0'
48
34
  type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
- - - ">="
38
+ - - "~>"
53
39
  - !ruby/object:Gem::Version
54
- version: '0'
40
+ version: '1.0'
55
41
  - !ruby/object:Gem::Dependency
56
- name: macronconversions
42
+ name: latinverb
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
- - - ">="
45
+ - - "~>"
60
46
  - !ruby/object:Gem::Version
61
- version: '0'
47
+ version: '1.0'
62
48
  type: :runtime
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
- - - ">="
52
+ - - "~>"
67
53
  - !ruby/object:Gem::Version
68
- version: '0'
54
+ version: '1.0'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: latinverb_chart_presenter
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
- - - ">="
59
+ - - "~>"
74
60
  - !ruby/object:Gem::Version
75
- version: '0'
61
+ version: '1.0'
76
62
  type: :runtime
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - ">="
66
+ - - "~>"
81
67
  - !ruby/object:Gem::Version
82
- version: '0'
68
+ version: '1.0'
83
69
  description: This gem takes initial data describing a LatinVerb and allows this is
84
70
  be instantiated into an IRB session. Here the verb can be queried or displayed.
85
71
  email:
@@ -89,17 +75,11 @@ executables:
89
75
  extensions: []
90
76
  extra_rdoc_files: []
91
77
  files:
92
- - ".gitignore"
93
- - Gemfile
94
- - Gemfile.lock
95
- - README.markdown
96
- - Rakefile
78
+ - "./lib/latinirb.rb"
79
+ - "./lib/latinirb/LatinIRB.rb"
80
+ - "./lib/latinirb/latinirb_paradigmatic_verbs.rb"
81
+ - "./lib/latinirb/version.rb"
97
82
  - bin/latinirb
98
- - latinirb.gemspec
99
- - lib/latinirb.rb
100
- - lib/latinirb/LatinIRB.rb
101
- - lib/latinirb/latinirb_paradigmatic_verbs.rb
102
- - lib/latinirb/version.rb
103
83
  homepage: http://rubygems.org/gems/latinverb
104
84
  licenses: []
105
85
  metadata: {}
@@ -114,12 +94,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
114
94
  version: '0'
115
95
  required_rubygems_version: !ruby/object:Gem::Requirement
116
96
  requirements:
117
- - - ">"
97
+ - - ">="
118
98
  - !ruby/object:Gem::Version
119
- version: 1.3.1
99
+ version: '0'
120
100
  requirements: []
121
- rubyforge_project:
122
- rubygems_version: 2.2.2
101
+ rubygems_version: 3.1.2
123
102
  signing_key:
124
103
  specification_version: 4
125
104
  summary: Gem designed to explore verbs created by LatinVerb
data/.gitignore DELETED
@@ -1,11 +0,0 @@
1
- pkg/*
2
- .DS_*
3
- *.gem
4
- *.sw?
5
- *.vim
6
- **/*.vim
7
- .bundle
8
- .rvmrc
9
- *doc
10
- tags
11
- TODO
data/Gemfile DELETED
@@ -1,5 +0,0 @@
1
- source "http://rubygems.org"
2
-
3
- # Specify your gem's dependencies in latinirb.gemspec
4
- gemspec
5
- gem 'byebug'
@@ -1,83 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- latinirb (1.0.pre)
5
- activesupport (>= 4)
6
- latinverb (~> 0.9.5)
7
- latinverb_chart_presenter
8
- linguistics_latin
9
- macronconversions
10
-
11
- GEM
12
- remote: http://rubygems.org/
13
- specs:
14
- activesupport (4.1.2)
15
- i18n (~> 0.6, >= 0.6.9)
16
- json (~> 1.7, >= 1.7.7)
17
- minitest (~> 5.1)
18
- thread_safe (~> 0.1)
19
- tzinfo (~> 1.1)
20
- byebug (3.1.2)
21
- columnize (~> 0.8)
22
- debugger-linecache (~> 1.2)
23
- columnize (0.8.9)
24
- debugger-linecache (1.2.0)
25
- i18n (0.6.9)
26
- json (1.8.1)
27
- latinverb (0.9.5)
28
- latinverb_classifier (= 1.0.0.pre.1)
29
- latinverb_deponent_string_deriver
30
- latinverb_imperative_block
31
- latinverb_irregular_imperatives_retriever
32
- latinverb_irregular_infinitives_retriever
33
- latinverb_irregular_participles_retriever
34
- latinverb_irregular_verb_definition_consumer
35
- latinverb_principal_parts_extractor
36
- latinverb_querent_for_classification_builder
37
- latinverb_stem_deriver
38
- latinverb_type_evaluator
39
- linguistics_latin (~> 0.0.2)
40
- linguistics_latin_tense_block
41
- macronconversions
42
- multi_json (~> 1.8)
43
- rake
44
- latinverb_chart_presenter (0.0.1)
45
- latinverb_classifier (1.0.0.pre.1)
46
- linguistics_latin (~> 0.0.2)
47
- latinverb_deponent_string_deriver (1.0.0.pre.1)
48
- latinverb_imperative_block (0.0.1)
49
- linguistics_latin (~> 0.0.2)
50
- latinverb_irregular_imperatives_retriever (0.0.1)
51
- latinverb_irregular_infinitives_retriever (0.0.1)
52
- latinverb_irregular_verb_definition_consumer
53
- linguistics_latin
54
- latinverb_irregular_participles_retriever (0.0.1)
55
- latinverb_irregular_verb_definition_consumer (0.0.1)
56
- linguistics_latin
57
- latinverb_principal_parts_extractor (0.0.1)
58
- latinverb_querent_for_classification_builder (0.0.1)
59
- latinverb_irregular_infinitives_retriever
60
- linguistics_latin (~> 0.0.2)
61
- linguistics_latin_tense_block
62
- latinverb_stem_deriver (0.0.1)
63
- latinverb_deponent_string_deriver
64
- latinverb_type_evaluator (0.0.1)
65
- latinverb_deponent_string_deriver
66
- linguistics_latin (~> 0.0.2)
67
- linguistics_latin (0.0.2)
68
- linguistics_latin_tense_block (0.0.1)
69
- linguistics_latin
70
- macronconversions (0.0.1)
71
- minitest (5.3.5)
72
- multi_json (1.10.1)
73
- rake (10.3.2)
74
- thread_safe (0.3.4)
75
- tzinfo (1.2.1)
76
- thread_safe (~> 0.1)
77
-
78
- PLATFORMS
79
- ruby
80
-
81
- DEPENDENCIES
82
- byebug
83
- latinirb!
@@ -1,289 +0,0 @@
1
- # LatinIRB
2
-
3
- ## DESCRIPTION
4
-
5
- LatinIRB is an IRB session in which a user can interact with paradigmatic Latin
6
- verbs (`@aFirst`, `@aSecond`, `@aThird`, `@aThirdIO`, `@aFourth`) as calculated
7
- heuristically by the [LatinVerb](https://github.com/sgharms/LatinVerb) library.
8
-
9
- The methods of chief interest will be those that are _vectors_ within the
10
- LatinVerb parlance i.e. methods that uniquely identify a specific conjugated
11
- form of a verb.
12
-
13
- An primary use case would be:
14
-
15
- @aFirst.active\_voice\_indicative\_mood\_present\_tense\_first\_person\_singular\_number #=> amō
16
-
17
- Upon opening the session, the student may play with verbs offered for
18
- exploration. These are the standard paradigmatics verbs presented in Wheelock
19
- as well as three core irregular verbs:
20
-
21
- <table>
22
- <tr><th>Varible </th> <th>Parts </th> <th> Meaning</th></tr>
23
- <tr><td>@aFirst </td> <td>amō amāre amāvī amatum </td> <td> to love / like</td></tr>
24
- <tr><td>@aSecond </td> <td>moneō monēre monvī monitum</td> <td> to warn / advise</td></tr>
25
- <tr><td>@aThird </td> <td>agō agere ēgī actum </td> <td> to do / lead / undertake</td></tr>
26
- <tr><td>@aThirdIO</td> <td>capiō capere cēpī captum </td> <td> to grab / seize</td></tr>
27
- <tr><td>@aFourth </td> <td>audiō audīre audīvī auditum</td> <td> to hear</td></tr>
28
- <tr><td>@toBe </td> <td>sum esse fuī futūrus</td> <td> to be </td></tr>
29
- <tr><td>@toCarry </td> <td>ferō ferre tulī lātum</td> <td> to carry </td></tr>
30
- <tr><td>@toCome </td> <td>eō īre īvī itum</td> <td> to come </td></tr>
31
- </table>
32
-
33
- ## INSTANTIATING
34
-
35
- Because LatinVerb attempts to preserve the phonographic data of a Latin verb,
36
- the quantity of the vowels, the LatinVerb-definining string _must_ contain the
37
- macron data so that the heuristics work. To this end, you may use
38
- MacronConversions to convert ASCII TeX-style transliterations of macronized
39
- vowels to produce the correct string:
40
-
41
- lv = LatinVerb.new(Text::Latex::Util::Macronconversions.convert('am\={o} am\={a}re am\={a}v\={i} amatum', :mc))
42
- lv.active\_voice\_indicative\_mood\_present\_tense\_first\_person\_singular\_number #=> amō
43
-
44
- ## VIEWING
45
-
46
- The environment takes advantage of Ruby's UTF-8 support to display the verbs
47
- with macrons (notation representing the quantity of the vowels). I recommend
48
- that you use iTerm2, urxvt, or Apple's Terminal.app for viewing these entries.
49
-
50
- ## GENERATING VERBS
51
-
52
- Typically, in the code I have used the macron-ized character because `vim` and my terminal of choice
53
- both understand it.
54
-
55
- LatinVerb.new %w(amō amāre amāvī amatum)
56
-
57
- ### CHART VIEW
58
-
59
- To view the chart of a verb, use LatinVerb.chart. This is a basic
60
- chart that will look familiar to students.
61
-
62
- ## EXECUTING METHODS
63
-
64
- Every verb in latin is a "vector" comprised of the voice / mood / tense /
65
- number / and person.
66
-
67
- ### SINGULAR VECTOR
68
-
69
- As such methods are of the form:
70
-
71
- (active|passive)\_voice\_(indicative|subjunctive)\_mood\_(present|imperfect|perfect|pastperfect|futureperfect|etc.)tense\_(first|second|third)\_person\_(singular|plural)\_number
72
-
73
- This will return a single value. Where the result is ambiguous (e.g. 'number'
74
- is not provided) multiple values are returned. an exhaustive list of options
75
- follows below.
76
-
77
- ### MULTIPLEX VECTORS
78
-
79
- Several convenience methods exist which load multiple vectors at the same time
80
- such as "present tense." For their invocation, see below
81
-
82
- ### Comprehensive List of Singular Vectors
83
-
84
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense\_first\_person\_singular\_number
85
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense\_second\_person\_singular\_number
86
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense\_third\_person\_singular\_number
87
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense\_first\_person\_plural\_number
88
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense\_second\_person\_plural\_number
89
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense\_third\_person\_plural\_number
90
-
91
- * LatinVerb.active\_voice\_indicative\_mood\_imperfect\_tense\_first\_person\_singular\_number
92
- * LatinVerb.active\_voice\_indicative\_mood\_imperfect\_tense\_second\_person\_singular\_number
93
- * LatinVerb.active\_voice\_indicative\_mood\_imperfect\_tense\_third\_person\_singular\_number
94
- * LatinVerb.active\_voice\_indicative\_mood\_imperfect\_tense\_first\_person\_plural\_number
95
- * LatinVerb.active\_voice\_indicative\_mood\_imperfect\_tense\_second\_person\_plural\_number
96
- * LatinVerb.active\_voice\_indicative\_mood\_imperfect\_tense\_third\_person\_plural\_number
97
-
98
- * LatinVerb.active\_voice\_indicative\_mood\_future\_tense\_first\_person\_singular\_number
99
- * LatinVerb.active\_voice\_indicative\_mood\_future\_tense\_second\_person\_singular\_number
100
- * LatinVerb.active\_voice\_indicative\_mood\_future\_tense\_third\_person\_singular\_number
101
- * LatinVerb.active\_voice\_indicative\_mood\_future\_tense\_first\_person\_plural\_number
102
- * LatinVerb.active\_voice\_indicative\_mood\_future\_tense\_second\_person\_plural\_number
103
- * LatinVerb.active\_voice\_indicative\_mood\_future\_tense\_third\_person\_plural\_number
104
-
105
- * LatinVerb.active\_voice\_indicative\_mood\_perfect\_tense\_first\_person\_singular\_number
106
- * LatinVerb.active\_voice\_indicative\_mood\_perfect\_tense\_second\_person\_singular\_number
107
- * LatinVerb.active\_voice\_indicative\_mood\_perfect\_tense\_third\_person\_singular\_number
108
- * LatinVerb.active\_voice\_indicative\_mood\_perfect\_tense\_first\_person\_plural\_number
109
- * LatinVerb.active\_voice\_indicative\_mood\_perfect\_tense\_second\_person\_plural\_number
110
- * LatinVerb.active\_voice\_indicative\_mood\_perfect\_tense\_third\_person\_plural\_number
111
-
112
- * LatinVerb.active\_voice\_indicative\_mood\_pastperfect\_tense\_first\_person\_singular\_number
113
- * LatinVerb.active\_voice\_indicative\_mood\_pastperfect\_tense\_second\_person\_singular\_number
114
- * LatinVerb.active\_voice\_indicative\_mood\_pastperfect\_tense\_third\_person\_singular\_number
115
- * LatinVerb.active\_voice\_indicative\_mood\_pastperfect\_tense\_first\_person\_plural\_number
116
- * LatinVerb.active\_voice\_indicative\_mood\_pastperfect\_tense\_second\_person\_plural\_number
117
- * LatinVerb.active\_voice\_indicative\_mood\_pastperfect\_tense\_third\_person\_plural\_number
118
-
119
- * LatinVerb.active\_voice\_indicative\_mood\_futureperfect\_tense\_first\_person\_singular\_number
120
- * LatinVerb.active\_voice\_indicative\_mood\_futureperfect\_tense\_second\_person\_singular\_number
121
- * LatinVerb.active\_voice\_indicative\_mood\_futureperfect\_tense\_third\_person\_singular\_number
122
- * LatinVerb.active\_voice\_indicative\_mood\_futureperfect\_tense\_first\_person\_plural\_number
123
- * LatinVerb.active\_voice\_indicative\_mood\_futureperfect\_tense\_second\_person\_plural\_number
124
- * LatinVerb.active\_voice\_indicative\_mood\_futureperfect\_tense\_third\_person\_plural\_number
125
-
126
- * LatinVerb.passive\_voice\_indicative\_mood\_present\_tense\_first\_person\_singular\_number
127
- * LatinVerb.passive\_voice\_indicative\_mood\_present\_tense\_second\_person\_singular\_number
128
- * LatinVerb.passive\_voice\_indicative\_mood\_present\_tense\_third\_person\_singular\_number
129
- * LatinVerb.passive\_voice\_indicative\_mood\_present\_tense\_first\_person\_plural\_number
130
- * LatinVerb.passive\_voice\_indicative\_mood\_present\_tense\_second\_person\_plural\_number
131
- * LatinVerb.passive\_voice\_indicative\_mood\_present\_tense\_third\_person\_plural\_number
132
-
133
- * LatinVerb.passive\_voice\_indicative\_mood\_imperfect\_tense\_first\_person\_singular\_number
134
- * LatinVerb.passive\_voice\_indicative\_mood\_imperfect\_tense\_second\_person\_singular\_number
135
- * LatinVerb.passive\_voice\_indicative\_mood\_imperfect\_tense\_third\_person\_singular\_number
136
- * LatinVerb.passive\_voice\_indicative\_mood\_imperfect\_tense\_first\_person\_plural\_number
137
- * LatinVerb.passive\_voice\_indicative\_mood\_imperfect\_tense\_second\_person\_plural\_number
138
- * LatinVerb.passive\_voice\_indicative\_mood\_imperfect\_tense\_third\_person\_plural\_number
139
-
140
- * LatinVerb.passive\_voice\_indicative\_mood\_future\_tense\_first\_person\_singular\_number
141
- * LatinVerb.passive\_voice\_indicative\_mood\_future\_tense\_second\_person\_singular\_number
142
- * LatinVerb.passive\_voice\_indicative\_mood\_future\_tense\_third\_person\_singular\_number
143
- * LatinVerb.passive\_voice\_indicative\_mood\_future\_tense\_first\_person\_plural\_number
144
- * LatinVerb.passive\_voice\_indicative\_mood\_future\_tense\_second\_person\_plural\_number
145
- * LatinVerb.passive\_voice\_indicative\_mood\_future\_tense\_third\_person\_plural\_number
146
-
147
- * LatinVerb.passive\_voice\_indicative\_mood\_perfect\_tense\_first\_person\_singular\_number
148
- * LatinVerb.passive\_voice\_indicative\_mood\_perfect\_tense\_second\_person\_singular\_number
149
- * LatinVerb.passive\_voice\_indicative\_mood\_perfect\_tense\_third\_person\_singular\_number
150
- * LatinVerb.passive\_voice\_indicative\_mood\_perfect\_tense\_first\_person\_plural\_number
151
- * LatinVerb.passive\_voice\_indicative\_mood\_perfect\_tense\_second\_person\_plural\_number
152
- * LatinVerb.passive\_voice\_indicative\_mood\_perfect\_tense\_third\_person\_plural\_number.to\_s)
153
-
154
- * LatinVerb.passive\_voice\_indicative\_mood\_pastperfect\_tense\_first\_person\_singular\_number
155
- * LatinVerb.passive\_voice\_indicative\_mood\_pastperfect\_tense\_second\_person\_singular\_number
156
- * LatinVerb.passive\_voice\_indicative\_mood\_pastperfect\_tense\_third\_person\_singular\_number
157
- * LatinVerb.passive\_voice\_indicative\_mood\_pastperfect\_tense\_first\_person\_plural\_number
158
- * LatinVerb.passive\_voice\_indicative\_mood\_pastperfect\_tense\_second\_person\_plural\_number
159
- * LatinVerb.passive\_voice\_indicative\_mood\_pastperfect\_tense\_third\_person\_plural\_number.to\_s)
160
-
161
- * LatinVerb.passive\_voice\_indicative\_mood\_futureperfect\_tense\_first\_person\_singular\_number
162
- * LatinVerb.passive\_voice\_indicative\_mood\_futureperfect\_tense\_second\_person\_singular\_number
163
- * LatinVerb.passive\_voice\_indicative\_mood\_futureperfect\_tense\_third\_person\_singular\_number
164
- * LatinVerb.passive\_voice\_indicative\_mood\_futureperfect\_tense\_first\_person\_plural\_number
165
- * LatinVerb.passive\_voice\_indicative\_mood\_futureperfect\_tense\_second\_person\_plural\_number
166
- * LatinVerb.passive\_voice\_indicative\_mood\_futureperfect\_tense\_third\_person\_plural\_number
167
-
168
-
169
- * LatinVerb.active\_voice\_subjunctive\_mood\_present\_tense\_first\_person\_singular\_number
170
- * LatinVerb.active\_voice\_subjunctive\_mood\_present\_tense\_second\_person\_singular\_number
171
- * LatinVerb.active\_voice\_subjunctive\_mood\_present\_tense\_third\_person\_singular\_number
172
- * LatinVerb.active\_voice\_subjunctive\_mood\_present\_tense\_first\_person\_plural\_number
173
- * LatinVerb.active\_voice\_subjunctive\_mood\_present\_tense\_second\_person\_plural\_number
174
- * LatinVerb.active\_voice\_subjunctive\_mood\_present\_tense\_third\_person\_plural\_number
175
-
176
- * LatinVerb.active\_voice\_subjunctive\_mood\_imperfect\_tense\_first\_person\_singular\_number
177
- * LatinVerb.active\_voice\_subjunctive\_mood\_imperfect\_tense\_second\_person\_singular\_number
178
- * LatinVerb.active\_voice\_subjunctive\_mood\_imperfect\_tense\_third\_person\_singular\_number
179
- * LatinVerb.active\_voice\_subjunctive\_mood\_imperfect\_tense\_first\_person\_plural\_number
180
- * LatinVerb.active\_voice\_subjunctive\_mood\_imperfect\_tense\_second\_person\_plural\_number
181
- * LatinVerb.active\_voice\_subjunctive\_mood\_imperfect\_tense\_third\_person\_plural\_number
182
-
183
- * LatinVerb.active\_voice\_subjunctive\_mood\_perfect\_tense\_first\_person\_singular\_number
184
- * LatinVerb.active\_voice\_subjunctive\_mood\_perfect\_tense\_second\_person\_singular\_number
185
- * LatinVerb.active\_voice\_subjunctive\_mood\_perfect\_tense\_third\_person\_singular\_number
186
- * LatinVerb.active\_voice\_subjunctive\_mood\_perfect\_tense\_first\_person\_plural\_number
187
- * LatinVerb.active\_voice\_subjunctive\_mood\_perfect\_tense\_second\_person\_plural\_number
188
- * LatinVerb.active\_voice\_subjunctive\_mood\_perfect\_tense\_third\_person\_plural\_number
189
-
190
- * LatinVerb.active\_voice\_subjunctive\_mood\_pastperfect\_tense\_first\_person\_singular\_number
191
- * LatinVerb.active\_voice\_subjunctive\_mood\_pastperfect\_tense\_second\_person\_singular\_number
192
- * LatinVerb.active\_voice\_subjunctive\_mood\_pastperfect\_tense\_third\_person\_singular\_number
193
- * LatinVerb.active\_voice\_subjunctive\_mood\_pastperfect\_tense\_first\_person\_plural\_number
194
- * LatinVerb.active\_voice\_subjunctive\_mood\_pastperfect\_tense\_second\_person\_plural\_number
195
- * LatinVerb.active\_voice\_subjunctive\_mood\_pastperfect\_tense\_third\_person\_plural\_number
196
-
197
- * LatinVerb.passive\_voice\_subjunctive\_mood\_present\_tense\_first\_person\_singular\_number
198
- * LatinVerb.passive\_voice\_subjunctive\_mood\_present\_tense\_second\_person\_singular\_number
199
- * LatinVerb.passive\_voice\_subjunctive\_mood\_present\_tense\_third\_person\_singular\_number
200
- * LatinVerb.passive\_voice\_subjunctive\_mood\_present\_tense\_first\_person\_plural\_number
201
- * LatinVerb.passive\_voice\_subjunctive\_mood\_present\_tense\_second\_person\_plural\_number
202
- * LatinVerb.passive\_voice\_subjunctive\_mood\_present\_tense\_third\_person\_plural\_number
203
-
204
- * LatinVerb.passive\_voice\_subjunctive\_mood\_imperfect\_tense\_first\_person\_singular\_number
205
- * LatinVerb.passive\_voice\_subjunctive\_mood\_imperfect\_tense\_second\_person\_singular\_number
206
- * LatinVerb.passive\_voice\_subjunctive\_mood\_imperfect\_tense\_third\_person\_singular\_number
207
- * LatinVerb.passive\_voice\_subjunctive\_mood\_imperfect\_tense\_first\_person\_plural\_number
208
- * LatinVerb.passive\_voice\_subjunctive\_mood\_imperfect\_tense\_second\_person\_plural\_number
209
- * LatinVerb.passive\_voice\_subjunctive\_mood\_imperfect\_tense\_third\_person\_plural\_number
210
-
211
- * LatinVerb.passive\_voice\_subjunctive\_mood\_perfect\_tense\_first\_person\_singular\_number
212
- * LatinVerb.passive\_voice\_subjunctive\_mood\_perfect\_tense\_second\_person\_singular\_number
213
- * LatinVerb.passive\_voice\_subjunctive\_mood\_perfect\_tense\_third\_person\_singular\_number
214
- * LatinVerb.passive\_voice\_subjunctive\_mood\_perfect\_tense\_first\_person\_plural\_number
215
- * LatinVerb.passive\_voice\_subjunctive\_mood\_perfect\_tense\_second\_person\_plural\_number
216
- * LatinVerb.passive\_voice\_subjunctive\_mood\_perfect\_tense\_third\_person\_plural\_number
217
-
218
- * LatinVerb.passive\_voice\_subjunctive\_mood\_pastperfect\_tense\_first\_person\_singular\_number
219
- * LatinVerb.passive\_voice\_subjunctive\_mood\_pastperfect\_tense\_second\_person\_singular\_number
220
- * LatinVerb.passive\_voice\_subjunctive\_mood\_pastperfect\_tense\_third\_person\_singular\_number
221
- * LatinVerb.passive\_voice\_subjunctive\_mood\_pastperfect\_tense\_first\_person\_plural\_number
222
- * LatinVerb.passive\_voice\_subjunctive\_mood\_pastperfect\_tense\_second\_person\_plural\_number
223
- * LatinVerb.passive\_voice\_subjunctive\_mood\_pastperfect\_tense\_third\_person\_plural\_number
224
-
225
- * LatinVerb.active\_voice\_imperative\_mood\_future\_tense
226
- * LatinVerb.active\_voice\_imperative\_mood\_present\_tense
227
- * LatinVerb.imperatives (_aggregator method_)
228
-
229
- * LatinVerb.present\_active\_participle
230
- * LatinVerb.future\_active\_participle
231
- * LatinVerb.perfect\_passive\_participle
232
- * LatinVerb.future\_passive\_participle
233
-
234
- * LatinVerb.infinitives (_aggregator method_ : returns a keyed hash)
235
- * LatinVerb.future\_active\_infinitive
236
- * LatinVerb.future\_passive\_infinitive
237
- * LatinVerb.perfect\_active\_infinitive
238
- * LatinVerb.perfect\_passive\_infinitive
239
- * LatinVerb.present\_active\_infinitive
240
- * LatinVerb.present\_passive\_infinitive
241
-
242
- ### Ambiguous Methods
243
-
244
- A voice, mood, and tense are all required for resolution of answers.
245
- LatinVerb does not repsect ambiguity in those vectors. It _does_ respect
246
- ambiguity in the person and number specifiers. Thus, you *may* say:
247
-
248
-
249
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense\_first\_person
250
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense\_singular\_number
251
-
252
- This will return an array containing all possible candidates. Thus, for
253
- each of the items below <em>(first|second|third)_person</em> or
254
- <em>(singular|plural)_number</em> may be postpended.
255
-
256
- * LatinVerb.active\_voice\_imperative\_mood\_future\_tense
257
- * LatinVerb.active\_voice\_imperative\_mood\_present\_tense
258
- * LatinVerb.active\_voice\_indicative\_mood\_future\_tense
259
- * LatinVerb.active\_voice\_indicative\_mood\_futureperfect\_tense
260
- * LatinVerb.active\_voice\_indicative\_mood\_imperfect\_tense
261
- * LatinVerb.active\_voice\_indicative\_mood\_pastperfect\_tense
262
- * LatinVerb.active\_voice\_indicative\_mood\_perfect\_tense
263
- * LatinVerb.active\_voice\_indicative\_mood\_present\_tense
264
- * LatinVerb.active\_voice\_subjunctive\_mood\_imperfect\_tense
265
- * LatinVerb.active\_voice\_subjunctive\_mood\_pastperfect\_tense
266
- * LatinVerb.active\_voice\_subjunctive\_mood\_perfect\_tense
267
- * LatinVerb.active\_voice\_subjunctive\_mood\_present\_tense
268
- * LatinVerb.passive\_voice\_indicative\_mood\_future\_tense
269
- * LatinVerb.passive\_voice\_indicative\_mood\_futureperfect\_tense
270
- * LatinVerb.passive\_voice\_indicative\_mood\_imperfect\_tense
271
- * LatinVerb.passive\_voice\_indicative\_mood\_pastperfect\_tense
272
- * LatinVerb.passive\_voice\_indicative\_mood\_perfect\_tense
273
- * LatinVerb.passive\_voice\_indicative\_mood\_present\_tense
274
- * LatinVerb.passive\_voice\_subjunctive\_mood\_imperfect\_tense
275
- * LatinVerb.passive\_voice\_subjunctive\_mood\_pastperfect\_tense
276
- * LatinVerb.passive\_voice\_subjunctive\_mood\_perfect\_tense
277
- * LatinVerb.passive\_voice\_subjunctive\_mood\_present\_tense
278
-
279
- ## AUTHOR
280
-
281
- [Steven G. Harms](http://stevengharms.com)
282
-
283
- ## THANKS
284
-
285
- Thanks to the Austin Ruby coders group who answered questions that helped me put this all together. Thanks also
286
- to the Reject^{2} conference at the Lone Star Ruby Conference 2008 who helped me think through some of the
287
- metaprogrammatic approaches. Thanks to Professor James Burleson of Austin Community College who insisted,
288
- old-style, of a mastery of the rote basics of Latin. Thanks also to [Lauren Roth](http://www.laurennroth.com)
289
- for her support and encouragement and understanding of my pre-dawn hack sessions.
data/Rakefile DELETED
@@ -1,12 +0,0 @@
1
- require "rake/testtask"
2
- require "bundler/gem_tasks"
3
-
4
- task :default => :test
5
-
6
- Rake::TestTask.new do |t|
7
- t.ruby_opts = [ '-rminitest/autorun', '-rminitest/pride' ]
8
- t.libs << "test"
9
- t.test_files = FileList['test/*test*.rb']
10
- t.verbose = true
11
- end
12
-
@@ -1,25 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "latinirb/version"
4
-
5
- Gem::Specification.new do |s|
6
- s.name = "latinirb"
7
- s.version = Linguistics::Latin::Util::LatinIRB::VERSION
8
- s.platform = Gem::Platform::RUBY
9
- s.authors = ["Steven G. Harms"]
10
- s.email = ["steven.harms@gmail.com"]
11
- s.homepage = "http://rubygems.org/gems/latinverb"
12
- s.summary = %q{Gem designed to explore verbs created by LatinVerb}
13
- s.description = %q{This gem takes initial data describing a LatinVerb and allows this is be instantiated into an IRB session. Here the verb can be queried or displayed.}
14
-
15
- s.files = `git ls-files`.split("\n")
16
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
17
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
18
- s.require_paths = ["lib"]
19
-
20
- s.add_runtime_dependency 'activesupport', '>= 4'
21
- s.add_runtime_dependency 'latinverb', '>= 1.0.0.pre.2'
22
- s.add_runtime_dependency 'linguistics_latin'
23
- s.add_runtime_dependency 'macronconversions'
24
- s.add_runtime_dependency 'latinverb_chart_presenter'
25
- end