new examples
[feisty_meow.git] / scripts / core / functions.sh
index 1cdcac4175137ebdaed6fe0b234ad034a3d8ee72..86d8999158c41a6f5df37ea10c13b0f219464272 100644 (file)
@@ -244,8 +244,15 @@ if [ -z "$skip_all" ]; then
     done
   }
   
-  function fix_alsa() {
-    sudo /etc/init.d/alsasound restart
+#  function fix_alsa() {
+#    sudo /etc/init.d/alsasound restart
+#  }
+
+  function screen() {
+    save_terminal_title
+#hmmm: ugly absolute path here.
+    /usr/bin/screen $*
+    restore_terminal_title
   }
   
   # switches from a /X/path form to an X:/ form.  this also processes cygwin paths.
@@ -353,6 +360,7 @@ if [ -z "$skip_all" ]; then
   # recreates all the generated files that the feisty meow scripts use.
   function regenerate() {
     # do the bootstrapping process again.
+    save_terminal_title
     echo "regenerating feisty meow script environment."
     bash $FEISTY_MEOW_SCRIPTS/core/reconfigure_feisty_meow.sh
     echo
@@ -364,26 +372,30 @@ if [ -z "$skip_all" ]; then
     source $FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh
     # run nechung oracle to give user a new fortune.
     nechung
+    restore_terminal_title
   }
 
   # copies a set of custom scripts into the proper location for feisty meow
   # to merge their functions and aliases with the standard set.
   function recustomize()
   {
-    user="$1"; shift
-    if [ -z "$user" ]; then
+    local custom_user="$1"; shift
+    if [ -z "$custom_user" ]; then
       # use our default example user if there was no name provided.
-      user=fred
+      custom_user=fred
     fi
-    if [ ! -d "$FEISTY_MEOW_APEX/customize/$user" ]; then
-      echo "The customization folder provided for $user should be:"
-      echo "  '$FEISTY_MEOW_APEX/customize/$user'"
+
+    save_terminal_title
+
+    if [ ! -d "$FEISTY_MEOW_SCRIPTS/customize/$custom_user" ]; then
+      echo "The customization folder provided for $custom_user should be:"
+      echo "  '$FEISTY_MEOW_SCRIPTS/customize/$custom_user'"
       echo "but that folder does not exist.  Skipping customization."
       return 1
     fi
     regenerate >/dev/null
     pushd "$FEISTY_MEOW_LOADING_DOCK/custom" &>/dev/null
-    incongruous_files="$(bash "$FEISTY_MEOW_SCRIPTS/files/list_non_dupes.sh" "$FEISTY_MEOW_APEX/customize/$user" "$FEISTY_MEOW_LOADING_DOCK/custom")"
+    incongruous_files="$(bash "$FEISTY_MEOW_SCRIPTS/files/list_non_dupes.sh" "$FEISTY_MEOW_SCRIPTS/customize/$custom_user" "$FEISTY_MEOW_LOADING_DOCK/custom")"
     
     #echo "the incongruous files list is: $incongruous_files"
     # disallow a single character result, since we get "*" as result when nothing exists yet.
@@ -393,15 +405,17 @@ if [ -z "$skip_all" ]; then
       echo
     fi
     popd &>/dev/null
-    echo "copying custom overrides for $user"
+    echo "copying custom overrides for $custom_user"
     mkdir -p "$FEISTY_MEOW_LOADING_DOCK/custom" 2>/dev/null
-    perl "$FEISTY_MEOW_SCRIPTS/text/cpdiff.pl" "$FEISTY_MEOW_APEX/customize/$user" "$FEISTY_MEOW_LOADING_DOCK/custom"
-    if [ -d "$FEISTY_MEOW_APEX/customize/$user/scripts" ]; then
-      echo "copying custom scripts for $user"
-      \cp -R "$FEISTY_MEOW_APEX/customize/$user/scripts" "$FEISTY_MEOW_LOADING_DOCK/custom/"
+    perl "$FEISTY_MEOW_SCRIPTS/text/cpdiff.pl" "$FEISTY_MEOW_SCRIPTS/customize/$custom_user" "$FEISTY_MEOW_LOADING_DOCK/custom"
+    if [ -d "$FEISTY_MEOW_SCRIPTS/customize/$custom_user/scripts" ]; then
+      echo "copying custom scripts for $custom_user"
+      \cp -R "$FEISTY_MEOW_SCRIPTS/customize/$custom_user/scripts" "$FEISTY_MEOW_LOADING_DOCK/custom/"
     fi
     echo
     regenerate
+
+    restore_terminal_title
   }
 
   # generates a random password where the first parameter is the number of characters
@@ -639,6 +653,17 @@ return 0
 
   ##############
 
+#hmmm: this points to an extended functions file being needed; not all of these are core.
+
+  # displays documentation in "md" formatted files.
+  function show_md()
+  {
+    local file="$1"; shift
+    pandoc "$file" | lynx -stdin
+  }
+
+  ##############
+
   # just shows a separator line for an 80 column console, or uses the first
   # parameter as the number of columns to expect.
   function separator()