Как мне избежать форматирования символов в Slack?

92

Slack использует различные символы для собственного форматирования уценки.

Как я могу ввести сообщение с экранированными символами?

Например, возможно ли отправить сообщение в точности так:

* Я не хочу, чтобы это было смелым *

BadHorsie
источник
26
Я хотел бы, чтобы я мог понизить каждый ответ здесь.
Ричард Симойс
1
Ты не можешь? @ RichardSimões
технофил
1
Нужно больше очков!
Ричард
7
Вот почему слабина должна сойти со своей высокой лошади и использовать надлежащий двигатель уценки .
Qix
ПРИМЕЧАНИЕ: единственное рабочее решение - это комментарий над моим комментарием к ответу
leclercdumombasin

Ответы:

35

Решение

Скопируйте и вставьте текст ниже и измените слово в звездочках для ваших собственных нужд:

*bold*­

Он не будет отображаться жирным шрифтом при публикации сообщения Slack. Примечание: по обе стороны от звездочек есть скрытые символы, которые не позволят Slack форматировать ваши слова между звездочками.


объяснение

Это вариант ответа ShaneB, который, кажется, работает лучше. Вместо добавления (невидимого) места к «прикрепленной» стороне звездочки:

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

рассмотрите возможность удаления пробела на «отсоединенной» стороне, вставив (невидимый) не пробел:

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

Это «встраивает» звездочку и, таким образом, делает ее неактивной. Мягкий дефис здесь кажется хорошим персонажем.

leclercdumombasin
источник
2
Отлично. Я считаю, что это новый лучший ответ, который дает точный желаемый результат. Я отредактировал ваше сообщение, чтобы предоставить простое решение для копирования / вставки для людей, которые могут не понимать, как на самом деле его реализовать.
BadHorsie
1
По-видимому, вам не нужен «застенчивый» символ с обеих сторон, достаточно одной стороны.
Кельвин
1
| * полужирный * | все, что я получаю
Адриан Варфоломей
3
@AdrianBartholomew Вместо канала |вам нужно ввести символ Unicode (U + 00AD). В Linux, удерживая клавиши SHIFT + CTRL, нажмите, uа затем клавиши ad. В Windows, удерживая клавишу ALT, введите ключи 0173. Дополнительную информацию о вводе Unicode вы можете найти на en.wikipedia.org/wiki/Unicode_input
SubOptimal
Комментарий выше этого - единственное рабочее решение для техников, использующих Slack !!!
sjngm
18

Я только что проверил, и единственная обратная галочка позволит избежать появления символов форматирования для остальной части сообщения.

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

Это будет отформатировано как код

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

Это будет отформатировано нормально, но вместо выделения текста жирным шрифтом появятся обе звездочки.

pkoepke
источник
3
Интересно. Я имею в виду, я думаю, это что-то вроде «взлома», потому что вы просто создаете неработающий фрагмент кода, но также это оставляет нежелательный обратный удар.
BadHorsie
Да, это не идеально и может быть неподдерживаемым взломом.
pkoepke
14
а как насчет выхода из спины?
Джордж Мауэр
14

ОБНОВЛЕНИЕ !: (2017-12-07)

Похоже, что Google обновил элементы управления веб-браузера Chrome (и, возможно, другие), чтобы отображать заполнители для многих общих символов управления ASCII, ВКЛЮЧАЯ символ вертикальной табуляции! Это изменение привело к разрыву моего исходного Решения ниже, теперь показывая квадраты «неизвестного символа» или в некоторых случаях разрывы пробелов, где раньше он не был разрывным в большинстве случаев использования (особенно Slack!). Не бояться, есть простое исправление!

ИСПРАВЛЕНИЕ: Вместо использования вертикальной табуляции (шестнадцатеричный символ 0x0B ), СЕЙЧАС используйте символ подачи формы (шестнадцатеричный символ 0x0C )!

Решение: Скопируйте приведенный ниже фиксированный текст в Slack и Edit:

There is once again *no* spoon

Или используйте любой преобразователь hex в ascii (то есть: ASCII в Hex ), чтобы преобразовать это:

2a 0c 68 61 78 0c 2a

Лично я считаю, что всегда проще и более совместимо использовать решение диапазона ASCII, а не искушать судьбу решением Unicode, как в ответе leclercdumombasin. ОДНАКО, что касается юзабилити, ответ leclercdumombasin элегантен тем, что вы можете просто скопировать и вставить мягкий дефис и пометить любые слова, которые вы хотите оставить неформатированными, используя только один скрытый символ. Основное различие между ними состоит в том, что мое решение использует символы, которые останутся скрытыми, если их скопировать / вставить в простой текстовый редактор, в то время как в моем тестировании решение с мягкими дефисами преобразуется в стандартный выглядящий дефис в обычных простых текстовых редакторах.

TL; DR: теперь у вас есть ДВА рабочих решения по цене одного!


ОРИГИНАЛЬНАЯ ПОЧТА:

Я должен был согласиться с Ричардом Симоесом выше, ни один из этих ответов на самом деле не дал реального решения. Хотя все они в одном смысле верны, намеренно созданного метода для обработки этого варианта использования не существует, для этого потребуется какой-то взлом. ... И поскольку ни один из предоставленных к настоящему времени взломов не является приемлемым, я схватил горячий карман и несколько лент Зены и решил доказать, что мое кунг-фу было сильным.

Результат: мое кунг-фу было сильным.

Решение: используйте символ вертикальной табуляции .

Как упомянуто выше, вы можете использовать пробел для сортировки звездочек от слова или фразы, которые они окружают, например, так:

These * spaces * will keep it from becoming bold.

Это, на мой взгляд, был лучшим ответом, данным уже, но это все еще добавляет неприглядные пробелы. Поэтому вместо того, чтобы использовать вертикальную вкладку (VT), было бы достаточно выделить звездочку, не добавляя дополнительное пространство между звездочками и словом (ами), которые они окружают.

Вот информация о персонаже, хотя я не уверен, как это будет отображать StackExchange и / или ваш отдельный веб-браузер. Если он автоматически преобразует его в пробел или что-то подобное, обратитесь к альтернативному методу ниже:

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

И в предложении, которое вы бы использовали в Slack, где я успешно его протестировал, независимо от того, как он работает здесь (просто скопируйте / вставьте в Slack):

There is *no* spoon.

Самый простой способ, который я нашел, для работы с непечатными символьными взломами, как это, это сохранить последовательность в текстовом файле в шестнадцатеричном виде, а затем, когда мне понадобится их использовать, я могу быстро открыть новую вкладку, google 'hex to ascii' Затем скопируйте / вставьте через любой конвертер. Я также рекомендую использовать текстовый редактор, который позволяет отображать пробельные символы. Вот строка в шестнадцатеричном формате, которую нужно использовать, просто преобразуйте в ascii и замените «hax» на то, что вы хотите напечатать:

2a0b6861780b2a
ShaneB
источник
1
Мой тип парня. Отличная работа. Я имею в виду, сумасшедшее, но крутое решение. Я оставил этот вопрос открытым почти год ... это единственное реальное решение здесь.
BadHorsie
1
Интересно. Это даже работает для обратных кавычек - где пробелы не будут делать вообще.
Михал Политовски
На последнем Slack для Mac слово не выделено жирным шрифтом, но в конечном результате все еще есть неприглядные пробелы между звездочками и словом, которое они окружают.
Кельвин
@Kelvin - сделайте снимок, используя новейшие правки, которые я упомянул выше, или попробуйте метод мягких дефисов, упомянутый в другом ответе.
ShaneB
7

Есть только один способ достичь того, чего вы хотите: использовать бот для создания сообщений с помощью 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*

jsejcksn
источник
3

