Я много работаю с LibreOffice Writer.
Я хотел знать, есть ли способ редактировать текст через терминал?
libreoffice
поставляется с опцией для преобразования файла odt
в обычный текст, который затем можно отредактировать с помощью предпочитаемого вами текстового редактора командной строки и (при желании) преобразовать обратно в odt
.
Преобразование document.odt
:
libreoffice --convert-to txt document.odt
Отредактируйте файл в предпочитаемом вами текстовом редакторе, например:
gedit document.txt
nano document.txt
vim document.txt
Конвертируйте обратно. --convert-to
принимает расширение имени файла в качестве аргумента, но вы также можете указать суффикс имени файла, чтобы предотвратить libreoffice
перезапись исходного файла (что он делает без запроса!):
libreoffice --convert-to _new.odt document.txt
Для преобразования есть также odt2txt
, я просто попробую оба и сравню результаты.
Если вы используете vim
, вы можете настроить его для автоматического выполнения преобразования в фоновом режиме, см. Можно ли легко работать с .odt, .doc, .docx, .rtf, и другие не-текстовые форматы в Vim? Ответ там использует odt2txt
для преобразования, но это должно быть возможно и с libreoffice --convert-to
.
Самая близкая вещь к тому, что вы ищете, это wordgrinder
, текстовый процессор на основе терминала.
Вы можете установить его, выполнив:
sudo apt install wordgrinder
Вот официальный сайт проекта: https://cowlark.com/wordgrinder/
This такое репозиторий Github: https://github.com/davidgiven/wordgrinder
И краткое руководство по выживанию: https://gist.github.com/davidgiven/1aba97e96a9b8f9b573b
Если вы посмотрите разделы «Импорт и экспорт», вы найдете:
Импортирует основной контент из файлов ODT. OpenDocument сложен и труден для анализа, но WordGrinder приложит все усилия, чтобы применить соответствующие стили. Неподдерживаемые функции игнорируются.
Это создает файл ODT, который может быть прочитан LibreOffice и множеством других основных текстовых процессоров. Стили символов и абзацев экспортируются и отображаются в стили OpenDocument, называемые P, H1, H2 и т. Д.