¿Cómo escapo al formatear caracteres en Slack?

92

Slack usa varios caracteres para su propio formato de descuento.

¿Cómo puedo ingresar un mensaje con esos caracteres reservados escapados?

Por ejemplo, ¿es posible enviar un mensaje exactamente como este:

* No quiero que esto sea audaz *

BadHorsie
fuente
26
Desearía poder rechazar cada respuesta aquí.
Richard Simões
1
No puedes @ RichardSimões
technophyle
1
¡Necesito más puntos!
Richard Simões
77
Esta es la razón por la cual la holgura necesita salir de su alto caballo y usar un motor de reducción adecuado .
Qix
NOTA: la única solución que funciona es el comentario sobre mi comentario de la respuesta de
leclercdumombasin

Respuestas:

35

Solución

Copie y pegue el texto a continuación y cambie la palabra en los asteriscos para sus propias necesidades:

*bold*­

No se representará como texto en negrita cuando publique su mensaje de Slack. Nota: Hay caracteres ocultos a ambos lados de los asteriscos que evitarán que Slack formatee sus palabras entre los asteriscos.


Explicación

Esta es una variación de la respuesta de ShaneB que parece funcionar mejor. En lugar de agregar espacio (invisible) al lado "adjunto" del asterisco:

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

considere eliminar el espacio en el lado "separado" insertando espacio (invisible):

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

Esto "incrusta" el asterisco y, por lo tanto, lo deja inactivo. El guión suave parece un buen personaje aquí.

leclercdumombasin
fuente
2
Muy bien. Creo que esta es la nueva mejor respuesta que da el resultado exacto deseado. He editado su publicación para proporcionar una solución simple de copiar / pegar para las personas que pueden no entender cómo implementarla realmente.
BadHorsie
1
Aparentemente, no necesitas el carácter "tímido" en ambos lados, solo un lado es suficiente.
Kelvin
1
| * negrita * | es todo lo que estoy recibiendo
Adrian Bartholomew
3
@AdrianBartholomew En lugar de la tubería |, debe ingresar el carácter unicode (U + 00AD). En Linux mientras mantiene presionada ula tecla MAYÚS + CTRL presione y luego las teclas ad. En Windows mientras mantiene presionada la tecla ALT, escriba las teclas 0173. Puede encontrar más información sobre la entrada Unicode en en.wikipedia.org/wiki/Unicode_input
SubOptimal
¡El comentario anterior es la única solución de trabajo para los técnicos que usan Slack!
sjngm
18

Acabo de probar y una sola marca de retroceso escapará de los próximos caracteres de formato para el resto del mensaje.

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

Eso se formateará como código

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

Se formateará normalmente, pero aparecerán ambos asteriscos en lugar de poner el texto en negrita.

pkoepke
fuente
3
Interesante. Quiero decir, supongo que esto es algo así como un "pirateo" porque simplemente estás haciendo una sección de código roto, pero también esto deja el backtick no deseado.
BadHorsie
Sí, no es perfecto y puede ser un truco no admitido.
pkoepke
13
pero ¿qué hay de escapar de un backtick?
George Mauer
14

¡ACTUALIZACIÓN !: (2017-12-07)

Parece que Google ha actualizado los controles del navegador web Chrome (y posiblemente otros) para mostrar marcadores de posición para muchos caracteres de control ASCII comunes, ¡ INCLUYENDO el carácter de pestaña vertical! Este cambio ha provocado que se rompa mi Solución original a continuación, que ahora muestra cuadros de "caracteres desconocidos" o, en algunos casos, espacios en blanco, donde antes no se rompía en la mayoría de los casos de uso (¡especialmente Slack!). No hay que temer, hay una solución simple!

REVISIÓN: en lugar de usar una pestaña vertical (carácter hexadecimal 0x0B ), AHORA use un carácter de alimentación de formulario (carácter hexadecimal 0x0C ).

Solución: copie el texto fijo a continuación en Slack y edite:

There is once again *no* spoon

O use cualquier convertidor hexadecimal a ascii (es decir: ASCII a hexadecimal ) para convertir esto:

2a 0c 68 61 78 0c 2a

