[GRASS-SVN] r74307 - in grass/trunk: doc/gui/wxpython/example gui/wxpython gui/wxpython/animation gui/wxpython/core gui/wxpython/datacatalog gui/wxpython/dbmgr gui/wxpython/gcp gui/wxpython/gmodeler gui/wxpython/gui_core gui/wxpython/iclass gui/wxpython/icons gui/wxpython/image2target gui/wxpython/lmgr gui/wxpython/location_wizard gui/wxpython/mapdisp gui/wxpython/mapswipe gui/wxpython/mapwin gui/wxpython/modules gui/wxpython/nviz gui/wxpython/photo2image gui/wxpython/psmap gui/wxpython/rdigit gui/wxpython/rlisetup gui/wxpython/startup gui/wxpython/timeline gui/wxpython/tplot gui/wxpython/vdigit gui/wxpython/vnet gui/wxpython/web_services gui/wxpython/wxplot lib/python lib/python/script lib/python/temporal scripts/d.correlate scripts/d.frame scripts/d.out.file scripts/d.polar scripts/d.rast.edit scripts/d.rast.leg scripts/d.redraw scripts/d.shade scripts/d.to.rast scripts/d.what.rast scripts/d.what.vect scripts/db.dropcolumn scripts/db.droptable scripts/db.in.ogr scripts/db.out.ogr scri pts/db.test scripts/db.univar scripts/g.extension scripts/g.extension.all scripts/g.manual scripts/g.search.modules scripts/i.colors.enhance scripts/i.image.mosaic scripts/i.in.spotvgt scripts/i.oif scripts/i.pansharpen scripts/i.spectral scripts/i.tasscap scripts/m.proj scripts/r.blend scripts/r.buffer.lowmem scripts/r.fillnulls scripts/r.grow scripts/r.import scripts/r.in.aster scripts/r.in.srtm scripts/r.in.wms scripts/r.mask scripts/r.pack scripts/r.plane scripts/r.reclass.area scripts/r.rgb scripts/r.shade scripts/r.tileset scripts/r.unpack scripts/r3.in.xyz scripts/v.build.all scripts/v.centroids scripts/v.db.addcolumn scripts/v.db.addtable scripts/v.db.dropcolumn scripts/v.db.droprow scripts/v.db.droptable scripts/v.db.join scripts/v.db.reconnect.all scripts/v.db.renamecolumn scripts/v.db.univar scripts/v.db.update scripts/v.dissolve scripts/v.import scripts/v.in.e00 scripts/v.in.geonames scripts/v.in.lines scripts/v.in.mapgen scripts/v.in.wfs scripts/v.pack scripts/v.rast.st ats scripts/v.report scripts/v.to.lines scripts/v.unpack scripts/v.what.strds

svn_grass at osgeo.org svn_grass at osgeo.org
Tue Mar 26 16:07:39 PDT 2019


Author: neteler
Date: 2019-03-26 16:07:39 -0700 (Tue, 26 Mar 2019)
New Revision: 74307

Modified:
   grass/trunk/doc/gui/wxpython/example/dialogs.py
   grass/trunk/doc/gui/wxpython/example/frame.py
   grass/trunk/doc/gui/wxpython/example/g.gui.example.py
   grass/trunk/gui/wxpython/animation/anim.py
   grass/trunk/gui/wxpython/animation/controller.py
   grass/trunk/gui/wxpython/animation/data.py
   grass/trunk/gui/wxpython/animation/dialogs.py
   grass/trunk/gui/wxpython/animation/frame.py
   grass/trunk/gui/wxpython/animation/g.gui.animation.py
   grass/trunk/gui/wxpython/animation/nviztask.py
   grass/trunk/gui/wxpython/animation/provider.py
   grass/trunk/gui/wxpython/animation/temporal_manager.py
   grass/trunk/gui/wxpython/animation/toolbars.py
   grass/trunk/gui/wxpython/animation/utils.py
   grass/trunk/gui/wxpython/core/gcmd.py
   grass/trunk/gui/wxpython/core/gconsole.py
   grass/trunk/gui/wxpython/core/giface.py
   grass/trunk/gui/wxpython/core/globalvar.py
   grass/trunk/gui/wxpython/core/menutree.py
   grass/trunk/gui/wxpython/core/render.py
   grass/trunk/gui/wxpython/core/settings.py
   grass/trunk/gui/wxpython/core/toolboxes.py
   grass/trunk/gui/wxpython/core/units.py
   grass/trunk/gui/wxpython/core/utils.py
   grass/trunk/gui/wxpython/core/workspace.py
   grass/trunk/gui/wxpython/core/ws.py
   grass/trunk/gui/wxpython/datacatalog/catalog.py
   grass/trunk/gui/wxpython/datacatalog/frame.py
   grass/trunk/gui/wxpython/datacatalog/toolbars.py
   grass/trunk/gui/wxpython/dbmgr/base.py
   grass/trunk/gui/wxpython/dbmgr/dialogs.py
   grass/trunk/gui/wxpython/dbmgr/g.gui.dbmgr.py
   grass/trunk/gui/wxpython/dbmgr/manager.py
   grass/trunk/gui/wxpython/dbmgr/sqlbuilder.py
   grass/trunk/gui/wxpython/dbmgr/vinfo.py
   grass/trunk/gui/wxpython/gcp/manager.py
   grass/trunk/gui/wxpython/gcp/mapdisplay.py
   grass/trunk/gui/wxpython/gcp/statusbar.py
   grass/trunk/gui/wxpython/gcp/toolbars.py
   grass/trunk/gui/wxpython/gis_set.py
   grass/trunk/gui/wxpython/gis_set_error.py
   grass/trunk/gui/wxpython/gmodeler/dialogs.py
   grass/trunk/gui/wxpython/gmodeler/frame.py
   grass/trunk/gui/wxpython/gmodeler/model.py
   grass/trunk/gui/wxpython/gmodeler/preferences.py
   grass/trunk/gui/wxpython/gmodeler/toolbars.py
   grass/trunk/gui/wxpython/gui_core/dialogs.py
   grass/trunk/gui/wxpython/gui_core/forms.py
   grass/trunk/gui/wxpython/gui_core/ghelp.py
   grass/trunk/gui/wxpython/gui_core/goutput.py
   grass/trunk/gui/wxpython/gui_core/gselect.py
   grass/trunk/gui/wxpython/gui_core/mapdisp.py
   grass/trunk/gui/wxpython/gui_core/menu.py
   grass/trunk/gui/wxpython/gui_core/preferences.py
   grass/trunk/gui/wxpython/gui_core/prompt.py
   grass/trunk/gui/wxpython/gui_core/pyedit.py
   grass/trunk/gui/wxpython/gui_core/pystc.py
   grass/trunk/gui/wxpython/gui_core/query.py
   grass/trunk/gui/wxpython/gui_core/simplelmgr.py
   grass/trunk/gui/wxpython/gui_core/toolbars.py
   grass/trunk/gui/wxpython/gui_core/treeview.py
   grass/trunk/gui/wxpython/gui_core/vselect.py
   grass/trunk/gui/wxpython/gui_core/widgets.py
   grass/trunk/gui/wxpython/iclass/dialogs.py
   grass/trunk/gui/wxpython/iclass/digit.py
   grass/trunk/gui/wxpython/iclass/frame.py
   grass/trunk/gui/wxpython/iclass/g.gui.iclass.py
   grass/trunk/gui/wxpython/iclass/plots.py
   grass/trunk/gui/wxpython/iclass/statistics.py
   grass/trunk/gui/wxpython/iclass/toolbars.py
   grass/trunk/gui/wxpython/icons/icon.py
   grass/trunk/gui/wxpython/image2target/ii2t_gis_set.py
   grass/trunk/gui/wxpython/image2target/ii2t_manager.py
   grass/trunk/gui/wxpython/image2target/ii2t_mapdisplay.py
   grass/trunk/gui/wxpython/image2target/ii2t_statusbar.py
   grass/trunk/gui/wxpython/image2target/ii2t_toolbars.py
   grass/trunk/gui/wxpython/lmgr/frame.py
   grass/trunk/gui/wxpython/lmgr/layertree.py
   grass/trunk/gui/wxpython/lmgr/menudata.py
   grass/trunk/gui/wxpython/lmgr/pyshell.py
   grass/trunk/gui/wxpython/lmgr/toolbars.py
   grass/trunk/gui/wxpython/location_wizard/dialogs.py
   grass/trunk/gui/wxpython/location_wizard/wizard.py
   grass/trunk/gui/wxpython/mapdisp/frame.py
   grass/trunk/gui/wxpython/mapdisp/gprint.py
   grass/trunk/gui/wxpython/mapdisp/main.py
   grass/trunk/gui/wxpython/mapdisp/statusbar.py
   grass/trunk/gui/wxpython/mapdisp/test_mapdisp.py
   grass/trunk/gui/wxpython/mapdisp/toolbars.py
   grass/trunk/gui/wxpython/mapswipe/dialogs.py
   grass/trunk/gui/wxpython/mapswipe/frame.py
   grass/trunk/gui/wxpython/mapswipe/g.gui.mapswipe.py
   grass/trunk/gui/wxpython/mapswipe/mapwindow.py
   grass/trunk/gui/wxpython/mapswipe/toolbars.py
   grass/trunk/gui/wxpython/mapwin/analysis.py
   grass/trunk/gui/wxpython/mapwin/base.py
   grass/trunk/gui/wxpython/mapwin/buffered.py
   grass/trunk/gui/wxpython/mapwin/decorations.py
   grass/trunk/gui/wxpython/mapwin/graphics.py
   grass/trunk/gui/wxpython/modules/colorrules.py
   grass/trunk/gui/wxpython/modules/extensions.py
   grass/trunk/gui/wxpython/modules/histogram.py
   grass/trunk/gui/wxpython/modules/import_export.py
   grass/trunk/gui/wxpython/modules/mapsets_picker.py
   grass/trunk/gui/wxpython/modules/mcalc_builder.py
   grass/trunk/gui/wxpython/modules/vclean.py
   grass/trunk/gui/wxpython/nviz/animation.py
   grass/trunk/gui/wxpython/nviz/mapwindow.py
   grass/trunk/gui/wxpython/nviz/preferences.py
   grass/trunk/gui/wxpython/nviz/tools.py
   grass/trunk/gui/wxpython/nviz/workspace.py
   grass/trunk/gui/wxpython/nviz/wxnviz.py
   grass/trunk/gui/wxpython/photo2image/ip2i_manager.py
   grass/trunk/gui/wxpython/photo2image/ip2i_mapdisplay.py
   grass/trunk/gui/wxpython/photo2image/ip2i_statusbar.py
   grass/trunk/gui/wxpython/photo2image/ip2i_toolbars.py
   grass/trunk/gui/wxpython/psmap/dialogs.py
   grass/trunk/gui/wxpython/psmap/frame.py
   grass/trunk/gui/wxpython/psmap/instructions.py
   grass/trunk/gui/wxpython/psmap/toolbars.py
   grass/trunk/gui/wxpython/psmap/utils.py
   grass/trunk/gui/wxpython/rdigit/dialogs.py
   grass/trunk/gui/wxpython/rdigit/toolbars.py
   grass/trunk/gui/wxpython/rlisetup/frame.py
   grass/trunk/gui/wxpython/rlisetup/sampling_frame.py
   grass/trunk/gui/wxpython/rlisetup/wizard.py
   grass/trunk/gui/wxpython/startup/locdownload.py
   grass/trunk/gui/wxpython/timeline/frame.py
   grass/trunk/gui/wxpython/tplot/frame.py
   grass/trunk/gui/wxpython/tplot/g.gui.tplot.py
   grass/trunk/gui/wxpython/vdigit/dialogs.py
   grass/trunk/gui/wxpython/vdigit/g.gui.vdigit.py
   grass/trunk/gui/wxpython/vdigit/mapwindow.py
   grass/trunk/gui/wxpython/vdigit/preferences.py
   grass/trunk/gui/wxpython/vdigit/toolbars.py
   grass/trunk/gui/wxpython/vdigit/wxdigit.py
   grass/trunk/gui/wxpython/vdigit/wxdisplay.py
   grass/trunk/gui/wxpython/vnet/dialogs.py
   grass/trunk/gui/wxpython/vnet/toolbars.py
   grass/trunk/gui/wxpython/vnet/vnet_core.py
   grass/trunk/gui/wxpython/vnet/vnet_data.py
   grass/trunk/gui/wxpython/vnet/vnet_utils.py
   grass/trunk/gui/wxpython/vnet/widgets.py
   grass/trunk/gui/wxpython/web_services/dialogs.py
   grass/trunk/gui/wxpython/web_services/widgets.py
   grass/trunk/gui/wxpython/wxgui.py
   grass/trunk/gui/wxpython/wxplot/base.py
   grass/trunk/gui/wxpython/wxplot/dialogs.py
   grass/trunk/gui/wxpython/wxplot/histogram.py
   grass/trunk/gui/wxpython/wxplot/profile.py
   grass/trunk/gui/wxpython/wxplot/scatter.py
   grass/trunk/lib/python/__init__.py
   grass/trunk/lib/python/script/core.py
   grass/trunk/lib/python/temporal/abstract_map_dataset.py
   grass/trunk/lib/python/temporal/abstract_space_time_dataset.py
   grass/trunk/lib/python/temporal/aggregation.py
   grass/trunk/lib/python/temporal/c_libraries_interface.py
   grass/trunk/lib/python/temporal/core.py
   grass/trunk/lib/python/temporal/extract.py
   grass/trunk/lib/python/temporal/factory.py
   grass/trunk/lib/python/temporal/gui_support.py
   grass/trunk/lib/python/temporal/list_stds.py
   grass/trunk/lib/python/temporal/mapcalc.py
   grass/trunk/lib/python/temporal/metadata.py
   grass/trunk/lib/python/temporal/open_stds.py
   grass/trunk/lib/python/temporal/register.py
   grass/trunk/lib/python/temporal/sampling.py
   grass/trunk/lib/python/temporal/space_time_datasets.py
   grass/trunk/lib/python/temporal/spatial_extent.py
   grass/trunk/lib/python/temporal/spatio_temporal_relationships.py
   grass/trunk/lib/python/temporal/stds_export.py
   grass/trunk/lib/python/temporal/stds_import.py
   grass/trunk/lib/python/temporal/temporal_algebra.py
   grass/trunk/lib/python/temporal/temporal_extent.py
   grass/trunk/lib/python/temporal/temporal_granularity.py
   grass/trunk/lib/python/temporal/temporal_raster3d_algebra.py
   grass/trunk/lib/python/temporal/temporal_raster_algebra.py
   grass/trunk/scripts/d.correlate/d.correlate.py
   grass/trunk/scripts/d.frame/d.frame.py
   grass/trunk/scripts/d.out.file/d.out.file.py
   grass/trunk/scripts/d.polar/d.polar.py
   grass/trunk/scripts/d.rast.edit/d.rast.edit.py
   grass/trunk/scripts/d.rast.leg/d.rast.leg.py
   grass/trunk/scripts/d.redraw/d.redraw.py
   grass/trunk/scripts/d.shade/d.shade.py
   grass/trunk/scripts/d.to.rast/d.to.rast.py
   grass/trunk/scripts/d.what.rast/d.what.rast.py
   grass/trunk/scripts/d.what.vect/d.what.vect.py
   grass/trunk/scripts/db.dropcolumn/db.dropcolumn.py
   grass/trunk/scripts/db.droptable/db.droptable.py
   grass/trunk/scripts/db.in.ogr/db.in.ogr.py
   grass/trunk/scripts/db.out.ogr/db.out.ogr.py
   grass/trunk/scripts/db.test/db.test.py
   grass/trunk/scripts/db.univar/db.univar.py
   grass/trunk/scripts/g.extension.all/g.extension.all.py
   grass/trunk/scripts/g.extension/g.extension.py
   grass/trunk/scripts/g.manual/g.manual.py
   grass/trunk/scripts/g.search.modules/g.search.modules.py
   grass/trunk/scripts/i.colors.enhance/i.colors.enhance.py
   grass/trunk/scripts/i.image.mosaic/i.image.mosaic.py
   grass/trunk/scripts/i.in.spotvgt/i.in.spotvgt.py
   grass/trunk/scripts/i.oif/i.oif.py
   grass/trunk/scripts/i.pansharpen/i.pansharpen.py
   grass/trunk/scripts/i.spectral/i.spectral.py
   grass/trunk/scripts/i.tasscap/i.tasscap.py
   grass/trunk/scripts/m.proj/m.proj.py
   grass/trunk/scripts/r.blend/r.blend.py
   grass/trunk/scripts/r.buffer.lowmem/r.buffer.lowmem.py
   grass/trunk/scripts/r.fillnulls/r.fillnulls.py
   grass/trunk/scripts/r.grow/r.grow.py
   grass/trunk/scripts/r.import/r.import.py
   grass/trunk/scripts/r.in.aster/r.in.aster.py
   grass/trunk/scripts/r.in.srtm/r.in.srtm.py
   grass/trunk/scripts/r.in.wms/r.in.wms.py
   grass/trunk/scripts/r.in.wms/wms_base.py
   grass/trunk/scripts/r.in.wms/wms_cap_parsers.py
   grass/trunk/scripts/r.in.wms/wms_drv.py
   grass/trunk/scripts/r.in.wms/wms_gdal_drv.py
   grass/trunk/scripts/r.mask/r.mask.py
   grass/trunk/scripts/r.pack/r.pack.py
   grass/trunk/scripts/r.plane/r.plane.py
   grass/trunk/scripts/r.reclass.area/r.reclass.area.py
   grass/trunk/scripts/r.rgb/r.rgb.py
   grass/trunk/scripts/r.shade/r.shade.py
   grass/trunk/scripts/r.tileset/r.tileset.py
   grass/trunk/scripts/r.unpack/r.unpack.py
   grass/trunk/scripts/r3.in.xyz/r3.in.xyz.py
   grass/trunk/scripts/v.build.all/v.build.all.py
   grass/trunk/scripts/v.centroids/v.centroids.py
   grass/trunk/scripts/v.db.addcolumn/v.db.addcolumn.py
   grass/trunk/scripts/v.db.addtable/v.db.addtable.py
   grass/trunk/scripts/v.db.dropcolumn/v.db.dropcolumn.py
   grass/trunk/scripts/v.db.droprow/v.db.droprow.py
   grass/trunk/scripts/v.db.droptable/v.db.droptable.py
   grass/trunk/scripts/v.db.join/v.db.join.py
   grass/trunk/scripts/v.db.reconnect.all/v.db.reconnect.all.py
   grass/trunk/scripts/v.db.renamecolumn/v.db.renamecolumn.py
   grass/trunk/scripts/v.db.univar/v.db.univar.py
   grass/trunk/scripts/v.db.update/v.db.update.py
   grass/trunk/scripts/v.dissolve/v.dissolve.py
   grass/trunk/scripts/v.import/v.import.py
   grass/trunk/scripts/v.in.e00/v.in.e00.py
   grass/trunk/scripts/v.in.geonames/v.in.geonames.py
   grass/trunk/scripts/v.in.lines/v.in.lines.py
   grass/trunk/scripts/v.in.mapgen/v.in.mapgen.py
   grass/trunk/scripts/v.in.wfs/v.in.wfs.py
   grass/trunk/scripts/v.pack/v.pack.py
   grass/trunk/scripts/v.rast.stats/v.rast.stats.py
   grass/trunk/scripts/v.report/v.report.py
   grass/trunk/scripts/v.to.lines/v.to.lines.py
   grass/trunk/scripts/v.unpack/v.unpack.py
   grass/trunk/scripts/v.what.strds/v.what.strds.py
