Рейтинг:2

Как передать разницу между двумя разными форматами файлов?

флаг pe

Мне часто удобно редактировать документ в одном формате файла, сохраняя его в другом формате. Например, документ можно записать в markdown, преобразовать в файл word и там отредактировать. И я надеюсь извлечь изменения и применить их обратно к исходному файлу уценки.

Итак, я бы A.md, конвертировано в A.docx (например, с помощью пандок), отредактировано на B.docx, и каким-то образом применить набор изменений между A.docx и B.docx к A.md.

Мой вопрос:

Есть ли надежный/автоматический способ переноса правок в слове (текстовых правок) обратно в текстовые файлы?

Конечно, я могу просто преобразовать B.docx вернуться к уценке Б.мд и перезаписать A.md с Б.мд. Но процесс преобразования часто вносит необратимые изменения, так что петля A.md => A.docx => А2.мд будет производить другой А2.мд чем исходный файл уценки A.md. Некоторые эффекты будут добавлены/потеряны (из-за разных переводов строк, шрифтов, форматирования и т.д.). И хотелось бы избежать таких потерь, и сохранить конечный документ максимально приближенным к исходному файлу A.md насколько это возможно.

Можно ли было бы использовать разница/пластырь для выполнения следующих преобразований в сценариях bash:

  1. A.md => A.docx => А2.мд

  2. A.docx => (редактирует) B.docx

  3. B.docx => Б.мд

  4. diff B.md A2.md как-то получить портативный пластырь

  5. применить патч-файл на A.md (вместо А2.мд)

У меня ограниченный опыт использования git diff, но не так много при непосредственном использовании разница/патч. И мне было интересно, может ли кто-нибудь помочь объяснить последовательность команд, необходимую для такой «передачи» различий.

pLumo avatar
флаг in
Почему бы вам не редактировать `A.md` напрямую? Существуют [доступные редакторы уценки] (https://askubuntu.com/questions/1189934/is-there-a-markdown-rich-text-editor).
tinlyx avatar
флаг pe
@pLumo `Почему бы вам не редактировать A.md напрямую?`. Я работаю с другими, которые могут использовать другой формат файла/редактор.
pLumo avatar
флаг in
Вы должны согласиться с другими для одного формата файла ;-) Я думаю, что это невозможно, что вы хотите.
tinlyx avatar
флаг pe
@pLumo Да, в идеальном мире.
pLumo avatar
флаг in
Или используйте онлайн-редактор, где вы можете работать вместе.
N0rbert avatar
флаг zw
Звучит и выглядит слишком сложно. В качестве альтернативы см. https://askubuntu.com/a/1365833/66509 для рабочего процесса RMarkdown + bookdown. Он отлично работает с Git и простыми файлами RMarkdown.
Рейтинг:0
флаг ng

Синтаксис bash для того, что вы спрашиваете (шаги 4,5):

diff B.md A2.md > patch.data 
патч A.md patch.data

Я думаю, что у вас могут быть файлы в обратном порядке в разница? И имейте в виду пластырь перезаписывает A.md, поэтому сделайте копию, если вам нужен оригинал.

В любом случае, я сомневаюсь, что вы добьетесь успеха с этим подходом.

На мой взгляд, редактор Word вносит слишком много недетерминизма, чтобы любое автоматическое преобразование можно было считать «надежным». Даже если у вас заработает скрипт, вам может понадобиться восстанавливать его при каждом обновлении вашего редактора Word.

Ответить или комментировать

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