Index: config/gen/makefiles/editor.in
===================================================================
--- config/gen/makefiles/editor.in	(revision 32663)
+++ config/gen/makefiles/editor.in	(working copy)
@@ -1,7 +1,12 @@
 # $Id$
 
+ifeq (Windows_NT,$(OS))
+    VIM_DIR = $(USERPROFILE)\vimfiles
+else
+    VIM_DIR = $(HOME)\.vim
+endif
+
 OPS_DIR     = ../src/ops
-VIM_DIR     = $(HOME)/.vim
 VIM_FT_DIR  = $(VIM_DIR)/plugin
 VIM_IN_DIR  = $(VIM_DIR)/indent
 VIM_SYN_DIR = $(VIM_DIR)/syntax
Index: lib/Parrot/Configure/Compiler.pm
===================================================================
--- lib/Parrot/Configure/Compiler.pm	(revision 32655)
+++ lib/Parrot/Configure/Compiler.pm	(working copy)
@@ -465,12 +465,19 @@
             if ( $line =~ m{/$} ) {
                 die "$source:$.: line ends in a slash\n";
             }
+
             $line =~ s{(/+)}{
                 my $len = length $1;
                 my $slash = $conf->data->get('slash');
                 '/' x ($len/2) . ($len%2 ? $slash : '');
             }eg;
 
+            # fixed a bug that 'make vim-install' can't work on Windows NT series
+            $line =~ s{(\:\s+.*?)\\\*}{$1/\*}g;
+
+            # fixed some wrong http(s) addresses or ftp addresses
+            $line =~ s{(?:(ht|f)tp(s?)\:[/\\]+)([^/\\ ]+)[/\\]}{$1tp$2://$3/}g;
+
             # replace \* with \\*, so make will not eat the \
             $line =~ s{(\\\*)}{\\$1}g;
         }
  plain text (suitable for cut and paste, overrides all) 
