У меня есть базовое приложение для Mac с набором NSTextView
(«Расширенный просмотр содержимого документа» в Интерфейсном Разработчике), но я также наблюдал это поведение в TextEdit:
- Создать новыймаркированный список из 3 элементов
- Выберите и скопируйте один элемент списка
- Вставьте элемент списка в тот же документ
→ Вставленныйэлемент теряет форматирование списка, т. е. когда я нажимаю клавишу Return в конце, новый элемент списка не добавляется автоматически.
→ Когда я выбираю два или более элементов списка, он работает правильно.
Вотбыстрое видео:
Другие наблюдения
Я тестировал ту же процедуру в Scrivener (что, я считаю,также использует NSTextView), и здесь при копировании одного элемента списка помещаются правильные атрибуты списка форматирования в буфер обмена.
Я проверял буфер обмена, и когда я копировал один элемент списка, действительно, содержимое RTF отличается по сравнению сScrivener.
NSTextView (один элемент скопирован) :
\f0\fs36 \cf0 \'95 Regular list item}
Scrivener (один элемент скопирован) :
\f0\fs32 \cf0 {\listtext \uc0\u8226 }Regular list item}
Обратите внимание, как Scrivener размещает правильное форматированиев буфере обмена.
NSTextView (скопированы два элемента) :
\f0\fs36 \cf0 {\listtext \uc0\u8226 }Regular list item\
{\listtext \uc0\u8226 }Another list item}
При копировании двух элементов списка работает должным образом.
Чего мне не хватает?Или это ошибка / особенность, и пользователи Scrivener работают над этим в своем приложении (например, обнаружение, когда копируется один элемент списка и исправление его атрибутов)?