Skip to content

Releases: alexiosus/mxl-merge-tool

0.3.0

Choose a tag to compare

@alexiosus alexiosus released this 08 Aug 23:07

Добавлено

  • Инсталлятор для Windows: архив со встроенным Python, нативное окно настройки, автопоиск 1С.
  • Пункт контекстного меню «MXL merge: настроить этот репозиторий» - добавляет .gitattributes.
  • Ярлыки настройки и удаления в меню «Пуск»; удаление через «Программы и компоненты».

0.2.1

Choose a tag to compare

@alexiosus alexiosus released this 30 Jul 10:44

Добавлено

  • Линейка колонок описывает таблицу под курсором.

Исправлено

  • Подстановка значения соседней колонки в строку, где одна из сторон заполнила
    пустую ячейку.
  • Ложные конфликты ячеек и несовпадающие координаты сторон в карточке конфликта.
  • Потеря значения, добавленного в пустую ячейку, при выборе структуры строк
    другой стороны.
  • Ошибка «The MXL row metadata layout is not recognized» при смешанной структуре
    строк на листах без свойств строк; блокировала «Render exact» и сохранение.
  • Отдельная полоса на каждую строку переставленного блока вместо одной полосы на
    блок, а также противоречивая нумерация в её подписи.
  • Смещение и наложение номеров строк в линейке результата при смешанной
    структуре строк.
  • Пропуски и сжатые колонки в линейке колонок исходных панелей.
  • Молчаливое разрешение очистки ячейки одной стороной против её изменения
    другой; теперь это конфликт.
  • Молчаливое разрешение случая, когда обе стороны заполнили пустую ячейку
    разными значениями; теперь это конфликт.

После обновления

Повторно установите Git-драйверы:

python3 mxl_tool.py install

0.2.0

Choose a tag to compare

@alexiosus alexiosus released this 28 Jul 08:52

Слияние

  • Добавлено поэлементное разрешение добавления, удаления и перестановки строк.
  • Изменения значений объединяются независимо от выбранной структуры строк.
  • Сохранение и удаление строк можно комбинировать с перестановками другой
    стороны.
  • Переставленный блок решается целиком одной стороной и не смешивается
    построчно: если одна сторона переместила блок, а другая изменила строки внутри
    него, порядок и содержимое блока берутся с одной стороны.
  • Односторонние изменения применяются автоматически, но их можно переопределить
    перед сохранением.
  • Удаление строки, изменённой в другой ветке, требует явного решения.
  • Исправлено сопоставление строк после перестановки; неоднозначные и
    несовместимые варианты не записываются.
  • Добавлена проверка структуры и атомарная запись результата.

Интерфейс

  • Добавлены координаты ячеек, навигация по конфликтам и синхронизированная
    прокрутка источников.
  • Добавлены режимы просмотра Full, Changes и Conflicts, затемнение
    неизменённого содержимого (Dim) и масштабирование.
  • Добавлен список конфликтов в панели результата: координата, тип и статус
    каждого конфликта с переходом по клику.
  • Переставленный блок занимает в списке одну позицию: до выбора стороны он
    показан единым плейсхолдером, после — содержимым выбранной стороны.
  • Добавлены кнопки глобального выбора: Use Base/Local/Remote выбирает исходный
    документ целиком, Resolve pending заполняет только конфликты без решения,
    All local/remote заменяет все решения выбранной стороной.
  • Добавлены Undo/Redo для одиночных и массовых решений (в том числе
    Ctrl/Cmd+Z, Ctrl/Cmd+Shift+Z, Ctrl/Cmd+Y).
  • Предпросмотры 1С формируются в фоне после запуска merge-тула.

Предпросмотр и редактирование в 1С

  • Добавлено открытие безопасных read-only копий Base, Local и Remote в
    «1С:Предприятие — Работа с файлами» без изменения оригиналов.
  • Добавлена ручная доработка результата в «1С:Предприятие — Работа с файлами» (Edit in 1C): после сохранения
    предпросмотр обновляется автоматически, доступны Reload from 1C и
    Edit again in 1C. Ручные изменения отмечаются меткой EDITED, на время
    редактирования решения в интерфейсе блокируются, а Discard manual edits
    возвращает исходный результат.
  • Добавлена пакетная конвертация нескольких файлов за один запуск 1С
    (render-onec-batch с JSON-манифестом).
  • В установщик добавлен параметр --onec-file-editor для внешнего редактора
    MXL; его можно указывать и без --onec-client.

Git и диагностика

  • Textconv учитывает текст, формулы, стили, размеры и другие свойства MXL.
  • Версия формата textconv включена в команду драйвера для корректного обновления
    кеша Git.
  • Отчёты о конфликтах хранятся в .git/mxl-merge/reports.
  • Причина структурного конфликта отображается в интерфейсе.
  • Команды предпросмотра можно переопределить переменными окружения
    MXL_PREVIEW_COMMAND и MXL_PREVIEW_BATCH_COMMAND; пустое значение отключает
    внешний конвертер (удобно для CI).

После обновления

Повторно установите Git-драйверы:

python3 mxl_tool.py install

0.1.0

Choose a tag to compare

@alexiosus alexiosus released this 17 Jul 23:28
v0.1.0

license