Техническое задание: Текстовый редактор с синхронным выделением

Основная цель

Разработать десктопное приложение на Python, предоставляющее пользователю два параллельных текстовых поля для работы с текстом. Ключевая функция - синхронное выделение идентичных фрагментов текста.

Функциональные требования

  • Интерфейс: Окно приложения должно быть разделено на две равные вертикальные области (поля для ввода текста).
  • Ввод текста: Пользователь должен иметь возможность независимо вводить и редактировать текст в любом из двух полей.
  • Механизм выделения: При выделении пользователем любого фрагмента текста (с помощью мыши или клавиатуры) в одном поле, программа должна:
    • Найти и визуально выделить все идентичные совпадения этого фрагмента в том же поле.
    • Найти и визуально выделить все идентичные совпадения этого фрагмента в соседнем текстовом поле.
  • Простота: Интерфейс должен быть минималистичным и интуитивно понятным, аналогичным стандартным текстовым редакторам.

Технические детали

  • Язык программирования: Python.
  • Запуск: Приложение должно запускаться выполнением скрипта (файла .py).
  • Логика выделения должна учитывать точное совпадение символов (с учетом регистра).