{"action":"closed","issue":{"url":"https://api.github.com/repos/hacksalot/HackMyResume/issues/59","labels_url":"https://api.github.com/repos/hacksalot/HackMyResume/issues/59/labels{/name}","comments_url":"https://api.github.com/repos/hacksalot/HackMyResume/issues/59/comments","events_url":"https://api.github.com/repos/hacksalot/HackMyResume/issues/59/events","html_url":"https://github.com/hacksalot/HackMyResume/issues/59","id":124090307,"number":59,"title":"Feature: support for formatting in summary field","user":{"login":"steve-perkins","id":3734297,"avatar_url":"https://avatars.githubusercontent.com/u/3734297?v=3","gravatar_id":"","url":"https://api.github.com/users/steve-perkins","html_url":"https://github.com/steve-perkins","followers_url":"https://api.github.com/users/steve-perkins/followers","following_url":"https://api.github.com/users/steve-perkins/following{/other_user}","gists_url":"https://api.github.com/users/steve-perkins/gists{/gist_id}","starred_url":"https://api.github.com/users/steve-perkins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/steve-perkins/subscriptions","organizations_url":"https://api.github.com/users/steve-perkins/orgs","repos_url":"https://api.github.com/users/steve-perkins/repos","events_url":"https://api.github.com/users/steve-perkins/events{/privacy}","received_events_url":"https://api.github.com/users/steve-perkins/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/hacksalot/HackMyResume/labels/enhancement","name":"enhancement","color":"c7def8"},{"url":"https://api.github.com/repos/hacksalot/HackMyResume/labels/willfix","name":"willfix","color":"bfe5bf"}],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/hacksalot/HackMyResume/milestones/3","html_url":"https://github.com/hacksalot/HackMyResume/milestones/v1.7.0","labels_url":"https://api.github.com/repos/hacksalot/HackMyResume/milestones/3/labels","id":1498004,"number":3,"title":"v1.7.0","description":null,"creator":{"login":"hacksalot","id":8078272,"avatar_url":"https://avatars.githubusercontent.com/u/8078272?v=3","gravatar_id":"","url":"https://api.github.com/users/hacksalot","html_url":"https://github.com/hacksalot","followers_url":"https://api.github.com/users/hacksalot/followers","following_url":"https://api.github.com/users/hacksalot/following{/other_user}","gists_url":"https://api.github.com/users/hacksalot/gists{/gist_id}","starred_url":"https://api.github.com/users/hacksalot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hacksalot/subscriptions","organizations_url":"https://api.github.com/users/hacksalot/orgs","repos_url":"https://api.github.com/users/hacksalot/repos","events_url":"https://api.github.com/users/hacksalot/events{/privacy}","received_events_url":"https://api.github.com/users/hacksalot/received_events","type":"User","site_admin":false},"open_issues":3,"closed_issues":4,"state":"open","created_at":"2016-01-11T18:46:32Z","updated_at":"2016-01-24T21:21:58Z","due_on":null,"closed_at":null},"comments":4,"created_at":"2015-12-28T16:49:30Z","updated_at":"2016-01-24T21:21:58Z","closed_at":"2016-01-24T21:21:58Z","body":"First of all, thanks so much for all of the effort that has gone into this!\r\n\r\nOne thing I'm not crazy about with the FRESH and JSON Resume formats is the top-level `about` or `summary` field.  It's modeled as a single string with no formatting, but it would be great if some support for formatting were possible.\r\n\r\nThe buzzword-cloud that's generated from the `skills` section is terrific for younger developers without a lot of job history.  However, my anecdotal experience is that for older professionals with a career under their belts... you're better off with a summary section that simply lists a few free-form bullet-point highlight sentences.\r\n\r\nThe `skills` model forces you into a \"*category -> buzzwords*\" structure, while the `summary` model forces you into a \"*paragraph with no line breaks or formatting*\" structure.  Bummer.\r\n\r\n**My proposal would simply be to add support for HTML or Markdown formatting within the `summary` field (at least newlines and bullet-points, if nothing else).**  Of course, there would be some challenges here:\r\n\r\n  1. You'd have to parse newlines in the `summary` field (I'm not sure if JSON has any support for multi-line string fields, or if you'd have to just embed `\\n` characters within a single line).\r\n\r\n  2. More importantly, templates would have to recognize and parse formatting as appropriate for the target format.  The HTML template would have to replace `\\n`'s with `<br/>`'s, and bullet-points with `<ul><li>...</li></ul>`.  The MS Word one would have to replace them with the correct Word XML constructs, etc.\r\n\r\n**If this is too large of a feature request, then my fallback proposal would be to simply add some search-and-replace helper functions** for Handlebars in `src/eng/generic-helpers.js`.  I imagine that only two would be needed:\r\n\r\n  1. `replaceSubstring : function( txt, target, replacement )` - returns a copy of `txt`, with all occurrences of substring `target` replaced by substring `replacement`.  A Handlebars template for generating HTML output could then use `{{ replaceSubstring summary '\\n' \"<br/>\" }}`.\r\n\r\n  2. `enclosePrefixedString : function( txt, prefix, open, close )` - returns a copy of `txt`.  If `txt` is prefixed by `prefix`, then that prefix is stripped and the string is instead enclosed by `open` and `close`.  For the more tricky task of recognizing Markdown formatting at the beginning of a string, and replacing it with HTML formatting that must enclose the string.  A Handlebars template could then use `{{ enclosePrefixedString summary \"/^  \\* /\" \"<ul><li>\" \"</li></ul>\" }}`.\r\n\r\nThis fallback is a bit ugly, but it does take the responsibility for my feature request and push onto template authors who want to deal with it.  I'm more than happy to submit a pull request for this myself if there is interest.\r\n\r\nHowever, I am wondering if you don't already have a solution for this in the works now?  When I look at the screenshot on the [FluentCV website](http://fluentcv.com/), the text shown in the summary field explicitly mentions support for HTML and Markdown formatting!  Assuming that is legit, then will that support include line-breaks and bullet-point lists?"}}