Log:
i18N: cleanup gettext usage for Python code (fixes #3790) (contributed by pmav99)

Modified: grass/trunk/doc/gui/wxpython/example/dialogs.py
===================================================================
--- grass/trunk/doc/gui/wxpython/example/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/doc/gui/wxpython/example/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -16,10 +16,15 @@
 
 import wx
 
+# i18n is taken care of in the grass library code.
+# So we need to import it before any of the GUI code.
+# NOTE: in this particular case, we don't really need the grass library;
+# NOTE: we import it just for the side effects of gettext.install()
+import grass
+
 from core import globalvar
 from gui_core.dialogs import SimpleDialog
 from gui_core import gselect
-from core.utils import _
 
 
 class ExampleMapDialog(SimpleDialog):

Modified: grass/trunk/doc/gui/wxpython/example/frame.py
===================================================================
--- grass/trunk/doc/gui/wxpython/example/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/doc/gui/wxpython/example/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -23,6 +23,10 @@
 if __name__ == "__main__":
     sys.path.append(os.path.join(os.environ['GISBASE'], "etc", "gui", "wxpython"))
 
+# i18n is taken care of in the grass library code.
+# So we need to import it before any of the GUI code.
+from grass.script import core as gcore
+
 from gui_core.mapdisp import SingleMapFrame
 from mapwin.buffered import BufferedMapWindow
 from mapwin.base import MapWindowProperties
@@ -30,10 +34,7 @@
 from core.render import Map
 from core.debug import Debug
 from core.gcmd import RunCommand, GError
-from core.utils import _
 
-from grass.script import core as gcore
-
 from toolbars import ExampleMapToolbar, ExampleMiscToolbar, ExampleMainToolbar
 from dialogs import ExampleMapDialog
 

Modified: grass/trunk/doc/gui/wxpython/example/g.gui.example.py
===================================================================
--- grass/trunk/doc/gui/wxpython/example/g.gui.example.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/doc/gui/wxpython/example/g.gui.example.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -33,6 +33,9 @@
 import sys
 import wx
 
+
+# i18n is taken care of in the grass library code.
+# So we need to import it before any of the GUI code.
 import grass.script.core as gcore
 
 if __name__ == '__main__':
@@ -42,7 +45,7 @@
 
 from core.globalvar import CheckWxVersion
 from core.giface import StandaloneGrassInterface
-from core.utils import _, GuiModuleMain
+from core.utils import GuiModuleMain
 from core.settings import UserSettings
 from example.frame import ExampleMapFrame
 

Modified: grass/trunk/gui/wxpython/animation/anim.py
===================================================================
--- grass/trunk/gui/wxpython/animation/anim.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/anim.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -16,7 +16,6 @@
 
 import wx
 from .utils import Orientation, ReplayMode
-from core.utils import _
 
 
 class Animation(wx.EvtHandler):

Modified: grass/trunk/gui/wxpython/animation/controller.py
===================================================================
--- grass/trunk/gui/wxpython/animation/controller.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/controller.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -17,7 +17,6 @@
 import wx
 
 from core.gcmd import GException, GError, GMessage
-from core.utils import _
 from grass.imaging import writeAvi, writeGif, writeIms, writeSwf
 from core.settings import UserSettings
 

Modified: grass/trunk/gui/wxpython/animation/data.py
===================================================================
--- grass/trunk/gui/wxpython/animation/data.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/data.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,7 +22,6 @@
 from grass.script.utils import parse_key_val
 from grass.script import core as gcore
 
-from core.utils import _
 from core.gcmd import GException
 from animation.nviztask import NvizTask
 from animation.utils import validateMapNames, getRegisteredMaps, \

Modified: grass/trunk/gui/wxpython/animation/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/animation/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -40,7 +40,6 @@
 from gui_core.preferences import PreferencesBaseDialog
 from gui_core.forms import GUI
 from core.settings import UserSettings
-from core.utils import _
 from gui_core.gselect import Select
 from gui_core.widgets import FloatValidator
 from gui_core.wrap import SpinCtrl, CheckBox, TextCtrl, Button, \

Modified: grass/trunk/gui/wxpython/animation/frame.py
===================================================================
--- grass/trunk/gui/wxpython/animation/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -30,7 +30,6 @@
 from gui_core.widgets import IntegerValidator
 from gui_core.wrap import StaticText, TextCtrl
 from core.gcmd import RunCommand
-from core.utils import _
 
 from animation.mapwindow import AnimationWindow
 from animation.provider import BitmapProvider, BitmapPool, \

Modified: grass/trunk/gui/wxpython/animation/g.gui.animation.py
===================================================================
--- grass/trunk/gui/wxpython/animation/g.gui.animation.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/g.gui.animation.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -66,7 +66,6 @@
     set_gui_path()
 
     from core.globalvar import CheckWxVersion
-    from core.utils import _
     from core.giface import StandaloneGrassInterface
     from core.layerlist import LayerList
     from animation.frame import AnimationFrame, MAX_COUNT

Modified: grass/trunk/gui/wxpython/animation/nviztask.py
===================================================================
--- grass/trunk/gui/wxpython/animation/nviztask.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/nviztask.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -24,7 +24,7 @@
 
 from core.workspace import ProcessWorkspaceFile
 from core.gcmd import RunCommand, GException
-from core.utils import GetLayerNameFromCmd, _
+from core.utils import GetLayerNameFromCmd
 from grass.script import task as gtask
 from core.settings import UserSettings
 

Modified: grass/trunk/gui/wxpython/animation/provider.py
===================================================================
--- grass/trunk/gui/wxpython/animation/provider.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/provider.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -29,7 +29,7 @@
 from core.gcmd import RunCommand, GException
 from core.settings import UserSettings
 from core.debug import Debug
-from core.utils import _, autoCropImageFromFile
+from core.utils import autoCropImageFromFile
 
 from animation.utils import HashCmd, HashCmds, GetFileFromCmd, GetFileFromCmds
 from gui_core.wrap import EmptyBitmap

Modified: grass/trunk/gui/wxpython/animation/temporal_manager.py
===================================================================
--- grass/trunk/gui/wxpython/animation/temporal_manager.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/temporal_manager.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,6 @@
 import grass.script as grass
 import grass.temporal as tgis
 from core.gcmd import GException
-from core.utils import _
 from core.settings import UserSettings
 from animation.utils import validateTimeseriesName, TemporalType
 

Modified: grass/trunk/gui/wxpython/animation/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/animation/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 import wx
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from icons.icon import MetaIcon
-from core.utils import _
 from gui_core.simplelmgr import SimpleLmgrToolbar
 from animation.anim import ReplayMode
 

Modified: grass/trunk/gui/wxpython/animation/utils.py
===================================================================
--- grass/trunk/gui/wxpython/animation/utils.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/animation/utils.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -34,7 +34,6 @@
 from gui_core.wrap import EmptyBitmap
 
 from core.gcmd import GException
-from core.utils import _
 
 
 class TemporalMode:

Modified: grass/trunk/gui/wxpython/core/gcmd.py
===================================================================
--- grass/trunk/gui/wxpython/core/gcmd.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/gcmd.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -48,7 +48,7 @@
     import fcntl
 
 from core.debug import Debug
-from core.globalvar import SCT_EXT, _
+from core.globalvar import SCT_EXT
 
 from grass.script import core as grass
 from grass.script.utils import decode

Modified: grass/trunk/gui/wxpython/core/gconsole.py
===================================================================
--- grass/trunk/gui/wxpython/core/gconsole.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/gconsole.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -46,7 +46,6 @@
 
 from core import globalvar
 from core.gcmd import CommandThread, GError, GException
-from core.utils import _
 from gui_core.forms import GUI
 from core.debug import Debug
 from core.settings import UserSettings

Modified: grass/trunk/gui/wxpython/core/giface.py
===================================================================
--- grass/trunk/gui/wxpython/core/giface.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/giface.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -16,7 +16,6 @@
 """
 
 import os
-from core.utils import _
 
 import grass.script as grass
 

Modified: grass/trunk/gui/wxpython/core/globalvar.py
===================================================================
--- grass/trunk/gui/wxpython/core/globalvar.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/globalvar.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -28,25 +28,13 @@
 IMGDIR = os.path.join(GUIDIR, "images")
 SYMBDIR = os.path.join(IMGDIR, "symbols")
 
+# i18n is taken care of in the grass library code.
+# So we need to import it before any of the GUI code.
+from grass.script.core import get_commands
+
 from core.debug import Debug
 
-try:
-    # intended to be used also outside this module
-    import gettext
-    trans = gettext.translation('grasswxpy',
-                                os.path.join(os.getenv("GISBASE"),
-                                                       'locale')
-    )
-    _ = trans.gettext if sys.version_info.major >=3 else trans.ugettext
-except IOError:
-    # using no translation silently
-    def null_gettext(string):
-        return string
-    _ = null_gettext
 
-from grass.script.core import get_commands
-
-
 def CheckWxPhoenix():
     if 'phoenix' in wx.version():
         return True

Modified: grass/trunk/gui/wxpython/core/menutree.py
===================================================================
--- grass/trunk/gui/wxpython/core/menutree.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/menutree.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -51,7 +51,6 @@
 from core.toolboxes import getMessages as getToolboxMessages
 from core.toolboxes import clearMessages as clearToolboxMessages
 from core.gcmd import GError
-from core.utils import _
 
 if not os.getenv("GISBASE"):
     sys.exit("GRASS is not running. Exiting...")

Modified: grass/trunk/gui/wxpython/core/render.py
===================================================================
--- grass/trunk/gui/wxpython/core/render.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/render.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -39,7 +39,6 @@
 from grass.exceptions import CalledModuleError
 
 from core import utils
-from core.utils import _
 from core.ws import RenderWMSMgr
 from core.gcmd import GException, GError, RunCommand, EncodeString
 from core.debug import Debug

Modified: grass/trunk/gui/wxpython/core/settings.py
===================================================================
--- grass/trunk/gui/wxpython/core/settings.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/settings.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -27,7 +27,7 @@
 
 from core import globalvar
 from core.gcmd import GException, GError
-from core.utils import GetSettingsPath, PathJoin, rgb2str, _
+from core.utils import GetSettingsPath, PathJoin, rgb2str
 
 
 class Settings:

Modified: grass/trunk/gui/wxpython/core/toolboxes.py
===================================================================
--- grass/trunk/gui/wxpython/core/toolboxes.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/toolboxes.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -83,25 +83,6 @@
     return userMainMenuFile
 
 
-def _(string):
-    """Get translated version of a string"""
-    # is attribute initialized to actual value?
-    if _.translate is None:
-        try:
-            # if not get the translate function named _
-            from core.utils import _ as actual_translate
-            # assign the imported function to translade attribute
-            _.translate = actual_translate
-        except ImportError:
-            # speak English if there is a problem with import of wx
-            def noop_traslate(string):
-                return string
-            _.translate = noop_traslate
-    return _.translate(string)
-
-# attribute translate of function _
-_.translate = None
-
 # TODO: this should be part of some reader object
 _MESSAGES = []
 

Modified: grass/trunk/gui/wxpython/core/units.py
===================================================================
--- grass/trunk/gui/wxpython/core/units.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/units.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -28,7 +28,6 @@
     import os
     import sys
 
-from core.utils import _
 
 
 class BaseUnits:

Modified: grass/trunk/gui/wxpython/core/utils.py
===================================================================
--- grass/trunk/gui/wxpython/core/utils.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/utils.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -28,7 +28,7 @@
 
 from core.gcmd import RunCommand
 from core.debug import Debug
-from core.globalvar import ETCDIR, wxPythonPhoenix, _
+from core.globalvar import ETCDIR, wxPythonPhoenix
 
 def cmp(a, b):
     """cmp function"""

Modified: grass/trunk/gui/wxpython/core/workspace.py
===================================================================
--- grass/trunk/gui/wxpython/core/workspace.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/workspace.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,7 @@
 except ImportError:
     from io import StringIO
 
-from core.utils import normalize_whitespace, _
+from core.utils import normalize_whitespace
 from core.settings import UserSettings
 from core.gcmd import EncodeString, GetDefaultEncoding
 from nviz.main import NvizSettings

Modified: grass/trunk/gui/wxpython/core/ws.py
===================================================================
--- grass/trunk/gui/wxpython/core/ws.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/core/ws.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -31,7 +31,6 @@
 from core import utils
 from core.debug import Debug
 from core.gthread import gThread
-from core.utils import _
 
 try:
     haveGdal = True

Modified: grass/trunk/gui/wxpython/datacatalog/catalog.py
===================================================================
--- grass/trunk/gui/wxpython/datacatalog/catalog.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/datacatalog/catalog.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 from core.gthread import gThread
 from core.debug import Debug
 from datacatalog.tree import DataCatalogTree
-from core.utils import _
 from datacatalog.toolbars import DataCatalogToolbar
 
 from grass.pydispatch.signal import Signal

Modified: grass/trunk/gui/wxpython/datacatalog/frame.py
===================================================================
--- grass/trunk/gui/wxpython/datacatalog/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/datacatalog/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 
 import wx
 
-from core.utils import _
 from core.globalvar import ICONDIR
 from core.gcmd import RunCommand, GMessage
 from datacatalog.tree import DataCatalogTree

Modified: grass/trunk/gui/wxpython/datacatalog/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/datacatalog/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/datacatalog/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -18,7 +18,6 @@
 from gui_core.toolbars import BaseToolbar
 from gui_core.wrap import StaticText, TextCtrl
 from icons.icon import MetaIcon
-from core.utils import _
 
 icons = {
     'reloadTree': MetaIcon(

Modified: grass/trunk/gui/wxpython/dbmgr/base.py
===================================================================
--- grass/trunk/gui/wxpython/dbmgr/base.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/dbmgr/base.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -56,7 +56,7 @@
 
 from dbmgr.sqlbuilder import SQLBuilderSelect, SQLBuilderUpdate
 from core.gcmd import RunCommand, GException, GError, GMessage, GWarning
-from core.utils import ListOfCatsToRange, _
+from core.utils import ListOfCatsToRange
 from gui_core.dialogs import CreateNewVector
 from dbmgr.vinfo import VectorDBInfo, GetUnicodeValue, CreateDbInfoDesc
 from core.debug import Debug
@@ -654,7 +654,7 @@
         # redraw the list
         self.Refresh()
         wx.EndBusyCursor()
-        
+
     def Sorter(self, key1, key2):
         colName = self.GetColumn(self._col).GetText()
         ascending = self._colSortFlag[self._col]

Modified: grass/trunk/gui/wxpython/dbmgr/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/dbmgr/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/dbmgr/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,7 +22,6 @@
 import six
 
 from core import globalvar
-from core.utils import _
 import wx
 import wx.lib.scrolledpanel as scrolled
 

Modified: grass/trunk/gui/wxpython/dbmgr/g.gui.dbmgr.py
===================================================================
--- grass/trunk/gui/wxpython/dbmgr/g.gui.dbmgr.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/dbmgr/g.gui.dbmgr.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -39,7 +39,6 @@
     from grass.script.setup import set_gui_path
     set_gui_path()
 
-    from core.utils import _
     from dbmgr.manager import AttributeManager
 
     mapName = gscript.find_file(options['map'], element='vector')['fullname']

Modified: grass/trunk/gui/wxpython/dbmgr/manager.py
===================================================================
--- grass/trunk/gui/wxpython/dbmgr/manager.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/dbmgr/manager.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -40,7 +40,6 @@
 
 from core.gcmd import GMessage
 from core.debug import Debug
-from core.utils import _
 from dbmgr.base import DbMgrBase
 from gui_core.widgets import GNotebook
 from gui_core.wrap import Button

Modified: grass/trunk/gui/wxpython/dbmgr/sqlbuilder.py
===================================================================
--- grass/trunk/gui/wxpython/dbmgr/sqlbuilder.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/dbmgr/sqlbuilder.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -31,7 +31,6 @@
 import six
 
 from core import globalvar
-from core.utils import _
 import wx
 
 from grass.pydispatch.signal import Signal

Modified: grass/trunk/gui/wxpython/dbmgr/vinfo.py
===================================================================
--- grass/trunk/gui/wxpython/dbmgr/vinfo.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/dbmgr/vinfo.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,6 @@
 from gui_core.wrap import StaticText
 from core.gcmd import RunCommand, GError
 from core.settings import UserSettings
-from core.utils import _
 import grass.script as grass
 
 if sys.version_info.major >= 3:

Modified: grass/trunk/gui/wxpython/gcp/manager.py
===================================================================
--- grass/trunk/gui/wxpython/gcp/manager.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gcp/manager.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -52,7 +52,6 @@
 
 from core import utils
 from core.render import Map
-from core.utils import _
 from gui_core.gselect import Select, LocationSelect, MapsetSelect
 from gui_core.dialogs import GroupDialog
 from core.gcmd import RunCommand, GMessage, GError, GWarning, EncodeString

Modified: grass/trunk/gui/wxpython/gcp/mapdisplay.py
===================================================================
--- grass/trunk/gui/wxpython/gcp/mapdisplay.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gcp/mapdisplay.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -27,7 +27,6 @@
 from gcp.toolbars import GCPDisplayToolbar, GCPManToolbar
 from mapdisp.gprint import PrintOptions
 from core.gcmd import GMessage
-from core.utils import _
 from gui_core.dialogs import GetImageHandlers, ImageSizeDialog
 from gui_core.mapdisp import SingleMapFrame
 from gui_core.wrap import Menu

Modified: grass/trunk/gui/wxpython/gcp/statusbar.py
===================================================================
--- grass/trunk/gui/wxpython/gcp/statusbar.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gcp/statusbar.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 import wx
 
 from core.gcmd import GMessage
-from core.utils import _
 from mapdisp.statusbar import SbItem, SbTextItem
 from gui_core.wrap import SpinCtrl
 

Modified: grass/trunk/gui/wxpython/gcp/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/gcp/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gcp/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 import wx
 
 from core import globalvar
-from core.utils import _
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from icons.icon import MetaIcon
 

Modified: grass/trunk/gui/wxpython/gis_set.py
===================================================================
--- grass/trunk/gui/wxpython/gis_set.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gis_set.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -27,13 +27,14 @@
 import codecs
 import getpass
 
+# i18n is taken care of in the grass library code.
+# So we need to import it before any of the GUI code.
+from grass.script import core as grass
+
 from core import globalvar
-from core.utils import _
 import wx
 import wx.lib.mixins.listctrl as listmix
 
-from grass.script import core as grass
-
 from core.gcmd import GMessage, GError, DecodeString, RunCommand
 from core.utils import GetListOfLocations, GetListOfMapsets
 from startup.utils import (

Modified: grass/trunk/gui/wxpython/gis_set_error.py
===================================================================
--- grass/trunk/gui/wxpython/gis_set_error.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gis_set_error.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -14,6 +14,12 @@
 import os
 import sys
 
+# i18n is taken care of in the grass library code.
+# So we need to import it before any of the GUI code.
+# NOTE: in this particular case, we don't really need the grass library;
+# NOTE: we import it just for the side effects of gettext.install()
+import grass
+
 from core import globalvar
 import wx
 

Modified: grass/trunk/gui/wxpython/gmodeler/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/gmodeler/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gmodeler/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -32,7 +32,6 @@
 
 from core import globalvar
 from core import utils
-from core.utils import _
 from gui_core.widgets import SearchModuleWidget, SimpleValidator
 from core.gcmd import GError, EncodeString
 from gui_core.dialogs import SimpleDialog, MapLayersDialogForModeler

Modified: grass/trunk/gui/wxpython/gmodeler/frame.py
===================================================================
--- grass/trunk/gui/wxpython/gmodeler/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gmodeler/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -42,7 +42,6 @@
     import wx.lib.flatnotebook as FN
 from wx.lib.newevent import NewEvent
     
-from core.utils import _
 from gui_core.widgets import GNotebook
 from core.gconsole        import GConsole, \
     EVT_CMD_RUN, EVT_CMD_DONE, EVT_CMD_PREPARE

Modified: grass/trunk/gui/wxpython/gmodeler/model.py
===================================================================
--- grass/trunk/gui/wxpython/gmodeler/model.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gmodeler/model.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -46,7 +46,6 @@
 
 from core import globalvar
 from core import utils
-from core.utils import _
 from core.gcmd import GMessage, GException, GError, RunCommand, EncodeString, GWarning, GetDefaultEncoding
 from core.settings import UserSettings
 from gui_core.forms import GUI, CmdPanel

Modified: grass/trunk/gui/wxpython/gmodeler/preferences.py
===================================================================
--- grass/trunk/gui/wxpython/gmodeler/preferences.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gmodeler/preferences.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 from core import globalvar
 from gui_core.preferences import PreferencesBaseDialog
 from core.settings import UserSettings
-from core.utils import _
 from gui_core.wrap import SpinCtrl, Button, StaticText, \
     StaticBox, TextCtrl
 

Modified: grass/trunk/gui/wxpython/gmodeler/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/gmodeler/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gmodeler/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 import wx
 
 from core import globalvar
-from core.utils import _
 from gui_core.toolbars import BaseToolbar, BaseIcons
 
 from icons.icon import MetaIcon

Modified: grass/trunk/gui/wxpython/gui_core/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -50,7 +50,6 @@
 from gui_core.gselect import LocationSelect, MapsetSelect, Select, \
     OgrTypeSelect, SubGroupSelect
 from gui_core.widgets import SingleSymbolPanel, GListCtrl, SimpleValidator, MapValidator
-from core.utils import _
 from core.settings import UserSettings
 from core.debug import Debug
 from gui_core.wrap import SpinCtrl, TextCtrl, Button, CheckListBox, \

Modified: grass/trunk/gui/wxpython/gui_core/forms.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/forms.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/forms.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -101,7 +101,6 @@
 from gui_core import gselect
 from core import gcmd
 from core import utils
-from core.utils import _
 from core.settings import UserSettings
 from gui_core.widgets import FloatValidator, GNotebook, FormNotebook, FormListbook
 from core.giface import Notification

Modified: grass/trunk/gui/wxpython/gui_core/ghelp.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/ghelp.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/ghelp.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -45,7 +45,6 @@
     set_gui_path()
 
 from core import globalvar
-from core.utils import _
 from core.gcmd import GError, DecodeString
 from gui_core.widgets import FormNotebook, ScrolledPanel
 from gui_core.wrap import Button, StaticText, TextCtrl

Modified: grass/trunk/gui/wxpython/gui_core/goutput.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/goutput.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/goutput.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -40,7 +40,6 @@
 from gui_core.wrap import Button, ToggleButton, StaticText, \
     StaticBox
 from core.settings import UserSettings
-from core.utils import _
 from gui_core.widgets import SearchModuleWidget
 
 

Modified: grass/trunk/gui/wxpython/gui_core/gselect.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/gselect.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/gselect.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -74,7 +74,7 @@
 from core.utils    import GetListOfLocations, GetListOfMapsets, \
     GetFormats, rasterFormatExtension, vectorFormatExtension
 from core.utils import GetSettingsPath, GetValidLayerName, ListSortLower
-from core.utils import GetVectorNumberOfLayers, _
+from core.utils import GetVectorNumberOfLayers
 from core.settings import UserSettings
 from core.debug import Debug
 from gui_core.vselect import VectorSelectBase

Modified: grass/trunk/gui/wxpython/gui_core/mapdisp.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/mapdisp.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/mapdisp.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -27,7 +27,6 @@
 
 from core import globalvar
 from core.debug import Debug
-from core.utils import _
 from gui_core.toolbars import ToolSwitcher
 
 from grass.script import core as grass

Modified: grass/trunk/gui/wxpython/gui_core/menu.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/menu.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/menu.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -24,7 +24,6 @@
 from core import globalvar
 from core import utils
 from core.gcmd import EncodeString
-from core.utils import _
 from gui_core.widgets import SearchModuleWidget
 from gui_core.treeview import CTreeView
 from gui_core.wrap import Button, StaticText

Modified: grass/trunk/gui/wxpython/gui_core/preferences.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/preferences.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/preferences.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -45,7 +45,7 @@
 
 from core import globalvar
 from core.gcmd import RunCommand, GError
-from core.utils import ListOfMapsets, GetColorTables, ReadEpsgCodes, _
+from core.utils import ListOfMapsets, GetColorTables, ReadEpsgCodes
 from core.settings import UserSettings
 from core.globalvar import wxPythonPhoenix
 from gui_core.dialogs import SymbolDialog, DefaultFontDialog

Modified: grass/trunk/gui/wxpython/gui_core/prompt.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/prompt.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/prompt.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -33,7 +33,6 @@
 from core import globalvar
 from core import utils
 from core.gcmd import EncodeString, DecodeString
-from core.utils import _
 
 
 class GPrompt(object):

Modified: grass/trunk/gui/wxpython/gui_core/pyedit.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/pyedit.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/pyedit.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -29,7 +29,6 @@
     from grass.script.setup import set_gui_path
     set_gui_path()
 
-from core.utils import _
 from core.gcmd import EncodeString, GError
 from gui_core.pystc import PyStc
 from core import globalvar

Modified: grass/trunk/gui/wxpython/gui_core/pystc.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/pystc.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/pystc.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -19,7 +19,6 @@
 
 import wx
 from wx import stc
-from core.utils import _
 
 
 class PyStc(stc.StyledTextCtrl):

Modified: grass/trunk/gui/wxpython/gui_core/query.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/query.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/query.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -17,7 +17,6 @@
 import wx
 import six
 
-from core.utils import _
 from core.gcmd import DecodeString
 from gui_core.treeview import TreeListView
 from gui_core.wrap import Button, StaticText, Menu

Modified: grass/trunk/gui/wxpython/gui_core/simplelmgr.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/simplelmgr.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/simplelmgr.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -35,7 +35,6 @@
 from core.utils import GetLayerNameFromCmd
 from core.gcmd import GError
 from core.layerlist import LayerList
-from core.utils import _
 
 SIMPLE_LMGR_RASTER = 1
 SIMPLE_LMGR_VECTOR = 2

Modified: grass/trunk/gui/wxpython/gui_core/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -23,7 +23,6 @@
 
 from core import globalvar
 from core.debug import Debug
-from core.utils import _
 from icons.icon import MetaIcon
 from collections import defaultdict
 from core.globalvar import IMGDIR

Modified: grass/trunk/gui/wxpython/gui_core/treeview.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/treeview.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/treeview.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -39,7 +39,6 @@
     set_gui_path()
 
 from core.treemodel import TreeModel, DictNode
-from core.utils import _
 from gui_core.wrap import CustomTreeCtrl
 
 from grass.pydispatch.signal import Signal

Modified: grass/trunk/gui/wxpython/gui_core/vselect.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/vselect.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/vselect.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,6 @@
 import wx
 import wx.lib.mixins.listctrl as listmix
 
-from core.utils import _
 from core.gcmd import GMessage, GError, GWarning
 from core.gcmd import RunCommand
 from gui_core.wrap import Button

Modified: grass/trunk/gui/wxpython/gui_core/widgets.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/widgets.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/gui_core/widgets.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -87,7 +87,6 @@
 from grass.pydispatch.signal import Signal
 
 from core import globalvar
-from core.utils import _
 from core.gcmd import GMessage, GError
 from core.debug import Debug
 from gui_core.wrap import Button, SearchCtrl, StaticText, StaticBox, \

Modified: grass/trunk/gui/wxpython/iclass/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/iclass/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/iclass/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -26,7 +26,6 @@
 import wx.lib.scrolledpanel as scrolled
 
 from core import globalvar
-from core.utils import _
 from core.settings import UserSettings
 from core.gcmd import GError, RunCommand, GMessage
 from gui_core.dialogs import SimpleDialog, GroupDialog

Modified: grass/trunk/gui/wxpython/iclass/digit.py
===================================================================
--- grass/trunk/gui/wxpython/iclass/digit.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/iclass/digit.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,7 +22,6 @@
 from vdigit.wxdigit import IVDigit
 from vdigit.wxdisplay import DisplayDriver, TYPE_AREA
 from core.gcmd import GWarning
-from core.utils import _
 try:
     from grass.lib.gis import G_verbose, G_set_verbose
     from grass.lib.vector import *

Modified: grass/trunk/gui/wxpython/iclass/frame.py
===================================================================
--- grass/trunk/gui/wxpython/iclass/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/iclass/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -23,7 +23,6 @@
 import copy
 import tempfile
 import types
-from core.utils import _
 
 from core import globalvar
 import wx

Modified: grass/trunk/gui/wxpython/iclass/g.gui.iclass.py
===================================================================
--- grass/trunk/gui/wxpython/iclass/g.gui.iclass.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/iclass/g.gui.iclass.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -65,7 +65,6 @@
     from core.settings import UserSettings
     from core.globalvar import CheckWxVersion
     from core.giface import StandaloneGrassInterface
-    from core.utils import _
     from iclass.frame import IClassMapFrame
 
     group_name = subgroup_name = map_name = trainingmap_name = None

Modified: grass/trunk/gui/wxpython/iclass/plots.py
===================================================================
--- grass/trunk/gui/wxpython/iclass/plots.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/iclass/plots.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -19,7 +19,6 @@
 
 import gui_core.wxlibplot as plot
 import wx.lib.scrolledpanel as scrolled
-from core.utils import _
 from core.gcmd import GError
 
 

Modified: grass/trunk/gui/wxpython/iclass/statistics.py
===================================================================
--- grass/trunk/gui/wxpython/iclass/statistics.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/iclass/statistics.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,7 +22,6 @@
 from ctypes import *
 
 import grass.script as grass
-from core.utils import _
 
 try:
     from grass.lib.imagery import *

Modified: grass/trunk/gui/wxpython/iclass/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/iclass/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/iclass/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,7 +22,6 @@
 
 import wx
 
-from core.utils import _
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from icons.icon import MetaIcon
 from iclass.dialogs import IClassMapDialog, ContrastColor

Modified: grass/trunk/gui/wxpython/icons/icon.py
===================================================================
--- grass/trunk/gui/wxpython/icons/icon.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/icons/icon.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -23,7 +23,6 @@
 import wx
 
 from core.settings import UserSettings
-from core.utils import _
 
 # default icon set
 from .grass_icons import iconSet as g_iconSet

Modified: grass/trunk/gui/wxpython/image2target/ii2t_gis_set.py
===================================================================
--- grass/trunk/gui/wxpython/image2target/ii2t_gis_set.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/image2target/ii2t_gis_set.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -29,7 +29,6 @@
 import getpass
 
 from core import globalvar
-from core.utils import _
 import wx
 import wx.lib.mixins.listctrl as listmix
 

Modified: grass/trunk/gui/wxpython/image2target/ii2t_manager.py
===================================================================
--- grass/trunk/gui/wxpython/image2target/ii2t_manager.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/image2target/ii2t_manager.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -55,7 +55,6 @@
 
 from core import utils
 from core.render import Map
-from core.utils import _
 from gui_core.gselect import Select, LocationSelect, MapsetSelect
 from gui_core.dialogs import GroupDialog
 from core.gcmd import RunCommand, GMessage, GError, GWarning, EncodeString

Modified: grass/trunk/gui/wxpython/image2target/ii2t_mapdisplay.py
===================================================================
--- grass/trunk/gui/wxpython/image2target/ii2t_mapdisplay.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/image2target/ii2t_mapdisplay.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -27,7 +27,6 @@
 from gcp.toolbars import GCPDisplayToolbar, GCPManToolbar
 from mapdisp.gprint import PrintOptions
 from core.gcmd import GMessage
-from core.utils import _
 from gui_core.dialogs import GetImageHandlers, ImageSizeDialog
 from gui_core.mapdisp import SingleMapFrame
 from gui_core.wrap import Menu

Modified: grass/trunk/gui/wxpython/image2target/ii2t_statusbar.py
===================================================================
--- grass/trunk/gui/wxpython/image2target/ii2t_statusbar.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/image2target/ii2t_statusbar.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 import wx
 
 from core.gcmd import GMessage
-from core.utils import _
 from mapdisp.statusbar import SbItem, SbTextItem
 from gui_core.wrap import SpinCtrl
 

Modified: grass/trunk/gui/wxpython/image2target/ii2t_toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/image2target/ii2t_toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/image2target/ii2t_toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 import wx
 
 from core import globalvar
-from core.utils import _
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from icons.icon import MetaIcon
 

Modified: grass/trunk/gui/wxpython/lmgr/frame.py
===================================================================
--- grass/trunk/gui/wxpython/lmgr/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/lmgr/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -46,7 +46,7 @@
 
 from core.gcmd import RunCommand, GError, GMessage, EncodeString
 from core.settings import UserSettings, GetDisplayVectSettings
-from core.utils import SetAddOnPath, GetLayerNameFromCmd, command2ltype, _
+from core.utils import SetAddOnPath, GetLayerNameFromCmd, command2ltype
 from gui_core.preferences import MapsetAccess, PreferencesDialog
 from lmgr.layertree import LayerTree, LMIcons
 from lmgr.menudata import LayerManagerMenuData, LayerManagerModuleTree

Modified: grass/trunk/gui/wxpython/lmgr/layertree.py
===================================================================
--- grass/trunk/gui/wxpython/lmgr/layertree.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/lmgr/layertree.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -38,7 +38,7 @@
 from mapdisp.frame import MapFrame
 from core.render import Map
 from wxplot.histogram import HistogramPlotFrame
-from core.utils import GetLayerNameFromCmd, ltype2command, _
+from core.utils import GetLayerNameFromCmd, ltype2command
 from wxplot.profile import ProfileFrame
 from core.debug import Debug
 from core.settings import UserSettings, GetDisplayVectSettings

Modified: grass/trunk/gui/wxpython/lmgr/menudata.py
===================================================================
--- grass/trunk/gui/wxpython/lmgr/menudata.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/lmgr/menudata.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 from core.toolboxes import getMenudataFile, getMessages, clearMessages
 from core.globalvar import WXGUIDIR
 from core.gcmd import GError
-from core.utils import _
 
 
 class LayerManagerMenuData(MenuTreeModelBuilder):

Modified: grass/trunk/gui/wxpython/lmgr/pyshell.py
===================================================================
--- grass/trunk/gui/wxpython/lmgr/pyshell.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/lmgr/pyshell.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -29,7 +29,6 @@
 import grass.script as grass
 from grass.script.utils import try_remove
 
-from core.utils import _
 from gui_core.wrap import Button
 
 

Modified: grass/trunk/gui/wxpython/lmgr/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/lmgr/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/lmgr/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,6 @@
 from core.gcmd import RunCommand
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from icons.icon import MetaIcon
-from core.utils import _
 
 
 class LMWorkspaceToolbar(BaseToolbar):

Modified: grass/trunk/gui/wxpython/location_wizard/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/location_wizard/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/location_wizard/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -24,7 +24,6 @@
 
 from core import globalvar
 from core.gcmd import RunCommand
-from core.utils import _
 from location_wizard.base import BaseClass
 from gui_core.wrap import Button, StaticText, StaticBox, \
     TextCtrl

Modified: grass/trunk/gui/wxpython/location_wizard/wizard.py
===================================================================
--- grass/trunk/gui/wxpython/location_wizard/wizard.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/location_wizard/wizard.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -51,7 +51,6 @@
 import wx.lib.scrolledpanel as scrolled
 
 from core import utils
-from core.utils import _
 from core.utils import cmp
 from core.gcmd import RunCommand, GError, GMessage, GWarning
 from gui_core.widgets import GenericValidator

Modified: grass/trunk/gui/wxpython/mapdisp/frame.py
===================================================================
--- grass/trunk/gui/wxpython/mapdisp/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapdisp/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -33,7 +33,7 @@
 from mapdisp.toolbars import MapToolbar, NvizIcons
 from mapdisp.gprint import PrintOptions
 from core.gcmd import GError, GMessage, RunCommand
-from core.utils import ListOfCatsToRange, GetLayerNameFromCmd, _
+from core.utils import ListOfCatsToRange, GetLayerNameFromCmd
 from gui_core.dialogs import GetImageHandlers, ImageSizeDialog
 from core.debug import Debug
 from core.settings import UserSettings

Modified: grass/trunk/gui/wxpython/mapdisp/gprint.py
===================================================================
--- grass/trunk/gui/wxpython/mapdisp/gprint.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapdisp/gprint.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -19,7 +19,6 @@
 import wx
 
 from core.gcmd import GMessage
-from core.utils import _
 
 
 class MapPrint(wx.Printout):

Modified: grass/trunk/gui/wxpython/mapdisp/main.py
===================================================================
--- grass/trunk/gui/wxpython/mapdisp/main.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapdisp/main.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -45,7 +45,6 @@
 from core.giface import StandaloneGrassInterface
 from core.gcmd import RunCommand
 from core.render import Map, MapLayer, Overlay, RenderMapMgr
-from core.utils import _
 from mapdisp.frame import MapFrame
 from core.debug import Debug
 from core.settings import UserSettings

Modified: grass/trunk/gui/wxpython/mapdisp/statusbar.py
===================================================================
--- grass/trunk/gui/wxpython/mapdisp/statusbar.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapdisp/statusbar.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -37,7 +37,6 @@
 from core import utils
 from core.gcmd import GMessage, RunCommand
 from core.settings import UserSettings
-from core.utils import _
 from gui_core.wrap import StaticText, TextCtrl
 
 from grass.script import core as grass

Modified: grass/trunk/gui/wxpython/mapdisp/test_mapdisp.py
===================================================================
--- grass/trunk/gui/wxpython/mapdisp/test_mapdisp.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapdisp/test_mapdisp.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -58,7 +58,6 @@
 from grass.script.setup import set_gui_path
 set_gui_path()
 
-from core.utils import _
 from core.settings import UserSettings
 from core.globalvar import CheckWxVersion
 from core.giface import StandaloneGrassInterface

Modified: grass/trunk/gui/wxpython/mapdisp/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/mapdisp/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapdisp/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,7 +22,6 @@
 from nviz.main import haveNviz
 from vdigit.main import haveVDigit
 from icons.icon import MetaIcon
-from core.utils import _
 
 MapIcons = {
     'query': MetaIcon(img='info',

Modified: grass/trunk/gui/wxpython/mapswipe/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/mapswipe/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapswipe/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 import wx.lib.colourselect as csel
 
 from core import globalvar
-from core.utils import _
 from gui_core import gselect
 from gui_core.widgets import SimpleValidator
 from gui_core.preferences import PreferencesBaseDialog

Modified: grass/trunk/gui/wxpython/mapswipe/frame.py
===================================================================
--- grass/trunk/gui/wxpython/mapswipe/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapswipe/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -29,7 +29,6 @@
 from mapdisp import statusbar as sb
 from core.debug import Debug
 from core.gcmd import GError, GMessage
-from core.utils import _
 from core.layerlist import LayerListToRendererConverter
 from gui_core.query import QueryDialog, PrepareQueryResults
 

Modified: grass/trunk/gui/wxpython/mapswipe/g.gui.mapswipe.py
===================================================================
--- grass/trunk/gui/wxpython/mapswipe/g.gui.mapswipe.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapswipe/g.gui.mapswipe.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -59,7 +59,6 @@
     from core.settings import UserSettings
     from core.globalvar import CheckWxVersion
     from core.giface import StandaloneGrassInterface
-    from core.utils import _
     from mapswipe.frame import SwipeMapFrame
 
     driver = UserSettings.Get(group='display', key='driver', subkey='type')

Modified: grass/trunk/gui/wxpython/mapswipe/mapwindow.py
===================================================================
--- grass/trunk/gui/wxpython/mapswipe/mapwindow.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapswipe/mapwindow.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 import wx
 
 from core.debug import Debug
-from core.utils import _
 from core.settings import UserSettings
 from mapwin.buffered import BufferedMapWindow
 from gui_core.wrap import Rect

Modified: grass/trunk/gui/wxpython/mapswipe/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/mapswipe/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapswipe/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from gui_core.wrap import Menu
 from icons.icon import MetaIcon
-from core.utils import _
 
 
 swipeIcons = {

Modified: grass/trunk/gui/wxpython/mapwin/analysis.py
===================================================================
--- grass/trunk/gui/wxpython/mapwin/analysis.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapwin/analysis.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 import math
 import wx
 
-from core.utils import _
 import core.units as units
 from core.gcmd import RunCommand
 from core.giface import Notification

Modified: grass/trunk/gui/wxpython/mapwin/base.py
===================================================================
--- grass/trunk/gui/wxpython/mapwin/base.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapwin/base.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -24,7 +24,6 @@
 
 from core.settings import UserSettings
 from core.gcmd import GError
-from core.utils import _
 from gui_core.wrap import StockCursor
 
 from grass.script import core as grass

Modified: grass/trunk/gui/wxpython/mapwin/buffered.py
===================================================================
--- grass/trunk/gui/wxpython/mapwin/buffered.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapwin/buffered.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -43,7 +43,7 @@
 from core.debug import Debug
 from core.settings import UserSettings
 from mapwin.base import MapWindowBase
-from core.utils import GetGEventAttribsForHandler, _
+from core.utils import GetGEventAttribsForHandler
 import core.utils as utils
 from mapwin.graphics import GraphicsSet
 from core.gthread import gThread

Modified: grass/trunk/gui/wxpython/mapwin/decorations.py
===================================================================
--- grass/trunk/gui/wxpython/mapwin/decorations.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapwin/decorations.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -19,7 +19,6 @@
 """
 
 import os
-from core.utils import _
 
 import wx
 

Modified: grass/trunk/gui/wxpython/mapwin/graphics.py
===================================================================
--- grass/trunk/gui/wxpython/mapwin/graphics.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/mapwin/graphics.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 
 import wx
 
-from core.utils import _
 
 
 class GraphicsSet:

Modified: grass/trunk/gui/wxpython/modules/colorrules.py
===================================================================
--- grass/trunk/gui/wxpython/modules/colorrules.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/modules/colorrules.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -38,7 +38,6 @@
 
 from core import globalvar
 from core import utils
-from core.utils import _
 from core.gcmd import GMessage, RunCommand, GError
 from gui_core.gselect import Select, LayerSelect, ColumnSelect, VectorDBInfo
 from core.render import Map

Modified: grass/trunk/gui/wxpython/modules/extensions.py
===================================================================
--- grass/trunk/gui/wxpython/modules/extensions.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/modules/extensions.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -27,7 +27,7 @@
 
 from core import globalvar
 from core.gcmd import GError, RunCommand, GException, GMessage
-from core.utils import SetAddOnPath, _
+from core.utils import SetAddOnPath
 from core.gthread import gThread
 from core.menutree import TreeModel, ModuleNode
 from gui_core.widgets import GListCtrl, SearchModuleWidget

Modified: grass/trunk/gui/wxpython/modules/histogram.py
===================================================================
--- grass/trunk/gui/wxpython/modules/histogram.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/modules/histogram.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -26,7 +26,7 @@
 from core.render import Map
 from gui_core.forms import GUI
 from mapdisp.gprint import PrintOptions
-from core.utils import GetLayerNameFromCmd, _
+from core.utils import GetLayerNameFromCmd
 from gui_core.dialogs import GetImageHandlers, ImageSizeDialog
 from gui_core.preferences import DefaultFontDialog
 from core.debug import Debug

Modified: grass/trunk/gui/wxpython/modules/import_export.py
===================================================================
--- grass/trunk/gui/wxpython/modules/import_export.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/modules/import_export.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -41,7 +41,7 @@
 from gui_core.gselect import OgrTypeSelect, GdalSelect, SubGroupSelect
 from gui_core.widgets import LayersList, GListCtrl, GNotebook
 from gui_core.wrap import Button, StaticText, StaticBox
-from core.utils import GetValidLayerName, _
+from core.utils import GetValidLayerName
 from core.settings import UserSettings, GetDisplayVectSettings
 
 

Modified: grass/trunk/gui/wxpython/modules/mapsets_picker.py
===================================================================
--- grass/trunk/gui/wxpython/modules/mapsets_picker.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/modules/mapsets_picker.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -6,7 +6,6 @@
 set_gui_path()
 
 from core.gcmd import RunCommand
-from core.utils import _
 from gui_core.preferences import MapsetAccess
 
 

Modified: grass/trunk/gui/wxpython/modules/mcalc_builder.py
===================================================================
--- grass/trunk/gui/wxpython/modules/mcalc_builder.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/modules/mcalc_builder.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,6 @@
 from core import globalvar
 from core.gcmd import GError, RunCommand
 from core.giface import StandaloneGrassInterface
-from core.utils import _
 from gui_core.gselect import Select
 from gui_core.forms import GUI
 from gui_core.widgets import IntegerValidator

Modified: grass/trunk/gui/wxpython/modules/vclean.py
===================================================================
--- grass/trunk/gui/wxpython/modules/vclean.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/modules/vclean.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 
 from core.gcmd import RunCommand, GError
 from core import globalvar
-from core.utils import _
 from gui_core.gselect import Select
 from core.settings import UserSettings
 from grass.script import core as grass

Modified: grass/trunk/gui/wxpython/nviz/animation.py
===================================================================
--- grass/trunk/gui/wxpython/nviz/animation.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/nviz/animation.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 import wx
 
 from grass.pydispatch.signal import Signal
-from core.utils import _
 
 
 class Animation:

Modified: grass/trunk/gui/wxpython/nviz/mapwindow.py
===================================================================
--- grass/trunk/gui/wxpython/nviz/mapwindow.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/nviz/mapwindow.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -43,7 +43,7 @@
 from nviz.animation import Animation
 from nviz import wxnviz
 from core.globalvar import CheckWxVersion
-from core.utils import str2rgb, _
+from core.utils import str2rgb
 from core.giface import Notification
 
 wxUpdateProperties, EVT_UPDATE_PROP = NewEvent()

Modified: grass/trunk/gui/wxpython/nviz/preferences.py
===================================================================
--- grass/trunk/gui/wxpython/nviz/preferences.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/nviz/preferences.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -24,7 +24,6 @@
 
 from core import globalvar
 from core.settings import UserSettings
-from core.utils import _
 from gui_core.preferences import PreferencesBaseDialog
 from gui_core.wrap import SpinCtrl, Button, CheckBox, StaticText, \
     StaticBox

Modified: grass/trunk/gui/wxpython/nviz/tools.py
===================================================================
--- grass/trunk/gui/wxpython/nviz/tools.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/nviz/tools.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -46,7 +46,6 @@
 import grass.script as grass
 
 from core import globalvar
-from core.utils import _
 from gui_core.gselect import VectorDBInfo
 from core.gcmd import GMessage, RunCommand
 from modules.colorrules import ThematicVectorTable

Modified: grass/trunk/gui/wxpython/nviz/workspace.py
===================================================================
--- grass/trunk/gui/wxpython/nviz/workspace.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/nviz/workspace.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -18,7 +18,6 @@
 import six
 
 from core.settings import UserSettings
-from core.utils import _
 
 try:
     from nviz import wxnviz

Modified: grass/trunk/gui/wxpython/nviz/wxnviz.py
===================================================================
--- grass/trunk/gui/wxpython/nviz/wxnviz.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/nviz/wxnviz.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -58,7 +58,7 @@
     print("wxnviz.py: {}".format(e), file=sys.stderr)
 
 from core.debug import Debug
-from core.utils import _, autoCropImageFromFile
+from core.utils import autoCropImageFromFile
 from core.gcmd import EncodeString, DecodeString
 from core.globalvar import wxPythonPhoenix
 from gui_core.wrap import Rect

Modified: grass/trunk/gui/wxpython/photo2image/ip2i_manager.py
===================================================================
--- grass/trunk/gui/wxpython/photo2image/ip2i_manager.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/photo2image/ip2i_manager.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -47,7 +47,6 @@
 
 from core import utils
 from core.render import Map
-from core.utils import _
 from gui_core.gselect import Select, LocationSelect, MapsetSelect
 from gui_core.dialogs import GroupDialog
 from core.gcmd import RunCommand, GMessage, GError, GWarning, EncodeString

Modified: grass/trunk/gui/wxpython/photo2image/ip2i_mapdisplay.py
===================================================================
--- grass/trunk/gui/wxpython/photo2image/ip2i_mapdisplay.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/photo2image/ip2i_mapdisplay.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -27,7 +27,6 @@
 from gcp.toolbars import GCPDisplayToolbar, GCPManToolbar
 from mapdisp.gprint import PrintOptions
 from core.gcmd import GMessage
-from core.utils import _
 from gui_core.dialogs import GetImageHandlers, ImageSizeDialog
 from gui_core.mapdisp import SingleMapFrame
 from gui_core.wrap import Menu

Modified: grass/trunk/gui/wxpython/photo2image/ip2i_statusbar.py
===================================================================
--- grass/trunk/gui/wxpython/photo2image/ip2i_statusbar.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/photo2image/ip2i_statusbar.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 import wx
 
 from core.gcmd import GMessage
-from core.utils import _
 from mapdisp.statusbar import SbItem, SbTextItem
 from gui_core.wrap import SpinCtrl
 

Modified: grass/trunk/gui/wxpython/photo2image/ip2i_toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/photo2image/ip2i_toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/photo2image/ip2i_toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -21,7 +21,6 @@
 import wx
 
 from core import globalvar
-from core.utils import _
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from icons.icon import MetaIcon
 

Modified: grass/trunk/gui/wxpython/psmap/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/psmap/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/psmap/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -67,7 +67,7 @@
 
 import grass.script as grass
 
-from core.utils import _, PilImageToWxImage
+from core.utils import PilImageToWxImage
 from dbmgr.vinfo import VectorDBInfo
 from gui_core.gselect import Select
 from core.gcmd import RunCommand, GError, GMessage

Modified: grass/trunk/gui/wxpython/psmap/frame.py
===================================================================
--- grass/trunk/gui/wxpython/psmap/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/psmap/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -38,7 +38,7 @@
 from psmap.toolbars import PsMapToolbar
 from core.gcmd import RunCommand, GError, GMessage
 from core.settings import UserSettings
-from core.utils import _, PilImageToWxImage
+from core.utils import PilImageToWxImage
 from gui_core.forms import GUI
 from gui_core.dialogs import HyperlinkDialog
 from gui_core.ghelp import ShowAboutDialog

Modified: grass/trunk/gui/wxpython/psmap/instructions.py
===================================================================
--- grass/trunk/gui/wxpython/psmap/instructions.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/psmap/instructions.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -43,7 +43,7 @@
 from grass.script.task import cmdlist_to_tuple
 
 from core.gcmd import RunCommand, GError, GMessage, GWarning
-from core.utils import GetCmdString, _
+from core.utils import GetCmdString
 from dbmgr.vinfo import VectorDBInfo
 from psmap.utils import *
 

Modified: grass/trunk/gui/wxpython/psmap/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/psmap/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/psmap/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -19,7 +19,6 @@
 import wx
 
 from core import globalvar
-from core.utils import _
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from icons.icon import MetaIcon
 

Modified: grass/trunk/gui/wxpython/psmap/utils.py
===================================================================
--- grass/trunk/gui/wxpython/psmap/utils.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/psmap/utils.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -28,7 +28,6 @@
 
 import grass.script as grass
 from core.gcmd import RunCommand
-from core.utils import _
 
 
 class Rect2D(wx.Rect2D):

Modified: grass/trunk/gui/wxpython/rdigit/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/rdigit/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/rdigit/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -16,7 +16,6 @@
 
 import wx
 
-from core.utils import _
 from gui_core.gselect import Select
 from gui_core.wrap import Button, StaticText
 from core.gcmd import GWarning

Modified: grass/trunk/gui/wxpython/rdigit/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/rdigit/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/rdigit/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -16,7 +16,6 @@
 
 import wx
 
-from core.utils import _
 from gui_core.toolbars import BaseToolbar
 from icons.icon import MetaIcon
 from gui_core.widgets import FloatValidator

Modified: grass/trunk/gui/wxpython/rlisetup/frame.py
===================================================================
--- grass/trunk/gui/wxpython/rlisetup/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/rlisetup/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -9,7 +9,6 @@
 import os
 
 from core import globalvar, gcmd
-from core.utils import _
 from grass.script.utils import try_remove
 from rlisetup.functions import retRLiPath
 from rlisetup.wizard import RLIWizard

Modified: grass/trunk/gui/wxpython/rlisetup/sampling_frame.py
===================================================================
--- grass/trunk/gui/wxpython/rlisetup/sampling_frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/rlisetup/sampling_frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -36,7 +36,6 @@
 except ImportError:
     pass
 
-from core.utils import _
 from core.giface import StandaloneGrassInterface
 from mapwin.base import MapWindowProperties
 from mapwin.buffered import BufferedMapWindow

Modified: grass/trunk/gui/wxpython/rlisetup/wizard.py
===================================================================
--- grass/trunk/gui/wxpython/rlisetup/wizard.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/rlisetup/wizard.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -34,7 +34,6 @@
 
 from gui_core import gselect
 from gui_core.wrap import Button, StaticText, TextCtrl
-from core.utils import _
 from location_wizard.wizard import TitledPage as TitledPage
 from rlisetup.functions import checkValue, retRLiPath
 from rlisetup.sampling_frame import RLiSetupMapPanel

Modified: grass/trunk/gui/wxpython/startup/locdownload.py
===================================================================
--- grass/trunk/gui/wxpython/startup/locdownload.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/startup/locdownload.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -42,7 +42,6 @@
 set_gui_path()
 
 from core.debug import Debug
-from core.utils import _
 from core.gthread import gThread
 from gui_core.wrap import Button, StaticText
 

Modified: grass/trunk/gui/wxpython/timeline/frame.py
===================================================================
--- grass/trunk/gui/wxpython/timeline/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/timeline/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -41,7 +41,6 @@
                         '(python-matplotlib) package to be installed. {0}').format(e))
 
 import grass.script as grass