Personalmente, siempre es más fácil y más compatible usar una solución de rango ASCII en lugar de tentar al destino con una solución Unicode como en la respuesta de leclercdumombasin. SIN EMBARGO, en lo que respecta a la usabilidad, la respuesta de leclercdumombasin es elegante, ya que simplemente puede copiar y pegar el guión suave y etiquetar cualquier palabra que desee sin formatear con un solo carácter oculto. La principal diferencia entre los dos es que mi solución usa caracteres que permanecerán ocultos si se copian / pegan en un editor de texto simple, mientras que la solución de guión suave en mis pruebas se convierte en un guión de aspecto estándar en editores de texto simples comunes.

TL; DR: ¡Ahora tiene DOS soluciones de trabajo por el precio de una!


POSTE ORIGINAL:

Tenía que estar de acuerdo con Richard Simões arriba, ninguna de estas respuestas realmente proporcionó una solución real. Aunque todos son correctos en un sentido, no existe un método creado intencionalmente para manejar este caso de uso, requeriría algún tipo de pirateo. ... Y como ninguno de los hacks proporcionados hasta ahora son aceptables, agarré un hotpocket y algunas cintas de Xena y me dispuse a demostrar que mi kung-fu era fuerte.

Resultado: mi kung-fu fue fuerte.

Solución: utilice el carácter de tabulación vertical .

Como se mencionó anteriormente, puede usar un espacio para separar los asteriscos de la palabra o frase que están alrededor, así:

These * spaces * will keep it from becoming bold.

En mi opinión, esta fue la mejor respuesta dada, pero aún agrega los espacios antiestéticos. Entonces, si tuviera que usar la Pestaña vertical (VT), sería suficiente separar el asterisco, sin agregar el espacio adicional entre los asteriscos y las palabras que rodean.

Aquí está la información del personaje, aunque no estoy seguro de cómo StackExchange y / o su navegador web individual mostrará esto. Si lo convierte automáticamente en un espacio, o algo similar, consulte a continuación un método alternativo:

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

Y en una oración como la usarías en Slack, donde la probé con éxito, independientemente de cómo funciona aquí (solo copia / pega en Slack):

There is *no* spoon.

La forma más fácil que he encontrado de trabajar con hacks de caracteres no imprimibles como este es guardar la secuencia en un archivo de texto como hexadecimal, luego, cada vez que necesito usarlos, puedo abrir rápidamente una nueva pestaña, google 'hexadecimal a ascii' , luego copie / pegue a través de cualquier convertidor. También recomiendo usar un editor de texto que tenga la opción de mostrar caracteres de espacios en blanco. Aquí hay una cadena en hexadecimal para usar, solo convierta a ascii y reemplace 'hax' con lo que quiera escribir:

2a0b6861780b2a
ShaneB
fuente
1
Mi tipo de chico Buen trabajo. Quiero decir, una solución loca pero genial. Dejé esta pregunta abierta durante casi un año ... esta es la única solución real aquí.
BadHorsie
1
Interesante. Esto incluso funciona para las comillas inversas, donde los espacios no funcionarán en absoluto.
Michał Politowski
En el último Slack para Mac, la palabra no estaba en negrita, pero el resultado final todavía tiene los espacios antiestéticos entre los asteriscos y la palabra que rodean.
Kelvin
@Kelvin: inténtalo con las ediciones más recientes que mencioné anteriormente, o prueba el método de guión suave mencionado en la otra respuesta.
ShaneB
7

Solo hay una forma de lograr lo que desea: use un bot para crear mensajes utilizando la API de Slack . Aquí hay una página con un ejemplo que muestra cómo hacer exactamente lo que quieres.


Pero si usted, el humano, está escribiendo usando el cliente Slack, como han dicho otros, no hay forma de producir una cadena de texto rodeada de asteriscos. Si no desea que se apliquen otros tipos de formato (como code), aquí hay algunos compromisos que lo acercarán a lo que desea:

espacios (me parece más legible de todos modos)

* I don't want this to be bold *

barra diagonal inversa o guión bajo

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

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

jsejcksn
fuente
3

