Commit Graph

469 Commits

Author SHA1 Message Date
hacksalot 15a0af8410 Fix output glitches. 2016-01-26 14:43:48 -05:00
hacksalot a07faf6d50 ... 2016-01-26 11:43:49 -05:00
hacksalot f098ed507f ... 2016-01-26 11:39:24 -05:00
hacksalot 80c36b96bc ... 2016-01-26 10:58:10 -05:00
hacksalot 630cf59cfb Caffeinate. 2016-01-26 06:59:34 -05:00
hacksalot 165eb5d9cd Remove extraneous console.log added by Calhoun. 2016-01-25 20:57:21 -05:00
hacksalot d007bd9bf6 Introduce CoffeeScript and build step. 2016-01-25 10:34:57 -05:00
hacksalot 5838b085c7 Fix console helpers path. 2016-01-24 18:51:08 -05:00
hacksalot fc937e3ec8 Update "hackmyapi" references. 2016-01-24 17:14:53 -05:00
hacksalot d3194fba19 Relocate internal sources to HackMyAPI.
Move internal sources and related tests to:

https://github.com/hacksalot/HackMyAPI
2016-01-24 09:55:04 -05:00
hacksalot 07915002bb Adjust "merging X onto Y" output. 2016-01-24 05:35:07 -05:00
hacksalot e6d2255291 Scrub. 2016-01-23 23:30:48 -05:00
hacksalot 2840ec3f87 Introduce {{fontSize}} helper. 2016-01-23 22:40:33 -05:00
hacksalot 05cd863ebf Add PDF engines to man page. 2016-01-23 20:30:23 -05:00
hacksalot 20961afb62 Introduce {{color}} helper. 2016-01-23 20:24:35 -05:00
hacksalot 1256095e25 Support "fonts.all" in FRESH themes.
Add support for default font specs in FRESH theme.json files. The "all"
format matches any format that doesn't have a specific key in "fonts".
2016-01-23 03:58:11 -05:00
hacksalot f073c79b8d Better dynamic font handling. 2016-01-22 22:19:28 -05:00
hacksalot 915f35b1e6 Improve Underscore.js rendering support. 2016-01-22 10:36:26 -05:00
hacksalot 4fe74057f9 Improve font helpers.
Log a warning on incorrect use.
2016-01-22 08:33:01 -05:00
hacksalot 5a1ec033bb Adjust USE.txt.
--opts has changed to --options and --no-tips to --tips.
2016-01-22 08:27:21 -05:00
hacksalot 6801e39f97 Tweak output colorization. 2016-01-22 04:55:29 -05:00
hacksalot f6f383751f Fix JSON Resume theme rendering glitch. 2016-01-22 03:05:41 -05:00
hacksalot 43ed564a6e Disable tips and theme messages by default.
Instead of displaying tips by default and allowing users to turn them
off with --no-tips, hide tips by default and allow users to show them
with --tips.
2016-01-22 02:51:00 -05:00
hacksalot 7b3364c356 Document parameter. 2016-01-22 02:44:17 -05:00
hacksalot 58a7fc09e5 Add toUpper helper. 2016-01-22 02:44:04 -05:00
hacksalot 01c053702d Gather. 2016-01-21 23:40:15 -05:00
hacksalot a935fe7dc2 Introduce {{fontFace}} helper. 2016-01-21 23:39:30 -05:00
hacksalot 6b171e69db Improve CSS handling. 2016-01-21 05:21:49 -05:00
hacksalot 984ae95576 Cleanup. 2016-01-20 21:43:11 -05:00
hacksalot f77cced7f3 Improve error handling. 2016-01-20 19:59:36 -05:00
hacksalot 9419f905df Build verb invocation should return JSON result. 2016-01-20 01:48:33 -05:00
hacksalot 201f39442e Add support for .ignore flag in FRESH and JRS resumes.
Preliminary support for ".ignore" on any non-leaf FRESH or JRS node.
Nodes (employment entries, education stints, etc.) decorated with
".ignore" will be treated by HMR as if they weren't present.
2016-01-19 20:09:59 -05:00
hacksalot 47f6aff561 Improve keyword regex.
Better support for simple keywords like "C" or "R".
2016-01-19 19:10:20 -05:00
hacksalot 2253e4ead7 Fix theme counts.
The N in "Applying theme FOOBAR (N formats)" should reflect the count of
explicit + freebie output formats.
2016-01-19 16:01:34 -05:00
hacksalot 2f628f8564 Reconnect process exit codes. 2016-01-18 20:06:45 -05:00
hacksalot 23cd52885b Swallow inline failures in CONVERT. 2016-01-18 19:21:25 -05:00
hacksalot 181419ae28 Improve PEEK command behavior. 2016-01-18 19:20:17 -05:00
hacksalot a81ad0fef2 Tweak build command error condition. 2016-01-18 18:36:24 -05:00
hacksalot d220cedfeb Improve behavior of PEEK command. 2016-01-18 18:35:38 -05:00
hacksalot e72564162b Remove custom "extend" method.
Replace with NPM extend.
2016-01-18 17:31:08 -05:00
hacksalot c98d05270e Improve error handling. 2016-01-18 17:13:37 -05:00
hacksalot 3e3803ed85 Improve error handling. 2016-01-18 14:10:35 -05:00
hacksalot c8d8e566f8 Add IIFE. 2016-01-18 14:10:25 -05:00
hacksalot 712cba57b8 Capture. 2016-01-18 00:34:57 -05:00
hacksalot c9e45d4991 Capture. 2016-01-17 21:46:58 -05:00
hacksalot 5c95fe7af1 Integrate with fresh-jrs-converter.
Move FRESH/JRS conversion logic (and all future format conversions) into
a separate repo.
2016-01-16 12:40:16 -05:00
hacksalot 17f2ebb753 Modularize messages.
...and move strings out of error.js.
2016-01-15 23:46:43 -05:00
hacksalot fc67f680ee Move output messages to YAML. 2016-01-15 22:52:10 -05:00
hacksalot 88879257e6 Document PEEK command.
Add preliminary docs around PEEK.
2016-01-15 14:46:13 -05:00
hacksalot 934d8a6123 Update --options file loading. 2016-01-15 13:36:20 -05:00
hacksalot defe9b6e95 Remove magic number. 2016-01-15 13:35:45 -05:00
hacksalot 4c5ccc001a Introduce PEEK command.
Peek at arbitrary resumes and resume objects paths with "hackmyresume
peek <resume> [objectPath]". For ex:

