read text Read Text

Tags: Calc Draw Extensions Impress Writer

last edited: 2023-05-30


The Read Text Extension lets an external program or web application read text from LibreOffice Writer, Calc, Draw, Impress, Web Writer or the system clipboard.

Default64 en


The Read Text Extension lets an external program or web application read text from Writer, Calc, Draw, Impress, Web Writer or the system clipboard. If you use it to read text aloud, it can help you to edit your writing or to compare your document's text with a printed document. If you use it with a web application, you can translate your text to another language or check punctuation and grammar. It can help you to learn a new language or to find out how to say words you do not know.

To use it, highlight some text. If you are using the word processor or the HTML editor, you can highlight several selections by holding down the Control key. When you have highlighted some text, select Tools - Add-Ons - Read Selection or click the Read Selection button on the tool bar.

To read the system clipboard, select Tools → Add-Ons → Read clipboard.

If you can't read the screen easily, consider a system-wide accessibility solution for Apple OSX, Gnome, KDE or Microsoft Windows. If you have installed a system-wide accessibility solution, and it is activated, then you might not need this Add-On to read text aloud. You can use the Read Text Extension to read using a different language or voice, to save speech as an audio file, or send the text to a web application.

The add-on uses temporary files to send information to external programs. Depending on the security set up of your computer, other users or programs might be able to read the contents of files that the the extension or other external programs produce. If you are concerned about privacy, launch this add-on again with no text selected to replace the temporary file that contains the text you want to remain confidential. The paths and names of any temporary files directly created by the extension are shown in the Command and Script areas of the About... dialog.




Release List

  • Release Description Compatibility Operating Systems License Release notes  
  • 0.8.66 Support python3 pipx and additional libraries; Mimic3 server and Coqui AI serverLinux support 5.4 Linux, Windows, macOS LGPL


    • Bug fixes
    • Updated lexicons


    • Support for pipx (python pip using a virtual environment manager)
    • Better support for user installed pip3 libraries


    • Support for pipx (python pip using a virtual environment manager). The pipxlibrary allows you to install and run python applications in isolated environments. The pipx program replaces pip3 in Debian 12 and its derivatives.
    • Support for developer-oriented speech servers – Mycroft Mimic3 and CoquiAI TTS.
    • You can tell if the speech server is installed correctly if you can open a sample speech synthesis page in your web browser.
    • Use either server using an option that includes the string "(NETWORK_READ_TEXT_PY)" --language "(SELECTION_LANGUAGE_COUNTRY_CODE)" "(TMP)" in the Read Text Extension main dialog.
    • You can install spacy with pipx to reduce latency when using a local speech server with a long text selection. The spacy python library can intelligently split up long text selections into sentences.

    Mycroft Mimic3

    Mimic3 is a fast local neural text to speech engine for amd64, arm64 and armv7l processors. It’s available as an apt package for Debian or as a image.

    • The documentation tells how to set up a Mimic3 server using the Debian deb package manager or a application.
    • To test it out, use mimic3-server
    • Once installed you can test the server and install voice models by using a web browser to open a local webpage.
    • If you use the Read Text Extension dialog as described above, then the extension will try using mimic3-server first.
    • If you prefer normally the system’s speech-dispatcher voice as your main speech manager and Mimic for a secondary language, then use "(SPD_READ_TEXT_PY)" --language "(SELECTION_LANGUAGE_COUNTRY_CODE)" --voice "AUTO" "(TMP)" in the main menu. The "AUTO" voice name enables using the local mimic3-serverfor languages that the system’s speech-dispatcher does not support directly.
    • The instructions for Mimic3 describe how to set up speech-dispatcher to use mimic3 by default. In this case, you can omit the AUTO voice (i. e.: "(SPD_READ_TEXT_PY)" --language "(SELECTION_LANGUAGE_COUNTRY_CODE)" "(TMP)")

    Read Mimic3 documentation and requirements for more details.

    CoquiAI TTS

    CoquiAI TTS engine is a deep learning toolkit for Text-to-Speech, mainly intended for use in research and production services. It includes a tool called tts-server that uses a local http service to allow web browsers and other programs that can connect to a local http server to convert text to speech. With the Read Text Extension network client you can check how new TTS models work with real world text. See tts-server --help

    A server instance only serves one model at a time, but you can specify the language by selecting a model that includes the iso language code for the language in the model name. See tts-server --list_models

    If you do not specify a model, then the server uses a female en-US model by default.

    Example server commands

    • Default tts-server
    • English tts-server --model_name tts_models/en/vctk/vits
    • French tts-server --model_name tts_models/fr/css10/vits

    Check the documentation for specific hardware and software requirements. Some voice models require system files that are not explicitly stated in the documentation. Best practice is to use TTS python libraries in a virtual environment by installing TTS using venv, pipx or tools. You can use the web page interface to test if the server works and if there are any problems with a particular voice model. If a model does not work at all, run the tts-server program in a command window and note any error messages that mention missing libraries or system packages.

    Read Text Extension's python TTS client uses a few additional system packages - python3-bs4, python3-pip, pipx and espeak-ng. On supported Ubuntu distributions you can use:

    sudo apt-get install python3-bs4 python3-pip pipx espeak-ng

    To troubleshoot the server and the client, you can see information and error messages when you run the server and office program using separate terminal windows.

    • Server tts-server --model_name tts_models/en/vctk/vits
    • Client /usr/bin/libreoffice

    Enable TTS server in the office program using the main Read Text Extension dialog with


    If you prefer normally the system’s speech-dispatcher voice as your main speech manager and tts-server for an unsupported secondary language, then use


    Read CoquiAI TTS Documents and CoquiAI GitHub pages for more details about the CoquiAI project and tts-server.

  • 0.8.64 Bug fixes; Additional docker tools - MaryTTS & Rhvoice-rest; Pronunciation editor 5.4 Linux, Windows, macOS LGPL


    • Bug fixes
    • Additional docker tools - MaryTTS & Rhvoice-rest
    • Pronunciation editor

    How to edit localized pronunciation

    When you use this extension with a compatible app, you can replace incorrectly pronounced words and acronyms with a string that the system speech synthesizer can read correctly.

    "g":"Read Text Extension","p":"reed text extension"
    • Select a word that you want to change the pronunciation (i.e.: "Metis")
    • Select Tools - Add Ons... - Read Text Extension
    • Click About...
    • On MacOS Command + Click the Tools Icon, on other supported platforms, right-click the Tools Icon
    • In the Read with an external program (macos_say) field enter how you want to say the mispronounced word (i.e.: "[met-tea]")
    • Click Apply.
    • You can find an example of a lexicon table on GitHub
    • To download an online lexicon table, Command + Click or right click the Open button and verify the URL.


    • LibreOffice 7.5 allows you to download or create localized lexicons to specify how text to speech says local words or peoples' names.
    • On Windows, no speech is changed until you manually change the pronunciation of at least one word.


    • When using a supported release of MacOS, LibreOffice 7.5 allows you to download or create localized lexicons to specify how text to speech says local words or peoples' names.


    • Support additional docker text to speech programs including MaryTTS and Rhvoice-rest.
    • On supported platforms and releases, Apache OpenOffice and LibreOffice allow you to download or create localized lexicons to specify how text to speech says local words or peoples' names.
  • 0.8.62 Updates for MacOS 13.0.1 and Debian Linux 11.5 plus documentation updates and bug fixes 5.4 Linux, Windows LGPL


    Clicking multiple times quickly on the main button on a legacy Windows system will not cause the application to open the Basic editor with an error message because of a request to delete a lock file that no longer exists.


    • MacOS 13 (Ventura) includes many new multilingual voices. Now, if you use /usr/bin/python3 as the application in the main extension dialog, you can select different voice profiles like “male2” or “female1” that select a male or female profile for every language that has both male and female voices.
    • On MacOS, python checks if Fiona and Lee are actually installed before allowing them as a voice option. These two voices appear in the say -v '?' response, but they are not installed by default in all regions.


    Support the larynx-server speech synthesis platform.

    • Since the larynx-server Application Programming Interface (API) uses the http network protocol, supported snap and flatpak versions of office software that block speech-dispatcher can now use high quality speech synthesis with Read Text Extension.
    • The larynx package includes many high quality voices. You can manage languages and voices using a web browser pointed to a locally hosted web page.
    • Supported languages include Dutch, English, French, German, Italian, Russian, Spanish, Swedish and Swahili.
    • On Debian 11.5 compatible Linux platforms, you can use cinnamon-settings startup, gnome-tweaks or another similar application to set up larynx-server to automatically start up after 10-15 seconds when you log in. For testing purposes, you can also start the server by entering the larynx-server command in a terminal window.
  • 0.8.60 Bug fixes and support. Supports more .wav to .mp3 converters. 5.4 Linux, Windows, macOS LGPL

    All Platforms

    Bug fixes and support. Supports more .wav to .mp3 converters.


    • Fix VLC exports. Omit Flac export – sometimes created a file with length of zero. Do not ask for metadata with VLC because VLC does not include metadata.
    • Python update includes a command for Windows Media Player to play mp3 files.


    • MacOS Monterey 12.6 uses python 3.9.6, so the release includes a compatibility update.


    • Improved audio file export support for lame. Versions of LibreOffice released as appImages require ffmpeg or lame to be able to export .mp3 files. This release supports lame in addition to ffmpeg. If you install one of these programs, the main menu includes an option to include a poster image with the .mp3 audio file.
    • Playback on Linux. Resolves Debian Linux GitHub Issue 21. When using plain single and double quotes with pico2wav or speech-dispatcher, the speaker would pronounce the character coding for the characters on some systems. This update resolves this issue.


  • 0.8.58 Bug fixes and performance improvements. 5.4 Linux, Windows, macOS LGPL

    Bug fixes and performance improvements. Works on legacy i386 32 bit systems.



  • 0.8.56 Bug fixes for LibreOffice 7.3. Feature update for Ubuntu Linux 22.04 LTS. 3.3 Linux, Windows, macOS LGPL

    This release includes bug fixes for LibreOffice and current language frameworks for Ubuntu Linux and Fedora Linux.

    All Platforms

    • GitHub Issue 19 March 30, 2022 is resolved. LibreOffice does not display a dialog saying “Argument not optional” and stop.
    • Copyright information for on-line service providers is included.
    • Ribbon Enabled - The extension can display buttons on the LibreOffice ribbon toolbar. Before you select View – User Interface… – Ribbon, note that if you choose to use the ribbon, you will have to perform two clicks to read text aloud; one to select the Extensions tab and one to click the Read Selection… button.


    • You can add the ability to create compact audio files without personal metadata if you install the desktop version of VideoLan VLC. The Windows Store version of Apple iTunes also works now, but the files it creates are larger because they include metadata information and an image.


    • You can add the ability to create compact audio files in open formats like ogg and opus without personal metadata if you install the desktop version of VideoLan VLC.
    • File export works in both legacy and current versions of MacOS.


    • Both Fedora and Ubuntu can read text aloud when using a current Try Ubuntu or Try Fedora USB stick or DVD.
    • If you download an AppImage of LibreOffice to try out a different version, then you can probably use most functions of the extension, depending on the exact version of LibreOfficeyou install. It’s been verified with LibreOffice
    • The python script for Festival now lets you use Flite as an alternative to a full installation of Festival for a compact low latency English voice.
    • If you have installed the necessary packages, the extension can play jtalk voices in Japanese.
    • When you create a media file, a Fedora or Ubuntu Gnome desktop pops up an information message when the program finishes creating the file.
  • 0.8.52 Update web links and code for MacOS 11 6.0 Linux, Windows, macOS GPL

    * Works on MacOS Big Sur
    * Updated sample web links

  • 0.8.44 Bug fixes for LibreOffice 6.0 Linux, Windows, macOS GPL

    Bug fixes for LibreOffice

    • Remove VLC from list of compatible players and convertors for Linux because the functions that the extension depended on no longer work.
    • Improve readability of code and correct syntax errors.
  • 0.8.42 Simplify the settings dialogue for LibreOffice 6.2 4.4 Linux, Windows, macOS GPL
    • LibreOffice 6.2.3 for Windows, MacOS and Linux does not allow the extension script to restore the last displayed option for the dialogue; therefore the dialogue always defaults to the first available option.
    • By disabling the festival option if the festival program is not installed, the dialogue defaults to External Program, the most commonly used option on Windows and MacOS.
    • Windows and MacOS commonly can use multilingual system voices, therefore you do not need Festival unless you require a voice for a region that are not available in the system voices catalogue
    • The scripts for setting up the dialogue use with notation to make the code more readable.
    • The main dialog uses a compatible group tag for the option radio button and uses a tab order that groups the radio buttons together.
  • 0.8.40 AppImage support, updated documentation, bug fixes and performance improvements. 4.4 Linux, Windows, macOS GPL
    • Make compatible with the AppImage format (AppImage is a format for distributing portable software on Linux without needing superuser permissions to install the application.)
    • Update help, links and comments.
    • Bug fixes and performance improvements.


  • 0.8.38 Main tool bar icon resized for LibreOffice 6; Ubuntu 18.04 speech synthesis compatibility. 4.4 Linux, Windows, macOS GPL

    Bug fixes and appearance improvements.

    • Redesign the toolbar icon for better appearance when using LibreOffice 6 for Windows.
    • Make speech scripts compatible with Ubuntu 18.04 LTS Bionic Beaver.
    • When reading XML code aloud on Linux speech platforms, read the text without the XML tags and attributes.
    • Update the release version string.

    Change log

  • 0.8.36 Improved multilingual support on Windows 10 4.4 Linux, Windows, macOS GPL

    Improved multilingual support on Windows 10.

    Update tts_wscript.vbs for Windows Speech API (SAPI 5) - selecting XM…

  • 0.8.34 Bug fix 4.4 Linux, Windows, macOS GPL

    Bug fix

    Incorrect StarBASIC syntax: missing closing parenthesis

    With a recent changes in LibreOffice StarBasic parser, it now doesn't silently accept a missing closing parenthesis anymore (as it did before).

    This release adds missing closing parenthesis.

  • 0.8.32 Update links; fix support for Gstreamer sound playing in Linux. 4.2 Linux, Windows, macOS GPL

     Update links; fix support for Gstreamer sound playing in Linux.

  • 0.8.32 Update links; fix support for Gstreamer sound playing in Linux. 4.2 Linux, Windows, macOS GPL

     Update links; fix support for Gstreamer sound playing in Linux.