-from core.utils import _
 
 import grass.temporal as tgis
 from core.gcmd import GError, GException, RunCommand

Modified: grass/trunk/gui/wxpython/tplot/frame.py
===================================================================
--- grass/trunk/gui/wxpython/tplot/frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/tplot/frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -27,7 +27,6 @@
 from grass.pygrass.modules import Module
 
 import grass.script as grass
-from core.utils import _
 from functools import reduce
 
 try:
@@ -45,7 +44,6 @@
     raise ImportError(_('The Temporal Plot Tool needs the "matplotlib" '
                         '(python-matplotlib) package to be installed. {0}').format(e))
 
-from core.utils import _
 
 import grass.temporal as tgis
 from core.gcmd import GMessage, GError, GException, RunCommand

Modified: grass/trunk/gui/wxpython/tplot/g.gui.tplot.py
===================================================================
--- grass/trunk/gui/wxpython/tplot/g.gui.tplot.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/tplot/g.gui.tplot.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -114,7 +114,6 @@
     from grass.script.setup import set_gui_path
     set_gui_path()
 
-    from core.utils import _
     from core.giface import StandaloneGrassInterface
     try:
         from tplot.frame import TplotFrame

Modified: grass/trunk/gui/wxpython/vdigit/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/vdigit/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vdigit/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -28,7 +28,6 @@
 from core.gcmd import RunCommand, GError
 from core.debug import Debug
 from core.settings import UserSettings
