Объединение вставленного преформатированного текста => блок кода в новом редакторе, когда разделителем является только пробел

Заметил проблему с неправильным использованием преформатированного текста на форуме Anki и подумал, что если Discourse сможет автоматически объединять такие блоки в новом редакторе, это поможет пользователям и разработчикам при работе с отладочной информацией.


Фактическое поведение (из поста ниже):

b2d2) (ao)Python 3.13.5 Qt 6.9.1 PyQt 6.9.1Platform: Windows-11-10.0.26100-SP0

Traceback (most recent call last):File "C:\Users\lejla\AppData\Local\AnkiProgramFiles.venv\Lib\site-packages\aqt\webview.py", line 188, in cmdreturn json.dumps(self.onCmd(str))~~~~~~~~~~^^^^^File "C:\Users\lejla\AppData\Local\AnkiProgramFiles.venv\Lib\site-packages\aqt\webview.py", line 275, in _onCmdreturn self._onBridgeCmd(str)~~~~~~~~~~~~~~~~~^^^^^File "C:\Users\lejla\AppData\Local\AnkiProgramFiles.venv\Lib\site-packages\aqt\webview.py", line 800, in _onBridgeCmdhandled, result = gui_hooks.webview_did_receive_js_message(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^(False, None), cmd, self._bridge_context^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^)^File "C:\Users\lejla\AppData\Local\AnkiProgramFiles.venv\Lib\site-packages_aqt\hooks.py", line 5543, in callhandled = filter(handled, message, context)File "C:\Users\lejla\AppData\Roaming\Anki2\addons21\1898790263\contanki.py", line 146, in on_receive_messagefuncsfunc~~~~~~~~~~~^^^^^^^File "C:\Users\lejla\AppData\Roaming\Anki2\addons21\1898790263\contanki.py", line 165, in if_connected_wrapperfunc(self, *args, **kwargs)~~~~^^^^^^^^^^^^^^^^^^^^^^^File "C:\Users\lejla\AppData\Roaming\Anki2\addons21\1898790263\contanki.py", line 177, in pollaxes = [float(axis) for axis in input_axes.split(“,”)]~~~~~^^^^^^ValueError: could not convert string to float: ‘’

===Add-ons (active)===(add-on provided name [Add-on folder, installed at, version, is config changed])Contanki - Controller Support for Anki beta [‘1898790263’, 2024-02-29T19:22, ‘v1.0.2’, mod]Image Occlusion Enhanced [‘1374772155’, 2022-04-09T02:15, ‘None’, ‘’]

===IDs of active AnkiWeb add-ons===1374772155 1898790263

===Add-ons (inactive)===(add-on provided name [Add-on folder, installed at, version, is config changed])

Ожидаемое поведение:

Anki 25.07.5 (7172b2d2) (ao)Python 3.13.5 Qt 6.9.1 PyQt 6.9.1Platform: Windows-11-10.0.26100-SP0

Traceback (most recent call last):File "C:\Users\lejla\AppData\Local\AnkiProgramFiles.venv\Lib\site-packages\aqt\webview.py", line 188, in cmdreturn json.dumps(self.onCmd(str))~~~~~~~~~~^^^^^File "C:\Users\lejla\AppData\Local\AnkiProgramFiles.venv\Lib\site-packages\aqt\webview.py", line 275, in _onCmdreturn self._onBridgeCmd(str)~~~~~~~~~~~~~~~~~^^^^^File "C:\Users\lejla\AppData\Local\AnkiProgramFiles.venv\Lib\site-packages\aqt\webview.py", line 800, in _onBridgeCmdhandled, result = gui_hooks.webview_did_receive_js_message(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^(False, None), cmd, self._bridge_context^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^)^File "C:\Users\lejla\AppData\Local\AnkiProgramFiles.venv\Lib\site-packages_aqt\hooks.py", line 5543, in callhandled = filter(handled, message, context)File "C:\Users\lejla\AppData\Roaming\Anki2\addons21\1898790263\contanki.py", line 146, in on_receive_messagefuncsfunc~~~~~~~~~~~^^^^^^^File "C:\Users\lejla\AppData\Roaming\Anki2\addons21\1898790263\contanki.py", line 165, in if_connected_wrapperfunc(self, *args, **kwargs)~~~~^^^^^^^^^^^^^^^^^^^^^^^File "C:\Users\lejla\AppData\Roaming\Anki2\addons21\1898790263\contanki.py", line 177, in pollaxes = [float(axis) for axis in input_axes.split(“,”)]~~~~~^^^^^^ValueError: could not convert string to float: ‘’

===Add-ons (active)===(add-on provided name [Add-on folder, installed at, version, is config changed])Contanki - Controller Support for Anki beta [‘1898790263’, 2024-02-29T19:22, ‘v1.0.2’, mod]Image Occlusion Enhanced [‘1374772155’, 2022-04-09T02:15, ‘None’, ‘’]

===IDs of active AnkiWeb add-ons===1374772155 1898790263

===Add-ons (inactive)===(add-on provided name [Add-on folder, installed at, versi



Если между преформатированными блоками есть текст, они не должны объединяться.

Редактирование: В блоке кода нет ограничения по длине, поэтому он растягивается бесконечно. Должно быть значение по умолчанию, которое можно настраивать администраторам (говорю как пользователь, не уверен, есть ли уже такая настройка).

Я обеспокоен тем, что попытка угадать намерение здесь может привести к обратному эффекту.

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

2 лайка

Я создал несколько блоков кода всего 5 минут назад. Это вполне нормальный способ показать примеры использования на минимальном уровне.

Просто пример
sudo nano /usr/local/bin/docker-ips
#!/bin/bash
# показать IP-адреса контейнеров/шлюзов и ID сети (краткая форма)

if [ $# -eq 0 ]; then
  containers=$(docker ps -q)
else
  containers=$(docker ps -qf "name=$1")
fi

for cid in $containers; do
  cname=$(docker inspect --format '{{.Name}}' "$cid" | sed 's|/||')
  echo "=== $cname ==="
  docker inspect -f '{{range $net,$v := .NetworkSettings.Networks}}Сеть: {{$net}}
  IP контейнера: {{$v.IPAddress}}
  Шлюз:   {{$v.Gateway}}
  ID сети:  {{printf "%.12s" $v.NetworkID}}{{"\n"}}{{end}}' "$cid"
done
sudo chmod +x /usr/local/bin/docker-ips

Я нигде не использую богатый редактор, кроме как на телефоне, но обычно мы не можем получить пустые строки без <br>, поэтому тогда должен быть какой-то бессмысленный текст :thinking:

1 лайк

Я не совсем уверен, в чём именно заключается проблема. С тех пор мы внесли множество улучшений в обработку встроенного и блочного кода, но не могли бы вы проверить, сохраняется ли проблема в latest или здесь, на Meta? Спасибо!

1 лайк

Это не проблема! Спасибо, что проверили ещё раз, но Jagster привёл валидный случай использования, о котором я не подумал при формулировке этого предложения.

Пожалуйста, закройте эту тему как «не исправляется» или аналогично :heart:

1 лайк