+
+##############
+
+# pull in the custom overrides for feisty_meow scripts. this is done almost
+# last, because we want to set everything up as expected, then let the user
+# override individual variables and definitions. we also don't guard this
+# to avoid running it again, because we don't know what mix of functions and
+# aliases they want to define in there.
+for i in $FEISTY_MEOW_LOADING_DOCK/custom/*.sh; do
+ if [ ! -f "$i" ]; then
+ # skip it if it's not real.
+ continue;
+ fi
+ if [ ! -z "$DEBUG_FEISTY_MEOW" ]; then
+ echo "loading customization: $(basename $(dirname $i))/$(basename $i)"
+ fi
+ source "$i"
+done
+
+##############
+
+# a late breaking action is to set the editor, if we can.
+# we will fallback to whatever we can find on the host.
+export EDITOR
+# note: the editors for revision control must wait while the document is
+# edited, so gvim and others that launch a separate x window are not
+# going to work well unless they can be prevented from forking the process
+# off.
+if [ -z "$EDITOR" ]; then
+ EDITOR="$(which gvim)"
+ if [ ! -z "$EDITOR" ]; then
+ # if we found gvim, then add in the no forking flag.
+ EDITOR+=" --nofork"
+ fi
+fi
+if [ -z "$EDITOR" ]; then
+ EDITOR="$(which vim)"
+fi
+if [ -z "$EDITOR" ]; then
+ EDITOR="$(which vi)"
+fi
+if [ -z "$EDITOR" ]; then
+ EDITOR="$(which emacs)"