Как редактировать файл.odt из терминала?

Я много работаю с LibreOffice Writer.

Я хотел знать, есть ли способ редактировать текст через терминал?

2 ответа

Решение

libreoffice поставляется с возможностью конвертировать odt файл в обычный текст, который затем можно отредактировать с помощью предпочитаемого вами текстового редактора командной строки и (при желании) преобразовать обратно в odt,

  1. Перерабатывать document.odt:

    libreoffice --convert-to txt document.odt
    
  2. Отредактируйте файл в предпочитаемом вами текстовом редакторе, например:

    gedit document.txt
    nano document.txt
    vim document.txt
    
  3. Преобразуйте это обратно. --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/

Это репозиторий Github: https://github.com/davidgiven/wordgrinder

И краткое руководство по выживанию: https://gist.github.com/davidgiven/1aba97e96a9b8f9b573b

Если вы проверите разделы "Импорт и экспорт", вы найдете:

Импорт

Импортирует основной контент из файлов ODT. OpenDocument сложен и труден для анализа, но WordGrinder приложит все усилия, чтобы применить соответствующие стили. Неподдерживаемые функции игнорируются.

Экспорт

Это создает ODT-файл, который может быть прочитан LibreOffice и рядом других основных текстовых процессоров. Стили символов и абзацев экспортируются и сопоставляются со стилями OpenDocument, которые называются P, H1, H2 и т. Д.

Другие вопросы по тегам