-from core.utils import _
 from gui_core.wrap import SpinCtrl, Button, StaticText, \
     StaticBox, Menu
 

Modified: grass/trunk/gui/wxpython/vdigit/g.gui.vdigit.py
===================================================================
--- grass/trunk/gui/wxpython/vdigit/g.gui.vdigit.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vdigit/g.gui.vdigit.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -51,7 +51,6 @@
     set_gui_path()
 
     from core.globalvar import CheckWxVersion
-    from core.utils import _
     from core.render import Map
     from mapdisp.frame import MapFrame
     from mapdisp.main import DMonGrassInterface

Modified: grass/trunk/gui/wxpython/vdigit/mapwindow.py
===================================================================
--- grass/trunk/gui/wxpython/vdigit/mapwindow.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vdigit/mapwindow.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,7 @@
 from core.debug import Debug
 from mapwin.buffered import BufferedMapWindow
 from core.settings import UserSettings
-from core.utils import ListOfCatsToRange, _
+from core.utils import ListOfCatsToRange
 from core.globalvar import QUERYLAYER
 from vdigit.dialogs import VDigitCategoryDialog, VDigitZBulkDialog, VDigitDuplicatesDialog
 from gui_core import gselect

Modified: grass/trunk/gui/wxpython/vdigit/preferences.py
===================================================================
--- grass/trunk/gui/wxpython/vdigit/preferences.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vdigit/preferences.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,6 @@
 from gui_core.gselect import ColumnSelect
 from core.units import Units
 from core.settings import UserSettings
