Добавление комментариев в стиле MS-Word в LaTeX

Мне нужен способ добавления текстовых комментариев в «стиле Word» к латексному документу. Я не хочу комментировать исходный код документа. Мне нужен способ добавить в документ исправления, предложения и т. Д., Чтобы они не прерывали поток текста, но при этом всем было бы легко узнать, к какой части предложения они относятся. . Они также должны «исчезнуть» при составлении документа для печати.

Сначала я подумал о написании новой команды, которая просто перенаправляла бы ввод в \marginpar{}, а при компиляции для печати просто делала бы определение пустым. Проблема в том, что у вас нет гарантии, где будут появляться комментарии, и вы не сможете отличить их от других marginpars.

Любая идея?


person Mouk    schedule 05.03.2009    source источник
comment
Я немного подрезал твою вежливость. Приветствие особенно отнимает ценное место на первой странице, поэтому по местному обычаю их не следует оставлять. Ваше здоровье.   -  person dmckee --- ex-moderator kitten    schedule 05.03.2009
comment
Раньше не замечал. Спасибо.   -  person Mouk    schedule 06.03.2009
comment
Существует аналогичный вопрос по TEX, который также является полезным ресурсом.   -  person Egalth    schedule 15.11.2018


Ответы (9)


todonotes - еще один пакет, который позволяет создавать красивые выноски. Вы можете увидеть ряд примеров в документации.

person godbyk    schedule 05.03.2009

Поскольку LaTeX - это текстовый формат, если вы хотите показать кому-то различия таким образом, чтобы они могли их использовать (и выбрать из них вишенку), используйте стандартный инструмент diff (например, diff -u orig.tex new.tex > docdiffs). Это лучший способ аннотировать что-то вроде документов LaTeX, и его может легко использовать любой, кто участвует в создании документа из источников LaTeX. Затем вы можете использовать стандартные комментарии LaTeX в своем патче, чтобы объяснить изменения, и они могут быть очень легко интегрированы. Если документ находится в какой-либо системе контроля версий, просто используйте VCS для создания файла исправления, который можно просмотреть.

person Michael Trausch    schedule 05.03.2009
comment
К сожалению, это не сработает. Для меня, как программиста, не проблема запустить программу из командной строки, что-то сделать и проверить. Но другим редакторам моей книги будет очень сложно избавиться от привычного удобства Word и начать взлом командной строки. - person Mouk; 06.03.2009
comment
Вы всегда можете включить набор сценариев оболочки и командных файлов, которые автоматизируют это для них ... - person Michael Trausch; 06.03.2009
comment
latexdiff создает хорошо визуализированный diff. См., Например, . - person Davidmh; 13.10.2015

Я использовал changes.sty, который дает базовую окраску изменений:

\added{new text}
\deleted{old text}
\replaced{new text}{old text}

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

\replaced[MI]{new text}{old text}

Вы можете скрыть отметки изменений, задав параметр final пакету changes.

Это очень просто, и комментарии не поддерживаются, но это может помочь.

person Svante    schedule 05.03.2009
comment
Хорошая упаковка, я забыл о ней. Он поддерживает комментарии в источнике через второй необязательный аргумент этих команд. Я подозреваю, что они попадают в \ listofcomments. - person Will Robertson; 06.03.2009
comment
Хотя это не совсем то, что я искал, я обязательно буду использовать этот пакет. Очень хорошо. - person Mouk; 06.03.2009

Мой маленький самодельный инструмент "fixme" использует \marginpar там, где это возможно, и встраивается в места (например, подписи), где это трудно расположить. Это работает, потому что я не часто использую абзацы на полях для других целей. Это действительно означает, что вы не можете завершить макет, пока все не будет исправлено, но я не чувствую особой боли от этого ...

В остальном я полностью согласен с Майклом об использовании стандартные инструменты и контроль версий.

Смотрите также:

и саморазъем:

person dmckee --- ex-moderator kitten    schedule 05.03.2009
comment
@ J.F .: Почему? Вообще убейте практику редактирования прилагательных? Или что-то более конкретное? - person dmckee --- ex-moderator kitten; 05.03.2009
comment
Подожди ... это была шутка, посвященная самим себе?!? Если так, то это очень смешно, а я не тороплюсь ... - person dmckee --- ex-moderator kitten; 05.03.2009

Вы также можете попробовать пакет trackchanges.

person cbrnr    schedule 19.01.2012

Вы можете использовать пакет changebar, чтобы выделить затронутые области текста.

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

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

person Will Robertson    schedule 05.03.2009
comment
latexdiff отлично работает с большими документами: я использовал его с несколькими клиентами, и это не было проблемой. Он падает с документами mutlipart - в старые добрые времена я конвертировал их в один файл, чтобы заставить latexdiff работать. Вся проблема заключалась в том, что он вставляет директивы \ usepackage в преамбулу, заставляя латекс падать - и поэтому новый пакет texdiff решает проблему, оставляя включения пакетов и определения макросов пользователю. - person Charles Stewart; 17.05.2010

Пакет todonotes выглядит великолепно, но если он окажется слишком громоздким в использовании, простое решение - просто использовать сноски (например, выделенные красным, чтобы отделить их от обычных сносок).

person Nagel    schedule 09.02.2012

Пакет trackchanges.sty работает точно так же, как changes.sty. См. Ответ @Svante. В нем легко запоминаться команды, и вы можете изменить способ отображения правок после компиляции документа. Вы также можете скрыть правки для печати.

person XtrimA    schedule 11.03.2014

Лучший из известных мне пакетов - Easy Review, обеспечивающий возможность комментирования в среде LaTeX. Например, вы можете использовать следующие простые команды, такие как \add{NEW TEXT}, \remove{OLD TEXT}, \replace{OLD TEXT}{NEW TEXT}, \comment{TEXT}{COMMENT}, \highlight{TEXT} и \alert{TEXT}.

Некоторые примеры можно найти здесь .

person Borhan Kazimipour    schedule 05.02.2018