Other Extensions

Read Text

The Read Text Extension lets an external program or web application read text from LibreOffice Writer, Calc, Draw, Impress, Web Writer or the system clipboard.




Post your review

You cannot post reviews until you have logged in. Login Here.


  • mike glass Feb 23, 2023, 12:16 AM (3 months ago)

    It's a great program. It works through my Asus laptop speakers but **it won't work with headphones** either plugged in or Bluetooth. I tried it on my other laptop and it works fine. I thought it worked before on this one. Windows 10 Libreoffice 7.5. I have tried everything I can think of including reinstalling an older version of Libreoffice with no luck. Headphones work fine with other programs. Any thoughts?

    • James Holgate Mar 17, 2023, 4:28 PM (3 months ago)

      This might help, or it might not. Some laptops come with an audio enhancement app that allows you to set custom audio profiles for different sources, music styles and/or different outputs. You could look for a program with something like "SRS" or "Dolby" in the title to check the settings for headphones. You could also check the Device Manager to see if a different sound card driver solves your problem. Lastly, if the problem started when you updated the application, try using the 32 bit version if you are using the 64 bit version, or vice-versa to see if that helps.

  • Robert Ferraro Dec 7, 2022, 7:58 AM (6 months ago)

    I find this to be an excellent extension and serves me perfectly. A pause feature would be awesome!!

    • James Holgate Mar 17, 2023, 4:59 PM (3 months ago)

      Thank you for your feedback!

      On some platforms, you can get the sound to play in a media player with a command line flag. For example, with Windows 10, use the `visible:"true"` flag...

      `"(TTS_WSCRIPT_VBS)" /visible:"true" /language:"(SELECTION_LANGUAGE_COUNTRY_CODE)" "(TMP)"`

      Once the sound file opens with the media player, you can pause, rewind, repeat and stop as you like.

      The information in the "About" dialog describes the available options for particular speech tools.

  • joseph Nov 1, 2022, 7:20 AM (7 months ago)

    Please check what the speaker pronounces.
    Pronouncing the character coding.
    Example, check five (5) characters:
    ( ) ' " &
    with Kubuntu 22.10 (Kinetic Kudu)
    with Libreoffice version and
    pico -V
    GNU nano, version 6.4
    read_text_2022.10.02_06.03.oxt 471.4 KiB (482,748 bytes)


    • James Holgate Mar 17, 2023, 4:39 PM (3 months ago)

      I can't reproduce the problem on Ubuntu 22.04, Fedora 37 or Debian 11. An application in your system appears to interpret XML incorrectly. Try updating your system and revising the extension to the newest version. If you are using a legacy system speech application, you might have better luck using a docker container like MaryTTS.

  • joseph Sep 18, 2022, 6:59 AM (9 months ago)

    read_text pronounces characters that ought not be spoken.
    Please fix readtext version 0.8.58

    In the very least, silence the following 7 characters:
    ( ) ' " | & _
    Because readtext version 0.8.58 says:
    ( as end-ash-40
    ) as end-ash-41
    & as end-ash-38

    read_text version 0.8.58 is installed:
    469.6 KiB (480,834) bytes
    and running on:
    LibreOffice version
    Operating System: Kubuntu 22.04.1

    Please fix readtext version 0.8.58

  • David Katz Apr 13, 2022, 4:56 AM (14 months ago)

    0.8.52 does not work with
    Basic Runtime error. Line 4191

    • James Holgate Mar 17, 2023, 4:40 PM (3 months ago)

      Thanks for the information. I think it is fixed with the current extension and the current version of LibreOffice.

  • L Duperval Mar 16, 2022, 8:47 PM (15 months ago)

    It works well except that I can't find a reliable way for it to use the language code of a paragraph to determine which voice to use.

    If someone can provide that information, I can give this a 5-star rating!

  • David Casey Nov 9, 2021, 2:33 AM (19 months ago)

    Loved this extension, but it seems to be broken with the new LO 7. Hoping this gets fixed sometime soon.

  • Scott Ishiyama Oct 21, 2021, 10:54 PM (20 months ago)

    Works great in MacOSX Mojave. Simple to install and uses the built-in Speech settings from the Accessibility preferences pane in MacOS.

    It works so well that I created an account here just to leave this review.

  • Gab Jun 7, 2021, 4:57 PM (24 months ago)

    Thank you it's perfect !
    Can you just add <node oor:name="OfficeNotebookBar"> to the code so I can see the extension in the tab mode ?

  • Kiwi Jan 8, 2021, 9:02 AM (2 years ago)

    This extension worked very well on on Windows using the Microsoft TTS engine and Microsoft David voice.

    This is a vital adaptation for universal access for some people with learning disabilities that isn't included in most office suites by default. It's great that it can be added on. Thanks very much to the author for building it.

RSS feed for reviews on this page | RSS feed for all reviews