Существует символ Unicode, «Combining Grapheme Joiner» (nicUnicode: U + 034F, UTF-8: CD 8F), который, если он вставлен непосредственно перед одним из специальных символов в Slack, каким-то образом ослабляет обнаружение Slack специальных символов:

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

Этот трюк Кажется, что hack избегает следующего символа, позволяя печатать звездочки, тильды, подчеркивания и (для меня самое главное) ведущие угловые скобки без Slack, используя их в качестве кодов форматирования.

Я понимаю, что это хулиганство: на Mac это относительно легко, но я не могу говорить за своих товарищей по Windows, легко это сделать или нет.

PS: я пробовал несколько других символов Unicode, включая возврат, пробел, пробел, пробел, пробел нулевой ширины и т. Д., Но Slack удаляет их, по крайней мере, когда они являются 1-ым символом в строке (что позволяет печатать что-то вроде > 9,000!as комментарий невозможен в Slack, потому что он становится цитатой).

Дейв Лэнд
источник
1
Это работает. Это также можно настроить в таких приложениях, как Keyboard Maestro или Typinator для macOS или AutoHotKey в Windows, что позволяет легко вставлять «Объединение графемного соединения» с помощью короткого макроса клавиатуры или горячей клавиши.
Ville
2

Может быть, использовать символ Unicode U + 066D (٭), когда вы имеете в виду символ *?

Приведенное выше решение, в котором автор рекомендует использовать символ вертикальной табуляции, работало для меня, пока я не включил разметку, в которой использовался синтаксис .. , и в этот момент это не так.

cjac
источник
Чистое и простое решение.
BadHorsie
Также работает для других возможных символов, которые можно встроить, например, чтобы строка начиналась с>, вместо этого используйте ›. (U + 203A)
Фил,
1

Одиночные обратные тики сделают это, тройные обратные тики заставят это блокировать текст . , , но либо отформатирует его как код. Как подтверждено этим сообщением от Slack .

`*I don't want this to be bold*`
Том Вудворд
источник
9
Я знаю, что отдельные бэкстики форматируют это как код, я разработчик и часто их использую, но это не то, чего я хочу. Это не то же самое, что убежать от персонажа. Я хочу, чтобы сообщение не отформатировано; Стиль кода отформатирован.
BadHorsie
2
Извините, это не то, что вы хотите. Я потерпел неудачу с множеством других опций \, / <, <! и т.д. Этот твит, кажется, указывает на то, что его просто не существует.
Том Вудворд
На самом деле это вопрос перспективы, является ли стиль кода «отформатированным», а стиль по умолчанию - нет. Оба отформатированы, только с разными семействами шрифтов. «Стиль по умолчанию» не обязательно «неформатированный». Вопрос в лучшем случае сбивает с толку, потому что пример в последней строке показывает текст в моноширинном формате с серым фоном, что и делает Slack при использовании обратных галочек.
LarsH
1

Другой вариант - удвоить одну из звездочек.

*cough**и **cough*оба работают на меня в моем тестировании.

Matt
источник
1

Чтобы экранировать специальный символ, fe * или @, введите следующие символы прямо перед символом, который мы хотим экранировать:

Держите нажатым:

<ctrl><shift>

Нажмите и отпустите, один за другим, следующие символы:

u a d

Выпуск:

<ctrl><shift>

На мгновение мы увидим, подчеркнуто: uAD что скоро станет невидимым.

Теперь вы можете ввести специальный символ.


Этот ответ дает @Suboptimal в комментарии.

Я пытался ответить ему, но комментарии не позволяют необходимое форматирование.

Если он опубликует этот ответ, я с радостью добавлю его и удалю.

Сальвадор
источник
-1

Вы можете ввести Hash с пробелом, затем текст, а затем использовать Backspace для соединения двух.

Т.е.

Начните с ...... # SlackIsGreat

Затем поместите курсор на «S» и нажмите клавишу «Backspace».

Эрик
источник
2
Честно говоря, я не думаю, что это то, что нужно после ОП.
Джонска