Hay un carácter Unicode, "Combining Grapheme Joiner" (͏Unicode: U + 034F, UTF-8: CD 8F) que, si se inserta justo antes de uno de los caracteres especiales en Slack, de alguna manera nerfs detecta la detección de los caracteres especiales por parte de Slack:

I don't want *this* to be bold
             ^- Insert it before this asterisk

Esta truco hack parece escapar del siguiente carácter, permitiendo que se escriban asteriscos, tildes, guiones bajos y (para mí lo más importante de todos) corchetes angulares iniciales sin que Slack los use como códigos de formato.

Me doy cuenta de que este es un truco skanky: es relativamente fácil en una Mac, pero no puedo hablar por mis camaradas de Windows si esto es fácil de hacer o no.

PD: probé varios otros caracteres Unicode, incluidos el retroceso, el espacio delgado, el espacio del cabello, el espacio de ancho cero, etc., pero Slack los elimina, al menos cuando son el primer carácter en una línea (lo que hace que escribir algo > 9,000!como un comentario imposible en Slack, porque se convierte en una cita en bloque).

Dave Land
fuente
1
Esto funciona. Esto también se puede configurar en aplicaciones como Keyboard Maestro o Typinator en macOS, o AutoHotKey en Windows, lo que facilita la inserción de "Combinando Grapheme Joiner" usando una macro de teclado corta o una tecla de acceso rápido.
Ville
2

¿Quizás use el carácter Unicode U + 066D (٭) cuando se refiere al carácter *?

La solución anterior en la que el contribuyente recomienda el uso de la pestaña vertical de caracteres trabajó para mí hasta que también incluía marcado que utilizó el .. sintaxis, momento en el que no lo hizo.

cjac
fuente
Solución limpia y simple.
BadHorsie
También funciona para los otros posibles caracteres que uno quiera incorporar, por ejemplo, haciendo que una línea comience con>, use ›en su lugar. (U + 203A)
Phil
1

Las marcas de retroceso simples lo harán, las marcas de retroceso triples lo harán bloquear el texto . . . pero cualquiera lo formateará como código. Como lo confirma este tweet de Slack .

`*I don't want this to be bold*`
Tom Woodward
fuente
99
Sé que los backticks simples lo formatean como código, soy desarrollador y los uso mucho, pero no es lo que quiero. No es lo mismo que escapar de un personaje. Quiero el mensaje sin formato; El estilo del código está formateado.
BadHorsie
2
Lo siento, no es lo que quieres. Fallé con una variedad de otras opciones \, / <, <! etc. Este tuit parece indicar que simplemente no existe.
Tom Woodward
En realidad, es una cuestión de perspectiva si el estilo de código está "formateado" y el estilo predeterminado no. Ambos están formateados, solo con diferentes familias de fuentes. El "estilo predeterminado" no es necesariamente "sin formato". La pregunta es confusa en el mejor de los casos, porque el ejemplo en la línea final muestra el texto en un formato monoespacio con fondo gris, que es lo que hace Slack cuando usas teclas de retroceso.
LarsH
1

Otra opción es duplicar uno de los asteriscos.

*cough**y **cough*ambos trabajan para mí en mis pruebas.

Mate
fuente
1

Para escapar de un carácter especial, fe * o @, escriba los siguientes caracteres justo antes del carácter del que queremos escapar:

Mantener presionado:

<ctrl><shift>

Presione y suelte, uno tras otro, los siguientes caracteres:

u a d

Lanzamiento:

<ctrl><shift>

Por un momento, veremos, subrayados: uAD que pronto se volverán invisibles.

Ahora puede escribir el carácter especial.


Esta respuesta es dada por @Suboptimal en un comentario.

Traté de responderle, pero los comentarios no permiten el formato necesario.

Si publica esta respuesta, con gusto la votaré y eliminaré esta.

el Salvador
fuente
-1

Puede ingresar un hash con un espacio, luego el texto, luego usar la tecla de retroceso para conectar los dos.

Es decir

Comience con ...... # SlackIsGreat

Luego coloque el cursor en la 'S "y presione la tecla de retroceso.

Eric
fuente
2
No creo que esto sea lo que busca el OP, sinceramente.
jonsca