Как осуществить перенос первого слова в ячейке longtable?

Столкнулся с проблемой, что первое слово, если оно не соответствует размеру ячейки, находит на другую ячейку. Если слово второе и дальше - такой проблемы не возникает.

Дистрибутив: TeXLive

Компилятор: XeLaTeX

Пример:

\documentclass[fontsize=14pt,a4paper]{scrreprt}

\usepackage[utf8]{inputenc}  % Кодировка исходного текста
\usepackage{polyglossia}    %для русского языка
\usepackage{xecyr}          %кириллические символы
\usepackage{longtable}      %длинные таблицы
\usepackage{float} %плавающие объекты
\usepackage{caption} %заголовки плавающих объектов
\usepackage{amsmath} %пакет мат. формул
\usepackage{array} %для таблиц

\setdefaultlanguage{russian}  %% устанавливает главный язык документа
\setotherlanguage{english} %% объявляет второй язык документа
\setmainfont{Liberation Serif} %шрифты
\setsansfont{Liberation Sans}
\setmonofont{Liberation Mono}


\begin{document}
    \chapter{Название главы}
    
    \section{Подзаголовок}
    
    Какой-то текст.
    
    \begin{longtable}{|>{\centering\arraybackslash}m{0.13\linewidth}|>{\centering\arraybackslash}m{0.1\linewidth}|>{\centering\arraybackslash}m{0.14\linewidth}|>{\centering\arraybackslash}m{0.18\linewidth}|>{\centering\arraybackslash}m{0.13\linewidth}|>{\centering\arraybackslash}m{0.12\linewidth}|>{\centering\arraybackslash}m{0.06\linewidth}|}
        \caption{Объекты и их классификация \label{Objects-classification}} \\
        \hline
        \textbf{Объект} & \textbf{Символ} & \textbf{Описание} & \textbf{Действие} & \textbf{Разовость} & \textbf{Природа} & \textbf{Поле} \\ \hline
        \endfirsthead
        \multicolumn{7}{r}{Продолжение таблицы \thetable} \\
        \hline
        \textbf{Объект} & \textbf{Символ} & \textbf{Описание} & \textbf{Действие} & \textbf{Разовость} & \textbf{Природа} & \textbf{Поле} \\ \hline
        \endhead
        \endfoot
        \hline
        \endlastfoot
        
        Чёрный рынок & Ч & Не требуется & Текст & Много & Локация & T \\
        \hline
        Средневековое оружие & О & <<Ничего нет, но можно копать>> & Текст & Много & Локация & D \\
        \hline
        Полицейский & П & <<Одинокий человек>> & Текст & Много & Живность & T, O \\
        \hline
        Фарцовщик & Ф & <<Одинокий человек>> & Текст & Много & Живность & T \\
        \hline
        Экспедиция & $\text{Л}^\text{Э}$ & <<Группа людей>> & Текст & Много & Живность & D, O \\
        \hline
        Логово разбойников & Р & <<Подозрительное укрытие>> & Текст & Один\footnote{Только при полном наборе возможностей. После получения добычи можно использовать многократно, чтобы переждать Песчаную Бурю.} & Локация & D, O \\
    \end{longtable}

\end{document}

Результат: введите сюда описание изображения

Находил решения в стиле "определить команду особой ячейки, в которой разрешён перенос" или "расширить границу столбца", но они меня не устраивают. Также искал подобную опцию в настройках пакета longtable, но почему-то не смог найти.


Ответы (1 шт):

Автор решения: Kontzid

Нашёл решение с англоязычного сервиса:

Суть в том, что TeX никогда не переносит первое слово, поэтому необходимо обмануть его следующим костылём - вставить нулевой горизонтальный промежуток командой \hspace{0pt}. TeX будет считать это первым словом, а далее следующий текст будет переноситься.

Эту команду можно добавить в определение столбца, чтобы не писать в каждой нужной ячейке.

В моём примере исправление кода будет выглядеть так:

\begin{longtable}{|>{\centering\arraybackslash\hspace{0pt}}m{0.13\linewidth}|>{\centering\arraybackslash}m{0.1\linewidth}|>{\centering\arraybackslash\hspace{0pt}}m{0.14\linewidth}|>{\centering\arraybackslash}m{0.18\linewidth}|>{\centering\arraybackslash}m{0.13\linewidth}|>{\centering\arraybackslash}m{0.12\linewidth}|>{\centering\arraybackslash}m{0.06\linewidth}|}
→ Ссылка