Introduce "pad()" helper.

Introduce a helper to emit padded strings / arrays of strings.
This commit is contained in:
hacksalot 2016-02-11 22:02:50 -05:00
parent 5c248cca2a
commit 31e0bb69cc
2 changed files with 30 additions and 0 deletions

View File

@ -522,6 +522,21 @@ Generic template helper definitions for HackMyResume / FluentCV.
} else {
return options.inverse(this);
}
},
pad: function(stringOrArray, padAmount, unused) {
var PAD, ret;
stringOrArray = stringOrArray || '';
padAmount = padAmount || 0;
ret = '';
PAD = require('string-padding');
if (!String.is(stringOrArray)) {
ret = stringOrArray.map(function(line) {
return PAD(line, line.length + Math.abs(padAmount), null, padAmount < 0 ? PAD.LEFT : PAD.RIGHT);
}).join('\n');
} else {
ret = PAD(stringOrArray, stringOrArray.length + Math.abs(padAmount), null, padAmount < 0 ? PAD.LEFT : PAD.RIGHT);
}
return ret;
}
};

View File

@ -487,6 +487,21 @@ GenericHelpers = module.exports =
pad: (stringOrArray, padAmount, unused ) ->
stringOrArray = stringOrArray || ''
padAmount = padAmount || 0
ret = ''
PAD = require 'string-padding'
if !String.is stringOrArray
ret = stringOrArray
.map (line) -> PAD line, line.length + Math.abs(padAmount), null, if padAmount < 0 then PAD.LEFT else PAD.RIGHT
.join '\n'
else
ret = PAD stringOrArray, stringOrArray.length + Math.abs(padAmount), null, if padAmount < 0 then PAD.LEFT else PAD.RIGHT
ret
###*
Report an error to the outside world without throwing an exception. Currently
relies on kludging the running verb into. opts.