barkuppier
[feisty_meow.git] / scripts / core / generate_aliases.pl
index 8e4a70cfa3d005dbe14512fe80f4de11a1224757..50e4bd5676780b0c0868382f63fd0671c2187962 100644 (file)
@@ -23,7 +23,7 @@
 
 require "filename_helper.pl";
 
-use Env qw(BINDIR BUILD_TOP FEISTY_MEOW_APEX FEISTY_MEOW_LOADING_DOCK FEISTY_MEOW_SCRIPTS SHELL_DEBUG );
+use Env qw(FEISTY_MEOW_BINARIES BUILD_TOP FEISTY_MEOW_APEX FEISTY_MEOW_LOADING_DOCK FEISTY_MEOW_SCRIPTS SHELL_DEBUG );
 
 # given a possible aliasable filename, this will decide whether to create a perl
 # or bash alias for it.  it needs the filename of the possible alias and the
@@ -91,7 +91,7 @@ sub rebuild_script_aliases {
   }
 
   # test if we can use color in ls...
-  $test_color=` ls --help 2>&1 | grep -i color `;
+#  $test_color=` ls --help 2>&1 | grep -i color `;
 
   # this is an array of files from which to draw alias definitions.
   @ALIAS_DEFINITION_FILES = ("$FEISTY_MEOW_SCRIPTS/core/common.alias");
@@ -126,11 +126,11 @@ sub rebuild_script_aliases {
   print GENOUT "## please do not edit.\n";
   print GENOUT "##\n";
 
-  if (length($test_color)) {
-    print GENOUT "export color_add=--color=auto\n";
-  } else {
-    print GENOUT "export color_add=\n";
-  }
+#  if (length($test_color)) {
+#    print GENOUT "export color_add='--color=auto'\n";
+#  } else {
+#    print GENOUT "export color_add=\n";
+#  }
 
   # plow in the full set of aliases into the file.
   foreach $i (@ALIAS_DEFINITION_FILES) {
@@ -152,10 +152,11 @@ sub rebuild_script_aliases {
 # make sure we know where to store the files we're creating.
 if ( ! length("$FEISTY_MEOW_LOADING_DOCK") ) {
   print "\
-The FEISTY_MEOW_LOADING_DOCK variable is not defined.  This must point to the location where\n\
-the generated scripts are stored.  Perhaps you still need to run\n\
-bootstrap_shells.sh and set up some environment variables.  Please see\n\
-http://feistymeow.org for more details.\n";
+The FEISTY_MEOW_LOADING_DOCK variable is not defined.  This must point to\
+the location where the generated scripts are stored.  You may still need to\
+configure the feisty meow script system with something like:\
+  bash ~/feisty_meow/scripts/core/reconfigure_feisty_meow.sh\
+Please see http://feistymeow.org for more details.\n";
   exit 1;
 #really need to use better exit codes.
 }
@@ -172,8 +173,8 @@ if (! -d $FEISTY_MEOW_LOADING_DOCK) {
 ##############
 
 # set the executable bit for binaries for just this current user.
-if (-d $BINDIR) {
-  system("chmod -R u+x \"$BINDIR\"/*");
+if (-d $FEISTY_MEOW_BINARIES) {
+  system("chmod -R u+x \"$FEISTY_MEOW_BINARIES\"/*");
 }
 
 # generate the first set of alias files that are defined in the core
@@ -209,11 +210,16 @@ foreach $file (@shell_files) {
       || $file =~ /\/\.\.$/
       || $file =~ /\/\.svn$/
       || $file =~ /\/\.git$/
+      || $file =~ /\/customize\//
+#hmmm: would be nice to have this name in a symbol somewhere instead of having "customize" everywhere.
       ) {
     # just skip this item; it's a special directory.
+#print "skipping name: $file\n";
   } elsif (-d "$FEISTY_MEOW_SCRIPTS/$file") {
     # if we see a subdirectory in the scripts folder, we add all the
-    # scripts in it as aliases.  we recurse only one level.
+    # scripts in it as aliases.  we recurse only one level.  we also don't use
+    # our customize directory as aliases, since those are processed way differently.
+#print "adding script dir in: $file\n";
     opendir(subdir, "$FEISTY_MEOW_SCRIPTS/$file");
     @subdir_files = sort(readdir(subdir));
     foreach $subfile (@subdir_files) {
@@ -223,11 +229,18 @@ foreach $file (@shell_files) {
     # if we see a file in the auto-generated area that comes from the
     # customized scripts folder, we add it as an alias.
     make_alias($file, "$FEISTY_MEOW_LOADING_DOCK/custom/scripts/");
-    #print "added custom script file: $FEISTY_MEOW_LOADING_DOCK/custom/scripts/$file\n";
+#print "added custom script file: $FEISTY_MEOW_LOADING_DOCK/custom/scripts/$file\n";
   } else {
-    # if it's a regular file, we'll try to make an alias for it.  the function
-    # will only fire if the ending is appropriate for the script languages we use.
-    &make_alias($file, "$FEISTY_MEOW_SCRIPTS");
+    # last ditch effort to make sense of the file; just go ahead and make an alias unless
+    # the file is part of our customization scheme.
+    if ( ! ($file =~ /customize/) ) {
+#print "adding regular file in: $file\n";
+      # if it's a regular file, we'll try to make an alias for it.  the function
+      # will only fire if the ending is appropriate for the script languages we use.
+      &make_alias($file, "$FEISTY_MEOW_SCRIPTS");
+    } else {
+#print "omitting file in: $file\n";
+    }
   }
 }