mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-16 11:33:30 +01:00
Add escapeMarkdown util function
This commit is contained in:
@@ -7,6 +7,7 @@ module.exports = {
|
|||||||
|
|
||||||
Collection: require('./util/Collection'),
|
Collection: require('./util/Collection'),
|
||||||
splitMessage: require('./util/SplitMessage'),
|
splitMessage: require('./util/SplitMessage'),
|
||||||
|
escapeMarkdown: require('./util/EscapeMarkdown'),
|
||||||
|
|
||||||
Channel: require('./structures/Channel'),
|
Channel: require('./structures/Channel'),
|
||||||
ClientUser: require('./structures/ClientUser'),
|
ClientUser: require('./structures/ClientUser'),
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ const Attachment = require('./MessageAttachment');
|
|||||||
const Embed = require('./MessageEmbed');
|
const Embed = require('./MessageEmbed');
|
||||||
const Collection = require('../util/Collection');
|
const Collection = require('../util/Collection');
|
||||||
const Constants = require('../util/Constants');
|
const Constants = require('../util/Constants');
|
||||||
|
const escapeMarkdown = require('../../util/EscapeMarkdown');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Represents a Message on Discord
|
* Represents a Message on Discord
|
||||||
@@ -332,7 +333,7 @@ class Message {
|
|||||||
* @returns {Promise<Message>}
|
* @returns {Promise<Message>}
|
||||||
*/
|
*/
|
||||||
editCode(lang, content) {
|
editCode(lang, content) {
|
||||||
content = this.client.resolver.resolveString(content).replace(/```/g, '`\u200b``');
|
content = escapeMarkdown(this.client.resolver.resolveString(content), true);
|
||||||
return this.edit(`\`\`\`${lang ? lang : ''}\n${content}\n\`\`\``);
|
return this.edit(`\`\`\`${lang ? lang : ''}\n${content}\n\`\`\``);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ const path = require('path');
|
|||||||
const Message = require('../Message');
|
const Message = require('../Message');
|
||||||
const MessageCollector = require('../MessageCollector');
|
const MessageCollector = require('../MessageCollector');
|
||||||
const Collection = require('../../util/Collection');
|
const Collection = require('../../util/Collection');
|
||||||
|
const escapeMarkdown = require('../../util/EscapeMarkdown');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Interface for classes that have text-channel-like features
|
* Interface for classes that have text-channel-like features
|
||||||
@@ -114,7 +115,7 @@ class TextBasedChannel {
|
|||||||
if (!options.split.prepend) options.split.prepend = `\`\`\`${lang ? lang : ''}\n`;
|
if (!options.split.prepend) options.split.prepend = `\`\`\`${lang ? lang : ''}\n`;
|
||||||
if (!options.split.append) options.split.append = '\n```';
|
if (!options.split.append) options.split.append = '\n```';
|
||||||
}
|
}
|
||||||
content = this.client.resolver.resolveString(content).replace(/```/g, '`\u200b``');
|
content = escapeMarkdown(this.client.resolver.resolveString(content), true);
|
||||||
return this.sendMessage(`\`\`\`${lang ? lang : ''}\n${content}\n\`\`\``, options);
|
return this.sendMessage(`\`\`\`${lang ? lang : ''}\n${content}\n\`\`\``, options);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
4
src/util/EscapeMarkdown.js
Normal file
4
src/util/EscapeMarkdown.js
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
module.exports = function escapeMarkdown(text, onlyCodeBlock = false) {
|
||||||
|
if (onlyCodeBlock) return text.replace(/```/g, '`\u200b``');
|
||||||
|
return text.replace(/\\(\*|_|`|~|\\)/g, '$1').replace(/(\*|_|`|~|\\)/g, '\\$1');
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user