diff --git a/src/tools/msvc/Install.pm b/src/tools/msvc/Install.pm
index f1028b737414b4f57e8bbed14633a6b522d0de5f..a7720a060f8014eac37f962e5524d600ca40a42d 100644
--- a/src/tools/msvc/Install.pm
+++ b/src/tools/msvc/Install.pm
@@ -56,10 +56,11 @@ sub Install
     my $majorver = DetermineMajorVersion();
     print "Installing version $majorver for $conf in $target\n";
 
-    EnsureDirectories($target, 'bin', 'lib', 'share', 'share/timezonesets',
-                      'share/extension', 'share/contrib',
-                      'doc', 'doc/extension', 'doc/contrib',
-                      'symbols', 'share/tsearch_data');
+    EnsureDirectories(
+        $target, 'bin', 'lib', 'share',
+        'share/timezonesets','share/extension', 'share/contrib','doc',
+        'doc/extension', 'doc/contrib','symbols', 'share/tsearch_data'
+    );
 
     CopySolutionOutput($conf, $target);
     lcopy($target . '/lib/libpq.dll', $target . '/bin/libpq.dll');
@@ -113,11 +114,11 @@ sub Install
     CopyContribFiles($config,$target);
     CopyIncludeFiles($target);
 
-	my $pl_extension_files = [];
-	my @pldirs = ('src/pl/plpgsql/src');
-	push @pldirs,"src/pl/plperl" if $config->{perl};
-	push @pldirs,"src/pl/plpython" if $config->{python};
-	push @pldirs,"src/pl/tcl" if $config->{tcl};
+    my $pl_extension_files = [];
+    my @pldirs = ('src/pl/plpgsql/src');
+    push @pldirs,"src/pl/plperl" if $config->{perl};
+    push @pldirs,"src/pl/plpython" if $config->{python};
+    push @pldirs,"src/pl/tcl" if $config->{tcl};
     File::Find::find(
         {
             wanted =>sub {
@@ -127,10 +128,7 @@ sub Install
         },
         @pldirs
     );
-    CopySetOfFiles(
-        'PL Extension files', $pl_extension_files,
-        $target . '/share/extension/'
-    );
+    CopySetOfFiles('PL Extension files', $pl_extension_files,$target . '/share/extension/');
 
     GenerateNLSFiles($target,$config->{nls},$majorver) if ($config->{nls});
 
@@ -350,9 +348,10 @@ sub CopyContribFiles
 
             foreach my $f (split /\s+/,$flist)
             {
-                lcopy('contrib/' . $d . '/' . $f . '.control',
-                      $target . '/share/extension/' . $f . '.control')
-                  || croak("Could not copy file $f.control in contrib $d");
+                lcopy(
+                    'contrib/' . $d . '/' . $f . '.control',
+                    $target . '/share/extension/' . $f . '.control'
+                )|| croak("Could not copy file $f.control in contrib $d");
                 print '.';
             }
         }
@@ -369,7 +368,7 @@ sub CopyContribFiles
             foreach my $f (split /\s+/,$flist)
             {
                 lcopy('contrib/' . $d . '/' . $f,
-                      $target . '/share/' . $moduledir . '/' . basename($f))
+                    $target . '/share/' . $moduledir . '/' . basename($f))
                   || croak("Could not copy file $f in contrib $d");
                 print '.';
             }
@@ -383,8 +382,7 @@ sub CopyContribFiles
 
             foreach my $f (split /\s+/,$flist)
             {
-                lcopy('contrib/' . $d . '/' . $f,
-                      $target . '/share/tsearch_data/' . basename($f))
+                lcopy('contrib/' . $d . '/' . $f,$target . '/share/tsearch_data/' . basename($f))
                   || croak("Could not copy file $f in contrib $d");
                 print '.';
             }
@@ -402,8 +400,7 @@ sub CopyContribFiles
               if ($d eq 'spi');
             foreach my $f (split /\s+/,$flist)
             {
-                lcopy('contrib/' . $d . '/' . $f,
-                      $target . '/doc/' . $moduledir . '/' . $f)
+                lcopy('contrib/' . $d . '/' . $f,$target . '/doc/' . $moduledir . '/' . $f)
                   || croak("Could not copy file $f in contrib $d");
                 print '.';
             }
