resme 0.5.1 → 1.0.1

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 (43) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.org +12 -0
  3. data/README.org +16 -15
  4. data/lib/resme/cli/command_semantics.rb +23 -26
  5. data/lib/resme/version.rb +4 -1
  6. metadata +3 -43
  7. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Achievement.xsd +0 -91
  8. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Certificate.xsd +0 -62
  9. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/CommonTypes.xsd +0 -139
  10. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/ComputerSkill.xsd +0 -112
  11. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/ContactInformation.xsd +0 -321
  12. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Demographics.xsd +0 -122
  13. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DigitalContent.xsd +0 -164
  14. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DocumentInformation.xsd +0 -119
  15. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Documentation.xsd +0 -122
  16. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DrivingSkill.xsd +0 -71
  17. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EducationalExperience.xsd +0 -137
  18. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EmploymentExperience.xsd +0 -65
  19. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassCoverLetter.xsd +0 -70
  20. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassLearnerInformation.xsd +0 -91
  21. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassPrintingPreferences.xsd +0 -247
  22. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassSchema.xsd +0 -133
  23. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Experience.xsd +0 -75
  24. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Headline.xsd +0 -97
  25. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Identification.xsd +0 -54
  26. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Language.xsd +0 -107
  27. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Letter.xsd +0 -129
  28. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/LinguisticSkill.xsd +0 -189
  29. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/OccupationalField.xsd +0 -68
  30. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Organisation.xsd +0 -129
  31. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/PersonName.xsd +0 -71
  32. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Skill.xsd +0 -71
  33. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/EQF_08_V1.0.0.xsd +0 -115
  34. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/EUDrivingLicence_V1.1.0.xsd +0 -28
  35. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/ISCED97_V1.0.0.xsd +0 -981
  36. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/NACE_COM_V1.0.0.xsd +0 -5630
  37. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassAddressFormats_V1.3.0.xsd +0 -117
  38. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISCO_88_COM_V1.4.0.xsd +0 -15116
  39. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISOCountries_V1.6.0.xsd +0 -6180
  40. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISOLanguages_V1.8.0.xsd +0 -7645
  41. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassNationalities_V1.6.0.xsd +0 -6179
  42. data/lib/resme/templates/europass/europass-xml-schema-doc-v3.3.0.pdf +0 -0
  43. data/lib/resme/templates/resume.xml.erb +0 -496
@@ -1,496 +0,0 @@
1
- <%
2
- # provide sensible defaults, so that hash and array indexing won't fail on nil
3
- email = (data["contacts"] || []).select { |x| x["label"] == "email" }.first || {}
4
- phones = (data["contacts"] || []).select { |x|
5
- ["phone", "mobile", "cell"].include?(x["label"])
6
- }
7
- messaging = (data["contacts"] || []).select { |x|
8
- ["skype", "gtalk", "telegram", "whatsup"].include?(x["label"])
9
- }
10
- address = (data["addresses"] || []).select { |x| x["label"] == "home" }.first || {}
11
-
12
- # make a period (2015, 2015-10, 2015-01-01 into the xml attributes day, month, year for a date tag
13
- def self.period_tod period
14
- el = period.to_s.split("-")
15
- fields = ["year=\"%d\"", "month=\"--%02d\"", "day=\"---%02d\""]
16
- el.each_with_index.map { |x, i| fields[i] % x.to_i }.join(" ")
17
- end
18
-
19
-
20
- -%>
21
- <?xml version="1.0" encoding="UTF-8"?>
22
- <SkillsPassport xmlns="http://europass.cedefop.europa.eu/Europass" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://europass.cedefop.europa.eu/Europass http://europass.cedefop.europa.eu/xml/v3.3.0/EuropassSchema.xsd" locale="en">
23
- <DocumentInfo>
24
- <DocumentType>ECV</DocumentType>
25
- <Bundle></Bundle>
26
- <CreationDate><%= DateTime.now.iso8601 %></CreationDate>
27
- <LastUpdateDate><%= DateTime.now.iso8601 %></LastUpdateDate>
28
- <XSDVersion>V3.3</XSDVersion>
29
- <Generator>resume.rb</Generator>
30
- <Comment></Comment>
31
- <Copyright>© European Communities | http://europass.cedefop.europa.eu</Copyright>
32
- <EuropassLogo>false</EuropassLogo>
33
- </DocumentInfo>
34
- <!-- <PrintingPreferences> </PrintingPreferences> -->
35
- <LearnerInfo>
36
- <Identification>
37
- <PersonName>
38
- <Title>
39
- <Code>dr</Code>
40
- <Label><%= data["basics"]["title"] %></Label>
41
- </Title>
42
- <FirstName><%= data["basics"]["first_name"] %></FirstName>
43
- <Surname><%= data["basics"]["last_name"] %></Surname>
44
- </PersonName>
45
- <ContactInfo>
46
- <Address>
47
- <Contact>
48
- <AddressLine><%= address["street"] %></AddressLine>
49
- <PostalCode><%= address["zip_code"] %></PostalCode>
50
- <Municipality><%= address["city"] %></Municipality>
51
- <Country>
52
- <Code><%= (address["country"] || "")[0..1]&.upcase %></Code>
53
- <Label><%= address["country"] %></Label>
54
- </Country>
55
- </Contact>
56
- </Address>
57
- <Email>
58
- <Contact><%= email["value"] %></Contact>
59
- </Email>
60
- <% if phones %>
61
- <TelephoneList>
62
- <% phones.each do |phone| %>
63
- <Telephone>
64
- <Contact><%= phone["value"] %></Contact>
65
- <Use>
66
- <Code><%= phone["label"] %></Code>
67
- <Label><%= phone["value"] %></Label>
68
- </Use>
69
- </Telephone>
70
- <% end %>
71
- </TelephoneList>
72
- <% end %>
73
- <% if data["web_presence"] && !data["web_presence"].empty? %>
74
- <WebsiteList>
75
- <% data["web_presence"].each do |web| %>
76
- <Website>
77
- <Contact><%= web["value"] %></Contact>
78
- <Use>
79
- <!-- <Code><%= web["label"] %></Code> -->
80
- <Label><%= web["label"].capitalize %></Label>
81
- </Use>
82
- </Website>
83
- <% end %>
84
- </WebsiteList>
85
- <% end %>
86
- <% if messaging && !messaging.empty? %>
87
- <InstantMessagingList>
88
- <% messaging.each do |im| %>
89
- <InstantMessaging>
90
- <Contact><%= im["value"] %></Contact>
91
- <Use>
92
- <!-- <Code><%= im["label"] %></Code> -->
93
- <Label><%= im["label"].capitalize %></Label>
94
- </Use>
95
- </InstantMessaging>
96
- <% end %>
97
- </InstantMessagingList>
98
- <% end %>
99
- <ContactMethodList>
100
- <!-- other contacts not defined above -->
101
- </ContactMethodList>
102
- </ContactInfo>
103
- <Demographics>
104
- <% if data["basics"]["birthdate"] %>
105
- <Birthdate day="---<%= "%02d" % data["basics"]["birthdate"].day %>"
106
- month="--<%= "%02d" % data["basics"]["birthdate"].month %>"
107
- year="<%= data["basics"]["birthdate"].year %>" />
108
- <% end %>
109
- <%# ["gender"] in place of .gender, so that the code does not complain about gender not being defined (being nil) %>
110
- <% if data["basics"]["gender"] == "M" or data["basics"]["gender"] == "F" %>
111
- <Gender>
112
- <Code><%= data["basics"]["gender"] %></Code>
113
- <Label><%= data["basics"]["gender"] == "M" ? "Male" : "Female" %></Label>
114
- </Gender>
115
- <% end %>
116
- <NationalityList>
117
- <Nationality>
118
- <Label><%= data["basics"]["nationality"] %></Label>
119
- </Nationality>
120
- </NationalityList>
121
- <!--
122
- <Photo>
123
- <MimeType>image/jpeg</MimeType>
124
- <Data></Data>
125
- <MetadataList>
126
- <Metadata key="photo-dimensions" value="100x110"/>
127
- </MetadataList>
128
- </Photo>
129
- <Signature>
130
- <MimeType>image/jpeg</MimeType>
131
- <Data></Data>
132
- <MetadataList>
133
- <Metadata key="signature-dimensions" value="250x150" />
134
- </MetadataList>
135
- </Signature>
136
- -->
137
- </Demographics>
138
- </Identification>
139
- <Headline>
140
- <Description><Label><%= data["summary"] %></Label></Description>
141
- </Headline>
142
- <WorkExperienceList>
143
- <% (data["work"] || []).each do |pos| %>
144
- <WorkExperience>
145
- <Period>
146
- <From <%= self.period_tod pos["from"] %>/>
147
- <% if pos["till"] and pos["till"] != "" %>
148
- <To <%= self.period_tod pos["till"] %>/>
149
- <% else %>
150
- <Current>true</Current>
151
- <% end %>
152
- </Period>
153
- <!--
154
- <Documentation>
155
- <ReferenceTo idref="ATT_1"/>
156
- </Documentation>
157
- -->
158
- <Position>
159
- <Label><%= pos["role"] %></Label>
160
- </Position>
161
- <Activities>
162
- <%= pos["summary"] %>
163
- </Activities>
164
- <Employer>
165
- <Name><%= pos["who"] ? pos["who"] : "" %></Name>
166
- <% if pos["address"] %>
167
- <ContactInfo>
168
- <Address>
169
- <Contact>
170
- <AddressLine><%= pos["address"] %></AddressLine>
171
- <!-- <Country>
172
- <Code></Code>
173
- <Label></Label>
174
- </Country> -->
175
- </Contact>
176
- </Address>
177
- <Website>
178
- <Contact><%= pos["website"] %></Contact>
179
- </Website>
180
- </ContactInfo>
181
- <!--
182
- <Sector>
183
- <Code></Code>
184
- <Label></Label>
185
- </Sector>
186
- -->
187
- <% end %>
188
- </Employer>
189
- </WorkExperience>
190
- <% end %>
191
- <% if data["teaching"] && !data["teaching"].empty? %>
192
- <% data["teaching"].each do |pos| %>
193
- <WorkExperience>
194
- <Period>
195
- <% if pos["from"] && pos["from"] != "" %>
196
- <From <%= self.period_tod pos["from"] %>/>
197
- <% end %>
198
- <% if pos["till"] and pos["till"] != "" %>
199
- <To <%= self.period_tod pos["till"] %>/>
200
- <% else %>
201
- <Current>true</Current>
202
- <% end %>
203
- </Period>
204
- <!--
205
- <nation>
206
- <ReferenceTo idref="ATT_1"/>
207
- </Documentation>
208
- -->
209
- <Position>
210
- <Label><%= pos["role"] %></Label>
211
- </Position>
212
- <Activities>
213
- <%= pos["summary"] %>
214
- </Activities>
215
- <Employer>
216
- <Name><%= "#{pos['who']} #{pos['school'] ? pos['school'] : ''}" %></Name>
217
- <% if pos["address"] %>
218
- <ContactInfo>
219
- <Address>
220
- <Contact>
221
- <AddressLine><%= pos["address"] %></AddressLine>
222
- <!-- <Country>
223
- <Code></Code>
224
- <Label></Label>
225
- </Country> -->
226
- </Contact>
227
- </Address>
228
- <Website>
229
- <Contact><%= pos["website"] %></Contact>
230
- </Website>
231
- </ContactInfo>
232
- <!--
233
- <Sector>
234
- <Code></Code>
235
- <Label></Label>
236
- </Sector>
237
- -->
238
- <% end %>
239
- </Employer>
240
- </WorkExperience>
241
- <% end %>
242
- <% end %>
243
- <% if data["volunteer"] && !data["volunteer"].empty? %>
244
- <% data["volunteer"].each do |pos| %>
245
- <WorkExperience>
246
- <% if pos["date"] %>
247
- <Period>
248
- <From <%= self.period_tod pos["date"].strftime("%Y-%m-%d") %>/>
249
- <To <%= self.period_tod pos["date"].strftime("%Y-%m-%d") %>/>
250
- </Period>
251
- <% elsif pos["from"] or (pos["till"] and pos["till"] != "") %>
252
- <Period>
253
- <% if pos["from"] %>
254
- <From <%= self.period_tod pos["from"] %>/>
255
- <% end %>
256
- <% if pos["till"] and pos["till"] != "" %>
257
- <To <%= self.period_tod pos["till"] %>/>
258
- <% else %>
259
- <Current>true</Current>
260
- <% end %>
261
- </Period>
262
- <% end %>
263
- <!--
264
- <ntation>
265
- <ReferenceTo idref="ATT_1"/>
266
- </Documentation>
267
- -->
268
- <Position>
269
- <Label><%= pos["role"] %></Label>
270
- </Position>
271
- <Activities>
272
- <%= pos["summary"] %>
273
- </Activities>
274
- <Employer>
275
- <Name><%= pos["who"] %></Name>
276
- <% if pos["address"] %>
277
- <ContactInfo>
278
- <Address>
279
- <Contact>
280
- <AddressLine><%= pos["address"] %></AddressLine>
281
- <!-- <Country>
282
- <Code></Code>
283
- <Label></Label>
284
- </Country> -->
285
- </Contact>
286
- </Address>
287
- <Website>
288
- <Contact><%= pos["website"] %></Contact>
289
- </Website>
290
- </ContactInfo>
291
- <!--
292
- <Sector>
293
- <Code></Code>
294
- <Label></Label>
295
- </Sector>
296
- -->
297
- <% end %>
298
- </Employer>
299
- </WorkExperience>
300
- <% end %>
301
- <% end %>
302
- </WorkExperienceList>
303
- <% if data["education"] && !data["education"].empty? %>
304
- <EducationList>
305
- <% data["education"].select { |x| x["publish"] }.each do |edu| %>
306
- <Education>
307
- <Period>
308
- <% if edu["from"] && !edu["from"] == "" %>
309
- <From <%= self.period_tod edu["from"] %>/>
310
- <% end %>
311
- <% if edu["till"] && !edu["till"] == "" %>
312
- <To <%= self.period_tod edu["till"] %>/>
313
- <% end %>
314
- </Period>
315
- <!--
316
- <Documentation>
317
- <ReferenceTo idref="ATT_1"/>
318
- <ReferenceTo idref="ATT_2"/>
319
- </Documentation>
320
- -->
321
- <Title><%= edu["degree"] %></Title>
322
- <Activities></Activities>
323
- <Organisation>
324
- <Name><%= edu["school"] %></Name>
325
- <ContactInfo>
326
- <Address>
327
- <Contact>
328
- <AddressLine><%= edu["address"] %></AddressLine>
329
- <!-- <Country>
330
- <Code>US</Code>
331
- <Label>United States</Label>
332
- </Country>
333
- -->
334
- </Contact>
335
- </Address>
336
- </ContactInfo>
337
- </Organisation>
338
- </Education>
339
- <% end %>
340
- </EducationList>
341
- <% end %>
342
- <Skills>
343
- <% if data["languages"] %>
344
- <Linguistic>
345
- <% if data["languages"]["mother_tongues"] && !data["languages"]["mother_tongues"].empty? %>
346
- <MotherTongueList>
347
- <% data["languages"]["mother_tongues"].each do |mt| %>
348
- <MotherTongue>
349
- <Description>
350
- <Code><%= mt["code"] %></Code>
351
- <Label><% mt["language"] %></Label>
352
- </Description>
353
- </MotherTongue>
354
- <% end %>
355
- </MotherTongueList>
356
- <% end %>
357
- <% if data["languages"]["foreign"] && !data["languages"]["foreign"].empty? %>
358
- <ForeignLanguageList>
359
- <% data["languages"]["foreign"].each do |language| %>
360
- <ForeignLanguage>
361
- <Description>
362
- <Code><%= language["code"] %></Code>
363
- <Label><%= language["language"] %></Label>
364
- </Description>
365
- <ProficiencyLevel>
366
- <Listening>
367
- <%= language["listening"].upcase %>
368
- </Listening>
369
- <Reading>
370
- <%= language["reading"].upcase %>
371
- </Reading>
372
- <SpokenInteraction>
373
- <%= language["spoken_interaction"].upcase %>
374
- </SpokenInteraction>
375
- <SpokenProduction>
376
- <%= language["spoken_production"].upcase %>
377
- </SpokenProduction>
378
- <Writing>
379
- <%= language["writing"].upcase %>
380
- </Writing>
381
- </ProficiencyLevel>
382
- </ForeignLanguage>
383
- <% end %>
384
- </ForeignLanguageList>
385
- <% end %>
386
- </Linguistic>
387
- <% end %>
388
- <!--
389
- <Communication>
390
- <Description></Description>
391
- <Documentation></Documentation>
392
- </Communication>
393
- <Organisational>
394
- <Description></Description>
395
- <Documentation></Documentation>
396
- </Organisational>
397
- <JobRelated>
398
- <Description></Description>
399
- <Documentation></Documentation>
400
- </JobRelated>
401
- <Computer>
402
- <Description></Description>
403
- <ProficiencyLevel></ProficiencyLevel>
404
- <VerifiedBy>
405
- <Certificate><Title></Title></Certificate>
406
- </VerifiedBy>
407
- <Documentation></Documentation>
408
- </Computer>
409
- -->
410
- <% if data["driving"] && !data["driving"].empty? %>
411
- <Driving>
412
- <Description>
413
- <% data["driving"].each do |license| %>
414
- <Licence><%= license["license"] %></Licence>
415
- <% end %>
416
- </Description>
417
- </Driving>
418
- <% end %>
419
- <Other>
420
- <Description>
421
- <% if data["interests"] && !data["interests"].empty? %>
422
- &lt;ul&gt;
423
- <% data["interests"] do |x| %>
424
- &lt;li&gt;<%= "#{x['name'] || ""}: #{x['level'] || ""}, #{x['summary'] || ""}; " %>&lt;/li&gt;
425
- <% end %>
426
- &lt;/ul&gt;
427
- <% end %>
428
- </Description>
429
- </Other>
430
- </Skills>
431
- <AchievementList>
432
- <% if data["awards"] && !data["awards"].empty? %>
433
- <% data["awards"].each do |award| %>
434
- <Achievement>
435
- <Title>
436
- <Label><%= award["title"] %></Label>
437
- </Title>
438
- <Description>
439
- <%= award["summary"] %>
440
- (<%= award["who"] %>, <%= award["where"] %>, <%= award["date"] %>)
441
- </Description>
442
- </Achievement>
443
- <% end %>
444
- <% end %>
445
- <% if data["achievements"] && !data["achievements"].empty? %>
446
- <% data["achievements"].each do |achievement| %>
447
- <Achievement>
448
- <Title>
449
- <Label><%= achievement["title"] %></Label>
450
- </Title>
451
- <Description>
452
- <%= achievement["summary"] %>
453
- (<%= achievement["who"] %>, <%= achievement["where"] %>, <%= achievement["date"] %>)
454
- </Description>
455
- </Achievement>
456
- <% end %>
457
- <% end %>
458
- <% if data["projects"] && !data["projects"].empty? %>
459
- <Achievement>
460
- <Title>
461
- <Code>projects</Code>
462
- <Label>Projects</Label>
463
- </Title>
464
- <Description>
465
- &lt;ul&gt;
466
- <% data["projects"].each do |x| %>
467
- &lt;/li&gt; <%= "#{x['name']} (#{x['who']}): #{x['role']} (#{x['from']}--#{x['till']})" %> &lt;/li&gt;
468
- <% end %>
469
- &lt;/ul&gt;
470
- </Description>
471
- </Achievement>
472
- <% end %>
473
- <% if data["publications"] && !data["publications"].empty? %>
474
- <Achievement>
475
- <Title>
476
- <Code>publications</Code>
477
- <Label>Publications</Label>
478
- </Title>
479
- <Description>
480
- &lt;ul&gt;
481
- <% data["publications"].each do |x| %>
482
- &lt;li&gt; <%= "#{x['title']}, #{x['authors']}, #{x['publisher']}, #{x['date']}" %> &lt;/li&gt;
483
- <% end %>
484
- &lt;/ul&gt;
485
- </Description>
486
- </Achievement>
487
- <% end %>
488
- </AchievementList>
489
- <Documentation>
490
- </Documentation>
491
- </LearnerInfo>
492
- <!--
493
- <AttachmentList>
494
- </AttachmentList>
495
- -->
496
- </SkillsPassport>