Skip to content

Instantly share code, notes, and snippets.

@selsta
Forked from WebReflection/irc.js
Last active June 7, 2018 22:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save selsta/1082f90ae3fc7ce3af414e93ba37287a to your computer and use it in GitHub Desktop.
Save selsta/1082f90ae3fc7ce3af414e93ba37287a to your computer and use it in GitHub Desktop.
Transform IRC logs into Markdown (for Monero)
#!/usr/bin/env node
// Usage: ./irc_to_markdown.js log.txt > log.md
// Still needs manuell edits afterwards.
require('fs').readFile(process.argv[2], (err, data) => {
if (err) return;
const content = data.toString().trim();
const re = /^\[(.+?)\]\s+<(.+?)>\s(.*)$/gm;
const chat = [];
let current = {};
while (match = re.exec(content)) {
chat.push(current = {
time: match[1],
name: match[2],
content: match[3]
});
}
console.log(chat.map(user =>
`**\\<${user.name}>** ${user.content.replace(/```[\S\s]+?```/g, $0 => $0.replace(/\n\n/g, '\n'))} `
).join('\n'));
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment