PageRenderTime 45ms CodeModel.GetById 15ms RepoModel.GetById 1ms app.codeStats 0ms

/modules/data-verbs.js

https://github.com/kgoess/Polish-Grammar-Drill
JavaScript | 264 lines | 234 code | 8 blank | 22 comment | 3 complexity | 329da47e11aaf444b5217a1a5edaa35c MD5 | raw file
  1. var verbData = [
  2. { infinitive: [ 'czytać', "to read" ],
  3. english_past: 'was reading',
  4. english_future: 'will be reading',
  5. transitive: true,
  6. ok_subjects: 'i-agent',
  7. objects: [ 'książka', 'gazeta', 'list', 'słownik', 'znak'
  8. ],
  9. present_tense: {
  10. s: [ 'czytam', 'czytasz', 'czyta' ],
  11. p: [ 'czytamy', 'czytacie', 'czytają' ]
  12. },
  13. past_tense: {
  14. s: [ 'czytałem/czytałam', 'czytałeś/czytałaś', 'czytał/czytała/czytało' ],
  15. p: [ 'czytaliśmy/czytałyśmy', 'czytaliście/czytałyście', 'czytali/czytały' ]
  16. },
  17. future_tense: {
  18. s: [ 'czytał', 'czytała' ],
  19. p: [ 'czytali', 'czytały']
  20. }
  21. },
  22. { infinitive: [ 'jeść', "to eat" ],
  23. english_past: 'was eating',
  24. english_future: 'will be eating',
  25. transitive: true,
  26. ok_subjects: 'agent',
  27. objects: [ 'kanapka', 'jabłko', 'jajko', 'kiełbasa', 'marchew', 'kapusta'
  28. ],
  29. present_tense: {
  30. s: [ 'jem', 'jesz', 'je' ],
  31. p: [ 'jemy', 'jecie', 'jedzą' ]
  32. },
  33. past_tense: {
  34. s: [ 'jadłem/jadłam', 'jadłeś/jadłaś', 'jadł/jadła/jadło' ],
  35. p: [ 'jedliśmy/jadłyśmy', 'jedliście/jadłysćie', 'jedli/jadły' ]
  36. },
  37. future_tense: {
  38. s: [ 'jadł', 'jadła' ],
  39. p: [ 'jedli', 'jadły' ]
  40. }
  41. },
  42. { infinitive: [ 'lubić', 'to like' ],
  43. english_past: 'was liking',
  44. english_future: 'will be liking',
  45. transitive: true,
  46. ok_subjects: 'agent',
  47. objects: 'any',
  48. present_tense: {
  49. s: [ 'lubię', 'lubisz', 'lubi' ],
  50. p: [ 'lubimy', 'lubicie', 'lubią']
  51. },
  52. past_tense: {
  53. s: [ 'lubiłem/lubiłam', 'lubiłeś/lubiłaś', 'lubił/lubiła/lubiło' ],
  54. p: [ 'lubiliśmy/lubiłyśmy', 'lubiliście/lubiłyście', 'lubili/lubiły' ]
  55. },
  56. future_tense: {
  57. s: [ 'lubił', 'lubiła' ],
  58. p: [ 'lubili', 'lubiły' ]
  59. }
  60. },
  61. // apparently chcieć takes the genitive
  62. // http://www.polishforums.com/grammar-usage-18/adjective-endings-masculine-personal-51432/
  63. // { infinitive: [ 'chcieć', 'to want' ],
  64. // transitive: true,
  65. // ok_subjects: 'i-agent',
  66. // objects: 'any',
  67. // present_tense: {
  68. // s: [ 'chcę', 'chcesz', 'chce' ],
  69. // p: [ 'chcemy', 'chcecie', 'chcą' ]
  70. // }
  71. // },
  72. { infinitive: ['biec', 'to run' ],
  73. english_past: 'was running',
  74. english_future: 'will be running',
  75. //http://en.wiktionary.org/wiki/biec see also http://en.wiktionary.org/wiki/biegać
  76. //The difference in the meaning is that biegać implies a repeated action whereas biec only a single/permanent one.
  77. transitive: false,
  78. ok_subjects: 'agent',
  79. present_tense: {
  80. s: [ 'biegnę', 'biegniesz', 'biegnie' ],
  81. p: [ 'biegniemy', 'biegniecie', 'biegną' ]
  82. },
  83. past_tense: {
  84. s: [ 'biegłem/biegłam', 'biegłeś/biegłaś', 'biegł/biegła/biegło' ],
  85. p: [ 'biegliśmy/biegłyśmy', 'biegliście/biegłyście', 'biegli/biegły' ]
  86. },
  87. future_tense: {
  88. s: [ 'biegł', 'biegła' ],
  89. p: [ 'biegli', 'biegły' ]
  90. }
  91. },
  92. { infinitive: ['brać', 'to take' ],
  93. english_past: 'was taking',
  94. english_future: 'will be taking',
  95. transitive: true,
  96. ok_subjects: 'agent',
  97. objects: 'any',
  98. present_tense: {
  99. s: ['biorę', 'bierzesz', 'bierze' ],
  100. p: ['bierzemy', 'bierzecie', 'biorą' ]
  101. },
  102. past_tense: {
  103. s: [ 'brałem/brałam', 'brałeś/brałaś', 'brał/brała/brało' ],
  104. p: [ 'braliśmy/brałyśmy', 'braliście/brałyście', 'brali/brały' ]
  105. },
  106. future_tense: {
  107. s: [ 'brał', 'brała' ],
  108. p: [ 'brali', 'brały' ]
  109. }
  110. },
  111. { infinitive: ['potrzebować', 'to need' ],
  112. english_past: 'was needing',
  113. english_future: 'will be needing',
  114. transitive: true,
  115. object_case: 'genitive',
  116. ok_subjects: 'i-agent',
  117. objects: 'any',
  118. present_tense: {
  119. s: [ 'potrzebuję', 'potrzebujesz', 'potrzebuje' ],
  120. p: [ 'potrzebujemy', 'potrzebujecie', 'potrzebują' ]
  121. },
  122. past_tense: {
  123. s: [ 'potrzebowałem/potrzebowałam','potrzebowałeś/potrzebowałaś','potrzebował/potrzebowała' ],
  124. p: [ 'potrzebowaliśmy/potrzebowałyśmy', 'potrzebowaliście/potrzebowałyście', 'potrzebowali/potrzebowały' ]
  125. },
  126. future_tense: {
  127. s: [ 'potrzebował', 'potrzebowała' ],
  128. p: [ 'potrzebowali', 'potrzebowały' ]
  129. }
  130. },
  131. { infinitive: ['mieć', 'to have' ],
  132. english_past: 'was having',
  133. english_future: 'will be having',
  134. transitive: true,
  135. ok_subjects: 'agent',
  136. objects: 'any',
  137. present_tense: {
  138. s: [ 'mam', 'masz', 'ma' ],
  139. p: [ 'mamy', 'macie', 'mają' ]
  140. },
  141. past_tense: {
  142. s: [ 'miałem/miałam','miałeś/miałaś','miał/miała' ],
  143. p: [ 'mieliśmy/miałysmy', 'mieliście/miałyście', 'mieli/miały' ]
  144. },
  145. future_tense: {
  146. s: [ 'miał', 'miała' ],
  147. p: [ 'mieli', 'miały' ]
  148. }
  149. },
  150. { infinitive: ['widzieć', 'to see' ],
  151. english_past: 'was seeing',
  152. english_future: 'will be seeing',
  153. transitive: true,
  154. ok_subjects: 'agent',
  155. objects: 'any',
  156. present_tense: {
  157. s: [ 'widzę', 'widzisz', 'widzi' ],
  158. p: [ 'widzimy', 'widzicie', 'widzą' ]
  159. },
  160. past_tense: {
  161. s: [ 'widziałem/widziałam','widziałeś/widziałaś','widział/widziała' ],
  162. p: [ 'widzieliśmy/widziełyśmy', 'widzieliście/widziełyscie', 'widzieli/widziały' ]
  163. },
  164. future_tense: {
  165. s: [ 'widział', 'widziała' ],
  166. p: [ 'widzieli', 'widziały' ]
  167. }
  168. },
  169. { infinitive: ['słuchać', 'to listen to' ],
  170. english_past: 'was listening to',
  171. english_future: 'will be listening to',
  172. transitive: true,
  173. ok_subjects: 'agent',
  174. object_case: 'genitive',
  175. objects: [ 'kot', 'samochód', 'rower', 'pociąg', 'samolot', 'zegar',
  176. 'zegarek', 'chłopiec', 'zabawka', 'koń', 'kobieta', 'siostra',
  177. 'żona', 'córka', 'zwierzę', 'ojciec', 'mąż', 'dziadek',
  178. 'niedźwiedź', 'ptak', 'żółw', 'wąż', 'żaba', 'krowa' ],
  179. present_tense: {
  180. s: [ 'słucham', 'słuchasz', 'słucha' ],
  181. p: [ 'słuchamy', 'słuchacie', 'słuchają' ]
  182. },
  183. past_tense: {
  184. s: [ 'słuchałem/słuchałam', 'słuchałeś/słuchałaś', 'słuchał/słuchała' ],
  185. p: [ 'słuchaliśmy/słuchałyśmy', 'słuchaliście/słuchałyście', 'słuchali/słuchały' ]
  186. },
  187. future_tense: {
  188. s: [ 'słuchał', 'słuchała' ],
  189. p: [ 'słuchali', 'słuchały' ]
  190. }
  191. },
  192. { infinitive: ['mieszkać', 'to live' ],
  193. english_past: 'was living',
  194. english_future: 'will be living',
  195. transitive: false,
  196. ok_subjects: 'agent',
  197. //object_case: 'genitive',
  198. //objects: [ 'kot', 'samochód', 'rower', 'pociąg', 'samolot', 'zegar',
  199. present_tense: {
  200. s: [ 'mieszkam', 'mieszkasz', 'mieszka' ],
  201. p: [ 'mieszkamy', 'mieszkacie', 'mieszkają' ]
  202. },
  203. past_tense: {
  204. s: [ 'mieszkałem/mieszkałam', 'mieszkałeś/mieszkałaś', 'mieszkał/mieszkała' ],
  205. p: [ 'mieszkaliśmy/mieszkałyśmy', 'mieszkaliście/mieszkałyście', 'mieszkali/mieszkały' ]
  206. },
  207. future_tense: {
  208. s: [ 'mieszkał', 'mieszkała' ],
  209. p: [ 'mieszkali', 'mieszkały' ]
  210. },
  211. prepositional_phrase: 'required', // required/optional/never
  212. prepositional_nouns: [ 'place' ]
  213. },
  214. { infinitive: ['wracać', 'to return' ],
  215. english_past: 'was returning',
  216. english_future: 'will be returning',
  217. transitive: false,
  218. ok_subjects: 'agent',
  219. //object_case: 'genitive',
  220. //objects: [ 'kot', 'samochód', 'rower', 'pociąg', 'samolot', 'zegar',
  221. present_tense: {
  222. s: [ 'wracam', 'wracasz', 'wraca' ],
  223. p: [ 'wracamy', 'wracacie', 'wracają' ]
  224. },
  225. past_tense: {
  226. s: [ 'wracałem/wracałam', 'wracałeś/wracałaś', 'wracał/wracała' ],
  227. p: [ 'wracaliśmy/wracałyśmy', 'wracaliście/wracałyście', 'wracali/wracały' ]
  228. },
  229. future_tense: {
  230. s: [ 'wracał', 'wracała' ],
  231. p: [ 'wracali', 'wracały' ]
  232. },
  233. prepositional_phrase: 'required', // required/optional/never
  234. prepositional_nouns: [ 'place' ],
  235. prepositional_motion: 'requires' //requires/allows/never==null
  236. // wracać *requires* like do or od
  237. // biegać *allows* do or od
  238. // siedzić never has do or od
  239. }
  240. ];
  241. // "exports" is needed for our unit tests in mocha
  242. // this fakes it up in case we're *not* in mocha
  243. var exports;
  244. if (typeof exports === "undefined"){
  245. exports = {};
  246. }
  247. verbData.findRow = function(english){
  248. var i;
  249. for (i = 0; i < this.length; ++i){
  250. if (this[i]['infinitive'][1] === english){
  251. return this[i];
  252. }
  253. }
  254. throw("Error: no verb match for '" + english + "'");
  255. };
  256. exports.verbData = verbData;