{ "info": { "author": "Virantha N. Ekanayake", "author_email": "virantha@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "OneResum\u00e9 - Usage Guide\n=========================================\n|image_pypi| |image_downloads| |image_license| |passing| |quality| |Coverage Status|\n\nOneResum\u00e9 is a data-driven resum\u00e9 generator for text and Microsoft Word\ndocuments. Write your resum\u00e9 content in YAML_ and quickly and easily generate\nmultiple versions and formats of your resum\u00e9 using this program.\n\n* Free and open-source software: ASL2 license\n* Blog: http://virantha.com/category/projects/one_resume\n* Documentation: http://virantha.github.io/one_resume/html\n* Source: https://github.com/virantha/one_resume\n\nFeatures\n########\n\n- Keep your resum\u00e9 content in simple text files and automatically generate\n different versions of your resum\u00e9s in multiple formats (currently supports\n generating text and Microsoft Word .docx format resum\u00e9s)\n\n- Allows you to break up your resum\u00e9 content into multiple files, so you can\n pick and choose the sections you want for each generated version. For\n example, if you want one resum\u00e9 with your publications, but want to skip them\n for a shorter version, you can maintain the publications list in a separate\n input file, and keep both generated resum\u00e9s synchronized with the other\n content.\n\n- Plugin architecture, so you can easily extend to other formats (LaTex coming soon)\n\nUsage:\n######\n\nOneResum\u00e9 can be run in single resum\u00e9 mode, or batch mode (in order to generate multiple different resum\u00e9s in one go). The former usage is shown\nbelow:\n\n::\n\n one_resume.py single -t template_filename -y resum\u00e9_content_filename -o output_filename -f Text\n\nThe ``-f`` option is the format you want to use, currently either ``Text`` or ``Word``. The templates and content files\nwill be discussed in the next section.\n\nIf you want to run in batch mode:\n\n::\n\n one_resume.py batch -c config.yml\n\nThe ``config.yml`` configuration file is a YAML_ file structured as follows:\n\n.. code-block:: yaml\n\n - data: sources/resum\u00e91.yaml\n outputs: \n - \n format: Word\n template: sources/resum\u00e9-template1.docx\n output: generated/Resum\u00e9_standard.docx\n\n - data: sources/resum\u00e91.yaml\n outputs: \n - \n format: Text\n template: sources/resum\u00e9-template1.txt\n output: generated/Resum\u00e9_standard.txt\n\n - data: sources/resum\u00e91.yml\n outputs: \n - \n format: Word\n template: sources/resum\u00e9-template-short.docx\n output: generated/Resum\u00e9_short.docx\n\n - data: sources/resum\u00e9-jobseeker.yml\n outputs: \n - \n format: Word\n template: sources/resum\u00e9-template-jobseeker.docx\n output: generated/Resum\u00e9_jobseeker.docx\n\n\nIn this example, we are generating 4 different resum\u00e9s, 3 of which are Word format, and 1 of which is text. Three of them\nuse the same resum\u00e9 content, with one of them presumably using that content to generate a shortened version (with a different template file). \nThe fourth one uses a customized resum\u00e9 content, perhaps with different wording, to generate a specialized resum\u00e9. \n\nNow, let's take a look at how the resum\u00e9 content and output text files are structured.\n\nWriting Resum\u00e9 Content\n----------------------\nResum\u00e9 content is written using the YAML_ format. The content is broken up into sections, with each section consisting of a list (can be just a single item list)\nof content. The example below is pretty self-explanatory:\n\n.. code-block:: yaml\n\n contact:\n -\n name: S. Holmes\n address: 221B Baker Street, St Marylebone, London, England\n phone: None\n email: sherlock@holmesconsulting.com\n www: http://www.gotcrime.com\n\n skills:\n - \n type: Current\n skill_list: > \n Crime solving, cigarette-ash classification, crypto-analysis, disguise\n\n -\n type: Past\n skill_list: > \n Fencing, violin\n\n education:\n - \n degree: BA\n university: Christ Church College\n address: Oxford, England\n field: Chemistry\n date: 1876\n gpa: 5.0\n - \n degree: MA \n university: Sidney Sussex\n address: Cambridge\n date: 1878\n field: Criminology\n gpa: 3.9\n\n experience:\n - \n company: Baker Street Detectives\n location: London\n position: Consulting Detective\n date: \"1880 to 1903\"\n summary: >\n Brought several notorious criminals to justice. Supported the intelligence services and recovered key\n government property. \n\n - \n company: Beekeeping Solutions \n location: Sussex Downs\n position: Beekeeper\n date: \"1904-1914\"\n summary: >\n Made honey.\n\n\nYou can also split the content up into several different files. For example, the top level file could just be written as:\n\n.. code-block:: yaml\n\n contact:\n -\n name: S. Holmes\n address: 221B Baker Street, St Marylebone, London, England\n phone: None\n email: sherlock@holmesconsulting.com\n www: http://www.gotcrime.com\n\n skills: !include data_skills.yml\n\n education: !include data_education.yml\n\n experience: !include data_experience.yml\n \n\n\nWriting Templates for Text Resum\u00e9s\n----------------------------------\nThe text resum\u00e9 generator uses the Mako_ templating engine. Here's an example template that can be used to output\nthe above data content into a text file:\n\n.. code-block:: python\n\n % for contact in d[\"contact\"]:\n ${contact['name']}\n ${contact['phone']}\n ${contact['email']}\n ${contact['www']}\n % endfor\n =========================================\n\n SKILLS:\n -------\n % for skill in d[\"skills\"]:\n ${skill['type']}: \n ${s._wrap(2,skill['skill_list'])}\n % endfor\n\n EDUCATION:\n ----------\n % for e in d['education']:\n ${e['degree']} from ${e['university']} in ${e['field']} (${e['date']})\n % endfor\n\n EXPERIENCE:\n ----------\n % for e in d['experience']:\n ${e['position']} (${e['date']})\n ${e['company']}, ${e['location']}\n -----------------------------------\n ${s._wrap(2,e['summary'])}\n\n % endfor\n\nThe main things to note are:\n\n- The resume content from the YAML file is stored as a dictionary in ``d``. \n- Each top-level entry in this dictionary is a list that can be iterated over using Mako syntax.\n- There is a helper function called ``s._wrap`` that can be used to indent some text with the \n given number of spaces.\n\nUsing this template, and the data content above, would yield the following text:\n\n::\n\n S. Holmes\n 12-3456\n sherlock@holmesconsulting.com\n http://www.gotcrime.com\n =========================================\n\n SKILLS:\n -------\n Current: \n Crime solving, cigarette-ash classification, crypto-analysis, disguise\n Past: \n Fencing, violin\n\n EDUCATION:\n ----------\n BA from Christ Church College in Chemistry (1876)\n MA from Sidney Sussex in Criminology (1878)\n\n EXPERIENCE:\n ----------\n Consulting Detective (1880 to 1903)\n Baker Street Detectives, London\n -----------------------------------\n Brought several notorious criminals to justice. Supported the\n intelligence services and recovered key government property.\n\n Beekeeper (1904-1914)\n Beekeeping Solutions, Sussex Downs\n -----------------------------------\n Made honey.\n\n\nWriting Templates for Word Resum\u00e9s\n----------------------------------\nWord templates are just regular ``.docx`` files. Please note that you cannot use the old\nWord 97 ``.doc`` format. You can format it however you want, including bullets and styles. However, tables\nare *not* supported at this time. Here's some simple content you might type into a word document to generate\na resume from the above YAML:\n\n::\n\n [!Contact]\n\n <[name]\n [email]\n [www]\n [phone]\n >\n\n [Experience]\n <[company] \u2013 [location] [date]\n [position]\n [summary]\n >\n [Education]\n <[degree] ([university]) in [field] [date]\n >\n [Skills|Mad Skillls]\n <[type] \u2013 [skill_list]>\n\n\nThe syntax is as follows:\n\n- Section and item names are enclosed in brackets (``[`` and ``]``)\n- Looping over sections is done using the ``<`` character for starting the loop, and ``>`` for closing the loop\n- Any section name with a ``!`` preceding it will not generate the section text (for instance, no text ``Contact`` will appear in the generated resume).\n- Using a ``|`` symbol in a section header will use the proceeding text instead of the section name in the outputted resume. So, the final section above will be rendered with a title of ``Mad Skills`` instead of ``Skills``.\n\nHere's a screenshot of the template .docx (you can also find this in the repository_):\n\n.. image:: https://raw.githubusercontent.com/virantha/one_resume/master/images/word_template.png\n :alt: Word resume template\n :width: 679\n :align: center\n\nAnd, running OneResum\u00e9 on it will generate the following:\n\n.. image:: https://raw.githubusercontent.com/virantha/one_resume/master/images/word_output.png\n :alt: Word resume output\n :width: 679\n :align: center\n\n\n\nInstallation\n############\nPlease note that the lxml python library requires a C compiler. On Mac OS X, you need to make\nsure you have XCode plus the the XCode command line utilities installed:\n\n::\n\n $ xcode-select --install\n\nThen, it's simply a matter of:\n\n::\n\n $ pip install one_resume\n\nDisclaimer\n##########\n\nThe software is distributed on an \"AS IS\" BASIS, WITHOUT\nWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n\n.. _YAML: http://en.wikipedia.org/wiki/YAML\n.. _Mako: http://www.makotemplates.org\n.. _repository: https://github.com/virantha/one_resume/blob/master/examples/resume.docx?raw=true\n.. |image_pypi| image:: https://badge.fury.io/py/one_resume.png\n :target: https://pypi.python.org/pypi/one_resume\n.. |image_downloads| image:: https://pypip.in/d/one_resume/badge.png\n :target: https://crate.io/packages/one_resume?version=latest\n.. |image_license| image:: https://pypip.in/license/one_resume/badge.png\n.. |passing| image:: https://scrutinizer-ci.com/g/virantha/one_resume/badges/build.png?b=master\n.. |quality| image:: https://scrutinizer-ci.com/g/virantha/one_resume/badges/quality-score.png?b=master\n.. |Coverage Status| image:: https://coveralls.io/repos/virantha/one_resume/badge.png?branch=develop\n :target: https://coveralls.io/r/virantha/one_resume", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "UNKNOWN", "keywords": null, "license": "ASL 2.0", "maintainer": null, "maintainer_email": null, "name": "one_resume", "package_url": "https://pypi.org/project/one_resume/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/one_resume/", "project_urls": { "Download": "UNKNOWN", "Homepage": "UNKNOWN" }, "release_url": "https://pypi.org/project/one_resume/0.2.0/", "requires_dist": null, "requires_python": null, "summary": "Template(YAML) based data-driven resume generator for text and Microsoft WOrd", "version": "0.2.0" }, "last_serial": 1505330, "releases": { "0.1.0": [], "0.1.1": [ { "comment_text": "", "digests": { "md5": "284d39fffcd21f00f41e4d9e46f6ee9f", "sha256": "86dbbbf2b4e7c1b7f7fb3649fe66281a97d17080f1f30117b59f36b6f33778e2" }, "downloads": -1, "filename": "one_resume-0.1.1.tar.gz", "has_sig": false, "md5_digest": "284d39fffcd21f00f41e4d9e46f6ee9f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19372, "upload_time": "2015-04-08T02:27:16", "url": "https://files.pythonhosted.org/packages/34/de/c4e9301df9e0d323739d240ea2bc6f3795970d0b88e2e7728d7a2c2fd9bc/one_resume-0.1.1.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "60d66dcc904ec5a95488f56f92984567", "sha256": "9638e0897c550749848cb82902246e7cf8fec572292ba71e3023bbfea2804bf3" }, "downloads": -1, "filename": "one_resume-0.1.3.tar.gz", "has_sig": false, "md5_digest": "60d66dcc904ec5a95488f56f92984567", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19309, "upload_time": "2015-04-08T13:59:56", "url": "https://files.pythonhosted.org/packages/a6/69/e19c3dadb0510b00c5b5e28e3ff6cccabbc8e959cbe0e46e112c8c798df7/one_resume-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "f4eb6b44834aee06a0c5ad30217de3a0", "sha256": "03f3f4d87b16ea8b69f322b1cfc721bdeaaaf59a00cfba3e94810d7977ddfef2" }, "downloads": -1, "filename": "one_resume-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f4eb6b44834aee06a0c5ad30217de3a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19206, "upload_time": "2015-04-14T19:33:39", "url": "https://files.pythonhosted.org/packages/be/0e/dfce9da906294c1e648a77853d25d2aede9aaa9441660de8cc7a871a9c7c/one_resume-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f4eb6b44834aee06a0c5ad30217de3a0", "sha256": "03f3f4d87b16ea8b69f322b1cfc721bdeaaaf59a00cfba3e94810d7977ddfef2" }, "downloads": -1, "filename": "one_resume-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f4eb6b44834aee06a0c5ad30217de3a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19206, "upload_time": "2015-04-14T19:33:39", "url": "https://files.pythonhosted.org/packages/be/0e/dfce9da906294c1e648a77853d25d2aede9aaa9441660de8cc7a871a9c7c/one_resume-0.2.0.tar.gz" } ] }