resme 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
+
|