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,207 @@
1
+ fr-CA:
2
+ date:
3
+ abbr_day_names:
4
+ - dim
5
+ - lun
6
+ - mar
7
+ - mer
8
+ - jeu
9
+ - ven
10
+ - sam
11
+ abbr_month_names:
12
+ -
13
+ - jan.
14
+ - fév.
15
+ - mar.
16
+ - avr.
17
+ - mai
18
+ - juin
19
+ - juil.
20
+ - août
21
+ - sept.
22
+ - oct.
23
+ - nov.
24
+ - déc.
25
+ day_names:
26
+ - dimanche
27
+ - lundi
28
+ - mardi
29
+ - mercredi
30
+ - jeudi
31
+ - vendredi
32
+ - samedi
33
+ formats:
34
+ default: ! '%Y-%m-%d'
35
+ long: ! '%d %B %Y'
36
+ short: ! '%y-%m-%d'
37
+ month_names:
38
+ -
39
+ - janvier
40
+ - février
41
+ - mars
42
+ - avril
43
+ - mai
44
+ - juin
45
+ - juillet
46
+ - août
47
+ - septembre
48
+ - octobre
49
+ - novembre
50
+ - décembre
51
+ order:
52
+ - :year
53
+ - :month
54
+ - :day
55
+ datetime:
56
+ distance_in_words:
57
+ about_x_hours:
58
+ one: environ une heure
59
+ other: environ %{count} heures
60
+ about_x_months:
61
+ one: environ un mois
62
+ other: environ %{count} mois
63
+ about_x_years:
64
+ one: environ un an
65
+ other: environ %{count} ans
66
+ almost_x_years:
67
+ one: presqu'un an
68
+ other: presque %{count} ans
69
+ half_a_minute: une demi-minute
70
+ less_than_x_minutes:
71
+ one: moins d'une minute
72
+ other: moins de %{count} minutes
73
+ zero: moins d'une minute
74
+ less_than_x_seconds:
75
+ one: moins d'une seconde
76
+ other: moins de %{count} secondes
77
+ zero: moins d'une seconde
78
+ over_x_years:
79
+ one: plus d'un an
80
+ other: plus de %{count} ans
81
+ x_days:
82
+ one: 1 jour
83
+ other: ! '%{count} jours'
84
+ x_minutes:
85
+ one: 1 minute
86
+ other: ! '%{count} minutes'
87
+ x_months:
88
+ one: 1 mois
89
+ other: ! '%{count} mois'
90
+ x_seconds:
91
+ one: 1 seconde
92
+ other: ! '%{count} secondes'
93
+ prompts:
94
+ day: Jour
95
+ hour: Heure
96
+ minute: Minute
97
+ month: Mois
98
+ second: Seconde
99
+ year: Année
100
+ errors: &errors
101
+ format: '%{attribute} %{message}'
102
+ messages:
103
+ accepted: doit être accepté(e)
104
+ blank: doit être rempli(e)
105
+ confirmation: ne concorde pas avec la confirmation
106
+ empty: doit être rempli(e)
107
+ equal_to: doit être égal à %{count}
108
+ even: doit être pair
109
+ exclusion: n'est pas disponible
110
+ greater_than: doit être supérieur à %{count}
111
+ greater_than_or_equal_to: doit être supérieur ou égal à %{count}
112
+ inclusion: n'est pas inclus(e) dans la liste
113
+ invalid: n'est pas valide
114
+ less_than: doit être inférieur à %{count}
115
+ less_than_or_equal_to: doit être inférieur ou égal à %{count}
116
+ not_a_number: n'est pas un nombre
117
+ not_an_integer: doit être un nombre entier
118
+ odd: doit être impair
119
+ record_invalid: ! 'La validation a échoué : %{errors}'
120
+ taken: n'est pas disponible
121
+ too_long:
122
+ one: est trop long (pas plus d'un caractère)
123
+ other: est trop long (pas plus de %{count} caractères)
124
+ too_short:
125
+ one: est trop court (au moins un caractère)
126
+ other: est trop court (au moins %{count} caractères)
127
+ wrong_length:
128
+ one: ne fait pas la bonne longueur (doit comporter un seul caractère)
129
+ other: ne fait pas la bonne longueur (doit comporter %{count} caractères)
130
+ template:
131
+ body: ! 'Veuillez vérifier les champs suivants : '
132
+ header:
133
+ one: ! 'Impossible d''enregistrer ce %{model} : 1 erreur'
134
+ other: ! 'Impossible d''enregistrer ce %{model} : %{count} erreurs'
135
+ helpers:
136
+ select:
137
+ prompt: Veuillez sélectionner
138
+ submit:
139
+ create: Créer un %{model}
140
+ submit: Enregistrer ce %{model}
141
+ update: Modifier ce %{model}
142
+ number:
143
+ currency:
144
+ format:
145
+ delimiter: ! ' '
146
+ format: ! '%n %u'
147
+ precision: 2
148
+ separator: ! ','
149
+ significant: false
150
+ strip_insignificant_zeros: false
151
+ unit: $
152
+ format:
153
+ delimiter: ! ' '
154
+ precision: 3
155
+ separator: ! ','
156
+ significant: false
157
+ strip_insignificant_zeros: false
158
+ human:
159
+ decimal_units:
160
+ format: ! '%n %u'
161
+ units:
162
+ billion: Milliard
163
+ million: Million
164
+ quadrillion: Million de milliards
165
+ thousand: Millier
166
+ trillion: Mille milliard
167
+ unit: ''
168
+ format:
169
+ delimiter: ''
170
+ precision: 2
171
+ significant: true
172
+ strip_insignificant_zeros: true
173
+ storage_units:
174
+ format: ! '%n %u'
175
+ units:
176
+ byte:
177
+ one: Octet
178
+ other: Octets
179
+ gb: Go
180
+ kb: ko
181
+ mb: Mo
182
+ tb: To
183
+ percentage:
184
+ format:
185
+ delimiter: ''
186
+ precision:
187
+ format:
188
+ delimiter: ''
189
+ support:
190
+ array:
191
+ last_word_connector: ! ' et '
192
+ two_words_connector: ! ' et '
193
+ words_connector: ! ', '
194
+ time:
195
+ am: am
196
+ formats:
197
+ default: ! '%H:%M:%S'
198
+ long: ! '%A %d %B %Y %H:%M'
199
+ short: ! '%H:%M'
200
+ pm: pm
201
+ # remove these aliases after 'activemodel' and 'activerecord' namespaces are removed from Rails repository
202
+ activemodel:
203
+ errors:
204
+ <<: *errors
205
+ activerecord:
206
+ errors:
207
+ <<: *errors
@@ -0,0 +1,207 @@
1
+ fr-CH:
2
+ date:
3
+ abbr_day_names:
4
+ - dim
5
+ - lun
6
+ - mar
7
+ - mer
8
+ - jeu
9
+ - ven
10
+ - sam
11
+ abbr_month_names:
12
+ -
13
+ - jan.
14
+ - fév.
15
+ - mar.
16
+ - avr.
17
+ - mai
18
+ - juin
19
+ - juil.
20
+ - août
21
+ - sept.
22
+ - oct.
23
+ - nov.
24
+ - déc.
25
+ day_names:
26
+ - dimanche
27
+ - lundi
28
+ - mardi
29
+ - mercredi
30
+ - jeudi
31
+ - vendredi
32
+ - samedi
33
+ formats:
34
+ default: ! '%d.%m.%Y'
35
+ long: ! '%e %B %Y'
36
+ short: ! '%e %b'
37
+ month_names:
38
+ -
39
+ - janvier
40
+ - février
41
+ - mars
42
+ - avril
43
+ - mai
44
+ - juin
45
+ - juillet
46
+ - août
47
+ - septembre
48
+ - octobre
49
+ - novembre
50
+ - décembre
51
+ order:
52
+ - :day
53
+ - :month
54
+ - :year
55
+ datetime:
56
+ distance_in_words:
57
+ about_x_hours:
58
+ one: environ une heure
59
+ other: environ %{count} heures
60
+ about_x_months:
61
+ one: environ un mois
62
+ other: environ %{count} mois
63
+ about_x_years:
64
+ one: environ un an
65
+ other: environ %{count} ans
66
+ almost_x_years:
67
+ one: presqu'un an
68
+ other: presque %{count} ans
69
+ half_a_minute: une demi-minute
70
+ less_than_x_minutes:
71
+ one: moins d'une minute
72
+ other: moins de %{count} minutes
73
+ zero: moins d'une minute
74
+ less_than_x_seconds:
75
+ one: moins d'une seconde
76
+ other: moins de %{count} secondes
77
+ zero: moins d'une seconde
78
+ over_x_years:
79
+ one: plus d'un an
80
+ other: plus de %{count} ans
81
+ x_days:
82
+ one: 1 jour
83
+ other: ! '%{count} jours'
84
+ x_minutes:
85
+ one: 1 minute
86
+ other: ! '%{count} minutes'
87
+ x_months:
88
+ one: 1 mois
89
+ other: ! '%{count} mois'
90
+ x_seconds:
91
+ one: 1 seconde
92
+ other: ! '%{count} secondes'
93
+ prompts:
94
+ day: Jour
95
+ hour: Heure
96
+ minute: Minute
97
+ month: Mois
98
+ second: Seconde
99
+ year: Année
100
+ errors: &errors
101
+ format: '%{attribute} %{message}'
102
+ messages:
103
+ accepted: doit être accepté(e)
104
+ blank: doit être rempli(e)
105
+ confirmation: ne concorde pas avec la confirmation
106
+ empty: doit être rempli(e)
107
+ equal_to: doit être égal à %{count}
108
+ even: doit être pair
109
+ exclusion: n'est pas disponible
110
+ greater_than: doit être supérieur à %{count}
111
+ greater_than_or_equal_to: doit être supérieur ou égal à %{count}
112
+ inclusion: n'est pas inclus(e) dans la liste
113
+ invalid: n'est pas valide
114
+ less_than: doit être inférieur à %{count}
115
+ less_than_or_equal_to: doit être inférieur ou égal à %{count}
116
+ not_a_number: n'est pas un nombre
117
+ not_an_integer: doit être un nombre entier
118
+ odd: doit être impair
119
+ record_invalid: ! 'La validation a échoué : %{errors}'
120
+ taken: n'est pas disponible
121
+ too_long:
122
+ one: est trop long (pas plus d'un caractère)
123
+ other: est trop long (pas plus de %{count} caractères)
124
+ too_short:
125
+ one: est trop court (au moins un caractère)
126
+ other: est trop court (au moins %{count} caractères)
127
+ wrong_length:
128
+ one: ne fait pas la bonne longueur (doit comporter un seul caractère)
129
+ other: ne fait pas la bonne longueur (doit comporter %{count} caractères)
130
+ template:
131
+ body: ! 'Veuillez vérifier les champs suivants : '
132
+ header:
133
+ one: ! 'Impossible d''enregistrer ce %{model} : 1 erreur'
134
+ other: ! 'Impossible d''enregistrer ce %{model} : %{count} erreurs'
135
+ helpers:
136
+ select:
137
+ prompt: Veuillez sélectionner
138
+ submit:
139
+ create: Créer un %{model}
140
+ submit: Enregistrer ce %{model}
141
+ update: Modifier ce %{model}
142
+ number:
143
+ currency:
144
+ format:
145
+ delimiter: ! ''''
146
+ format: ! '%n %u'
147
+ precision: 2
148
+ separator: .
149
+ significant: false
150
+ strip_insignificant_zeros: false
151
+ unit: CHF
152
+ format:
153
+ delimiter: ! ''''
154
+ precision: 3
155
+ separator: .
156
+ significant: false
157
+ strip_insignificant_zeros: false
158
+ human:
159
+ decimal_units:
160
+ format: ! '%n %u'
161
+ units:
162
+ billion: milliard
163
+ million: million
164
+ quadrillion: million de milliards
165
+ thousand: millier
166
+ trillion: billion
167
+ unit: ''
168
+ format:
169
+ delimiter: ''
170
+ precision: 2
171
+ significant: true
172
+ strip_insignificant_zeros: true
173
+ storage_units:
174
+ format: ! '%n %u'
175
+ units:
176
+ byte:
177
+ one: octet
178
+ other: octets
179
+ gb: Go
180
+ kb: ko
181
+ mb: Mo
182
+ tb: To
183
+ percentage:
184
+ format:
185
+ delimiter: ''
186
+ precision:
187
+ format:
188
+ delimiter: ''
189
+ support:
190
+ array:
191
+ last_word_connector: ! ' et '
192
+ two_words_connector: ! ' et '
193
+ words_connector: ! ', '
194
+ time:
195
+ am: am
196
+ formats:
197
+ default: ! '%d. %B %Y %H:%M'
198
+ long: ! '%A, %d. %B %Y %H:%M:%S %Z'
199
+ short: ! '%d. %b %H:%M'
200
+ pm: pm
201
+ # remove these aliases after 'activemodel' and 'activerecord' namespaces are removed from Rails repository
202
+ activemodel:
203
+ errors:
204
+ <<: *errors
205
+ activerecord:
206
+ errors:
207
+ <<: *errors
@@ -0,0 +1,222 @@
1
+ # French translations for Ruby on Rails
2
+ # by Christian Lescuyer (christian@flyingcoders.com)
3
+ # contributors:
4
+ # - Sebastien Grosjean - ZenCocoon.com
5
+ # - Bruno Michel - http://github.com/nono
6
+ # - Tsutomu Kuroda - http://github.com/kuroda (t-kuroda@oiax.jp)
7
+ # Emended by Benjamin des Gachons and Patrick Chew : <http://www.fitima.org/docs/fiche.pdf>
8
+
9
+ fr:
10
+ date:
11
+ formats:
12
+ default: "%d/%m/%Y"
13
+ short: "%e %b"
14
+ long: "%e %B %Y"
15
+ day_names:
16
+ - dimanche
17
+ - lundi
18
+ - mardi
19
+ - mercredi
20
+ - jeudi
21
+ - vendredi
22
+ - samedi
23
+ abbr_day_names:
24
+ - dim
25
+ - lun
26
+ - mar
27
+ - mer
28
+ - jeu
29
+ - ven
30
+ - sam
31
+ month_names:
32
+ - ~
33
+ - janvier
34
+ - février
35
+ - mars
36
+ - avril
37
+ - mai
38
+ - juin
39
+ - juillet
40
+ - août
41
+ - septembre
42
+ - octobre
43
+ - novembre
44
+ - décembre
45
+ abbr_month_names:
46
+ - ~
47
+ - jan.
48
+ - fév.
49
+ - mar.
50
+ - avr.
51
+ - mai
52
+ - juin
53
+ - juil.
54
+ - août
55
+ - sept.
56
+ - oct.
57
+ - nov.
58
+ - déc.
59
+ order:
60
+ - :day
61
+ - :month
62
+ - :year
63
+
64
+ time:
65
+ formats:
66
+ default: "%d %B %Y %H:%M:%S"
67
+ short: "%d %b %H:%M"
68
+ long: "%A %d %B %Y %H:%M"
69
+ am: 'am'
70
+ pm: 'pm'
71
+
72
+ datetime:
73
+ distance_in_words:
74
+ half_a_minute: "une demi-minute"
75
+ less_than_x_seconds:
76
+ zero: "moins d'une seconde"
77
+ one: "moins d'une seconde"
78
+ other: "moins de %{count} secondes"
79
+ x_seconds:
80
+ one: "1 seconde"
81
+ other: "%{count} secondes"
82
+ less_than_x_minutes:
83
+ zero: "moins d'une minute"
84
+ one: "moins d'une minute"
85
+ other: "moins de %{count} minutes"
86
+ x_minutes:
87
+ one: "1 minute"
88
+ other: "%{count} minutes"
89
+ about_x_hours:
90
+ one: "environ une heure"
91
+ other: "environ %{count} heures"
92
+ x_days:
93
+ one: "1 jour"
94
+ other: "%{count} jours"
95
+ about_x_months:
96
+ one: "environ un mois"
97
+ other: "environ %{count} mois"
98
+ x_months:
99
+ one: "1 mois"
100
+ other: "%{count} mois"
101
+ about_x_years:
102
+ one: "environ un an"
103
+ other: "environ %{count} ans"
104
+ over_x_years:
105
+ one: "plus d'un an"
106
+ other: "plus de %{count} ans"
107
+ almost_x_years:
108
+ one: "presqu'un an"
109
+ other: "presque %{count} ans"
110
+ prompts:
111
+ year: "Année"
112
+ month: "Mois"
113
+ day: "Jour"
114
+ hour: "Heure"
115
+ minute: "Minute"
116
+ second: "Seconde"
117
+
118
+ number:
119
+ format:
120
+ separator: ","
121
+ delimiter: " "
122
+ precision: 3
123
+ significant: false
124
+ strip_insignificant_zeros: false
125
+ currency:
126
+ format:
127
+ format: "%n %u"
128
+ unit: "€"
129
+ separator: ","
130
+ delimiter: " "
131
+ precision: 2
132
+ significant: false
133
+ strip_insignificant_zeros: false
134
+ percentage:
135
+ format:
136
+ delimiter: ""
137
+ precision:
138
+ format:
139
+ delimiter: ""
140
+ human:
141
+ format:
142
+ delimiter: ""
143
+ precision: 2
144
+ significant: true
145
+ strip_insignificant_zeros: true
146
+ storage_units:
147
+ format: "%n %u"
148
+ units:
149
+ byte:
150
+ one: "octet"
151
+ other: "octets"
152
+ kb: "ko"
153
+ mb: "Mo"
154
+ gb: "Go"
155
+ tb: "To"
156
+ decimal_units:
157
+ format: "%n %u"
158
+ units:
159
+ unit: ""
160
+ thousand: "millier"
161
+ million: "million"
162
+ billion: "milliard"
163
+ trillion: "billion"
164
+ quadrillion: "million de milliards"
165
+
166
+ support:
167
+ array:
168
+ words_connector: ", "
169
+ two_words_connector: " et "
170
+ last_word_connector: " et "
171
+
172
+ helpers:
173
+ select:
174
+ prompt: "Veuillez sélectionner"
175
+ submit:
176
+ create: "Créer un(e) %{model}"
177
+ update: "Modifier ce(tte) %{model}"
178
+ submit: "Enregistrer ce(tte) %{model}"
179
+
180
+ errors: &errors
181
+ format: "%{attribute} %{message}"
182
+ messages: &errors_messages
183
+ inclusion: "n'est pas inclus(e) dans la liste"
184
+ exclusion: "n'est pas disponible"
185
+ invalid: "n'est pas valide"
186
+ confirmation: "ne concorde pas avec la confirmation"
187
+ accepted: "doit être accepté(e)"
188
+ empty: "doit être rempli(e)"
189
+ blank: "doit être rempli(e)"
190
+ too_long:
191
+ one: "est trop long (pas plus d'un caractère)"
192
+ other: "est trop long (pas plus de %{count} caractères)"
193
+ too_short:
194
+ one: "est trop court (au moins un caractère)"
195
+ other: "est trop court (au moins %{count} caractères)"
196
+ wrong_length:
197
+ one: "ne fait pas la bonne longueur (doit comporter un seul caractère)"
198
+ other: "ne fait pas la bonne longueur (doit comporter %{count} caractères)"
199
+ not_a_number: "n'est pas un nombre"
200
+ not_an_integer: "doit être un nombre entier"
201
+ greater_than: "doit être supérieur à %{count}"
202
+ greater_than_or_equal_to: "doit être supérieur ou égal à %{count}"
203
+ equal_to: "doit être égal à %{count}"
204
+ less_than: "doit être inférieur à %{count}"
205
+ less_than_or_equal_to: "doit être inférieur ou égal à %{count}"
206
+ odd: "doit être impair"
207
+ even: "doit être pair"
208
+ taken: "n'est pas disponible"
209
+ record_invalid: "La validation a échoué : %{errors}"
210
+
211
+ template: &errors_template
212
+ header:
213
+ one: "Impossible d'enregistrer ce(tte) %{model} : 1 erreur"
214
+ other: "Impossible d'enregistrer ce(tte) %{model} : %{count} erreurs"
215
+ body: "Veuillez vérifier les champs suivants : "
216
+
217
+ activemodel:
218
+ errors:
219
+ <<: *errors
220
+ activerecord:
221
+ errors:
222
+ <<: *errors