Копирование и вставка текста из Discord в Discourse нарушает разрывы абзацев

Я хочу скопировать и вставить этот выделенный текст из Discord в Discourse:

Вот как это выглядит, если я делаю это напрямую:

Spitz 07/03/2024 18:43

Hell-o, Divers! Я хотел уделить минуту сегодня днем, чтобы сообщить вам, что мы услышали ваши опасения за последние несколько дней касательно спавна врагов, их брони и возможности уничтожать этих врагов. Как мы уже говорили ранее, наши команды всегда учитывают отзывы игроков и ищут способы настроить игру так, чтобы она была справедливой, увлекательной и обеспечивала лучший опыт для всех. Я могу подтвердить, что мы в настоящее время рассматриваем изменения в частоте спавна и показателях здоровья тяжелых врагов, а также постараемся распределить их более равномерно, чтобы избежать крупных всплесков появления более сильных мобов одновременно, а также сделать их немного легче для уничтожения. Это изменение должно выйти в следующем горячем исправлении — пока без точной даты. Кроме того, мы забыли упомянуть (ой), что EAT-17 и безоткатная винтовка больше не получают снижение урона на 50% при попадании в бронированного врага под «углом скольжения», который отклоняет выстрел. В сочетании с предстоящей корректировкой здоровья и частоты спавна это должно сделать крупных врагов немного менее распространенными, вместо этого спавня больше «чaff»-врагов для их поддержки, и позволит игрокам уничтожать этих врагов одним хорошо прицеленным выстрелом. Надеюсь, это приведет к уменьшению случаев бесконечного кайтинга и ситуаций, когда игроки остаются без эффективного оружия для уничтожения более сильных врагов. Спасибо, как всегда, за ваше терпение!

Это просто один большой абзац.

Если же я сначала вставляю его в текстовый редактор (например, Блокнот), а затем копирую и вставляю оттуда, это выглядит так:

Spitz — 07/03/2024 18:43
Hell-o, Divers! Я хотел уделить минуту сегодня днем, чтобы сообщить вам, что мы услышали ваши опасения за последние несколько дней касательно спавна врагов, их брони и возможности уничтожать этих врагов. Как мы уже говорили ранее, наши команды всегда учитывают отзывы игроков и ищут способы настроить игру так, чтобы она была справедливой, увлекательной и обеспечивала лучший опыт для всех.

Я могу подтвердить, что мы в настоящее время рассматриваем изменения в частоте спавна и показателях здоровья тяжелых врагов, а также постараемся распределить их более равномерно, чтобы избежать крупных всплесков появления более сильных мобов одновременно, а также сделать их немного легче для уничтожения. Это изменение должно выйти в следующем горячем исправлении — пока без точной даты.

Кроме того, мы забыли упомянуть (ой), что EAT-17 и безоткатная винтовка больше не получают снижение урона на 50% при попадании в бронированного врага под «углом скольжения», который отклоняет выстрел. В сочетании с предстоящей корректировкой здоровья и частоты спавна это должно сделать крупных врагов немного менее распространенными, вместо этого спавня больше «чaff»-врагов для их поддержки, и позволит игрокам уничтожать этих врагов одним хорошо прицеленным выстрелом. Надеюсь, это приведет к уменьшению случаев бесконечного кайтинга и ситуаций, когда игроки остаются без эффективного оружия для уничтожения более сильных врагов.

Спасибо, как всегда, за ваше терпение!

Что именно я хочу, так как это сохраняет разрывы абзацев.

Я не знаю, кто виноват в этом процессе: Discourse, Discord или Windows. Но это происходит. Я тестировал это в последних версиях Firefox и MS Edge, и результат тот же, так что, думаю, проблема не в браузере.

Если я использую что-то вроде ClipView или InsideClipboard, я вижу следующее.

1, 7, 13 ведут себя так, как ожидалось:

49412 HTML выглядит так:

Version:0.9
StartHTML:0000000185
EndHTML:0000012902
StartFragment:0000000221
EndFragment:0000012866
SourceURL:https://discord.com/channels/1102970375731691612/1102974129734434919
<html>
<body>
<!--StartFragment--><h3 class="header__39b23" aria-labelledby="message-username-1215369280980394024 message-timestamp-1215369280980394024" style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: normal; font-family: &quot;gg sans&quot;, &quot;Noto Sans&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: baseline; display: block; position: relative; line-height: 1.375rem; min-height: 1.375rem; color: var(--text-muted); white-space: break-spaces; overflow: hidden; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(49, 51, 56); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"><span id="message-username-1215369280980394024" class="headerText_f47574 hasRoleIcon_b0c680" style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;"><span class="username_d30d99 desaturateUserColors_b72bd3 clickable_d866f1" aria-expanded="false" role="button" tabindex="0" style="margin: 0px; padding: 0px; border: 0px; font-weight: 500; font-style: inherit; font-family: inherit; font-size: 1rem; vertical-align: baseline; outline: 0px; line-height: 1.375rem; color: rgb(155, 89, 182); display: inline; position: relative; overflow: hidden; flex-shrink: 0;">Spitz</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;"><span class="" role="button" tabindex="0" style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;"><img alt="" aria-label="Role icon, Community Manager" class="roleIcon__59ca1 roleIcon_d491aa clickable__08c77" height="20" src="upload://7PldHMXYonxiDX9vkSjyhksRtWN.webp" width="20" style="margin: 0px 0px 0px 0.25rem; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: top; display: inline-block; overflow: hidden; object-fit: contain; cursor: pointer; position: relative; top: 1px; height: calc(4px + 1rem); width: calc(4px + 1rem); text-indent: -9999px;"></span></span></span><span class="timestamp_cdbd93 timestampInline__470e0" style="margin: 0px 0px 0px 0.25rem; padding: 0px; border: 0px; font-weight: 500; font-style: inherit; font-family: inherit; font-size: 0.75rem; vertical-align: baseline; outline: 0px; display: inline-block; height: 1.25rem; cursor: default; pointer-events: auto; line-height: 1.375rem; color: var(--text-muted);"><time aria-label="7 March 2024 18:43" id="message-timestamp-1215369280980394024" datetime="2024-03-07T18:43:37.055Z"><i class="separator__3f416" aria-hidden="true" style="position: absolute; opacity: 0; display: inline-block; font-style: normal;"> — </i>07/03/2024 18:43</time></span></h3><div id="message-content-1215369280980394024" class="markup_a7e664 messageContent__21e69" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: calc(-1*var(--custom-message-margin-left-content-cozy)); padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: var(--custom-message-margin-left-content-cozy); border: 0px; font-weight: 400; font-style: normal; font-family: &quot;gg sans&quot;, &quot;Noto Sans&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: baseline; outline: 0px; line-height: 1.375rem; white-space: break-spaces; overflow-wrap: break-word; user-select: text; color: var(--text-normal); text-indent: 0px; position: relative; overflow: hidden; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: left; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(49, 51, 56); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">Hell</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">-o</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, Divers</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">! Я хотел уделить минуту сегодня днем, чтобы сообщить вам, что мы</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">' услышали ваши опасения за последние несколько дней касательно спавна врагов</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, их брони</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;"> и возможности уничтожать этих врагов</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">. Как мы уже говорили ранее</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, наши команды всегда учитывают отзывы игроков и ищут способы настроить игру так, чтобы она была справедливой</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, увлекательной и обеспечивала лучший опыт для всех</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">. </span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">

Я могу подтвердить, что мы</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">' в настоящее время рассматриваем изменения в частоте спавна и показателях здоровья тяжелых врагов</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, а также постараемся распределить их более равномерно, чтобы избежать крупных всплесков появления более сильных мобов одновременно</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, а также сделать их немного легче для уничтожения</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">. Это изменение должно выйти в следующем горячем исправлении </span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">- пока без точной даты</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">.</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">

Кроме того</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, мы забыли упомянуть </span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">(ой</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">), что EAT</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">-17 и безоткатная винтовка больше не получают снижение урона на 50</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">% при попадании в бронированного врага под </span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">«углом скольжения</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">», который отклоняет выстрел</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">. В сочетании с предстоящей корректировкой здоровья и частоты спавна</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, это должно сделать крупных врагов немного менее распространенными</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, вместо этого спавня больше </span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">«чaff»-врагов</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;"> для их поддержки</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">, и позволит игрокам уничтожать этих врагов одним хорошо прицеленным выстрелом</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">. Надеюсь, это приведет к уменьшению случаев бесконечного кайтинга и ситуаций, когда игроки остаются без эффективного оружия для уничтожения более сильных врагов</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">.</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">

Спасибо, как всегда, за ваше терпение</span><span style="margin: 0px; padding: 0px; border: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; font-size: 16px; vertical-align: baseline; outline: 0px;">!</span></div><!--EndFragment-->
</body>
</html>

Так что, думаю, проблема может быть в Discord за то, что он не добавляет тег

? Или это вина вашего браузера за то, что он принимает HTML?

1 лайк

К сведению: Discord Bot Construction Kit 🤖 содержит команду копирования текста сообщения, которая делает больше, чем просто копирует сообщение, и также корректно указывает автора сообщения.

1 лайк

Мне это кажется ошибкой Discord.

HTML «съедает» переносы строк, так что если вам нужны переносы, используйте <br> или помещайте содержимое в <p>.

Я думал, у нас есть скрытая комбинация SHIFT-CTRL-P для вставки текста вместо HTML —> Markdown.

1 лайк

После того как я отправил информацию из буфера обмена, я подумал то же самое, поэтому тоже создал баг-репорт там (#43764105). Похоже, что генерируемый ими HTML некорректен, так что от Discourse нельзя ожидать, что он справится с этим. Можете «закрыть» эту тему с багом.

Спасибо, что сообщили мне о волшебной вставке! :slight_smile:

1 лайк

К сведению: они винят тебя :wink:

Привет, Под,

Спасибо, что нашли время написать нам!

Мы понимаем вашу обеспокоенность по поводу формата HTML при копировании и вставке из Discord.

Мы изучили вашу проблему и выяснили, что разные приложения по-разному обрабатывают скопированный многострочный текст. Некоторые сохраняют исходные межстрочные интервалы (например, Блокнот или Google Таблицы), а другие — нет (например, Google Документы или Discourse, как вы заметили).

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

Надеюсь, это всё проясняет! Но обязательно дайте знать, если вам понадобится что-то ещё!

С уважением,
Нико

Похоже, что Discord или Discourse не собираются ничего менять, так что, видимо, мне просто придётся помнить о том, что нужно нажимать CTRL+SHIFT+P для «магической вставки», если я когда-нибудь снова скопирую что-то из Discord. А этот баг можно оставить здесь на случай, если кто-то ещё столкнётся с этой проблемой.

(Я пробовал сохранять содержимое CF_HTML в файл и просматривать его: в Firefox, Chrome и Edge переносы строк отображаются. Я не настолько разбираюсь в веб-разработке, чтобы сказать, является ли то, что они генерируют, «валидным» HTML или это просто HTML, который браузер вынужден корректно отображать, потому что интерпретирует его как HTML 1.1 или что-то в этом роде)

1 лайк