Утилита не все файлы обрабатывает корректно! Используйте: https://github.com/Sa6a/docx4llm
DocxNumConvert — это утилита командной строки для обработки файлов .docx. Её основная задача — преобразовать автоматические нумерованные и маркированные списки в документе Word в обычный текст с сохранением форматирования нумерации/маркировки. Дополнительно утилита позволяет конвертировать обработанный .docx файл в различные другие форматы с помощью Pandoc.
Это может быть полезно для дальнейшей обработки документа в системах, которые плохо поддерживают сложные автоматические списки Word, или для упрощения структуры документа перед конвертацией.
- Очистка нумерации: Удаляет автоматические списки из
.docx, вставляя их номера/маркеры как обычный текст. - Конвертация форматов (опционально): Позволяет конвертировать обработанный
.docxфайл в популярные форматы, такие как Markdown, HTML, PDF (требуется LaTeX) и другие, используя Pandoc. - Отслеживание изменений: При конвертации можно указать, как обрабатывать отслеживаемые изменения в документе (принять, отклонить или сохранить все).
- Кросс-платформенность: Скомпилированные исполняемые файлы доступны для Windows, macOS и Linux.
- Простота использования: Интерактивный режим командной строки для указания файлов и опций.
- Для основной функции (очистка нумерации): Никаких дополнительных зависимостей, кроме самой утилиты.
- Для функции конвертации форматов: Pandoc должен быть установлен и доступен в системной переменной
PATH. Для конвертации в PDF также обычно требуется установленный дистрибутив LaTeX (например, MiKTeX для Windows, MacTeX для macOS, TeX Live для Linux).
- Перейдите на страницу Релизы.
- Скачайте архив с исполняемым файлом для вашей операционной системы.
- Распакуйте архив.
- (Опционально) Добавьте путь к исполняемому файлу в системную переменную
PATHдля удобного вызова из любой директории или просто запускайте его, указывая полный путь. - (Опционально) Установите [Pandoc] (https://pandoc.org/installing.html).
Запустите утилиту из командной строки:
./DocxNumConvert
# (или DocxNumConvert.exe для Windows)Утилита задаст вам несколько вопросов:
- Путь к входному
.docxфайлу: Укажите полный путь к файлу, который нужно обработать. - Конвертация в другой формат: Ответьте "да" или "нет".
- Если "да" на предыдущий вопрос:
- Желаемый формат вывода: (например,
markdown,gfm,html,pdf). - Режим отслеживания изменений: (
all,accept,rejectили Enter дляall).
- Желаемый формат вывода: (например,
Обработанный .docx файл будет сохранен в той же директории, что и исходный, с суффиксом _numbered (например, mydocument_numbered.docx).
Если выбрана конвертация, сконвертированный файл также будет сохранен в той же директории.
$ ./DocxNumConvert
--- Обработчик нумерации DOCX ---
Введите полный путь к DOCX файлу для обработки: /path/to/mydocument.docx
Файл будет обработан и сохранен как: /path/to/mydocument_numbered.docx
Начинаю обработку файла: /path/to/mydocument.docx...
Файл '/path/to/mydocument.docx' успешно обработан и сохранен как '/path/to/mydocument_numbered.docx'
Хотите сконвертировать обработанный DOCX файл в другой формат? (да/нет): да
Доступные форматы для конвертации (некоторые могут требовать доп. ПО, например, LaTeX для PDF):
- markdown (рекомендуется)
- gfm (GitHub Flavored Markdown)
- html
- pdf
- commonmark
Или введите любой другой формат, поддерживаемый Pandoc.
Введите желаемый формат вывода: markdown
Режим отслеживания изменений при конвертации:
- all (сохранить все изменения)
- accept (принять все изменения)
- reject (отклонить все изменения)
Введите режим отслеживания изменений (или Enter для 'all'):
Начинаю конвертацию файла '/path/to/mydocument_numbered.docx' в формат 'markdown'...
Файл успешно сконвертирован и сохранен как: /path/to/mydocument_numbered.md
Завершение работы.- Установите Go.
- Клонируйте репозиторий:
git clone https://github.com/Sa6a/DocxNumConvert.git cd DocxNumConvert - Установите зависимости:
go get
- Соберите проект:
go build -o DocxNumConvert .
Если вы нашли ошибку или у вас есть предложение по улучшению, пожалуйста, создайте Issue в этом репозитории.
Этот проект распространяется под лицензией MIT License.