-from core.utils import _
 from gui_core.wrap import SpinCtrl, Button, StaticText, \
     StaticBox
 

Modified: grass/trunk/gui/wxpython/vdigit/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/vdigit/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vdigit/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -26,7 +26,6 @@
 from core.debug import Debug
 from core.settings import UserSettings
 from core.gcmd import GError, RunCommand
-from core.utils import _
 from icons.icon import MetaIcon
 from iclass.digit import IClassVDigit
 from core.giface import Notification

Modified: grass/trunk/gui/wxpython/vdigit/wxdigit.py
===================================================================
--- grass/trunk/gui/wxpython/vdigit/wxdigit.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vdigit/wxdigit.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -36,7 +36,6 @@
 from core.gcmd import GError
 from core.debug import Debug
 from core.settings import UserSettings
-from core.utils import _
 from vdigit.wxdisplay import DisplayDriver, GetLastError
 
 try:

Modified: grass/trunk/gui/wxpython/vdigit/wxdisplay.py
===================================================================
--- grass/trunk/gui/wxpython/vdigit/wxdisplay.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vdigit/wxdisplay.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -26,7 +26,6 @@
 
 from core.debug import Debug
 from core.settings import UserSettings
-from core.utils import _
 from gui_core.wrap import Rect
 
 try:

Modified: grass/trunk/gui/wxpython/vnet/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/vnet/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vnet/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -48,7 +48,6 @@
 from core import globalvar, utils
 from core.gcmd import RunCommand, GMessage
 from core.settings import UserSettings
-from core.utils import _
 
 from dbmgr.base import DbMgrBase
 from dbmgr.vinfo import VectorDBInfo

Modified: grass/trunk/gui/wxpython/vnet/toolbars.py
===================================================================
--- grass/trunk/gui/wxpython/vnet/toolbars.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vnet/toolbars.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,7 +22,6 @@
 from icons.icon import MetaIcon
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from core.gcmd import RunCommand
-from core.utils import _
 
 
 class PointListToolbar(BaseToolbar):

Modified: grass/trunk/gui/wxpython/vnet/vnet_core.py
===================================================================
--- grass/trunk/gui/wxpython/vnet/vnet_core.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vnet/vnet_core.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -30,7 +30,6 @@
 from core import utils
 from core.gcmd import RunCommand, GMessage
 from core.gconsole import CmdThread, EVT_CMD_DONE, GConsole
-from core.utils import _
 
 from gui_core.gselect import VectorDBInfo
 

Modified: grass/trunk/gui/wxpython/vnet/vnet_data.py
===================================================================
--- grass/trunk/gui/wxpython/vnet/vnet_data.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vnet/vnet_data.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -37,7 +37,6 @@
 from core import utils
 from core.gcmd import RunCommand, GMessage
 from core.settings import UserSettings
-from core.utils import _
 
 from vnet.vnet_utils import ParseMapStr, SnapToNode
 

Modified: grass/trunk/gui/wxpython/vnet/vnet_utils.py
===================================================================
--- grass/trunk/gui/wxpython/vnet/vnet_utils.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vnet/vnet_utils.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,7 +20,6 @@
 
 import math
 from grass.script import core as grass
-from core.utils import _
 
 try:
     import grass.lib.vector as vectlib

Modified: grass/trunk/gui/wxpython/vnet/widgets.py
===================================================================
--- grass/trunk/gui/wxpython/vnet/widgets.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/vnet/widgets.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -28,7 +28,6 @@
     ListCtrlAutoWidthMixin, TextEditMixin
 
 from core import globalvar
-from core.utils import _
 from gui_core.wrap import Button, StaticText, StaticBox, TextCtrl
 
 if sys.version_info.major >= 3:

Modified: grass/trunk/gui/wxpython/web_services/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/web_services/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/web_services/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -33,7 +33,7 @@
 from core import globalvar
 from core.debug import Debug
 from core.gcmd import GMessage, GWarning, GError, RunCommand
-from core.utils import GetSettingsPath, _
+from core.utils import GetSettingsPath
 from core.gconsole import CmdThread, GStderr, EVT_CMD_DONE, EVT_CMD_OUTPUT
 
 from gui_core.gselect import Select

Modified: grass/trunk/gui/wxpython/web_services/widgets.py
===================================================================
--- grass/trunk/gui/wxpython/web_services/widgets.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/web_services/widgets.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -50,7 +50,6 @@
 from core.debug import Debug
 from core.gcmd import GWarning, GMessage
 from core.gconsole import CmdThread, GStderr, EVT_CMD_DONE, EVT_CMD_OUTPUT
-from core.utils import _
 
 from web_services.cap_interface import WMSCapabilities, WMTSCapabilities, OnEarthCapabilities
 

Modified: grass/trunk/gui/wxpython/wxgui.py
===================================================================
--- grass/trunk/gui/wxpython/wxgui.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/wxgui.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -24,12 +24,15 @@
 import getopt
 import atexit
 
-from core import globalvar
-from core.utils import _, registerPid, unregisterPid
-
+# i18n is taken care of in the grass library code.
+# So we need to import it before any of the GUI code.
 from grass.exceptions import Usage
 from grass.script.core import set_raise_on_error
 
+from core import globalvar
+from core.utils import registerPid, unregisterPid
+
+
 import wx
 try:
     import wx.lib.agw.advancedsplash as SC

Modified: grass/trunk/gui/wxpython/wxplot/base.py
===================================================================
--- grass/trunk/gui/wxpython/wxplot/base.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/wxplot/base.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -29,7 +29,6 @@
 from icons.icon import MetaIcon
 from gui_core.toolbars import BaseIcons
 from gui_core.wrap import Menu
-from core.utils import _
 
 import grass.script as grass
 

Modified: grass/trunk/gui/wxpython/wxplot/dialogs.py
===================================================================
--- grass/trunk/gui/wxpython/wxplot/dialogs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/wxplot/dialogs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -28,7 +28,6 @@
 from core import globalvar
 from core.settings import UserSettings
 from core.globalvar import ICONDIR
-from core.utils import _
 from gui_core.gselect import Select
 from gui_core.wrap import SpinCtrl, Button, StaticText, \
     StaticBox, TextCtrl, Choice

Modified: grass/trunk/gui/wxpython/wxplot/histogram.py
===================================================================
--- grass/trunk/gui/wxpython/wxplot/histogram.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/wxplot/histogram.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -26,7 +26,6 @@
 from wxplot.base import BasePlotFrame, PlotIcons
 from wxplot.dialogs import HistRasterDialog, PlotStatsFrame
 from core.gcmd import RunCommand, GException, GError
-from core.utils import _
 
 
 class HistogramPlotFrame(BasePlotFrame):

Modified: grass/trunk/gui/wxpython/wxplot/profile.py
===================================================================
--- grass/trunk/gui/wxpython/wxplot/profile.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/wxplot/profile.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,7 +25,6 @@
 
 import gui_core.wxlibplot as plot
 import grass.script as grass
-from core.utils import _
 from wxplot.base import BasePlotFrame, PlotIcons
 from gui_core.toolbars import BaseToolbar, BaseIcons
 from gui_core.wrap import StockCursor

Modified: grass/trunk/gui/wxpython/wxplot/scatter.py
===================================================================
--- grass/trunk/gui/wxpython/wxplot/scatter.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/gui/wxpython/wxplot/scatter.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -26,7 +26,6 @@
 from gui_core.wrap import StockCursor
 from wxplot.dialogs import ScatterRasterDialog, PlotStatsFrame
 from core.gcmd import RunCommand, GException, GError, GMessage
-from core.utils import _
 
 
 class ScatterFrame(BasePlotFrame):

Modified: grass/trunk/lib/python/__init__.py
===================================================================
--- grass/trunk/lib/python/__init__.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/__init__.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -1,4 +1,27 @@
+import gettext
 import os
+
+# Setup i18N
+#
+# Calling `gettext.install()` injects `_()` in the builtins namespace and
+# thus it becomes available globally (i.e. in the same process). Any python
+# code that needs to use _() should make sure that it firsts imports this
+# library.
+#
+# Note: we need to do this at the beginning of this module in order to
+# ensure that the injection happens before anything else gets imported.
+#
+# For more info please check the following links:
+# - https://docs.python.org/2/library/gettext.html#gettext.install
+# - https://pymotw.com/2//gettext/index.html#application-vs-module-localization
+# - https://www.wefearchange.org/2012/06/the-right-way-to-internationalize-your.html
+#
+_LOCALE_DIR = os.path.join(os.getenv("GISBASE"), 'locale')
+gettext.install('grasslibs', _LOCALE_DIR)
+gettext.install('grassmods', _LOCALE_DIR)
+gettext.install('grasswxpy', _LOCALE_DIR)
+
+
 __all__ = ["script", "temporal"]
 if os.path.exists(os.path.join(os.path.dirname(__file__), "lib", "__init__.py")):
     __all__.append("lib")

Modified: grass/trunk/lib/python/script/core.py
===================================================================
--- grass/trunk/lib/python/script/core.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/script/core.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -33,23 +33,11 @@
 from .utils import KeyValue, parse_key_val, basename, encode, decode
 from grass.exceptions import ScriptError, CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grasslibs', os.path.join(os.getenv("GISBASE"), 'locale'))
-
-try:
-    # python2
-    import __builtin__
-    __builtin__.__dict__['_'] = __builtin__.__dict__['_'].__self__.ugettext
-except ImportError:
-    # python3
-    import builtins as __builtin__
+# PY2/PY3 compat
+if sys.version_info.major > 2:
     unicode = str
-    __builtin__.__dict__['_'] = __builtin__.__dict__['_'].__self__.gettext
 
 # subprocess wrapper that uses shell on Windows
-
-
 class Popen(subprocess.Popen):
     _builtin_exts = set(['.com', '.exe', '.bat', '.cmd'])
 

Modified: grass/trunk/lib/python/temporal/abstract_map_dataset.py
===================================================================
--- grass/trunk/lib/python/temporal/abstract_map_dataset.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/abstract_map_dataset.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -11,7 +11,7 @@
 :authors: Soeren Gebbert
 """
 from __future__ import print_function
-import gettext
+
 from grass.exceptions import ImplementationError
 from datetime import datetime
 from abc import ABCMeta, abstractmethod

Modified: grass/trunk/lib/python/temporal/abstract_space_time_dataset.py
===================================================================
--- grass/trunk/lib/python/temporal/abstract_space_time_dataset.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/abstract_space_time_dataset.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -16,7 +16,6 @@
 import os
 import copy
 from datetime import datetime
-import gettext
 from abc import ABCMeta, abstractmethod
 from .core import init_dbif, get_sql_template_path, get_tgis_metadata, get_current_mapset, \
     get_enable_mapset_check

Modified: grass/trunk/lib/python/temporal/aggregation.py
===================================================================
--- grass/trunk/lib/python/temporal/aggregation.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/aggregation.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -17,7 +17,6 @@
 :author: Soeren Gebbert
 """
 
-import gettext
 import grass.script as gscript
 from grass.exceptions import CalledModuleError
 from .space_time_datasets import RasterDataset

Modified: grass/trunk/lib/python/temporal/c_libraries_interface.py
===================================================================
--- grass/trunk/lib/python/temporal/c_libraries_interface.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/c_libraries_interface.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -12,7 +12,6 @@
 """
 
 from grass.exceptions import FatalError
-import gettext
 import sys
 from multiprocessing import Process, Lock, Pipe
 import logging

Modified: grass/trunk/lib/python/temporal/core.py
===================================================================
--- grass/trunk/lib/python/temporal/core.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/core.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -32,9 +32,6 @@
 import os
 import sys
 import grass.script as gscript
-# i18N
-import gettext
-gettext.install('grasslibs', os.path.join(os.getenv("GISBASE"), 'locale'))
 
 if sys.version_info.major == 3:
     long = int

Modified: grass/trunk/lib/python/temporal/extract.py
===================================================================
--- grass/trunk/lib/python/temporal/extract.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/extract.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -8,8 +8,6 @@
 
 :authors: Soeren Gebbert
 """
-# i18N
-import gettext
 from .core import get_tgis_message_interface, get_current_mapset, SQLDatabaseInterfaceConnection
 from .abstract_map_dataset import AbstractMapDataset
 from .open_stds import open_old_stds, check_new_stds, open_new_stds

Modified: grass/trunk/lib/python/temporal/factory.py
===================================================================
--- grass/trunk/lib/python/temporal/factory.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/factory.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -17,8 +17,6 @@
 
 :authors: Soeren Gebbert
 """
-# i18N
-import gettext
 from .core import get_tgis_message_interface
 from .space_time_datasets import SpaceTimeRaster3DDataset, SpaceTimeRasterDataset, \
     SpaceTimeVectorDataset, Raster3DDataset, RasterDataset, VectorDataset

Modified: grass/trunk/lib/python/temporal/gui_support.py
===================================================================
--- grass/trunk/lib/python/temporal/gui_support.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/gui_support.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -9,8 +9,6 @@
 
 :authors: Soeren Gebbert
 """
-# i18N
-import gettext
 from .core import get_available_temporal_mapsets, init_dbif
 from .factory import dataset_factory
 import grass.script as gscript

Modified: grass/trunk/lib/python/temporal/list_stds.py
===================================================================
--- grass/trunk/lib/python/temporal/list_stds.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/list_stds.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -18,8 +18,6 @@
 :authors: Soeren Gebbert
 """
 from __future__ import print_function
-# i18N
-import gettext
 from .core import get_tgis_message_interface, get_available_temporal_mapsets, init_dbif
 from .datetime_math import time_delta_to_relative_time
 from .space_time_datasets import RasterDataset

Modified: grass/trunk/lib/python/temporal/mapcalc.py
===================================================================
--- grass/trunk/lib/python/temporal/mapcalc.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/mapcalc.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -8,8 +8,6 @@
 
 :authors: Soeren Gebbert
 """
-# i18N
-import gettext
 import copy
 from datetime import datetime
 from multiprocessing import Process

Modified: grass/trunk/lib/python/temporal/metadata.py
===================================================================
--- grass/trunk/lib/python/temporal/metadata.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/metadata.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,8 +22,6 @@
 :authors: Soeren Gebbert
 """
 from __future__ import print_function
-# i18N
-import gettext
 from .base import SQLDatabaseInterface
 from .core import init
 

Modified: grass/trunk/lib/python/temporal/open_stds.py
===================================================================
--- grass/trunk/lib/python/temporal/open_stds.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/open_stds.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -17,8 +17,6 @@
 
 :authors: Soeren Gebbert
 """
-# i18N
-import gettext
 from .core import init_dbif, get_current_mapset, get_tgis_message_interface
 from .factory import dataset_factory
 from .abstract_map_dataset import AbstractMapDataset

Modified: grass/trunk/lib/python/temporal/register.py
===================================================================
--- grass/trunk/lib/python/temporal/register.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/register.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -16,8 +16,6 @@
 
 :authors: Soeren Gebbert
 """
-# i18N
-import gettext
 from datetime import datetime
 import grass.script as gscript
 from .core import get_tgis_message_interface, init_dbif, get_current_mapset

Modified: grass/trunk/lib/python/temporal/sampling.py
===================================================================
--- grass/trunk/lib/python/temporal/sampling.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/sampling.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -17,8 +17,6 @@
 :authors: Soeren Gebbert
 """
 from __future__ import print_function
-# i18N
-import gettext
 from .core import get_current_mapset, get_tgis_message_interface, SQLDatabaseInterfaceConnection
 from .datetime_math import time_delta_to_relative_time
 from .factory import dataset_factory

