Delete entries for auto replace (auto formatting) don't work

LO , Win7-64

In the Auto Correct Options I have deleted the rows for the automatic replacement of some elements, as the “->” replaced with arrow “→”
The row is deleted, it exists no more, but LO continues to replace the typed text anyway!

I have tried the following:

  • Changed the font type
  • Delete the same and other entries also for other languages
  • Create a new user profile and test it again

Nothing changes. Is it a bug?
I have checked in the profile the file with the data of the autocorrection “acor_de-DE.dat” (or for the other tested languages). Looking at the date of modify, it has been modified at the time when I deleted the entries. Then why do the deleted entries still work?

Have you checked you modified the “right” table? LO comes with at least two languages: the one you downloaded for your own locale and en_US. When in AutoCorrect options, you select the language from a dropdown menu. You may also not have the correct language context in your text. What happens if you force Tools>Language>For all text>… before typing? Check also Tools>Options>LibreOffice>Paths to see the order of directories in case of several entries (one may override another).

I agree with OP - I can reproduce with a slight addition. Within DE installation “–>” (two “minus” chars) get replaced by arrow “→” . If you delete this substitution you get a replacement “->” (one “minus” char) with arrow “→”. This means also, that the deleted entry does in fact no longer work but on “–>” you will get a “-→” (one minus char + one arrow). For sure that’s not satisfying, because you don’t care about another mechanism now creating the arrow “→”.
I have also checked the xml File in acor_de-DE.dat (which in fact is a ZIP file and the content can be extracted by any zip tools) and found the substution is really gone and no longer in.

The “acor_xx.dat” files which I have checked are the path shown in “Tools>Options>LibreOffice>Paths”
I have unzipped it (thank you for the hint!) and in the file DocumentList.xml the entries for → and → are not present.

But in the file “BlockList.xml” there is:
<block-list:block block-list:unformatted-text=“false” block-list:name="–>" block-list:package-name="+AC0ALQA±" block-list:abbreviated-name="–>"/>

<block-list:block block-list:unformatted-text=“false” block-list:name="->" block-list:package-name="+AC0APg-" block-list:abbreviated-name="->"/>

Maybe should it be set to “true”?

Or it looks like that LO writes into the correct .dat filIe, but when typing text is reading from somewhere else.
I have attached the .dat file here, if someone can look inside of it.

I have tried to change the language also in "Tools>Language>For all text " but it still occurs.

In my documents I use normally 3 languages, also in the same document, (English, German, Italian).

In the AutoCorrect options, I have deleted some entries for the auto replacement for all these 3 languages, but they are not overtaken for any of them. It doesn’t happen only for the “->” to “→”, but any entry which I delete. I have deleted also “–>” to “→” As you see they are still working:)

Check this bug report

Bug 96787 - AutoCorrect: After Removal of Replacement Entry the Replacement Itself is still Performed.

Thank you, it is actually this bug. I have added a comment in bugzilla.

A bug for this is already open (Bug 96787, see answer of the member RGB-es):

I have found a workaround, hoping that it will be fixed:

  1. In the Autocorrection options delete the entries which you don’t need, in the auto replacement list.

  2. Close LibreOffice

  3. Open the program path of LO:
    “C:\Program Files\LibreOffice\share\autocorr” (in Windows7)

Simply rename the acor_xx.dat file related to the language of which you have applied the changes, so that LO can’t recognize the file.

  1. Open Libreoffice and select the language you have changed for. Now the changed auto replacement list should be applied.

In the step 1) LO should have created a new autocr. dat file in your profile location and now it uses it: