From 1d8b5b75840283e9a0c7826f4d13776a6a775295 Mon Sep 17 00:00:00 2001 From: beyondgfw Date: Tue, 12 Sep 2017 09:25:02 +0800 Subject: [PATCH] Revert "Revert "Add compact hosts generation."" This reverts commit b4a86b1849f9031c6827f0a80b8c0c00d3f9838c. --- src/generate-helper.js | 3 ++- src/generators/hosts-compact.js | 13 +++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 src/generators/hosts-compact.js diff --git a/src/generate-helper.js b/src/generate-helper.js index 5307edd..42c41b0 100644 --- a/src/generate-helper.js +++ b/src/generate-helper.js @@ -1,4 +1,4 @@ -module.exports = function (generateEntry, generateComment) { +module.exports = function (generateEntry, generateComment, compact = false) { return function (data) { var output = '', blocks = []; output += generateComment(data.header) + '\n'; @@ -10,6 +10,7 @@ module.exports = function (generateEntry, generateComment) { tmp += generateComment(item.comment); } else { if (item.domain !== undefined) tmp += generateEntry(item.ip, item.domain) + '\n'; + else if (compact) tmp += generateEntry(item.ip, item.domains) + '\n'; else { item.domains.forEach(function (domain) { tmp += generateEntry(item.ip, domain) + '\n'; diff --git a/src/generators/hosts-compact.js b/src/generators/hosts-compact.js new file mode 100644 index 0000000..fc8c270 --- /dev/null +++ b/src/generators/hosts-compact.js @@ -0,0 +1,13 @@ +module.exports = { + fileName: 'hosts-compact', + generate: (function () { + var generateEntry = function (ip, domain) { + if (Array.isArray(domain)) domain = domain.join(' '); + return `${ip}\t${domain}`; + }; + var generateComment = function (data) { + return data.replace(/^(.)/gm, '# $1'); + }; + return require('../generate-helper')(generateEntry, generateComment, true); + })() +}; -- GitLab