Modified: grass/trunk/lib/python/temporal/space_time_datasets.py
===================================================================
--- grass/trunk/lib/python/temporal/space_time_datasets.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/space_time_datasets.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -8,8 +8,6 @@
 
 :authors: Soeren Gebbert
 """
-# i18N
-import gettext
 import getpass
 from datetime import datetime
 from .core import get_current_mapset

Modified: grass/trunk/lib/python/temporal/spatial_extent.py
===================================================================
--- grass/trunk/lib/python/temporal/spatial_extent.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/spatial_extent.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -34,8 +34,6 @@
 :authors: Soeren Gebbert
 """
 from __future__ import print_function
-# i18N
-import gettext
 from .base import SQLDatabaseInterface
 from .core import init
 from datetime import datetime

Modified: grass/trunk/lib/python/temporal/spatio_temporal_relationships.py
===================================================================
--- grass/trunk/lib/python/temporal/spatio_temporal_relationships.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/spatio_temporal_relationships.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -18,8 +18,6 @@
 :authors: Soeren Gebbert
 """
 from __future__ import print_function
-# i18N
-import gettext
 from datetime import datetime
 from .core import init_dbif
 from .abstract_dataset import AbstractDatasetComparisonKeyStartTime

Modified: grass/trunk/lib/python/temporal/stds_export.py
===================================================================
--- grass/trunk/lib/python/temporal/stds_export.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/stds_export.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,8 +25,6 @@
 :authors: Soeren Gebbert
 """
 
-# i18N
-import gettext
 import shutil
 import os
 import tarfile

Modified: grass/trunk/lib/python/temporal/stds_import.py
===================================================================
--- grass/trunk/lib/python/temporal/stds_import.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/stds_import.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -29,8 +29,6 @@
 :authors: Soeren Gebbert
 """
 
-# i18N
-import gettext
 import os
 import os.path
 import tarfile

Modified: grass/trunk/lib/python/temporal/temporal_algebra.py
===================================================================
--- grass/trunk/lib/python/temporal/temporal_algebra.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/temporal_algebra.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -446,8 +446,6 @@
 except:
     pass
 
-# i18N
-import gettext
 import os
 import copy
 from datetime import datetime

Modified: grass/trunk/lib/python/temporal/temporal_extent.py
===================================================================
--- grass/trunk/lib/python/temporal/temporal_extent.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/temporal_extent.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -20,8 +20,6 @@
 :authors: Soeren Gebbert
 """
 from __future__ import print_function
-# i18N
-import gettext
 from .base import SQLDatabaseInterface
 from .core import init
 from datetime import datetime

Modified: grass/trunk/lib/python/temporal/temporal_granularity.py
===================================================================
--- grass/trunk/lib/python/temporal/temporal_granularity.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/temporal_granularity.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -18,8 +18,6 @@
 :authors: Soeren Gebbert
 """
 from __future__ import print_function
-# i18N
-import gettext
 from .datetime_math import *
 from .core import get_tgis_message_interface
 from functools import reduce

Modified: grass/trunk/lib/python/temporal/temporal_raster3d_algebra.py
===================================================================
--- grass/trunk/lib/python/temporal/temporal_raster3d_algebra.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/temporal_raster3d_algebra.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -18,8 +18,6 @@
 except:
     pass
 
-# i18N
-import gettext
 from .temporal_raster_base_algebra import TemporalRasterBaseAlgebraParser,\
     TemporalRasterAlgebraLexer
 import grass.pygrass.modules as pymod

Modified: grass/trunk/lib/python/temporal/temporal_raster_algebra.py
===================================================================
--- grass/trunk/lib/python/temporal/temporal_raster_algebra.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/lib/python/temporal/temporal_raster_algebra.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -59,8 +59,6 @@
 except:
     pass
 
-# i18N
-import gettext
 from .temporal_raster_base_algebra import TemporalRasterBaseAlgebraParser,\
     TemporalRasterAlgebraLexer
 import grass.pygrass.modules as pymod

Modified: grass/trunk/scripts/d.correlate/d.correlate.py
===================================================================
--- grass/trunk/scripts/d.correlate/d.correlate.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.correlate/d.correlate.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -32,11 +32,7 @@
 from grass.script import core as gcore
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     layers = options['map'].split(',')
 

Modified: grass/trunk/scripts/d.frame/d.frame.py
===================================================================
--- grass/trunk/scripts/d.frame/d.frame.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.frame/d.frame.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -70,10 +70,6 @@
 
 from grass.script.core import parser, read_command, fatal, debug, run_command, gisenv, warning, parse_command
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 # check if monitor is running
 
 
@@ -304,7 +300,6 @@
 if __name__ == "__main__":
     if len(sys.argv) == 2 and sys.argv[1] == '--doctest':
         import doctest
-        _ = str  # doctest gettext workaround
         sys.exit(doctest.testmod().failed)
     options, flags = parser()
     sys.exit(main())

Modified: grass/trunk/scripts/d.out.file/d.out.file.py
===================================================================
--- grass/trunk/scripts/d.out.file/d.out.file.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.out.file/d.out.file.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -40,12 +40,7 @@
 
 from grass.script import core as gcore
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     options, flags = gcore.parser()
     gisenv = gcore.gisenv()

Modified: grass/trunk/scripts/d.polar/d.polar.py
===================================================================
--- grass/trunk/scripts/d.polar/d.polar.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.polar/d.polar.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -52,11 +52,7 @@
 from grass.script.utils import try_remove, basename
 from grass.script import core as gcore
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def raster_map_required(name):
     if not gcore.find_file(name, 'cell')['file']:
         gcore.fatal(_("Raster map <%s> not found") % name)

Modified: grass/trunk/scripts/d.rast.edit/d.rast.edit.py
===================================================================
--- grass/trunk/scripts/d.rast.edit/d.rast.edit.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.rast.edit/d.rast.edit.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -79,11 +79,6 @@
 import atexit
 import grass.script as grass
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 try:
     import wxversion
     wxversion.select(['3.0', '2.8', '2.6'])

Modified: grass/trunk/scripts/d.rast.leg/d.rast.leg.py
===================================================================
--- grass/trunk/scripts/d.rast.leg/d.rast.leg.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.rast.leg/d.rast.leg.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -65,11 +65,7 @@
 import os
 import grass.script as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def make_frame(f, b, t, l, r):
     (fl, fr, ft, fb) = f
 

Modified: grass/trunk/scripts/d.redraw/d.redraw.py
===================================================================
--- grass/trunk/scripts/d.redraw/d.redraw.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.redraw/d.redraw.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -26,11 +26,7 @@
 from grass.script import core as grass
 from grass.script.utils import split
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     mon = grass.gisenv().get('MONITOR', None)
     if not mon:

Modified: grass/trunk/scripts/d.shade/d.shade.py
===================================================================
--- grass/trunk/scripts/d.shade/d.shade.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.shade/d.shade.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -43,12 +43,7 @@
 from grass.script import core as gcore
 from grass.exceptions import CalledModuleError
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     options, unused = gcore.parser()
 

Modified: grass/trunk/scripts/d.to.rast/d.to.rast.py
===================================================================
--- grass/trunk/scripts/d.to.rast/d.to.rast.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.to.rast/d.to.rast.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,12 +25,7 @@
 
 from grass.script import core as gcore
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     options, flags = gcore.parser()
     gisenv = gcore.gisenv()

Modified: grass/trunk/scripts/d.what.rast/d.what.rast.py
===================================================================
--- grass/trunk/scripts/d.what.rast/d.what.rast.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.what.rast/d.what.rast.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,12 +25,7 @@
 
 from grass.script import core as gcore
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     options, flags = gcore.parser()
     gisenv = gcore.gisenv()

Modified: grass/trunk/scripts/d.what.vect/d.what.vect.py
===================================================================
--- grass/trunk/scripts/d.what.vect/d.what.vect.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/d.what.vect/d.what.vect.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -25,12 +25,7 @@
 
 from grass.script import core as gcore
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     options, flags = gcore.parser()
     gisenv = gcore.gisenv()

Modified: grass/trunk/scripts/db.dropcolumn/db.dropcolumn.py
===================================================================
--- grass/trunk/scripts/db.dropcolumn/db.dropcolumn.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/db.dropcolumn/db.dropcolumn.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -41,12 +41,7 @@
 from grass.exceptions import CalledModuleError
 import grass.script as gscript
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     table = options['table']
     column = options['column']

Modified: grass/trunk/scripts/db.droptable/db.droptable.py
===================================================================
--- grass/trunk/scripts/db.droptable/db.droptable.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/db.droptable/db.droptable.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -46,12 +46,7 @@
 import grass.script as grass
 from grass.script.utils import encode
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     table = options['table']
     force = flags['f']

Modified: grass/trunk/scripts/db.in.ogr/db.in.ogr.py
===================================================================
--- grass/trunk/scripts/db.in.ogr/db.in.ogr.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/db.in.ogr/db.in.ogr.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -63,12 +63,7 @@
 from grass.script.utils import decode
 from grass.exceptions import CalledModuleError
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     input = options['input']
     db_table = options['db_table']

Modified: grass/trunk/scripts/db.out.ogr/db.out.ogr.py
===================================================================
--- grass/trunk/scripts/db.out.ogr/db.out.ogr.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/db.out.ogr/db.out.ogr.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -60,11 +60,7 @@
 from grass.script import core as gcore
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     input = options['input']
     layer = options['layer']

Modified: grass/trunk/scripts/db.test/db.test.py
===================================================================
--- grass/trunk/scripts/db.test/db.test.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/db.test/db.test.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -33,11 +33,7 @@
 from grass.script import db as grassdb
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     test_file = options['test']
 

Modified: grass/trunk/scripts/db.univar/db.univar.py
===================================================================
--- grass/trunk/scripts/db.univar/db.univar.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/db.univar/db.univar.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -61,12 +61,7 @@
 
 import grass.script as gscript
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     for ext in ['', '.sort']:
         gscript.try_remove(tmp + ext)

Modified: grass/trunk/scripts/g.extension/g.extension.py
===================================================================
--- grass/trunk/scripts/g.extension/g.extension.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/g.extension/g.extension.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -162,10 +162,6 @@
 from grass.script.utils import try_rmdir
 from grass.script import core as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 # temp dir
 REMOVE_TMPDIR = True
 PROXIES = {}
@@ -1791,7 +1787,6 @@
 if __name__ == "__main__":
     if len(sys.argv) == 2 and sys.argv[1] == '--doctest':
         import doctest
-        _ = str  # doctest gettext workaround
         sys.exit(doctest.testmod().failed)
     options, flags = grass.parser()
     global TMPDIR

Modified: grass/trunk/scripts/g.extension.all/g.extension.all.py
===================================================================
--- grass/trunk/scripts/g.extension.all/g.extension.all.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/g.extension.all/g.extension.all.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -47,11 +47,7 @@
 import grass.script as gscript
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def get_extensions():
     addon_base = os.getenv('GRASS_ADDON_BASE')
     if not addon_base:

Modified: grass/trunk/scripts/g.manual/g.manual.py
===================================================================
--- grass/trunk/scripts/g.manual/g.manual.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/g.manual/g.manual.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -60,11 +60,7 @@
 from grass.script.utils import basename
 from grass.script import core as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def start_browser(entry):
     if browser and \
        browser not in ('xdg-open', 'start') and \

Modified: grass/trunk/scripts/g.search.modules/g.search.modules.py
===================================================================
--- grass/trunk/scripts/g.search.modules/g.search.modules.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/g.search.modules/g.search.modules.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -68,10 +68,6 @@
 from grass.script.utils import diff_files, try_rmdir
 from grass.script import core as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 try:
     import xml.etree.ElementTree as etree
 except ImportError:

Modified: grass/trunk/scripts/i.colors.enhance/i.colors.enhance.py
===================================================================
--- grass/trunk/scripts/i.colors.enhance/i.colors.enhance.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/i.colors.enhance/i.colors.enhance.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -71,11 +71,6 @@
 
 import grass.script as gscript
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 try:
     # new for python 2.6, in 2.5 it may be easy_install'd.
     import multiprocessing as mp

Modified: grass/trunk/scripts/i.image.mosaic/i.image.mosaic.py
===================================================================
--- grass/trunk/scripts/i.image.mosaic/i.image.mosaic.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/i.image.mosaic/i.image.mosaic.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -36,12 +36,7 @@
 
 import grass.script as gscript
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def copy_colors(fh, map, offset):
     p = gscript.pipe_command('r.colors.out', map=map)
     for line in p.stdout:

Modified: grass/trunk/scripts/i.in.spotvgt/i.in.spotvgt.py
===================================================================
--- grass/trunk/scripts/i.in.spotvgt/i.in.spotvgt.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/i.in.spotvgt/i.in.spotvgt.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -53,11 +53,7 @@
 import grass.script as gscript
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 vrt = """<VRTDataset rasterXSize="$XSIZE" rasterYSize="$YSIZE">
  <SRS>GEOGCS["wgs84",DATUM["WGS_1984",SPHEROID["wgs84",6378137,298.257223563],TOWGS84[0.000,0.000,0.000]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]]</SRS>
    <GeoTransform>$WESTCORNER, $RESOLUTION, 0.0000000000000000e+00, $NORTHCORNER, 0.0000000000000e+00, -$RESOLUTION</GeoTransform>

Modified: grass/trunk/scripts/i.oif/i.oif.py
===================================================================
--- grass/trunk/scripts/i.oif/i.oif.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/i.oif/i.oif.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -45,11 +45,7 @@
 from grass.script.utils import parse_key_val
 from grass.script import core as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def oifcalc(sdev, corr, k1, k2, k3):
     grass.debug(_("Calculating OIF for combination: %s, %s, %s" % (k1, k2,
                                                                    k3)), 1)

Modified: grass/trunk/scripts/i.pansharpen/i.pansharpen.py
===================================================================
--- grass/trunk/scripts/i.pansharpen/i.pansharpen.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/i.pansharpen/i.pansharpen.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -98,13 +98,6 @@
 
 import grass.script as grass
 
-# i18N
-try:
-    import gettext
-    hasGetText = True
-    gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-except ImportError:
-    hasGetText = False
 
 def main():
     if not hasNumPy:
@@ -120,10 +113,6 @@
     bladjust  = flags['l']  # adjust blue channel
     sproc     = flags['s']  # serial processing
 
-    # Internationalization
-    if not hasGetText:
-        grass.warning(_("No gettext international language support"))
-
     # Checking bit depth
     bits = float(bits)
     if bits < 2 or bits > 30:

Modified: grass/trunk/scripts/i.spectral/i.spectral.py
===================================================================
--- grass/trunk/scripts/i.spectral/i.spectral.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/i.spectral/i.spectral.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -83,11 +83,7 @@
 from grass.script.utils import try_rmdir
 from grass.script import core as gcore
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     try_rmdir(tmp_dir)
 

Modified: grass/trunk/scripts/i.tasscap/i.tasscap.py
===================================================================
--- grass/trunk/scripts/i.tasscap/i.tasscap.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/i.tasscap/i.tasscap.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -78,10 +78,6 @@
 
 import grass.script as grass
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
 # weights for 6 Landsat bands: TM4, TM5, TM7, OLI
 # MODIS: Red, NIR1, Blue, Green, NIR2, SWIR1, SWIR2

