alula 0.2.3 → 0.4.0b

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 (182) hide show
  1. data/.gitignore +2 -0
  2. data/Gemfile +7 -0
  3. data/Guardfile +9 -0
  4. data/Rakefile +12 -1
  5. data/VERSION +1 -1
  6. data/alula.gemspec +20 -4
  7. data/lib/alula/attachment_processor.rb +77 -0
  8. data/lib/alula/cdn.rb +30 -0
  9. data/lib/alula/cdns/edgecast.rb +16 -0
  10. data/lib/alula/cdns/hosts.rb +14 -0
  11. data/lib/alula/cli.rb +90 -39
  12. data/lib/alula/compressors.rb +22 -10
  13. data/lib/alula/config.rb +141 -0
  14. data/lib/alula/content.rb +113 -0
  15. data/lib/alula/contents/attachment.rb +8 -0
  16. data/lib/alula/contents/item.rb +409 -0
  17. data/lib/alula/contents/metadata.rb +73 -0
  18. data/lib/alula/contents/page.rb +9 -0
  19. data/lib/alula/contents/post.rb +32 -0
  20. data/lib/alula/context.rb +72 -0
  21. data/lib/alula/core_ext.rb +5 -0
  22. data/lib/alula/core_ext/environment.rb +20 -0
  23. data/lib/alula/core_ext/filter.rb +20 -0
  24. data/lib/alula/core_ext/filters/smilies.rb +36 -0
  25. data/lib/alula/core_ext/manifest.rb +30 -0
  26. data/lib/alula/core_ext/tag.rb +100 -0
  27. data/lib/alula/core_ext/tags/attachment.rb +28 -0
  28. data/lib/alula/core_ext/tags/blockquote.rb +21 -0
  29. data/lib/alula/core_ext/tags/image.rb +48 -0
  30. data/lib/alula/core_ext/tags/locale.rb +17 -0
  31. data/lib/alula/core_ext/tags/video.rb +103 -0
  32. data/lib/alula/generator.rb +31 -0
  33. data/lib/alula/generators/feedbuilder.rb +44 -0
  34. data/lib/alula/generators/paginate.rb +88 -0
  35. data/lib/alula/generators/sitemap.rb +26 -0
  36. data/lib/alula/helpers.rb +2 -0
  37. data/lib/alula/helpers/addons.rb +12 -0
  38. data/lib/alula/helpers/assets.rb +56 -0
  39. data/lib/alula/helpers/url_helpers.rb +16 -0
  40. data/lib/alula/plugin.rb +32 -0
  41. data/lib/alula/processor.rb +86 -0
  42. data/lib/alula/processors/dummy.rb +24 -0
  43. data/lib/alula/processors/image.rb +52 -0
  44. data/lib/alula/processors/magick.rb +83 -0
  45. data/lib/alula/processors/video.rb +97 -0
  46. data/lib/alula/processors/zencoder.rb +199 -0
  47. data/lib/alula/progress.rb +95 -0
  48. data/lib/alula/progressbar.rb +66 -0
  49. data/lib/alula/site.rb +331 -262
  50. data/lib/alula/storage.rb +46 -0
  51. data/lib/alula/storages/file_item.rb +43 -0
  52. data/lib/alula/storages/filestorage.rb +96 -0
  53. data/lib/alula/storages/item.rb +12 -0
  54. data/lib/alula/support/commonlogger.rb +30 -0
  55. data/lib/alula/theme.rb +70 -13
  56. data/lib/alula/theme/layout.rb +56 -0
  57. data/lib/alula/theme/view.rb +43 -0
  58. data/lib/alula/version.rb +1 -1
  59. data/locales/en.yml +9 -0
  60. data/locales/fi.yml +10 -0
  61. data/locales/l10n/ar.yml +199 -0
  62. data/locales/l10n/az.yml +199 -0
  63. data/locales/l10n/bg.yml +199 -0
  64. data/locales/l10n/bn-IN.yml +182 -0
  65. data/locales/l10n/bs.yml +242 -0
  66. data/locales/l10n/ca.yml +199 -0
  67. data/locales/l10n/cs.yml +198 -0
  68. data/locales/l10n/csb.yml +210 -0
  69. data/locales/l10n/cy.yml +199 -0
  70. data/locales/l10n/da.yml +199 -0
  71. data/locales/l10n/de-AT.yml +203 -0
  72. data/locales/l10n/de-CH.yml +203 -0
  73. data/locales/l10n/de.yml +203 -0
  74. data/locales/l10n/dsb.yml +215 -0
  75. data/locales/l10n/el.yml +199 -0
  76. data/locales/l10n/en-AU.yml +205 -0
  77. data/locales/l10n/en-CA.yml +214 -0
  78. data/locales/l10n/en-GB.yml +205 -0
  79. data/locales/l10n/en-IN.yml +205 -0
  80. data/locales/l10n/en-US.yml +205 -0
  81. data/locales/l10n/en.yml +205 -0
  82. data/locales/l10n/eo.yml +201 -0
  83. data/locales/l10n/es-AR.yml +205 -0
  84. data/locales/l10n/es-CL.yml +199 -0
  85. data/locales/l10n/es-CO.yml +205 -0
  86. data/locales/l10n/es-MX.yml +205 -0
  87. data/locales/l10n/es-PE.yml +181 -0
  88. data/locales/l10n/es-VE.yml +205 -0
  89. data/locales/l10n/es.yml +199 -0
  90. data/locales/l10n/et.yml +199 -0
  91. data/locales/l10n/eu.yml +199 -0
  92. data/locales/l10n/fa.yml +199 -0
  93. data/locales/l10n/fi.yml +199 -0
  94. data/locales/l10n/fr-CA.yml +207 -0
  95. data/locales/l10n/fr-CH.yml +207 -0
  96. data/locales/l10n/fr.yml +222 -0
  97. data/locales/l10n/fur.yml +199 -0
  98. data/locales/l10n/gl-ES.yml +178 -0
  99. data/locales/l10n/gsw-CH.yml +199 -0
  100. data/locales/l10n/he.yml +201 -0
  101. data/locales/l10n/hi-IN.yml +199 -0
  102. data/locales/l10n/hi.yml +199 -0
  103. data/locales/l10n/hr.yml +237 -0
  104. data/locales/l10n/hsb.yml +214 -0
  105. data/locales/l10n/hu.yml +199 -0
  106. data/locales/l10n/id.yml +200 -0
  107. data/locales/l10n/is.yml +213 -0
  108. data/locales/l10n/it.yml +205 -0
  109. data/locales/l10n/ja.yml +197 -0
  110. data/locales/l10n/kn.yml +199 -0
  111. data/locales/l10n/ko.yml +197 -0
  112. data/locales/l10n/lo.yml +186 -0
  113. data/locales/l10n/lt.yml +182 -0
  114. data/locales/l10n/lv.yml +215 -0
  115. data/locales/l10n/mk.yml +170 -0
  116. data/locales/l10n/mn.yml +205 -0
  117. data/locales/l10n/nb.yml +207 -0
  118. data/locales/l10n/nl.yml +199 -0
  119. data/locales/l10n/nn.yml +160 -0
  120. data/locales/l10n/pl.yml +221 -0
  121. data/locales/l10n/pt-BR.yml +207 -0
  122. data/locales/l10n/pt-PT.yml +207 -0
  123. data/locales/l10n/quotes.yml +24 -0
  124. data/locales/l10n/rm.yml +182 -0
  125. data/locales/l10n/ro.yml +199 -0
  126. data/locales/l10n/ru.yml +257 -0
  127. data/locales/l10n/sk.yml +213 -0
  128. data/locales/l10n/sl.yml +210 -0
  129. data/locales/l10n/sr-Latn.yml +170 -0
  130. data/locales/l10n/sr.yml +170 -0
  131. data/locales/l10n/sv-SE.yml +199 -0
  132. data/locales/l10n/sw.yml +197 -0
  133. data/locales/l10n/th.yml +173 -0
  134. data/locales/l10n/tl.yml +229 -0
  135. data/locales/l10n/tr.yml +199 -0
  136. data/locales/l10n/uk.yml +257 -0
  137. data/locales/l10n/vi.yml +201 -0
  138. data/locales/l10n/wo.yml +205 -0
  139. data/locales/l10n/zh-CN.yml +199 -0
  140. data/locales/l10n/zh-TW.yml +199 -0
  141. data/template/Gemfile.erb +14 -4
  142. data/template/README +16 -0
  143. data/template/config.yml.erb +42 -38
  144. data/test/fixtures/config_001_simple.yml +2 -0
  145. data/test/fixtures/config_002_l10n.yml +5 -0
  146. data/test/fixtures/pages/invalid-page.markdown +1 -0
  147. data/test/fixtures/pages/multilingual-page.markdown +20 -0
  148. data/test/fixtures/pages/section/subpage.markdown +5 -0
  149. data/test/fixtures/pages/simple-page.markdown +7 -0
  150. data/test/fixtures/posts/2012-07-02-invalid-post.markdown +1 -0
  151. data/test/fixtures/posts/2012-07-02-simple.markdown +7 -0
  152. data/test/fixtures/posts/2012-07-03-full-metadata.markdown +8 -0
  153. data/test/fixtures/posts/2012-07-03-multilingual-full-metadata.markdown +20 -0
  154. data/test/fixtures/theme/test/layouts/default.html.erb +1 -0
  155. data/test/fixtures/theme/test/views/page.html.erb +1 -0
  156. data/test/fixtures/theme/test/views/post.html.erb +1 -0
  157. data/test/minitest_helper.rb +14 -0
  158. data/test/test_config.rb +33 -0
  159. data/test/test_content.rb +30 -0
  160. data/test/test_metadata.rb +83 -0
  161. data/test/test_page.rb +81 -0
  162. data/test/test_post.rb +123 -0
  163. data/test/test_storage.rb +23 -0
  164. data/test/test_storage_file.rb +32 -0
  165. data/test/test_theme.rb +45 -0
  166. data/vendor/assets/images/favicon.png +0 -0
  167. data/vendor/assets/images/grey.gif +0 -0
  168. data/vendor/assets/javascripts/jquery.alula.js.coffee +16 -0
  169. data/vendor/{javascripts → assets/javascripts}/jquery.js +0 -0
  170. data/vendor/assets/javascripts/jquery.lazyload.js +210 -0
  171. data/vendor/assets/javascripts/lazyload.js.coffee +15 -0
  172. data/vendor/layouts/feed.xml.builder +19 -0
  173. data/vendor/layouts/sitemap.xml.builder +10 -0
  174. data/vendor/views/feed_post.html.haml +1 -0
  175. metadata +529 -50
  176. data/lib/alula.rb +0 -5
  177. data/lib/alula/assethelper.rb +0 -75
  178. data/lib/alula/plugins.rb +0 -23
  179. data/lib/alula/plugins/assets.rb +0 -82
  180. data/lib/alula/plugins/pagination.rb +0 -121
  181. data/lib/alula/rake_tasks.rb +0 -42
  182. data/lib/alula/tasks.rb +0 -2
@@ -0,0 +1,24 @@
1
+ en:
2
+ quotes:
3
+ single:
4
+ left: ‘
5
+ right: ’
6
+ double:
7
+ left: “
8
+ right: ”
9
+ fi:
10
+ quotes:
11
+ single:
12
+ left: ’
13
+ right: ’
14
+ double:
15
+ left: ”
16
+ right: ”
17
+ zh-CN:
18
+ quotes:
19
+ single:
20
+ left: ‘
21
+ right: ’
22
+ double:
23
+ left: ”
24
+ right: ”
@@ -0,0 +1,182 @@
1
+ rm:
2
+ date:
3
+ abbr_day_names:
4
+ - du
5
+ - gli
6
+ - ma
7
+ - me
8
+ - gie
9
+ - ve
10
+ - so
11
+ abbr_month_names:
12
+ -
13
+ - schan
14
+ - favr
15
+ - mars
16
+ - avr
17
+ - matg
18
+ - zercl
19
+ - fan
20
+ - avust
21
+ - sett
22
+ - oct
23
+ - nov
24
+ - dec
25
+ day_names:
26
+ - dumengia
27
+ - glindesdi
28
+ - mardi
29
+ - mesemna
30
+ - gievgia
31
+ - venderdi
32
+ - sonda
33
+ formats:
34
+ default: ! '%d.%m.%Y'
35
+ long: ! '%e. %B %Y'
36
+ short: ! '%e. %b'
37
+ month_names:
38
+ -
39
+ - schaner
40
+ - favrer
41
+ - mars
42
+ - avrigl
43
+ - matg
44
+ - zercladur
45
+ - fanadur
46
+ - avust
47
+ - settember
48
+ - october
49
+ - november
50
+ - december
51
+ order:
52
+ - :day
53
+ - :month
54
+ - :year
55
+ datetime:
56
+ distance_in_words:
57
+ about_x_hours:
58
+ one: circa in'ura
59
+ other: circa %{count} uras
60
+ about_x_months:
61
+ one: circa in mais
62
+ other: circa %{count} mais
63
+ about_x_years:
64
+ one: circa in onn
65
+ other: circa %{count} onns
66
+ half_a_minute: ina mesa minuta
67
+ less_than_x_minutes:
68
+ one: main ch’ina minuta
69
+ other: main che %{count} minutas
70
+ less_than_x_seconds:
71
+ one: main ch’ina secunda
72
+ other: main che %{count} secundas
73
+ over_x_years:
74
+ one: dapli ch'in onn
75
+ other: dapli che %{count} onns
76
+ x_days:
77
+ one: in di
78
+ other: ! '%{count} dis'
79
+ x_minutes:
80
+ one: 1 minuta
81
+ other: ! '%{count} minutas'
82
+ x_months:
83
+ one: in mais
84
+ other: ! '%{count} mais'
85
+ x_seconds:
86
+ one: ina secunda
87
+ other: ! '%{count} secundas'
88
+ prompts:
89
+ day: dis
90
+ hour: uras
91
+ minute: minutas
92
+ month: mais
93
+ second: secundas
94
+ year: onns
95
+ errors: &errors
96
+ format: ! '%{attribute} %{message}'
97
+ messages:
98
+ accepted: sto vegnir acceptà
99
+ blank: sto vegnir emplenì ora
100
+ confirmation: na correspunda betg al champ da conferma
101
+ empty: sto vegnir emplenì ora
102
+ equal_to: sto esser exact %{count}
103
+ even: sto esser pèr
104
+ exclusion: na stat betg a disposiziun
105
+ greater_than: sto esser pli grond che %{count}
106
+ greater_than_or_equal_to: sto esser pli grond u medem sco %{count}
107
+ inclusion: n'è betg sin la glista
108
+ invalid: n'è betg valid
109
+ less_than: sto esser pli pitschen che %{count}
110
+ less_than_or_equal_to: sto esser pli pitschen u medem sco %{count}
111
+ not_a_number: è betg in dumber
112
+ odd: sto esser spèr
113
+ taken: è gia occupà
114
+ too_long: è memia lung (betg dapli che %{count} caracters)
115
+ too_short: è memia curt (betg pli pauc che %{count} caracters)
116
+ wrong_length: ha la fallida lunghezza (sto avair %{count} caracters)
117
+ template:
118
+ body: ! 'Faschai uschè bain e controllai ils suandants champs:'
119
+ header:
120
+ one: ! 'Betg pussaivel da memorisar quest %{model}: 1 errur.'
121
+ other: ! 'Betg pussaivel da memorisar quest %{model}: %{count} errurs.'
122
+ number:
123
+ currency:
124
+ format:
125
+ delimiter: ! ''''
126
+ format: ! '%n %u'
127
+ precision: 2
128
+ separator: .
129
+ significant: false
130
+ strip_insignificant_zeros: false
131
+ unit: CHF
132
+ format:
133
+ delimiter: ! ''''
134
+ precision: 2
135
+ separator: .
136
+ significant: false
137
+ strip_insignificant_zeros: false
138
+ human:
139
+ decimal_units:
140
+ format: ! '%n %u'
141
+ units:
142
+ unit: ''
143
+ format:
144
+ delimiter: ''
145
+ precision: 1
146
+ significant: true
147
+ strip_insignificant_zeros: true
148
+ storage_units:
149
+ format: ! '%n %u'
150
+ units:
151
+ byte:
152
+ one: byte
153
+ other: bytes
154
+ gb: GB
155
+ kb: KB
156
+ mb: MB
157
+ tb: TB
158
+ percentage:
159
+ format:
160
+ delimiter: ''
161
+ precision:
162
+ format:
163
+ delimiter: ''
164
+ support:
165
+ array:
166
+ last_word_connector: ! ' e '
167
+ two_words_connector: ! ' e '
168
+ words_connector: ! ', '
169
+ time:
170
+ am: avantmezdi
171
+ formats:
172
+ default: ! '%A, %d. %B %Y, %H:%M Uhr'
173
+ long: ! '%A, %d. %B %Y, %H:%M Uhr'
174
+ short: ! '%d. %B, %H:%M Uhr'
175
+ pm: suentermezdi
176
+ # remove these aliases after 'activemodel' and 'activerecord' namespaces are removed from Rails repository
177
+ activemodel:
178
+ errors:
179
+ <<: *errors
180
+ activerecord:
181
+ errors:
182
+ <<: *errors
@@ -0,0 +1,199 @@
1
+ ro:
2
+ date:
3
+ abbr_day_names:
4
+ - Dum
5
+ - Lun
6
+ - Mar
7
+ - Mie
8
+ - Joi
9
+ - Vin
10
+ - Sâm
11
+ abbr_month_names:
12
+ -
13
+ - Ian
14
+ - Feb
15
+ - Mar
16
+ - Apr
17
+ - Mai
18
+ - Iun
19
+ - Iul
20
+ - Aug
21
+ - Sep
22
+ - Oct
23
+ - Noi
24
+ - Dec
25
+ day_names:
26
+ - Duminică
27
+ - Luni
28
+ - Marți
29
+ - Miercuri
30
+ - Joi
31
+ - Vineri
32
+ - Sâmbată
33
+ formats:
34
+ default: ! '%d-%m-%Y'
35
+ long: ! '%d %B %Y'
36
+ short: ! '%d %b'
37
+ month_names:
38
+ -
39
+ - Ianuarie
40
+ - Februarie
41
+ - Martie
42
+ - Aprilie
43
+ - Mai
44
+ - Iunie
45
+ - Iulie
46
+ - August
47
+ - Septembrie
48
+ - Octombrie
49
+ - Noiembrie
50
+ - Decembrie
51
+ order:
52
+ - :day
53
+ - :month
54
+ - :year
55
+ datetime:
56
+ distance_in_words:
57
+ about_x_hours:
58
+ one: aproximativ o oră
59
+ other: aproximativ %{count} ore
60
+ about_x_months:
61
+ one: aproximativ o lună
62
+ other: aproximativ %{count} luni
63
+ about_x_years:
64
+ one: aproximativ un an
65
+ other: aproximativ %{count} ani
66
+ almost_x_years:
67
+ one: aproape 1 an
68
+ other: aproape %{count} ani
69
+ half_a_minute: jumătate de minut
70
+ less_than_x_minutes:
71
+ one: mai puțin de un minut
72
+ other: mai puțin de %{count} minute
73
+ less_than_x_seconds:
74
+ one: mai puțin de o secundă
75
+ other: mai puțin de %{count} secunde
76
+ over_x_years:
77
+ one: mai mult de un an
78
+ other: mai mult de %{count} ani
79
+ x_days:
80
+ one: 1 zi
81
+ other: ! '%{count} zile'
82
+ x_minutes:
83
+ one: 1 minut
84
+ other: ! '%{count} minute'
85
+ x_months:
86
+ one: 1 lună
87
+ other: ! '%{count} luni'
88
+ x_seconds:
89
+ one: 1 secundă
90
+ other: ! '%{count} secunde'
91
+ prompts:
92
+ day: Ziua
93
+ hour: Ora
94
+ minute: Minutul
95
+ month: Luna
96
+ second: Secunda
97
+ year: Anul
98
+ errors: &errors
99
+ format: ! '%{attribute} %{message}'
100
+ messages:
101
+ accepted: trebuie dat acceptul
102
+ blank: nu poate fi gol
103
+ confirmation: nu este confirmat
104
+ empty: nu poate fi gol
105
+ equal_to: trebuie să fie egal cu %{count}
106
+ even: trebuie să fie impar
107
+ exclusion: este rezervat
108
+ greater_than: trebuie să fie mai mare decât %{count}
109
+ greater_than_or_equal_to: trebuie să fie mai mare sau egal cu %{count}
110
+ inclusion: nu este inclus în listă
111
+ invalid: este invalid
112
+ less_than: trebuie să fie mai mic decât %{count}
113
+ less_than_or_equal_to: trebuie să fie mai mic sau egal cu %{count}
114
+ not_a_number: nu este un număr
115
+ not_an_integer: trebuie să fie un mumăr întreg
116
+ odd: trebuie să fie par
117
+ record_invalid: Validare nereuşită %{errors}
118
+ taken: este deja folosit
119
+ too_long: este prea lung (se pot folosi maximum %{count} caractere)
120
+ too_short: este prea scurt (minimum de caractere este %{count})
121
+ wrong_length: nu are lungimea corectă (trebuie să aiba %{count} caractere)
122
+ template:
123
+ body: ! 'Încearcă să corectezi urmatoarele câmpuri:'
124
+ header:
125
+ one: ! 'Nu am putut salva acest %{model}: o eroare'
126
+ other: ! 'Nu am putut salva acest %{model}: %{count} erori.'
127
+ helpers:
128
+ select:
129
+ prompt: Alegeţi
130
+ submit:
131
+ create: Creare %{model}
132
+ submit: Salvare %{model}
133
+ update: Modificare %{model}
134
+ number:
135
+ currency:
136
+ format:
137
+ delimiter: ! ','
138
+ format: ! '%n %u'
139
+ precision: 2
140
+ separator: .
141
+ significant: false
142
+ strip_insignificant_zeros: false
143
+ unit: RON
144
+ format:
145
+ delimiter: ! ','
146
+ precision: 3
147
+ separator: .
148
+ significant: false
149
+ strip_insignificant_zeros: false
150
+ human:
151
+ decimal_units:
152
+ format: ! '%n %u'
153
+ units:
154
+ billion: Miliard
155
+ million: Milion
156
+ quadrillion: Quadrilion
157
+ thousand: Mie
158
+ trillion: Trilion
159
+ unit: ''
160
+ format:
161
+ delimiter: ! ','
162
+ precision: 3
163
+ significant: true
164
+ strip_insignificant_zeros: true
165
+ storage_units:
166
+ format: ! '%n %u'
167
+ units:
168
+ byte:
169
+ one: Byte
170
+ other: Bytes
171
+ gb: GB
172
+ kb: KB
173
+ mb: MB
174
+ tb: TB
175
+ percentage:
176
+ format:
177
+ delimiter: ! ','
178
+ precision:
179
+ format:
180
+ delimiter: ''
181
+ support:
182
+ array:
183
+ last_word_connector: ! ' şi '
184
+ two_words_connector: ! ' şi '
185
+ words_connector: ! ', '
186
+ time:
187
+ am: ''
188
+ formats:
189
+ default: ! '%a %d %b %Y, %H:%M:%S %z'
190
+ long: ! '%d %B %Y %H:%M'
191
+ short: ! '%d %b %H:%M'
192
+ pm: ''
193
+ # remove these aliases after 'activemodel' and 'activerecord' namespaces are removed from Rails repository
194
+ activemodel:
195
+ errors:
196
+ <<: *errors
197
+ activerecord:
198
+ errors:
199
+ <<: *errors
@@ -0,0 +1,257 @@
1
+ ru:
2
+ date:
3
+ abbr_day_names:
4
+ - Вс
5
+ - Пн
6
+ - Вт
7
+ - Ср
8
+ - Чт
9
+ - Пт
10
+ - Сб
11
+ abbr_month_names:
12
+ -
13
+ - янв.
14
+ - февр.
15
+ - марта
16
+ - апр.
17
+ - мая
18
+ - июня
19
+ - июля
20
+ - авг.
21
+ - сент.
22
+ - окт.
23
+ - нояб.
24
+ - дек.
25
+ day_names:
26
+ - воскресенье
27
+ - понедельник
28
+ - вторник
29
+ - среда
30
+ - четверг
31
+ - пятница
32
+ - суббота
33
+ formats:
34
+ default: ! '%d.%m.%Y'
35
+ long: ! '%d %B %Y'
36
+ short: ! '%d %b'
37
+ month_names:
38
+ -
39
+ - января
40
+ - февраля
41
+ - марта
42
+ - апреля
43
+ - мая
44
+ - июня
45
+ - июля
46
+ - августа
47
+ - сентября
48
+ - октября
49
+ - ноября
50
+ - декабря
51
+ order:
52
+ - :day
53
+ - :month
54
+ - :year
55
+ datetime:
56
+ distance_in_words:
57
+ about_x_hours:
58
+ few: около %{count} часов
59
+ many: около %{count} часов
60
+ one: около %{count} часа
61
+ other: около %{count} часа
62
+ about_x_months:
63
+ few: около %{count} месяцев
64
+ many: около %{count} месяцев
65
+ one: около %{count} месяца
66
+ other: около %{count} месяца
67
+ about_x_years:
68
+ few: около %{count} лет
69
+ many: около %{count} лет
70
+ one: около %{count} года
71
+ other: около %{count} лет
72
+ almost_x_years:
73
+ one: почти 1 год
74
+ few: почти %{count} года
75
+ many: почти %{count} лет
76
+ other: почти %{count} лет
77
+ half_a_minute: меньше минуты
78
+ less_than_x_minutes:
79
+ few: меньше %{count} минут
80
+ many: меньше %{count} минут
81
+ one: меньше %{count} минуты
82
+ other: меньше %{count} минуты
83
+ less_than_x_seconds:
84
+ few: меньше %{count} секунд
85
+ many: меньше %{count} секунд
86
+ one: меньше %{count} секунды
87
+ other: меньше %{count} секунды
88
+ over_x_years:
89
+ few: больше %{count} лет
90
+ many: больше %{count} лет
91
+ one: больше %{count} года
92
+ other: больше %{count} лет
93
+ x_days:
94
+ few: ! '%{count} дня'
95
+ many: ! '%{count} дней'
96
+ one: ! '%{count} день'
97
+ other: ! '%{count} дня'
98
+ x_minutes:
99
+ few: ! '%{count} минуты'
100
+ many: ! '%{count} минут'
101
+ one: ! '%{count} минуту'
102
+ other: ! '%{count} минуты'
103
+ x_months:
104
+ few: ! '%{count} месяца'
105
+ many: ! '%{count} месяцев'
106
+ one: ! '%{count} месяц'
107
+ other: ! '%{count} месяца'
108
+ x_seconds:
109
+ few: ! '%{count} секунды'
110
+ many: ! '%{count} секунд'
111
+ one: ! '%{count} секунда'
112
+ other: ! '%{count} секунды'
113
+ prompts:
114
+ day: День
115
+ hour: Часов
116
+ minute: Минут
117
+ month: Месяц
118
+ second: Секунд
119
+ year: Год
120
+ errors: &errors
121
+ format: ! '%{attribute} %{message}'
122
+ messages:
123
+ accepted: нужно подтвердить
124
+ blank: не может быть пустым
125
+ confirmation: не совпадает с подтверждением
126
+ empty: не может быть пустым
127
+ equal_to: может иметь лишь значение, равное %{count}
128
+ even: может иметь лишь нечетное значение
129
+ exclusion: имеет зарезервированное значение
130
+ greater_than: может иметь значение большее %{count}
131
+ greater_than_or_equal_to: может иметь значение большее или равное %{count}
132
+ inclusion: имеет непредусмотренное значение
133
+ invalid: имеет неверное значение
134
+ less_than: может иметь значение меньшее чем %{count}
135
+ less_than_or_equal_to: может иметь значение меньшее или равное %{count}
136
+ not_a_number: не является числом
137
+ not_an_integer: не является целым числом
138
+ odd: может иметь лишь четное значение
139
+ record_invalid: ! 'Возникли ошибки: %{errors}'
140
+ taken: уже существует
141
+ too_long:
142
+ few: слишком большой длины (не может быть больше чем %{count} символа)
143
+ many: слишком большой длины (не может быть больше чем %{count} символов)
144
+ one: слишком большой длины (не может быть больше чем %{count} символ)
145
+ other: слишком большой длины (не может быть больше чем %{count} символа)
146
+ too_short:
147
+ few: недостаточной длины (не может быть меньше %{count} символов)
148
+ many: недостаточной длины (не может быть меньше %{count} символов)
149
+ one: недостаточной длины (не может быть меньше %{count} символа)
150
+ other: недостаточной длины (не может быть меньше %{count} символа)
151
+ wrong_length:
152
+ few: неверной длины (может быть длиной ровно %{count} символа)
153
+ many: неверной длины (может быть длиной ровно %{count} символов)
154
+ one: неверной длины (может быть длиной ровно %{count} символ)
155
+ other: неверной длины (может быть длиной ровно %{count} символа)
156
+ template:
157
+ body: ! 'Проблемы возникли со следующими полями:'
158
+ header:
159
+ few: ! '%{model}: сохранение не удалось из-за %{count} ошибок'
160
+ many: ! '%{model}: сохранение не удалось из-за %{count} ошибок'
161
+ one: ! '%{model}: сохранение не удалось из-за %{count} ошибки'
162
+ other: ! '%{model}: сохранение не удалось из-за %{count} ошибки'
163
+ helpers:
164
+ select:
165
+ prompt: ! 'Выберите: '
166
+ submit:
167
+ create: Создать %{model}
168
+ submit: Сохранить %{model}
169
+ update: Сохранить %{model}
170
+ number:
171
+ currency:
172
+ format:
173
+ delimiter: ! ' '
174
+ format: ! '%n %u'
175
+ precision: 2
176
+ separator: .
177
+ significant: false
178
+ strip_insignificant_zeros: false
179
+ unit: руб.
180
+ format:
181
+ delimiter: ! ' '
182
+ precision: 3
183
+ separator: .
184
+ significant: false
185
+ strip_insignificant_zeros: false
186
+ human:
187
+ decimal_units:
188
+ format: ! '%n %u'
189
+ units:
190
+ billion:
191
+ few: миллиардов
192
+ many: миллиардов
193
+ one: миллиард
194
+ other: миллиардов
195
+ million:
196
+ few: миллионов
197
+ many: миллионов
198
+ one: миллион
199
+ other: миллионов
200
+ quadrillion:
201
+ few: квадриллионов
202
+ many: квадриллионов
203
+ one: квадриллион
204
+ other: квадриллионов
205
+ thousand:
206
+ few: тысяч
207
+ many: тысяч
208
+ one: тысяча
209
+ other: тысяч
210
+ trillion:
211
+ few: триллионов
212
+ many: триллионов
213
+ one: триллион
214
+ other: триллионов
215
+ unit: ''
216
+ format:
217
+ delimiter: ''
218
+ precision: 1
219
+ significant: false
220
+ strip_insignificant_zeros: false
221
+ storage_units:
222
+ format: ! '%n %u'
223
+ units:
224
+ byte:
225
+ few: байта
226
+ many: байт
227
+ one: байт
228
+ other: байта
229
+ gb: ГБ
230
+ kb: КБ
231
+ mb: МБ
232
+ tb: ТБ
233
+ percentage:
234
+ format:
235
+ delimiter: ''
236
+ precision:
237
+ format:
238
+ delimiter: ''
239
+ support:
240
+ array:
241
+ last_word_connector: ! ' и '
242
+ two_words_connector: ! ' и '
243
+ words_connector: ! ', '
244
+ time:
245
+ am: утра
246
+ formats:
247
+ default: ! '%a, %d %b %Y, %H:%M:%S %z'
248
+ long: ! '%d %B %Y, %H:%M'
249
+ short: ! '%d %b, %H:%M'
250
+ pm: вечера
251
+ # remove these aliases after 'activemodel' and 'activerecord' namespaces are removed from Rails repository
252
+ activemodel:
253
+ errors:
254
+ <<: *errors
255
+ activerecord:
256
+ errors:
257
+ <<: *errors