hackmyresume PEEK resume.json
hackmyresume PEEK resume.json info
hackmyresume PEEK resume.json employment[2].keywords
hackmyresume PEEK r1.json r2.json r3.json info.brief
2016-01-15 13:08:01 -05:00
hacksalot c9ae2ffef3 Improve errors / tests consistency. 2016-01-14 14:22:26 -05:00
hacksalot 37ea6cf804 Rename error-handler.js to error.js. 2016-01-14 11:49:27 -05:00
hacksalot a9c685c6a4 Refactor error handling (interim). 2016-01-14 11:47:05 -05:00
hacksalot 7765e85336 Integrate printf(). 2016-01-14 09:46:29 -05:00
hacksalot 7af50c51f6 Gather. 2016-01-14 08:48:07 -05:00
hacksalot 19b30d55ec Move error handling out of core. 2016-01-13 15:28:02 -05:00
hacksalot 1b94ada709 Misc improvements. 2016-01-12 18:13:54 -05:00
hacksalot 1966b0a862 Move string transformation out of FRESHResume. 2016-01-12 13:28:20 -05:00
hacksalot 8ced6a730a Fix BUILD command event notifications. 2016-01-12 12:46:55 -05:00
hacksalot 6cd1e60e79 Sort projects. 2016-01-12 12:46:18 -05:00
hacksalot be691e4230 Remove commented lines. 2016-01-12 12:46:05 -05:00
hacksalot 07b23109f9 Use async spawn() by default. 2016-01-12 12:32:32 -05:00
hacksalot b961fd1c07 Fix global leak. 2016-01-11 21:14:40 -05:00
hacksalot f965bf456a Fix JSON file loading glitch with --options. 2016-01-11 20:52:07 -05:00
hacksalot 69be38110f Update license notice in index.js. 2016-01-11 19:56:44 -05:00
hacksalot 3800e19418 Process TXT global partials. 2016-01-11 19:56:19 -05:00
hacksalot 11bfcd4bef Support raw JSON in the --options parameter. 2016-01-11 18:07:56 -05:00
hacksalot 7814786957 Recruit Markdown partials when present. 2016-01-11 12:36:00 -05:00
hacksalot 542776fd2e Add shortcut options to man page. 2016-01-11 08:31:05 -05:00
hacksalot 815ee3dc7e Support lowercase -v version flag.
Commander.js built-in version handling uses an uppercase shortcut (-V)
for the version, so the common -v (lowercase) isn't recognized and
errors out.
2016-01-11 08:29:46 -05:00
hacksalot 376e720f4b Scrub. 2016-01-11 08:21:06 -05:00
hacksalot b224c8939b Remove redundant conditional. 2016-01-11 08:20:48 -05:00
hacksalot 0ecac98cff Remove totally unnecessary line.
Totally.
2016-01-10 19:11:43 -05:00
hacksalot 1416f57d0b Move verb.js to /verbs folder. 2016-01-10 19:08:29 -05:00
hacksalot 65c7e41c53 Remove unused var. 2016-01-10 19:02:24 -05:00
hacksalot c8cc673ad5 Update man page. 2016-01-10 18:48:57 -05:00
hacksalot 656dbe2fc2 Capture. 2016-01-10 14:53:22 -05:00
hacksalot a4ee7127ee Fix stack reporting glitch. 2016-01-10 13:28:20 -05:00
hacksalot fee21a7b17 Always use JSONLint for SyntaxError post-processing.
Remove the check for SyntaxError's built-in line and character
indicators and always re-parse on error to grab the line/column.
2016-01-10 05:17:28 -05:00
hacksalot bd8b587c5b Remove explicit logger and error handler params. 2016-01-09 22:34:21 -05:00
hacksalot 4c954b79df Scrub. 2016-01-09 22:15:50 -05:00
hacksalot b7fffbcf73 Update helper reference in analysis .hbs. 2016-01-09 22:14:34 -05:00
hacksalot 0829800b65 Move helpers to /helpers. 2016-01-09 22:13:29 -05:00
hacksalot d7cfc76636 Promote console helpers has to console-helpers.js. 2016-01-09 22:11:06 -05:00
hacksalot f18910f490 Generate ANALYZE console output from Handlebars template. 2016-01-09 20:18:56 -05:00
hacksalot 540ad48d61 Scrub. 2016-01-09 16:56:30 -05:00
hacksalot c5b8eec33a Move CLI-related assets to subfolder. 2016-01-09 16:14:28 -05:00
hacksalot bece335a64 Fix CREATE verb output. 2016-01-09 15:58:39 -05:00
hacksalot 3aabb5028d Continue moving logging out of core. 2016-01-09 15:49:08 -05:00
hacksalot 732bc9809a Start moving logging out of core. 2016-01-09 13:58:47 -05:00
hacksalot d77b484e55 Verbs are event emitters.
Let verbs source events through EventEmitter. Using aggregation is a bit
simpler here than extending because of the Resig "Class" stuff.
2016-01-09 08:12:55 -05:00
hacksalot 88c71f6e9c Move commands to Verb hierarchy
Move flat command functions (BUILD, ANALYZE, etc.) to a shallow Verb
hierarchy. Allow command verbs to inherit common functionality and prep
for better debugging/logging as well as test mocks.
2016-01-09 06:44:22 -05:00
hacksalot 47e8605f50 Handle args in mock/passthrough case. 2016-01-09 05:30:12 -05:00
hacksalot 9466a8c0dd Remove spawn-watch.
No longer necessary.
2016-01-09 05:29:45 -05:00
hacksalot d878270bc6 Encapsulate CLI interface to ease testing.
Strip index.js down to its bare essentials, move primary logic to
main.js, and expose the latter via module.exports. This allows tests to
execute the same code path(s) HMR runs in production.
2016-01-08 19:22:44 -05:00
hacksalot 62c967526f Fix PDF exception glitch. 2016-01-08 18:15:12 -05:00
hacksalot 1fbfe2507b Carry over debug flag. 2016-01-08 16:33:13 -05:00
hacksalot d6a3aab68a Make Handlebars options explicit. 2016-01-08 16:27:19 -05:00
hacksalot 9fdfd1b5a6 Add baseline support for -d or --debug flag.
For now, -d just force-emits the stack when there is one. In the future,
it can trigger more detailed logging info.
2016-01-08 16:08:33 -05:00
Antonio Ruberto fbfff2a4e4 load theme partials for non html and doc
load global partials for html and doc only but load theme partials for
all outputs
2016-01-08 12:28:23 -05:00
hacksalot 1c93932737 Fix jsHint error. 2016-01-08 12:24:23 -05:00
hacksalot cba29511bc Analyze: fix coverage percentage glitch. 2016-01-08 12:20:51 -05:00
hacksalot 1d655a4ddb Support duration units for JRS resumes. 2016-01-08 12:13:54 -05:00
hacksalot ca94513630 Fix single format output error.
Fixes #97.
2016-01-08 11:59:10 -05:00
hacksalot f3dcbd9081 Improve error vs. warning formatting.
Errors = red. Warnings = yellow.
2016-01-08 10:42:24 -05:00
hacksalot 29c53af843 Rename "invalidTarget" error to "invalidFormat". 2016-01-08 10:09:46 -05:00
hacksalot 8d24087faa Rename src/gen --> src/generators. 2016-01-08 10:02:47 -05:00
hacksalot 95df8e5af4 Rename src/eng --> src/renderers
A renderer is a thing that renders or "paints" an arbitrary format using
a templating engine like Handlebars or Underscore. A generator is a
thing responsible for generating a given output format like HTML or MS
Word.
2016-01-08 09:59:47 -05:00
hacksalot 44555da00f Fix PNG output format for JSON Resume themes. 2016-01-08 09:36:32 -05:00
hacksalot 46bd5d51cc Support implicit PDF generation (interim). 2016-01-08 09:00:43 -05:00
hacksalot d6280e6d89 Start integrating JRS and FRESH rendering paths. 2016-01-08 08:40:19 -05:00
hacksalot 4a2a47f551 Tweak casing. 2016-01-08 07:08:12 -05:00
hacksalot ae51930c9c Tweak indentation. 2016-01-08 07:06:26 -05:00
hacksalot fb33455bea Refactor JRS rendering. 2016-01-08 06:48:04 -05:00
hacksalot 28c703daf7 Improve error handling: PDFs. 2016-01-08 05:11:38 -05:00
hacksalot 0246a5da19 Remove html-pdf-generator class.
PDF generation now performed via html-pdf-cli-generator.
2016-01-07 18:34:43 -05:00
hacksalot 840d17c67b Wrap rasterize.js in IIFE / satisfy jsHint. 2016-01-07 18:33:26 -05:00
hacksalot 97ebecd84a Support CLI-based PDF generation.
Support Phantom and wkhtmltopdf generation via CLI.
2016-01-07 18:24:25 -05:00
hacksalot 96b9bb68e3 Introduce Phantom.js rasterizer script.
Via
https://raw.githubusercontent.com/ariya/phantomjs/master/examples/rasterize.js.
2016-01-07 17:53:42 -05:00
hacksalot a2723452c2 Improve ENOENT handling. 2016-01-07 16:13:09 -05:00
hacksalot cb3488276d Refactor error handling.
Work towards better debug/log/stack trace options for error cases.
2016-01-07 15:54:10 -05:00
hacksalot 43419c27cf Refactor API surface. 2016-01-07 13:44:39 -05:00
hacksalot cb46497346 Rename generate.js to build.js.
Should match the canonical verb name -- "build". Generate is an alias.
2016-01-07 12:03:44 -05:00
hacksalot 850c640368 Annotate Phantom gen method. 2016-01-07 10:54:46 -05:00
hacksalot 60e455b36d Emit call stack for wkhtmltopdf errors. 2016-01-07 10:54:27 -05:00
hacksalot 830c36818e Tweak missing file message for "new" command. 2016-01-06 14:15:27 -05:00
hacksalot 39e995213f Improve starter resume.
"hackmyresume new" should emit a starter resume that a) has example
information and b) validates.
2016-01-06 14:09:22 -05:00
Josh Janusch 4f9207a868 Fix: formatDate helper references the moment method, not the momentDate object 2016-01-06 11:23:39 -05:00
Josh Janusch 3d1f589bc1 formatDate helper now will only use moment if date is valid. If it's not, will use the user inputted value or a fallback parameter, if it is provided 2016-01-06 11:23:38 -05:00
hacksalot ae436a3b84 Scrub. 2016-01-06 11:18:50 -05:00
hacksalot 712b504168 Support global theme partials (interim). 2016-01-06 10:48:51 -05:00
hacksalot 2d20077c08 Support --assert option for validate command.
Cause HMR to return an error code if validation fails and the --assert
option is present.
2016-01-06 00:44:34 -05:00
hacksalot f61deda4e8 Fix format detection error in validate logic. 2016-01-06 00:21:18 -05:00
hacksalot 8203fa50ae Prep convert.js. 2016-01-06 00:20:30 -05:00
hacksalot c5eab0fd9c Scrub. 2016-01-05 23:59:41 -05:00
hacksalot 40e71238ac Scrub. 2016-01-05 23:46:01 -05:00
hacksalot 9d75b207d1 Formalize empty-fresh.json dependency. 2016-01-05 23:28:49 -05:00
hacksalot 9b52c396d3 Fix missing method rename. 2016-01-05 22:32:46 -05:00
hacksalot 2759727984 Add convenience method. 2016-01-05 22:26:16 -05:00
hacksalot e230d640cb Rename imp() to i() (interim). 2016-01-05 22:02:11 -05:00
hacksalot b1a02918ff Support --no-tips flag. 2016-01-05 10:10:24 -05:00
hacksalot ec05f6737a Emit JSON Resume theme instructions. 2016-01-05 10:10:12 -05:00
hacksalot da5db6477b Introduce --color and --no-color options.
These are handled by Chalk, but need to be registered with Commander.js
in order for Chalk to see them.
2016-01-05 09:42:39 -05:00
hacksalot 0f580efb2b Mention ANALYZE command in man page. 2016-01-05 09:38:42 -05:00
hacksalot ff23ee508b Restore app title. 2016-01-05 09:38:21 -05:00
hacksalot 2819faeb6f Improve theme/format inheritance (interim). 2016-01-05 09:28:40 -05:00
hacksalot d205e882f6 Introduce FRESH theme/format inheritance.
Support "inherits" property in theme.json (FRESH themes only).
2016-01-05 06:34:56 -05:00
hacksalot 6185f20ec9 Sort project history by default. 2016-01-05 05:00:04 -05:00