Modified: grass/trunk/scripts/m.proj/m.proj.py
===================================================================
--- grass/trunk/scripts/m.proj/m.proj.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/m.proj/m.proj.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -98,11 +98,7 @@
 from grass.script.utils import separator, parse_key_val, encode, decode
 from grass.script import core as gcore
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 class TrThread(threading.Thread):
 
     def __init__(self, ifs, inf, outf):

Modified: grass/trunk/scripts/r.blend/r.blend.py
===================================================================
--- grass/trunk/scripts/r.blend/r.blend.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.blend/r.blend.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -47,11 +47,7 @@
 import string
 import grass.script as gscript
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     first = options['first']
     second = options['second']

Modified: grass/trunk/scripts/r.buffer.lowmem/r.buffer.lowmem.py
===================================================================
--- grass/trunk/scripts/r.buffer.lowmem/r.buffer.lowmem.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.buffer.lowmem/r.buffer.lowmem.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -48,9 +48,6 @@
 import grass.script as grass
 from grass.script.utils import encode
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
 scales = {
     'meters': 1.0,

Modified: grass/trunk/scripts/r.fillnulls/r.fillnulls.py
===================================================================
--- grass/trunk/scripts/r.fillnulls/r.fillnulls.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.fillnulls/r.fillnulls.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -116,10 +116,6 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 tmp_rmaps = list()
 tmp_vmaps = list()
 usermask = None

Modified: grass/trunk/scripts/r.grow/r.grow.py
===================================================================
--- grass/trunk/scripts/r.grow/r.grow.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.grow/r.grow.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -67,11 +67,7 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 # what to do in case of user break:
 def cleanup():
     for map in [temp_dist, temp_val]:

Modified: grass/trunk/scripts/r.import/r.import.py
===================================================================
--- grass/trunk/scripts/r.import/r.import.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.import/r.import.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -128,11 +128,7 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 # initialize global vars
 TMPLOC = None
 SRCGISRC = None

Modified: grass/trunk/scripts/r.in.aster/r.in.aster.py
===================================================================
--- grass/trunk/scripts/r.in.aster/r.in.aster.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.in.aster/r.in.aster.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -56,10 +56,6 @@
 import platform
 import grass.script as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 bands = {
     'L1A': {
         '1': "VNIR_Band1:ImageData",

Modified: grass/trunk/scripts/r.in.srtm/r.in.srtm.py
===================================================================
--- grass/trunk/scripts/r.in.srtm/r.in.srtm.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.in.srtm/r.in.srtm.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -136,11 +136,7 @@
 from grass.exceptions import CalledModuleError
 import zipfile as zfile
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     if not in_temp:
         return

Modified: grass/trunk/scripts/r.in.wms/r.in.wms.py
===================================================================
--- grass/trunk/scripts/r.in.wms/r.in.wms.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.in.wms/r.in.wms.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -181,11 +181,7 @@
 import grass.script as grass
 from grass.script.utils import decode
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def GetRegionParams(opt_region):
 
     # set region

Modified: grass/trunk/scripts/r.in.wms/wms_base.py
===================================================================
--- grass/trunk/scripts/r.in.wms/wms_base.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.in.wms/wms_base.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -31,11 +31,7 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 class WMSBase:
 
     def __init__(self):

Modified: grass/trunk/scripts/r.in.wms/wms_cap_parsers.py
===================================================================
--- grass/trunk/scripts/r.in.wms/wms_cap_parsers.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.in.wms/wms_cap_parsers.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -24,12 +24,7 @@
 import xml.etree.ElementTree as etree
 import grass.script as grass
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 class BaseCapabilitiesTree(etree.ElementTree):
 
     def __init__(self, cap_file):

Modified: grass/trunk/scripts/r.in.wms/wms_drv.py
===================================================================
--- grass/trunk/scripts/r.in.wms/wms_drv.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.in.wms/wms_drv.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -19,11 +19,6 @@
 import socket
 import grass.script as grass
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 from time import sleep
 
 try:

Modified: grass/trunk/scripts/r.in.wms/wms_gdal_drv.py
===================================================================
--- grass/trunk/scripts/r.in.wms/wms_gdal_drv.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.in.wms/wms_gdal_drv.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -16,10 +16,6 @@
 import os
 import grass.script as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 try:
     from osgeo import gdal
     from osgeo import gdalconst

Modified: grass/trunk/scripts/r.mask/r.mask.py
===================================================================
--- grass/trunk/scripts/r.mask/r.mask.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.mask/r.mask.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -74,11 +74,7 @@
 from grass.script.utils import encode
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     if tmp:
         grass.run_command('g.remove', flags='f', type='raster',

Modified: grass/trunk/scripts/r.pack/r.pack.py
===================================================================
--- grass/trunk/scripts/r.pack/r.pack.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.pack/r.pack.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -40,11 +40,7 @@
 from grass.script.utils import try_rmdir, try_remove
 from grass.script import core as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     try_rmdir(tmp)
 

Modified: grass/trunk/scripts/r.plane/r.plane.py
===================================================================
--- grass/trunk/scripts/r.plane/r.plane.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.plane/r.plane.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -67,12 +67,7 @@
 import string
 import grass.script as gscript
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     name = options['output']
     type = options['type']

Modified: grass/trunk/scripts/r.reclass.area/r.reclass.area.py
===================================================================
--- grass/trunk/scripts/r.reclass.area/r.reclass.area.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.reclass.area/r.reclass.area.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -78,10 +78,6 @@
 import grass.script as grass
 from grass.script.utils import decode, encode
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 TMPRAST = []
 
 

Modified: grass/trunk/scripts/r.rgb/r.rgb.py
===================================================================
--- grass/trunk/scripts/r.rgb/r.rgb.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.rgb/r.rgb.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -43,12 +43,7 @@
 
 import grass.script as gscript
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     options, unused = gscript.parser()
     input = options['input']

Modified: grass/trunk/scripts/r.shade/r.shade.py
===================================================================
--- grass/trunk/scripts/r.shade/r.shade.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.shade/r.shade.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -67,11 +67,7 @@
 from grass.script import raster as grast
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def remove(maps):
     """Remove raster maps"""
     gcore.run_command('g.remove', flags='f', quiet=True,

Modified: grass/trunk/scripts/r.tileset/r.tileset.py
===================================================================
--- grass/trunk/scripts/r.tileset/r.tileset.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.tileset/r.tileset.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -117,12 +117,7 @@
 from grass.script.utils import decode
 from grass.exceptions import CalledModuleError
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def bboxToPoints(bbox):
     """Make points that are the corners of a bounding box"""
     points = []

Modified: grass/trunk/scripts/r.unpack/r.unpack.py
===================================================================
--- grass/trunk/scripts/r.unpack/r.unpack.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r.unpack/r.unpack.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -49,11 +49,7 @@
 from grass.script.utils import diff_files, try_rmdir
 from grass.script import core as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     try_rmdir(tmp_dir)
 

Modified: grass/trunk/scripts/r3.in.xyz/r3.in.xyz.py
===================================================================
--- grass/trunk/scripts/r3.in.xyz/r3.in.xyz.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/r3.in.xyz/r3.in.xyz.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -174,11 +174,7 @@
 from grass.script import core as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     grass.run_command('g.remove', flags='f',
                       type="rast", pattern='tmp.r3xyz.%d.*' % os.getpid(),

Modified: grass/trunk/scripts/v.build.all/v.build.all.py
===================================================================
--- grass/trunk/scripts/v.build.all/v.build.all.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.build.all/v.build.all.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -22,12 +22,7 @@
 from grass.script import core as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     env = grass.gisenv()
     mapset = env['MAPSET']

Modified: grass/trunk/scripts/v.centroids/v.centroids.py
===================================================================
--- grass/trunk/scripts/v.centroids/v.centroids.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.centroids/v.centroids.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -52,12 +52,7 @@
 import sys
 import grass.script as gscript
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     if options['option'] == 'add':
         num_bound = gscript.vector_info_topo(map=options['input'])['boundaries']

Modified: grass/trunk/scripts/v.db.addcolumn/v.db.addcolumn.py
===================================================================
--- grass/trunk/scripts/v.db.addcolumn/v.db.addcolumn.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.addcolumn/v.db.addcolumn.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -45,11 +45,7 @@
 import grass.script as grass
 from grass.script.utils import encode
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     map = options['map']
     layer = options['layer']

Modified: grass/trunk/scripts/v.db.addtable/v.db.addtable.py
===================================================================
--- grass/trunk/scripts/v.db.addtable/v.db.addtable.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.addtable/v.db.addtable.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -59,11 +59,7 @@
 from grass.script.utils import decode
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     vector = options['map']
     table = options['table']

Modified: grass/trunk/scripts/v.db.dropcolumn/v.db.dropcolumn.py
===================================================================
--- grass/trunk/scripts/v.db.dropcolumn/v.db.dropcolumn.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.dropcolumn/v.db.dropcolumn.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -43,11 +43,7 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     map = options['map']
     layer = options['layer']

Modified: grass/trunk/scripts/v.db.droprow/v.db.droprow.py
===================================================================
--- grass/trunk/scripts/v.db.droprow/v.db.droprow.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.droprow/v.db.droprow.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -39,12 +39,7 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     # delete vectors via reverse selection
     try:

Modified: grass/trunk/scripts/v.db.droptable/v.db.droptable.py
===================================================================
--- grass/trunk/scripts/v.db.droptable/v.db.droptable.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.droptable/v.db.droptable.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -39,11 +39,7 @@
 import grass.script as gscript
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     force = flags['f']
     map = options['map']

Modified: grass/trunk/scripts/v.db.join/v.db.join.py
===================================================================
--- grass/trunk/scripts/v.db.join/v.db.join.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.join/v.db.join.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -61,12 +61,7 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     map = options['map']
     layer = options['layer']

Modified: grass/trunk/scripts/v.db.reconnect.all/v.db.reconnect.all.py
===================================================================
--- grass/trunk/scripts/v.db.reconnect.all/v.db.reconnect.all.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.reconnect.all/v.db.reconnect.all.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -56,10 +56,6 @@
 import grass.script as gscript
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 # substitute variables (gisdbase, location_name, mapset)
 
 

Modified: grass/trunk/scripts/v.db.renamecolumn/v.db.renamecolumn.py
===================================================================
--- grass/trunk/scripts/v.db.renamecolumn/v.db.renamecolumn.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.renamecolumn/v.db.renamecolumn.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -44,11 +44,7 @@
 import os
 import grass.script as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     map = options['map']
     layer = options['layer']

Modified: grass/trunk/scripts/v.db.univar/v.db.univar.py
===================================================================
--- grass/trunk/scripts/v.db.univar/v.db.univar.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.univar/v.db.univar.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -56,11 +56,7 @@
 import grass.script as gscript
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     global tmp
     tmp = gscript.tempfile()

Modified: grass/trunk/scripts/v.db.update/v.db.update.py
===================================================================
--- grass/trunk/scripts/v.db.update/v.db.update.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.db.update/v.db.update.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -56,11 +56,7 @@
 import os
 import grass.script as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     vector = options['map']
     layer = options['layer']

Modified: grass/trunk/scripts/v.dissolve/v.dissolve.py
===================================================================
--- grass/trunk/scripts/v.dissolve/v.dissolve.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.dissolve/v.dissolve.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -40,11 +40,7 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     nuldev = open(os.devnull, 'w')
     grass.run_command(

Modified: grass/trunk/scripts/v.import/v.import.py
===================================================================
--- grass/trunk/scripts/v.import/v.import.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.import/v.import.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -104,10 +104,6 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 # initialize global vars
 TMPLOC = None
 SRCGISRC = None

Modified: grass/trunk/scripts/v.in.e00/v.in.e00.py
===================================================================
--- grass/trunk/scripts/v.in.e00/v.in.e00.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.in.e00/v.in.e00.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -46,11 +46,7 @@
 from grass.script import core as gcore
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     filename = options['input']
     type = options['type']

Modified: grass/trunk/scripts/v.in.geonames/v.in.geonames.py
===================================================================
--- grass/trunk/scripts/v.in.geonames/v.in.geonames.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.in.geonames/v.in.geonames.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -37,11 +37,7 @@
 import os
 import grass.script as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     infile = options['input']
     outfile = options['output']

Modified: grass/trunk/scripts/v.in.lines/v.in.lines.py
===================================================================
--- grass/trunk/scripts/v.in.lines/v.in.lines.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.in.lines/v.in.lines.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -41,11 +41,7 @@
 from grass.script.utils import separator, try_remove
 from grass.script import core as grass
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     try_remove(tmp)
 

Modified: grass/trunk/scripts/v.in.mapgen/v.in.mapgen.py
===================================================================
--- grass/trunk/scripts/v.in.mapgen/v.in.mapgen.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.in.mapgen/v.in.mapgen.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -54,11 +54,7 @@
 from grass.script import core as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     try_remove(tmp)
     try_remove(tmp + '.dig')

Modified: grass/trunk/scripts/v.in.wfs/v.in.wfs.py
===================================================================
--- grass/trunk/scripts/v.in.wfs/v.in.wfs.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.in.wfs/v.in.wfs.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -85,11 +85,7 @@
     from urllib.request import urlopen
     from urllib.error import URLError, HTTPError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     out = options['output']
     wfs_url = options['url']

Modified: grass/trunk/scripts/v.pack/v.pack.py
===================================================================
--- grass/trunk/scripts/v.pack/v.pack.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.pack/v.pack.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -43,11 +43,7 @@
 from grass.script import core as grass
 from grass.script import vector as vector
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     try_rmdir(basedir)
 

Modified: grass/trunk/scripts/v.rast.stats/v.rast.stats.py
===================================================================
--- grass/trunk/scripts/v.rast.stats/v.rast.stats.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.rast.stats/v.rast.stats.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -78,11 +78,7 @@
 from grass.script.utils import decode
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     if rastertmp:
         grass.run_command('g.remove', flags='f', type='raster',

Modified: grass/trunk/scripts/v.report/v.report.py
===================================================================
--- grass/trunk/scripts/v.report/v.report.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.report/v.report.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -56,11 +56,7 @@
 import grass.script as grass
 from grass.script.utils import decode
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def uniq(l):
     result = []
     last = None

Modified: grass/trunk/scripts/v.to.lines/v.to.lines.py
===================================================================
--- grass/trunk/scripts/v.to.lines/v.to.lines.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.to.lines/v.to.lines.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -45,11 +45,7 @@
 from grass.exceptions import CalledModuleError
 import os
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def main():
     # Get the options
     input = options["input"]

Modified: grass/trunk/scripts/v.unpack/v.unpack.py
===================================================================
--- grass/trunk/scripts/v.unpack/v.unpack.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.unpack/v.unpack.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -53,11 +53,7 @@
 from grass.script import db as grassdb
 from grass.exceptions import CalledModuleError
 
-# i18N
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
 
-
 def cleanup():
     try_rmdir(tmp_dir)
 

Modified: grass/trunk/scripts/v.what.strds/v.what.strds.py
===================================================================
--- grass/trunk/scripts/v.what.strds/v.what.strds.py	2019-03-26 18:29:23 UTC (rev 74306)
+++ grass/trunk/scripts/v.what.strds/v.what.strds.py	2019-03-26 23:07:39 UTC (rev 74307)
@@ -52,11 +52,6 @@
 import grass.script as grass
 from grass.exceptions import CalledModuleError
 
-# i18N
-import os
-import gettext
-gettext.install('grassmods', os.path.join(os.getenv("GISBASE"), 'locale'))
-
 ############################################################################
 
 



More information about the grass-commit mailing list