diff --git a/lib/utils.js b/lib/utils.js index ffb8f54..6f7cda3 100644 --- a/lib/utils.js +++ b/lib/utils.js @@ -1,3 +1,4 @@ +var sliceAnsi = require('slice-ansi') /** * Repeats a string. @@ -19,7 +20,7 @@ exports.repeat = function (str, times) { exports.truncate = function (str, length, chr) { chr = chr || '…' - return str.length >= length ? str.substr(0, length - chr.length) + chr : str + return exports.strlen(str) >= length ? sliceAnsi(str, 0, length - chr.length) + chr : str } /** diff --git a/package.json b/package.json index 97c40b7..a89b78f 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,8 @@ "table" ], "dependencies": { - "chalk": "3.0.0" + "chalk": "3.0.0", + "slice-ansi": "3.0.0" }, "devDependencies": { "should": "~0.6",