Bug report #15330
Two vector menus in German locale
| Status: | Closed | ||
|---|---|---|---|
| Priority: | High | ||
| Assignee: | |||
| Category: | Translations and international | ||
| Affected QGIS version: | 2.16.0 | Regression?: | No |
| Operating System: | Easy fix?: | No | |
| Pull Request or Patch supplied: | No | Resolution: | |
| Crashes QGIS or corrupts data: | No | Copied to github as #: | 23262 |
Description
Using my German locale, I now have two vector menus. The first one only with entries from plugins, and the second one right to the Help menu, with the ex-ftools, now processing functions.
Tested on Windows standalone: Overriding the locale with US English, the second menu remains in German. I have installed older standalone versions and OSGEO4W, if that might interfere.
Tested on Ubuntu: Overriding the locale removes the second vector menu, adding all entries to the first.
Tested on Linux Mint: Same as Ubuntu. The first Vector menu has shortcut V, while the second and US locale has shortcut o.
Removing the .qgis2 folder did not help.
History
#1
Updated by Klas Karlsson almost 10 years ago
Tested in Swedish, Finnish, Russian... All have the same issue. The "Vector" menu will be added if the localized menu is spelled differently.
(Tested in 2.16.2)
#2
Updated by Klas Karlsson almost 10 years ago
... and for example "Nederlands" that spell it "Vector" has only one vector menu.
Turning off the "Processing" plug-in and restarting QGIS will remove the "non-localized" vector menu.
Activating the Processing Plug-In will also create the "Processing" menu, which is correctly localized...
This leads me to suspect it is the Processing Plug-in that needs to be updated somehow. It doesn't help changing "core/processing/menus.py" (which looks correct anyway) and that ends my "script-fu" knowledge on the subject.
#3
Updated by Klas Karlsson almost 10 years ago
- Status changed from Open to Closed
Found a "solution" in #14535
Just open the Python console and type in what is described.
The source of the problem is a fTools update and it is known so I will close this thread. Feel free to re-open it if the solution does not work.
From the linked issue above: (don't forget to indent your for loops...)
from processing.core.alglist import algList
from processing.gui.menus import defaultMenuEntries
from processing.core.ProcessingConfig import ProcessingConfig
for provider in algList.providers:
for alg in provider.algs:
default = defaultMenuEntries.get(alg.commandLineName(), "")
ProcessingConfig.setSettingValue("MENU_" + alg.commandLineName(), default)
and restart QGIS
#4
Updated by Klas Karlsson almost 10 years ago
Ooops..
The "Italic" formatting removed a vital part of the code...
It should say: "MENU_" with an underscore on the last row of code.