resme 0.2.0 → 0.3.0
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.
- checksums.yaml +4 -4
- data/README.md +52 -30
- data/lib/resme/cli/command_semantics.rb +40 -1
- data/lib/resme/cli/command_syntax.rb +46 -4
- data/lib/resme/renderer/renderer.rb +74 -9
- data/lib/resme/templates/europass/eu.xml.erb +2 -1
- data/lib/resme/templates/resume.json.erb +27 -27
- data/lib/resme/templates/resume.md.erb +141 -99
- data/lib/resme/templates/resume.org.erb +202 -0
- data/lib/resme/templates/resume.yml +43 -39
- data/lib/resme/templates/schema.yml +494 -0
- data/lib/resme/version.rb +1 -1
- data/resme.gemspec +1 -0
- metadata +18 -2
@@ -16,7 +16,8 @@ def self.period_tod period
|
|
16
16
|
end
|
17
17
|
|
18
18
|
|
19
|
-
|
19
|
+
-%>
|
20
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
20
21
|
<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">
|
21
22
|
<DocumentInfo>
|
22
23
|
<DocumentType>ECV</DocumentType>
|
@@ -1,14 +1,14 @@
|
|
1
1
|
{
|
2
2
|
"basics": {
|
3
|
-
"name": "<%= data.
|
4
|
-
"label": "<%= data.basics.title %>",
|
3
|
+
"name": "<%= full_name(data).to_json %>",
|
4
|
+
"label": "<%= data.basics.title.to_json %>",
|
5
5
|
"picture": "<%= data.basics.picture %>",
|
6
6
|
"email": "<%= e = data.contacts.select { |x| x.label == "email" }.first; e.value if e %>",
|
7
7
|
"phone": "<%= p = data.contacts.select { |x| x.label == "mobile" }.first; p.value if p %>",
|
8
8
|
"website": "<%= w = data.web_presence.select { |x| x.label == "website" }.first; w.value if w %>",
|
9
|
-
"summary": "<%= data.summary.
|
9
|
+
"summary": "<%= data.summary.to_json %>",
|
10
10
|
"location": {
|
11
|
-
"address": "<%= data.addresses[0].street %>",
|
11
|
+
"address": "<%= data.addresses[0].street.to_json %>",
|
12
12
|
"postalCode": "<%= data.addresses[0].zip_code %>",
|
13
13
|
"city": "<%= data.addresses[0].city %>",
|
14
14
|
"countryCode": "<%= data.addresses[0].country %>",
|
@@ -28,12 +28,12 @@
|
|
28
28
|
"work": [
|
29
29
|
<% sequence = data.work || []; sequence.each_with_index do |job, index| %>
|
30
30
|
{
|
31
|
-
"company": "<%= job.who %>",
|
32
|
-
"position": "<%= job.role %>",
|
31
|
+
"company": "<%= job.who.to_json %>",
|
32
|
+
"position": "<%= job.role.to_json %>",
|
33
33
|
"website": "<%= job.website %>",
|
34
34
|
"startDate": "<%= job.from %>",
|
35
35
|
"endDate": "<%= job.till %>",
|
36
|
-
"summary": "<%= job.summary.
|
36
|
+
"summary": "<%= job.summary.to_json %>"
|
37
37
|
<%# "highlights": [ "Started the company" ] %>
|
38
38
|
}
|
39
39
|
<%= "," unless index == sequence.size - 1 %>
|
@@ -42,12 +42,12 @@
|
|
42
42
|
"volunteer": [
|
43
43
|
<% sequence = data.volunteer || []; sequence.each_with_index do |job, index| %>
|
44
44
|
{
|
45
|
-
"organization": "<%= job.who %>",
|
46
|
-
"position": "<%= job.role %>",
|
45
|
+
"organization": "<%= job.who.to_json %>",
|
46
|
+
"position": "<%= job.role.to_json %>",
|
47
47
|
"website": "<%= job.website %>",
|
48
48
|
"startDate": "<%= job.from %>",
|
49
49
|
"endDate": "<%= job.till %>",
|
50
|
-
"summary": "<%= job.summary.
|
50
|
+
"summary": "<%= job.summary.to_json %>"
|
51
51
|
<%# "highlights": [ "Started the company" ] %>
|
52
52
|
}
|
53
53
|
<%= "," unless index == sequence.size - 1 %>
|
@@ -56,9 +56,9 @@
|
|
56
56
|
"education": [
|
57
57
|
<% sequence = data.education.select { |x| x.publish }; sequence.each_with_index do |edu, index| %>
|
58
58
|
{
|
59
|
-
"institution": "<%= edu.school %>",
|
60
|
-
"area": "<%= edu.topic %>",
|
61
|
-
"studyType": "<%= edu.degree %>",
|
59
|
+
"institution": "<%= edu.school.to_json %>",
|
60
|
+
"area": "<%= edu.topic.to_json %>",
|
61
|
+
"studyType": "<%= edu.degree.to_json %>",
|
62
62
|
"startDate": "<%= edu.from %>",
|
63
63
|
"endDate": "<%= edu.till %>",
|
64
64
|
"gpa": "<%= edu.score %>"
|
@@ -70,10 +70,10 @@
|
|
70
70
|
"awards": [
|
71
71
|
<% sequence = data.awards || []; sequence.each_with_index do |award, index| %>
|
72
72
|
{
|
73
|
-
"title": "<%= award.title %>",
|
73
|
+
"title": "<%= award.title.to_json %>",
|
74
74
|
"date": "<%= award.date %>",
|
75
|
-
"awarder": "<%= award.who %>"
|
76
|
-
"summary": "<%= award.summary.
|
75
|
+
"awarder": "<%= award.who.to_json %>"
|
76
|
+
"summary": "<%= award.summary.to_json %>"
|
77
77
|
}
|
78
78
|
<%= "," unless index == sequence.size - 1 %>
|
79
79
|
<% end %>
|
@@ -81,11 +81,11 @@
|
|
81
81
|
"publications": [
|
82
82
|
<% squence = data.publications || []; sequence.each_with_index do |pub, index| %>
|
83
83
|
{
|
84
|
-
"name": "<%= pub.title %>",
|
85
|
-
"publisher": "<%= pub.publisher %>",
|
84
|
+
"name": "<%= pub.title.to_json %>",
|
85
|
+
"publisher": "<%= pub.publisher.to_json %>",
|
86
86
|
"releaseDate": "<%= pub.date %>",
|
87
87
|
"website": "<%= pub.url %>",
|
88
|
-
"summary": "<%= pub.summary.
|
88
|
+
"summary": "<%= pub.summary.to_json %>"
|
89
89
|
}
|
90
90
|
<%= "," unless index == sequence.size - 1 %>
|
91
91
|
<% end %>
|
@@ -93,8 +93,8 @@
|
|
93
93
|
"skills": [
|
94
94
|
<% sequence = data.skills || []; sequence.each_with_index do |skill, index| %>
|
95
95
|
{
|
96
|
-
"name": "<%= skill.name %>",
|
97
|
-
"level": "<%= skill.level %>"
|
96
|
+
"name": "<%= skill.name.to_json %>",
|
97
|
+
"level": "<%= skill.level.to_json %>"
|
98
98
|
<%# "keywords": [...] %>
|
99
99
|
}
|
100
100
|
<%= "," unless index == sequence.size - 1 %>
|
@@ -103,15 +103,15 @@
|
|
103
103
|
"languages": [
|
104
104
|
<% data.languages.mother_tongues.each do |mt| %>
|
105
105
|
{
|
106
|
-
"name": "<%= mt.language%>",
|
106
|
+
"name": "<%= mt.language.to_json %>",
|
107
107
|
"level": "Native speaker"
|
108
108
|
}
|
109
109
|
<%= "," unless data.languages.foreign == nil %>
|
110
110
|
<% end %>
|
111
111
|
<% sequence = data.languages.foreign || []; sequence.each_with_index do |lang, index| %>
|
112
112
|
{
|
113
|
-
"name": "<%= lang.language%>",
|
114
|
-
"level": "<%= lang.level %>"
|
113
|
+
"name": "<%= lang.language.to_json %>",
|
114
|
+
"level": "<%= lang.level.to_json %>"
|
115
115
|
}
|
116
116
|
<%= "," unless index == sequence.size - 1 %>
|
117
117
|
<% end %>
|
@@ -119,7 +119,7 @@
|
|
119
119
|
"interests": [
|
120
120
|
<% sequence = data.interests || []; sequence.each_with_index do |interest, index| %>
|
121
121
|
{
|
122
|
-
"name": "<%= interest.name %>",
|
122
|
+
"name": "<%= interest.name.to_json %>",
|
123
123
|
<%# "keywords": [...] %>
|
124
124
|
},
|
125
125
|
<%= "," unless index == sequence.size - 1 %>
|
@@ -128,8 +128,8 @@
|
|
128
128
|
"references": [
|
129
129
|
<% sequence = data.references || []; sequence.each_with_index do |reference, index| %>
|
130
130
|
{
|
131
|
-
"name": "<%= reference.name %>",
|
132
|
-
"reference": "<%= reference.reference %>"
|
131
|
+
"name": "<%= reference.name.to_json %>",
|
132
|
+
"reference": "<%= reference.reference.to_json %>"
|
133
133
|
}
|
134
134
|
<%= "," unless index == sequence.size - 1 %>
|
135
135
|
<% end %>
|
@@ -1,118 +1,160 @@
|
|
1
|
-
# <%=
|
1
|
+
# <%= full_name data %>, <%= data.basics.title %>
|
2
|
+
|
2
3
|
<%
|
3
4
|
addresses = data.addresses.map { |x| "**#{x.label}**: #{x.street}, #{x.zip_code} #{x.city}" }
|
4
5
|
presence = data.contacts.map { |x| "**#{x.label}:** #{x.value}" } + data.web_presence.map { |x| "<" + x.value + ">" }
|
5
|
-
|
6
|
+
-%>
|
6
7
|
<%= presence.map { |x| "* #{x}" }.join("\n") %>
|
7
8
|
<%= addresses.map { |x| "* #{x}" }.join("\n") %>
|
8
9
|
|
10
|
+
<% if data["summary"] -%>
|
9
11
|
## Summary
|
10
|
-
<% reflow(data.summary, 78).each do |string| %>
|
11
|
-
<%= string %><% end %>
|
12
|
-
|
13
|
-
<% if data.skills %>## Skills
|
14
|
-
|
15
|
-
<% (data.skills || []).each do |item| %>
|
16
|
-
- <%= item.name %> <%= item.level %>
|
17
|
-
<% end %>
|
18
|
-
|
19
|
-
<% end %><% if data.experience %>## Experience
|
20
|
-
<% (data.work || []).each do |exp| %>
|
21
|
-
- **<%= clean((exp.role ? exp.role + ", " : "") + " " + (exp.who || "") ) %>**
|
22
|
-
<%= exp.from %> -- <%= exp.till ? exp.till : "today " %>
|
23
|
-
<% reflow(exp.summary, 72).each do |string| %>
|
24
|
-
<%= string %><% end %>
|
25
|
-
<% end %><% end %>
|
26
|
-
|
27
|
-
<% if data.teaching %>## Teaching
|
28
|
-
<% (data.teaching || []).each do |item| %>
|
29
|
-
- **<%= item.role %>, <%= item.who %>**
|
30
|
-
<%= item.from %> -- <%= item.till ? item.till : "today " %>
|
31
|
-
<%= item.subject %> <%= ("(" + item["school"] + ")") if item["school"] %>
|
32
|
-
<% end %><% end %>
|
33
|
-
|
34
|
-
<% if data.projects %>## Projects
|
35
|
-
<% (data.projects || []).each do |item| %>
|
36
|
-
- <%= item.name %>, <%= item.role %>
|
37
|
-
<%= item.from %> -- <%= item.till %> <% reflow(item.summary, 72).each do |line| %>
|
38
|
-
<%= line %><% end %>
|
39
|
-
<% end %><% end %>
|
40
|
-
|
41
|
-
<% if data.other %>## Other Initiatives
|
42
|
-
<% (data.other || []).each do |item| %>
|
43
|
-
- <%= item.who %>, <%= item.role %>
|
44
|
-
<%= item.from %> -- <%= item.till %> <% reflow(item.summary, 72).each do |line| %>
|
45
|
-
<%= line %><% end %>
|
46
|
-
<% end %><% end %>
|
47
|
-
|
48
|
-
<% if data.committees %>## Committees
|
49
|
-
<% (data.committees || []).each do |item| %>
|
50
|
-
- <%= item.who %>, <%= item.role %> <%= item.editions %>
|
51
|
-
<%= item.url %>
|
52
|
-
<% end %><% end %>
|
53
12
|
|
54
|
-
|
55
|
-
<%
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
13
|
+
<%= reflow_to_string data.summary, 78 -%>
|
14
|
+
<% end -%>
|
15
|
+
|
16
|
+
<% if data["skills"] -%>
|
17
|
+
## Skills
|
18
|
+
|
19
|
+
<% (data.skills || []).each do |item| -%>
|
20
|
+
- **<%= item.name %>:** <%= item.level %>
|
21
|
+
<% end -%>
|
22
|
+
<% end -%>
|
23
|
+
|
24
|
+
<% if data["work"] -%>
|
25
|
+
## Work Experience
|
26
|
+
|
27
|
+
<% (data.work || []).each do |item| -%>
|
28
|
+
<%= itemize item -%>
|
29
|
+
<% end -%>
|
30
|
+
<% end -%>
|
31
|
+
|
32
|
+
<% if data["teaching"] -%>
|
33
|
+
## Teaching
|
34
|
+
|
35
|
+
<% (data.teaching || []).each do |item| -%>
|
36
|
+
<%= itemize item, ["subject", "role"] -%>
|
37
|
+
<% end -%>
|
38
|
+
<% end -%>
|
39
|
+
|
40
|
+
<% if data["projects"] -%>
|
41
|
+
## Projects
|
42
|
+
|
43
|
+
<% (data.projects || []).each do |item| -%>
|
44
|
+
<%= itemize item, ["name", "role"] -%>
|
45
|
+
<% end -%>
|
46
|
+
<% end -%>
|
47
|
+
|
48
|
+
<% if data["other"] -%>
|
49
|
+
## Other Initiatives
|
50
|
+
|
51
|
+
<% (data.other || []).each do |item| -%>
|
52
|
+
<%= itemize item -%>
|
53
|
+
<% end -%>
|
54
|
+
<% end -%>
|
55
|
+
|
56
|
+
<% if data["committees"] -%>
|
57
|
+
## Committees
|
58
|
+
|
59
|
+
<% (data.committees || []).each do |item| -%>
|
60
|
+
- <%= item.role %> (<%= item.url %>)
|
61
|
+
<%= item.editions %>
|
62
|
+
<% end -%>
|
63
|
+
<% end -%>
|
64
|
+
|
65
|
+
<% if data["volunteer"] -%>
|
66
|
+
## Volunteer
|
67
|
+
|
68
|
+
<% (data.volunteer || []).each do |item| -%>
|
69
|
+
<%= itemize item -%>
|
70
|
+
<% end -%>
|
71
|
+
<% end -%>
|
72
|
+
|
73
|
+
<% if data["publications"] -%>
|
74
|
+
## Publications
|
60
75
|
|
61
|
-
<%
|
62
|
-
<% (data.publications || []).each do |item| %>
|
76
|
+
<% (data.publications || []).each do |item| -%>
|
63
77
|
- <%= item.authors %>, *"<%= item.title %>"* <%= item.publisher %>, <%= item.date %>
|
64
|
-
<% end
|
78
|
+
<% end -%>
|
79
|
+
<% end -%>
|
65
80
|
|
66
|
-
<% if data
|
67
|
-
|
81
|
+
<% if data["talks"] -%>
|
82
|
+
## Talks
|
83
|
+
|
84
|
+
<% (data.talks || []).each do |item| -%>
|
68
85
|
- *<%= item.title %>*
|
69
|
-
<%= item.venue
|
70
|
-
<% end
|
71
|
-
|
72
|
-
|
73
|
-
<%
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
<%
|
80
|
-
|
86
|
+
<%= item.venue %>, <%= item.date %>
|
87
|
+
<% end -%>
|
88
|
+
<% end -%>
|
89
|
+
|
90
|
+
<% if data["visits"] -%>
|
91
|
+
## Visits
|
92
|
+
|
93
|
+
<% (data.visits || []).each do |item| -%>
|
94
|
+
<%= itemize item -%>
|
95
|
+
<% end -%>
|
96
|
+
<% end -%>
|
97
|
+
|
98
|
+
<% if data["education"] -%>
|
99
|
+
## Education
|
100
|
+
|
101
|
+
<% data.education.select { |x| x.publish }.each do |school| -%>
|
81
102
|
<%= year(school["till"]) %>
|
82
|
-
: <%= school
|
103
|
+
: <%= [school["degree"], school.school].join(", ") %>
|
83
104
|
<%= school.address if school.address %>
|
84
|
-
<% end
|
85
|
-
|
86
|
-
|
87
|
-
<%
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
<%
|
93
|
-
|
94
|
-
<%
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
105
|
+
<% end -%>
|
106
|
+
<% end -%>
|
107
|
+
|
108
|
+
<% ["awards", "achievements"].each do |group| -%>
|
109
|
+
|
110
|
+
<% if data[group] -%>
|
111
|
+
## <%= group.capitalize %>
|
112
|
+
|
113
|
+
<% (group || []).each do |item| -%>
|
114
|
+
<%= itemize item %>
|
115
|
+
<% end -%>
|
116
|
+
<% end -%>
|
117
|
+
<% end -%>
|
118
|
+
|
119
|
+
<% if data["software"] %>
|
120
|
+
## Software
|
121
|
+
|
122
|
+
<% (data.software || []).each do |item| -%>
|
101
123
|
- <%= item.title %> (<%= item.role %>)
|
102
124
|
<%= item.url %>
|
103
|
-
<% end
|
125
|
+
<% end -%>
|
126
|
+
<% end -%>
|
127
|
+
|
128
|
+
<% if data["interests"] -%>
|
129
|
+
## Interests
|
104
130
|
|
105
|
-
<%
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
<% end %><% end %>
|
131
|
+
<% (data.interests || []).each do |item| -%>
|
132
|
+
- <%= item.name %> <%= reflow_to_string item.summary, 72, " " %>
|
133
|
+
<% end -%>
|
134
|
+
<% end -%>
|
110
135
|
|
111
|
-
<% if data
|
112
|
-
|
136
|
+
<% if data["languages"] %>
|
137
|
+
## Languages
|
138
|
+
|
139
|
+
<% if data["languages"] and data.languages["mother_tongues"] -%>
|
113
140
|
Mother Tongue(s): <%= data.languages.mother_tongues.map { |x| x.language }.join(",") %>
|
114
|
-
<% end
|
115
|
-
|
116
|
-
<% data.languages
|
117
|
-
|
118
|
-
<%
|
141
|
+
<% end -%>
|
142
|
+
|
143
|
+
<% if data["languages"] and data.languages["foreign"] -%>
|
144
|
+
Other Language(s):
|
145
|
+
<% data.languages.foreign.each do |x| -%>
|
146
|
+
- <%= x.language %>: <%= x.level %>
|
147
|
+
<% end -%>
|
148
|
+
<% end -%>
|
149
|
+
<% end -%>
|
150
|
+
|
151
|
+
<% if data["references"] %>
|
152
|
+
## References
|
153
|
+
|
154
|
+
<% (data.references || []).each do |item| -%>
|
155
|
+
<%= item.name %>:
|
156
|
+
<%= reflow_to_string item.reference, 72, " " %>
|
157
|
+
<% end -%>
|
158
|
+
<% end -%>
|
159
|
+
|
160
|
+
|
@@ -0,0 +1,202 @@
|
|
1
|
+
#+TITLE: <%= full_name data %>, <%= data.basics.title %>
|
2
|
+
#+AUTHOR: <%= data.contacts.select { |x| x.label == "email" }.first.value %>
|
3
|
+
#+DATE: <<%= Date.today %>>
|
4
|
+
#+STARTUP: showall
|
5
|
+
#+OPTIONS: toc:nil num:nil
|
6
|
+
#+OPTIONS: h:1
|
7
|
+
#+OPTIONS: prop:nil
|
8
|
+
|
9
|
+
* Contacts
|
10
|
+
:PROPERTIES:
|
11
|
+
<% data.addresses.each do |x| -%>
|
12
|
+
<%= ":#{x.label.upcase}: #{x.street}, #{x.zip_code} #{x.city}" %>
|
13
|
+
<% end -%>
|
14
|
+
<% data.contacts.each do |x| -%>
|
15
|
+
<%= ":#{x.label.upcase}: #{x.value}" %>
|
16
|
+
<% end -%>
|
17
|
+
:END:
|
18
|
+
|
19
|
+
<% data.contacts.each do |x| -%>
|
20
|
+
| <%= "%-30s" % x.label %> | <%= "%-40s" % x.value %> |
|
21
|
+
<% end -%>
|
22
|
+
|
23
|
+
<% if data["work"] -%>
|
24
|
+
* Summary
|
25
|
+
|
26
|
+
<%= reflow_to_string data.summary, 78 -%>
|
27
|
+
<% end -%>
|
28
|
+
|
29
|
+
<% if data["skills"] -%>
|
30
|
+
* Skills
|
31
|
+
|
32
|
+
<% (data.skills || []).each do |item| -%>
|
33
|
+
** <%= item.name %>: <%= item.level %>
|
34
|
+
<%= propertify item, " " %>
|
35
|
+
|
36
|
+
<% end -%>
|
37
|
+
<% end -%>
|
38
|
+
|
39
|
+
<% if data["work"] -%>
|
40
|
+
* Work Experience
|
41
|
+
|
42
|
+
<% (data.work || []).each do |item| -%>
|
43
|
+
** *<%= period item %>: <%= clean [item.role, item.who].join(", ") %>*
|
44
|
+
<%= propertify item, " " %>
|
45
|
+
|
46
|
+
<%= reflow_to_string item["summary"], 72, " " -%>
|
47
|
+
|
48
|
+
<% end -%>
|
49
|
+
<% end -%>
|
50
|
+
|
51
|
+
<% if data["teaching"] -%>
|
52
|
+
* Teaching
|
53
|
+
|
54
|
+
<% (data.teaching || []).each do |item| -%>
|
55
|
+
** *<%= period item %>: <%= item.subject %>*
|
56
|
+
<%= propertify item, " " %>
|
57
|
+
|
58
|
+
<%= [item["role"], item["school"], item["who"]].join(", ") %>
|
59
|
+
|
60
|
+
<% end -%>
|
61
|
+
<% end -%>
|
62
|
+
|
63
|
+
<% if data["projects"] -%>
|
64
|
+
* Projects
|
65
|
+
|
66
|
+
<% (data.projects || []).each do |item| -%>
|
67
|
+
** *<%= period item %>: <%= [item.name, item.role].join(", ") %>*
|
68
|
+
<%= propertify item, " " %>
|
69
|
+
|
70
|
+
<%= reflow_to_string item["summary"], 72, " " -%>
|
71
|
+
|
72
|
+
<% end -%>
|
73
|
+
<% end -%>
|
74
|
+
|
75
|
+
<% if data["other"] -%>
|
76
|
+
* Other Initiatives
|
77
|
+
|
78
|
+
<% (data.other || []).each do |item| -%>
|
79
|
+
** *<%= period item %>: <%= [item["who"], item["role"]].join(", ") %>*
|
80
|
+
<%= propertify item, " " %>
|
81
|
+
|
82
|
+
<%= reflow_to_string item["summary"], 72, " " -%>
|
83
|
+
|
84
|
+
<% end -%>
|
85
|
+
<% end -%>
|
86
|
+
|
87
|
+
<% if data["committees"] -%>
|
88
|
+
* Committees
|
89
|
+
|
90
|
+
<% (data.committees || []).each do |item| -%>
|
91
|
+
** <%= item.who %>, <%= item.role %> <%= item.editions %>
|
92
|
+
<%= propertify item, " " %>
|
93
|
+
|
94
|
+
<% end -%>
|
95
|
+
<% end -%>
|
96
|
+
|
97
|
+
<% if data["volunteer"] -%>
|
98
|
+
* Volunteer
|
99
|
+
|
100
|
+
<% (data.volunteer || []).each do |item| -%>
|
101
|
+
** *<%= period item %>: <%= [item.role, item.who].join(", ") %>*
|
102
|
+
<%= propertify item, " " %>
|
103
|
+
|
104
|
+
<%= reflow_to_string item.summary, 72, " " -%>
|
105
|
+
|
106
|
+
<% end -%>
|
107
|
+
<% end -%>
|
108
|
+
|
109
|
+
<% if data["publications"] -%>
|
110
|
+
* Publications
|
111
|
+
|
112
|
+
<% (data.publications || []).each do |item| -%>
|
113
|
+
- <%= item.authors %>, *"<%= item.title %>"* <%= item.publisher %>, <%= item.date %>
|
114
|
+
<% end -%>
|
115
|
+
<% end -%>
|
116
|
+
|
117
|
+
<% if data["talks"] -%>
|
118
|
+
* Talks
|
119
|
+
|
120
|
+
<% (data.talks || []).each do |item| -%>
|
121
|
+
- <%= item.title %>
|
122
|
+
<%= item.venue %> (<%= item.date %>)
|
123
|
+
<% end -%>
|
124
|
+
<% end -%>
|
125
|
+
|
126
|
+
<% if data["visits"] -%>
|
127
|
+
* Visits
|
128
|
+
|
129
|
+
<% (data.visits || []).each do |item| -%>
|
130
|
+
** *<%= period item %>: <%= [item.role, item.who, item.address].join(", ") %>*
|
131
|
+
<%= propertify item, " " %>
|
132
|
+
|
133
|
+
<%= reflow_to_string item.summary, 72, " " -%>
|
134
|
+
|
135
|
+
<% end -%>
|
136
|
+
<% end -%>
|
137
|
+
|
138
|
+
<% if data["education"] -%>
|
139
|
+
* Education
|
140
|
+
|
141
|
+
<% data.education.select { |x| x.publish }.each do |item| -%>
|
142
|
+
** *<%= year(item["till"]) %>: <%= [item.degree, item.school, item.address].join(", ") %>*
|
143
|
+
<%= propertify item, " " %>
|
144
|
+
|
145
|
+
<% end -%>
|
146
|
+
<% end -%>
|
147
|
+
|
148
|
+
<% ["awards", "achievements"].each do |group| -%>
|
149
|
+
<% if data[group] -%>
|
150
|
+
* <%= group.capitalize %>
|
151
|
+
|
152
|
+
<% (group || []).each do |item| -%>
|
153
|
+
** *<%= item.date %>: <%= [item.title, item.who, item.address].join(", ") %>*
|
154
|
+
<%= propertify item, " " %>
|
155
|
+
|
156
|
+
<%= reflow_to_string item.summary, 72, " " -%>
|
157
|
+
|
158
|
+
<% end -%>
|
159
|
+
<% end -%>
|
160
|
+
<% end -%>
|
161
|
+
|
162
|
+
<% if data["software"] %>
|
163
|
+
* Software
|
164
|
+
|
165
|
+
<% (data.software || []).each do |item| -%>
|
166
|
+
- <%= item.title %> (<%= item.role %>)
|
167
|
+
<%= item.url %>
|
168
|
+
<% end -%>
|
169
|
+
<% end -%>
|
170
|
+
|
171
|
+
<% if data["interests"] -%>
|
172
|
+
* Interests
|
173
|
+
|
174
|
+
<% (data.interests || []).each do |item| -%>
|
175
|
+
- *<%= item.name %>:* <%= reflow_to_string item.summary, 72 %>
|
176
|
+
<% end -%>
|
177
|
+
<% end -%>
|
178
|
+
|
179
|
+
<% if data["languages"] %>
|
180
|
+
* Languages
|
181
|
+
|
182
|
+
<% if data["languages"] and data.languages["mother_tongues"] -%>
|
183
|
+
- Mother Tongue(s): <%= data.languages.mother_tongues.map { |x| x.language }.join(",") %>
|
184
|
+
<% end -%>
|
185
|
+
<% if data["languages"] and data.languages["foreign"] -%>
|
186
|
+
- Other Language(s):
|
187
|
+
<% data.languages.foreign.each do |x| -%>
|
188
|
+
+ <%= x.language %>: <%= x.level %>
|
189
|
+
<% end -%>
|
190
|
+
<% end -%>
|
191
|
+
<% end -%>
|
192
|
+
|
193
|
+
<% if data["references"] %>
|
194
|
+
* References
|
195
|
+
|
196
|
+
<% (data.references || []).each do |item| -%>
|
197
|
+
<%= item.name %>:
|
198
|
+
<%= reflow_to_string item.reference, 72 %>
|
199
|
+
<% end -%>
|
200
|
+
<% end -%>
|
201
|
+
|
202
|
+
|