Slack将各种字符用于自己的markdown格式。

如何输入带有保留字符转义的消息?

是否可以发送完全像这样的消息:


*我不希望它是粗体的*


评论

我希望我可以在这里对每个答案都投反对票。

不能吗@RichardSimões

需要更多积分!

这就是为什么Slack需要脱颖而出并使用适当的降价引擎的原因。
注意:唯一可行的解​​决方案是我对leclercdumombasin的回答的评论上方的评论

#1 楼

对于当前的WYSIWYG编辑器,转换发生后立即按Ctrl + Z。例如:

abc *def* ghi


将导致


abc def ghi


另一方面,

abc *def*<CTRL+Z> ghi


将导致


abc * def * ghi


仅适用于格式设置,不适用于Slack表情符号。

评论


花费了4年的时间,但我们终于有了Slack自己的实际解决方案。

– BadHorsie
19年11月21日在13:59

在Mac上使用⌘Z。

– Diachedelic
11月17日,1:15

#2 楼

解决方案

复制并粘贴以下文本,并根据您的需要更改星号中的单词:

*bold*­


它不会呈现为发布Slack消息时显示为粗体字。注意:星号两侧都有隐藏的字符,这将防止Slack在星号之间格式化单词。


解释

这是一个ShaneB答案的变体似乎更好。而不是在星号的“连接”侧添加(不可见)空间:

There is *|no|* spoon            // '|' = vertical tab


考虑通过插入(不可见)非空间来删除​​“分离”侧的空间:

There is |*no*| spoon            // '|' = e.g. soft hyphen (&shy;, U+00AD)


这会“嵌入”星号,从而使其无效。柔和的连字符似乎是个好角色。

评论


很好。我相信这是给出确切预期结果的最佳新答案。我已经对您的帖子进行了编辑,以为可能不了解如何实际实施的人提供一个简单的复制/粘贴解决方案。

– BadHorsie
17年1月26日在10:16

显然,您不需要两边的“害羞”字符,只需一侧就足够了。

–开尔文
17年11月8日在18:40

| *粗体* |我正在得到

–阿德里安·巴塞洛缪(Adrian Bartholomew)
17年12月20日在18:15

@AdrianBartholomew代替管道|您需要输入Unicode字符(U + 00AD)。在Linux上,按住SHIFT + CTRL的同时按u,然后按键ad。在Windows上,按住ALT键的同时,键入键0173。有关Unicode输入的更多信息,请参见en.wikipedia.org/wiki/Unicode_input

–次优
18年5月15日在14:38



上面的评论是使用Slack的技术人员的唯一可行解决方案!!!

– sjngm
19年5月10日在8:13

#3 楼

我刚刚进行了测试,并且一个单个的取消标记将在其余的消息中转义即将出现的格式化字符。 />
`*I don't want this to be bold*`


将正常格式化,但两个星号都会出现,而不是使文本变为粗体。

评论


有趣。我的意思是我猜这有点像“黑客”,因为您只是在破坏代码段,而且还留下了不希望的背景。

– BadHorsie
16年1月13日在10:40

是的,它并不完美,可能是不受支持的黑客。

– pkoepke
16年1月14日,11:55

但是转义回退呢?

–乔治·莫尔(George Mauer)
17年5月7日19:21

#4 楼

UPDATE !:(2017-12-07)

似乎Google已经更新了Chrome Web浏览器控件(可能还有其他控件),以显示许多常见ASCII控件字符的占位符,其中包括“垂直制表符”!此更改导致我下面的原始解决方案被破坏,现在显示“未知字符”正方形或在某些情况下出现空白符中断,而在大多数情况下,空白符之前是不中断的(特别是Slack!)。不用担心,有一个简单的Fix!


解决方案:将以下固定文本复制到Slack并编辑:

There is once again *no* spoon


,或使用任何十六进制到ASCII的转换器(即:ASCII到十六进制)来转换它:我个人认为使用ASCII范围解决方案总是最容易且更兼容,而不是像leclercdumombasin的答案那样尝试使用Unicode解决方案。但是,就可用性而言,leclercdumombasin的回答很优雅,因为您可以简单地复制和粘贴软连字符并标记任何您想要保持无格式的单词,只需使用一个隐藏字符即可。两者之间的主要区别是我的解决方案使用的字符在复制/粘贴到简单文本编辑器后仍会隐藏,而我的测试中的软连字符解决方案在常见的简单文本编辑器中会转换为标准外观的连字符。 />
; TL:DR:您现在有两个价格仅为一个的工作解决方案!


原始帖子:

我必须同意上面的RichardSimões,这些答案都没有提供真正的解决方案。尽管从某种意义上说它们都是正确的,但是没有故意构建的方法来处理该用例,这将需要某种形式的hack。
...由于到目前为止提供的所有hacks都不可接受,我抢了个热包和一些Xena胶带,开始证明我的功夫很强。

结果:我的功夫很强。

解决方案:使用“垂直制表符”。

如上所述,您可以使用空格将星号与它们周围的单词或短语分开,例如:

2a 0c 68 61 78 0c 2a


我认为这是已经给出的最佳答案,但仍然增加了难看的空间。因此,如果您要使用“垂直制表符”(VT),则可以将星号分开,而不必在星号和它们所包围的单词之间添加额外的空格。

这里是字符信息,尽管我不确定StackExchange和/或您的个人Web浏览器将如何显示此信息。如果它自动将其转换为空格,或类似的内容,请在下面参考另一种方法:

These * spaces * will keep it from becoming bold.

已成功进行了测试,无论它在这里如何工作(只需将其复制/粘贴到Slack中):

Vertical Tab (between quotes): ""
Decimal: 11
Hex: 0x0b


