On 15.12.2014 12:33, Michel Wortmann wrote:

Hi Nikos, Hamish and list,
you guys played around with your commandline prompts last year (see
below), I was just implementing the same thing into my ~/.grass.bashrc
(GRASS 7.0.0b3) but found that the location and mapset arent actually
changed when changing them with g.mapset, i.e. .grass.bashrc isnt
actually executed again.
Whats the best way getting that to work with or without changing
source or $GISBASE files?

Hi Michel! How nice that someone else is doing this as well :-). I don't think I changed much since -- here is my current setup:

--%<---
SHORT_VER=`echo "$GRASS_VERSION" | cut -f1,2 -d. | sed -e 's/\.//'`
GDBASE=`g.gisenv get=GISDBASE | rev | cut -d"/" -f1 | rev`
GLOCATION=`g.gisenv get="LOCATION_NAME"`
GMAPSET=`g.gisenv get="MAPSET"`
export PROMPT_DIRTRIM=2
# export PS1='\e[32;40mG$SHORT_VER\e[0m [\e[34;40m${GLOCATION}\e[0m / \e[32;40m${GMAPSET}\e[0m] :\e[36;40m\w \e[0m[\#/\!] \n\r\e[32;40m>\e[0m ' export PS1='\[\e[32m\]G$SHORT_VER\[\e[0m\] [ ${GDBASE} / \[\e[33m\]${GLOCATION}\[\e[0m\] @\[\e[32;1m\]${GMAPSET}\[\e[0m\] ] : \[\e[36m\]\w \[\e[0m\][\#/\!]
\[\e[32;1m\]>\[\e[0m\] '
--->%--

and, you are right, the Mapset isn't updated. The Location, me thinks, should not change, or should only in special cases. We don't usually switch Location's from inside a grass session. We do switch Mapsets. But we should be careful because we need to manually instruct the use of the "new" history log once changed to another Mapset ("history -w; history -r" etc). Right?

Otherwise, I came with a stupid solution, a function inside "grass.bashrc" to re-source itself:

--%<---
# Re-Source Me!
g.src()
{
  source ~/.grass.bashrc
}
--->%--

I tested it and it works. Change a mapset and then `g.src` or whatever you might name it. Don't know if it's dangerous though.

Let us know if you come up with something smart. I would love to see a zsh like behaviour inside grass shell. Would be awesome.

Nikos

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to