@@ -473,14 +470,14 @@ sub CopyIncludeFiles
         $target . '/include/server/',
         'src/include/', 'pg_config.h', 'pg_config_os.h'
     );
-    CopyFiles('Grammar header', $target . '/include/server/parser/',
-              'src/backend/parser/', 'gram.h');
+    CopyFiles('Grammar header', $target . '/include/server/parser/','src/backend/parser/',
+        'gram.h');
     CopySetOfFiles('',[ glob("src\\include\\*.h") ],$target . '/include/server/');
     my $D;
     opendir($D, 'src/include') || croak "Could not opendir on src/include!\n";
 
-	# some xcopy progs don't like mixed slash style paths
-	(my $ctarget = $target) =~ s!/!\\!g;
+    # some xcopy progs don't like mixed slash style paths
+    (my $ctarget = $target) =~ s!/!\\!g;
     while (my $d = readdir($D))
     {
         next if ($d =~ /^\./);
diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm
index 1d10ee98e83122695538c29ada336653d4e7a5fc..25ae5c53fd706c280121c118b8810f8b8b4a29b9 100644
--- a/src/tools/msvc/Mkvcbuild.pm
+++ b/src/tools/msvc/Mkvcbuild.pm
@@ -172,6 +172,7 @@ sub mkvcbuild
 
     if ($solution->{options}->{python})
     {
+
         # Attempt to get python version and location.
         # Assume python.exe in specified dir.
         open(P,
@@ -190,8 +191,8 @@ sub mkvcbuild
           if (!(defined($pyprefix) && defined($pyver)));
 
         my $pymajorver = substr($pyver, 0, 1);
-        my $plpython = $solution->AddProject('plpython' . $pymajorver, 'dll',
-                                             'PLs', 'src\pl\plpython');
+        my $plpython =
+          $solution->AddProject('plpython' . $pymajorver, 'dll','PLs', 'src\pl\plpython');
         $plpython->AddIncludeDir($pyprefix . '\include');
         $plpython->AddLibrary($pyprefix . "\\Libs\\python$pyver.lib");
         $plpython->AddReference($postgres);
diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm
index 1a7b94da6cd7728c473080db124456fbc9b890ce..36fd4b716019fe14d4771f0fee6d67f37143fb1e 100644
--- a/src/tools/msvc/Solution.pm
+++ b/src/tools/msvc/Solution.pm
@@ -273,23 +273,30 @@ s{PG_VERSION_STR "[^"]+"}{__STRINGIFY(x) #x\n#define __STRINGIFY2(z) __STRINGIFY
         );
     }
 
-    if ($self->{options}->{python} && IsNewer('src\pl\plpython\spiexceptions.h','src\include\backend\errcodes.txt'))
+    if ($self->{options}->{python}
+        && IsNewer('src\pl\plpython\spiexceptions.h','src\include\backend\errcodes.txt'))
     {
         print "Generating spiexceptions.h...\n";
-        system('perl src\pl\plpython\generate-spiexceptions.pl src\backend\utils\errcodes.txt > src\pl\plpython\spiexceptions.h');
+        system(
+'perl src\pl\plpython\generate-spiexceptions.pl src\backend\utils\errcodes.txt > src\pl\plpython\spiexceptions.h'
+        );
     }
 
     if (IsNewer('src\include\utils\errcodes.h','src\backend\utils\errcodes.txt'))
     {
         print "Generating errcodes.h...\n";
-        system('perl src\backend\utils\generate-errcodes.pl src\backend\utils\errcodes.txt > src\backend\utils\errcodes.h');
+        system(
+'perl src\backend\utils\generate-errcodes.pl src\backend\utils\errcodes.txt > src\backend\utils\errcodes.h'
+        );
         copyFile('src\backend\utils\errcodes.h','src\include\utils\errcodes.h');
     }
 
     if (IsNewer('src\pl\plpgsql\src\plerrcodes.h','src\backend\utils\errcodes.txt'))
     {
         print "Generating plerrcodes.h...\n";
-        system('perl src\pl\plpgsql\src\generate-plerrcodes.pl src\backend\utils\errcodes.txt > src\pl\plpgsql\src\plerrcodes.h');
+        system(
+'perl src\pl\plpgsql\src\generate-plerrcodes.pl src\backend\utils\errcodes.txt > src\pl\plpgsql\src\plerrcodes.h'
+        );
     }
 
     if (IsNewer('src\interfaces\libpq\libpq.rc','src\interfaces\libpq\libpq.rc.in'))
diff --git a/src/tools/msvc/builddoc.pl b/src/tools/msvc/builddoc.pl
index deaf659e7746d217df569aa9ac911a1144368a9c..6531e98f1a62402ac9e9c9f0fc4eeb22450d81c4 100644
--- a/src/tools/msvc/builddoc.pl
+++ b/src/tools/msvc/builddoc.pl
@@ -9,7 +9,6 @@ use strict;
 use File::Copy;
 use Cwd qw(abs_path getcwd);
 
-
 my $startdir =  getcwd();
 
 my $openjade = 'openjade-1.3.1';
@@ -27,18 +26,16 @@ die "bad DOCROOT '$docroot'" unless ($docroot && -d $docroot);
 my @notfound;
 foreach my $dir ('docbook', $openjade, $dsssl)
 {
-   push(@notfound,$dir) unless -d "$docroot/$dir";
+    push(@notfound,$dir) unless -d "$docroot/$dir";
 }
 missing() if @notfound;
 
 my $arg = shift;
 renamefiles();
 
-
 chdir 'doc/src/sgml';
 
-$ENV{SGML_CATALOG_FILES} = "$docroot/$openjade/dsssl/catalog;" . 
-				"$docroot/docbook/docbook.cat";
+$ENV{SGML_CATALOG_FILES} = "$docroot/$openjade/dsssl/catalog;" ."$docroot/docbook/docbook.cat";
 
 my $cmd;
 
@@ -46,41 +43,43 @@ my $cmd;
 # can't die on "failure"
 
 $cmd =
-"perl mk_feature_tables.pl YES " .
-	"../../../src/backend/catalog/sql_feature_packages.txt " .
-	"../../../src/backend/catalog/sql_features.txt " .
-	"> features-supported.sgml";
-system($cmd); die "features_supported" if $?;
-$cmd =
-"perl mk_feature_tables.pl NO " .
-	"\"../../../src/backend/catalog/sql_feature_packages.txt\" " .
-	"\"../../../src/backend/catalog/sql_features.txt\" " .
-	"> features-unsupported.sgml";
-system($cmd); die "features_unsupported" if $?;
+   "perl mk_feature_tables.pl YES "
+  ."../../../src/backend/catalog/sql_feature_packages.txt "
+  ."../../../src/backend/catalog/sql_features.txt "
+  ."> features-supported.sgml";
+system($cmd);
+die "features_supported" if $?;
 $cmd =
-"perl generate-errcodes-table.pl \"../../../src/backend/utils/errcodes.txt\" " .
-	"> errcodes-table.sgml";
-system($cmd); die "errcodes-table" if $?;
+   "perl mk_feature_tables.pl NO "
+  ."\"../../../src/backend/catalog/sql_feature_packages.txt\" "
+  ."\"../../../src/backend/catalog/sql_features.txt\" "
+  ."> features-unsupported.sgml";
+system($cmd);
+die "features_unsupported" if $?;
+$cmd ="perl generate-errcodes-table.pl \"../../../src/backend/utils/errcodes.txt\" "
+  ."> errcodes-table.sgml";
+system($cmd);
+die "errcodes-table" if $?;
 
 print "Running first build...\n";
 $cmd =
-"\"$docroot/$openjade/bin/openjade\" -V html-index -wall " .
-	"-wno-unused-param -wno-empty -D . -c \"$docroot/$dsssl/catalog\" " .
-	"-d stylesheet.dsl -i output-html -t sgml postgres.sgml 2>&1 " .
-	"| findstr /V \"DTDDECL catalog entries are not supported\" ";
+   "\"$docroot/$openjade/bin/openjade\" -V html-index -wall "
+  ."-wno-unused-param -wno-empty -D . -c \"$docroot/$dsssl/catalog\" "
+  ."-d stylesheet.dsl -i output-html -t sgml postgres.sgml 2>&1 "
+  ."| findstr /V \"DTDDECL catalog entries are not supported\" ";
 system($cmd); # die "openjade" if $?;
 print "Running collateindex...\n";
-$cmd =
-"perl \"$docroot/$dsssl/bin/collateindex.pl\" -f -g -i bookindex " .
-	"-o bookindex.sgml HTML.index";
-system($cmd); die "collateindex" if $?;
+$cmd ="perl \"$docroot/$dsssl/bin/collateindex.pl\" -f -g -i bookindex "
+  ."-o bookindex.sgml HTML.index";
+system($cmd);
+die "collateindex" if $?;
 mkdir "html";
 print "Running second build...\n";
 $cmd =
-"\"$docroot/$openjade/bin/openjade\" -wall -wno-unused-param -wno-empty " .
-	"-D . -c \"$docroot/$dsssl/catalog\" -d stylesheet.dsl -t sgml " .
-	"-i output-html -i include-index postgres.sgml 2>&1 " .
-	"| findstr /V \"DTDDECL catalog entries are not supported\" ";
+   "\"$docroot/$openjade/bin/openjade\" -wall -wno-unused-param -wno-empty "
+  ."-D . -c \"$docroot/$dsssl/catalog\" -d stylesheet.dsl -t sgml "
+  ."-i output-html -i include-index postgres.sgml 2>&1 "
+  ."| findstr /V \"DTDDECL catalog entries are not supported\" ";
 
 system($cmd); # die "openjade" if $?;
 
@@ -94,29 +93,29 @@ exit;
 
 sub renamefiles
 {
-	# Rename ISO entity files
-	my $savedir = getcwd();
-	chdir "$docroot/docbook";
-	foreach my $f (glob('ISO*'))
-	{
-		next if $f =~ /\.gml$/i;	
-		my $nf = $f;
-		$nf =~ s/ISO(.*)/ISO-$1.gml/;
-		move $f, $nf;
-	}
-	chdir $savedir;
-		
+
+    # Rename ISO entity files
+    my $savedir = getcwd();
+    chdir "$docroot/docbook";
+    foreach my $f (glob('ISO*'))
+    {
+        next if $f =~ /\.gml$/i;
+        my $nf = $f;
+        $nf =~ s/ISO(.*)/ISO-$1.gml/;
+        move $f, $nf;
+    }
+    chdir $savedir;
+
 }
 
 sub missing
 {
-	print STDERR "could not find $docroot/$_\n" foreach (@notfound);
-	exit 1;
+    print STDERR "could not find $docroot/$_\n" foreach (@notfound);
+    exit 1;
 }
 
 sub noversion
 {
-	print STDERR "Could not find version.sgml. ",
-		"Please run mkvcbuild.pl first!\n";
-	exit 1;
+    print STDERR "Could not find version.sgml. ","Please run mkvcbuild.pl first!\n";
+    exit 1;
 }
diff --git a/src/tools/msvc/vcregress.pl b/src/tools/msvc/vcregress.pl
index 579ca52e02ede2e638554a85d4f08de56033e1e5..f81611bc3d62371f68f3d4cedf4dd5fc42bdeef9 100644
--- a/src/tools/msvc/vcregress.pl
+++ b/src/tools/msvc/vcregress.pl
@@ -72,7 +72,7 @@ my %command = (
     INSTALLCHECK => \&installcheck,
     ECPGCHECK => \&ecpgcheck,
     CONTRIBCHECK => \&contribcheck,
-	ISOLATIONCHECK => \&isolationcheck,
+    ISOLATIONCHECK => \&isolationcheck,
 );
 
 my $proc = $command{$what};
@@ -140,14 +140,13 @@ sub ecpgcheck
 
 sub isolationcheck
 {
-	chdir "../isolation";
-	copy("../../../$Config/isolationtester/isolationtester.exe",".");
+    chdir "../isolation";
+    copy("../../../$Config/isolationtester/isolationtester.exe",".");
     my @args = (
-				"../../../$Config/pg_isolation_regress/pg_isolation_regress",
-				"--psqldir=../../../$Config/psql",
-				"--inputdir=.",  
-				"--schedule=./isolation_schedule"
-			   );
+        "../../../$Config/pg_isolation_regress/pg_isolation_regress",
+        "--psqldir=../../../$Config/psql",
+        "--inputdir=.","--schedule=./isolation_schedule"
+    );
     push(@args,$maxconn) if $maxconn;
     system(@args);
     my $status = $? >>8;