我发现与非像这样的可打印字符黑客程序是将序列以十六进制形式保存在文本文件中,然后每当我需要使用它们时,我都可以快速打开一个新标签页,即“ hex to ascii”,然后通过任何转换器进行复制/粘贴。我还建议使用可以显示空白字符的文本编辑器。这是一个使用十六进制的字符串,只需将其转换为ascii并用您要输入的内容替换“ hax”即可:

There is *no* spoon.


评论


我的家伙做得好。我的意思是,疯狂但很酷的解决方案。我把这个问题悬而未决了将近一年……这是这里唯一的真正解决方案。

– BadHorsie
16-10-25在17:40



有趣。这甚至适用于反引号-空格根本不起作用。

–MichałPolitowski
16年12月19日在8:34

在最新的Mac版Slack上,该单词并未加粗,但最终结果仍然在星号和它们所包围的单词之间留下难看的空格。

–开尔文
17年11月8日在18:28



@Kelvin-使用我上面提到的最新编辑进行尝试,或尝试其他答案中提到的soft-hyphen方法。

– ShaneB
17年7月7日在20:33

#5 楼

只有一种方法可以实现您想要的目标:使用机器人通过Slack API创建消息。这是一个带有示例的页面,该示例显示了如何精确地执行所需的操作。


但是,如果您(人类)使用Slack客户端输入内容,就像其他人所说的那样,则无法产生由星号包围的文本字符串。如果您不希望应用其他类型的格式设置(例如code),则可以通过以下一些折中方案使您更接近所需的格式:

空格(无论如何我还是觉得可读性更强)

* I don't want this to be bold *

反斜杠或下划线

\*I don't want this to be bold*

_*I don't want this to be bold*

#6 楼

有一个Unicode字符“ Combining Grapheme Joiner”(͏Unicode:U + 034F,UTF-8:CD 8F),如果在Slack中的特殊字符之一之前插入,则会以某种方式使Slack的特殊字符检测变得困难/>
I don't want *this* to be bold
             ^- Insert it before this asterisk


这个技巧hack似乎转义了以下字符,允许键入星号,波浪号,下划线和(对我来说最重要的)前角括号,而无需使用Slack它们是格式代码。 />
PS:我尝试了其他几种Unicode字符,包括退格键,稀疏空间,头发空间,零宽度空格等,但是Slack会删除它们,至少当它们是一行中的第一个字符时(这使得在Slack中无法输入诸如> 9,000!之类的内容作为注释,因为它会成为blockquote。)

评论


这有效。也可以在macOS上的Keyboard Maestro或Typinator或Windows上的AutoHotKey之类的应用中进行配置,从而可以使用短键盘宏或热键轻松插入“组合音素连接器”。

–维尔
18年11月14日在18:56

#7 楼



上面的解决方案中,贡献者建议使用垂直制表符,直到我还包括使用..语法,当时还没有。

评论


干净简单的解决方案。

– BadHorsie
17年1月26日在10:06



也适用于可能要嵌入的其他可能字符,例如,使行以>开头,而使用›代替。 (U + 203A)

–菲尔
17年4月23日在22:10

#8 楼

为了逃避特殊字符,f.e。 *或@,在我们要转义的字符之前键入以下字符:

保持按下状态:

<ctrl><shift>

释放,一个接一个的以下字符:

u
a
d

发布: >
有一会儿,我们会看到带下划线的内容:
<ctrl><shift>
它很快将变得不可见。

现在您可以键入特殊字符了。

这个答案是@Suboptimal在评论中给出的。

我试图回答他,但评论不允许进行所需的格式设置。

如果他将发布此答案,我将很乐意对其进行投票并删除此答案。

#9 楼

单向刻度线可以做到,三向刻度线可以阻止文本。 。 。但两者都会将其格式化为代码。正如Slack在此推文中所确认的。

`*I don't want this to be bold*`


评论


我知道单个反引号会将其格式化为代码,我是一名开发人员,经常使用它们,但这不是我想要的。这与转义字符不同。我希望消息不格式化;代码样式已格式化。

– BadHorsie
2015年11月11日17:37



抱歉,这不是您想要的。我失败了,还有其他各种选项\,/ <,<!等。此推文似乎表明它根本不存在。

–汤姆·伍德沃德(Tom Woodward)
2015年11月11日23:20



实际上,代码样式是否为“格式化”而默认样式是否为“格式化”,这只是一个角度问题。两者都被格式化,只是具有不同的字体系列。 “默认样式”不一定是“未格式化的”。这个问题充其量是令人困惑的,因为最后一行的示例以灰色背景的等宽格式显示文本,这是Slack在使用反引号时的作用。

– LarsH
16 Jul 29'15:43



#10 楼

另一种选择是将星号加倍。

*cough****cough*在我的测试中都对我有用。

#11 楼

我要在这个较晚的日期添加此评论,因为这是google首次针对“转义松弛标记”的匹配,因此希望我的回答可能会帮助其他人节省一些时间。同样值得注意的是,我在寻找一种可通过Slack API而不是编辑器使用的解决方案。
坦白地说,整个Slack标记方法有点混乱。值得庆幸的是,leclercdumombasin的回答使我走上了通向通用解决方案的正确道路,对他们深表感谢!
对于Slack对待的每个字符,它们都被当作特殊的标记令牌_*~,如果包装如前所述,它们以一对软连字符开头,然后可以出现在文本的开头,结尾或中间,并可以用空格或其他方式括起来。
例如,要在其中Unicode UTF-8文本结果将是_

#12 楼

您可以输入一个带有空格的哈希,然后输入文本,然后使用退格键将两者连接起来。



开始于...#SlackIsGreat

然后将光标置于'S'处并按退格键。

评论


老实说,我认为这不是OP的追求。

– jonsca♦
16-12-26 at 2:41