git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@113880 13f79535-47bb-0310-9956-ffa450edef68
83 lines
2.6 KiB
Plaintext
83 lines
2.6 KiB
Plaintext
' Word2HTML.vbs
|
|
' $Id: word2html.vbs,v 1.5 2003/08/28 05:15:09 dion Exp $
|
|
Option Explicit
|
|
|
|
' Creates the output directories to the same depth as the inputFile specified
|
|
' param inBaseDir The base directory for input files
|
|
' param inputFile The file being processed
|
|
' param outBaseDir The base directory for output files
|
|
Function CreateOutputDirectories(inBaseDir, inputFile, outBaseDir)
|
|
Dim relativePath
|
|
relativePath = Mid(inputFile, Len(inBaseDir)+1)
|
|
|
|
' ensure the path doesn't end with a \
|
|
If Left(relativePath, 1) = "\" Then
|
|
relativePath = Right(relativePath, Len(relativePath) - 1)
|
|
End If
|
|
|
|
' ensure the input basedir doesn't end with a \
|
|
If Right(inBaseDir, 1) = "\" Then
|
|
baseDir = Left(inBaseDir, Len(inBaseDir) - 1)
|
|
End If
|
|
|
|
' ensure the output basedir doesn't end with a \
|
|
If Right(outBaseDir, 1) = "\" Then
|
|
outBaseDir = Left(outBaseDir, Len(outBaseDir) - 1)
|
|
End If
|
|
|
|
Dim index, folder, paths, Files
|
|
paths = Split(relativePath, "\")
|
|
folder = outBaseDir
|
|
Set Files = WScript.CreateObject("Scripting.FileSystemObject")
|
|
For index = LBound(paths) to UBound(paths) -1
|
|
folder = folder & "\" & paths(index)
|
|
If Not Files.FolderExists(folder) Then
|
|
Files.CreateFolder(folder)
|
|
End If
|
|
Next
|
|
|
|
CreateOutputDirectories = folder
|
|
End Function
|
|
|
|
Function ExportAsHTML(inputFile, outputFile)
|
|
Dim obj, HTMLFormat, wdDoNotSaveChanges
|
|
Set obj = WScript.CreateObject("Word.Application")
|
|
HTMLFormat = 8
|
|
wdDoNotSaveChanges = 0
|
|
|
|
obj.Visible = FALSE
|
|
obj.Documents.Open inputFile,,True
|
|
obj.ActiveDocument.SaveAs outputFile, HTMLFormat
|
|
obj.Quit wdDoNotSaveChanges
|
|
|
|
End Function
|
|
|
|
' Main chunk of code
|
|
Dim basedir, FileSys, inputFile, outputDir, outputFile
|
|
On Error Resume Next
|
|
|
|
' work out the directory structure for the input file
|
|
Set FileSys = WScript.CreateObject("Scripting.FileSystemObject")
|
|
|
|
' Fully Qualified File name
|
|
inputFile=FileSys.GetAbsolutePathName(WScript.Arguments(0))
|
|
' Directory to place results in
|
|
outputDir=FileSys.GetAbsolutePathName(WScript.Arguments(1))
|
|
' base directory for the input file
|
|
basedir = FileSys.GetAbsolutePathName(WScript.Arguments(2))
|
|
|
|
outputFile = CreateOutputDirectories(basedir, inputFile, outputDir) & "\" & _
|
|
FileSys.GetBaseName(inputFile) & ".html"
|
|
|
|
' check if output file exists and is newer than input file
|
|
' if it is, skip output
|
|
If FileSys.Exists(outputFile) Then
|
|
Dim fileOutput, fileInput
|
|
Set fileOutput = FileSys.GetFile(outputFile)
|
|
Set fileInput = FileSys.GetFile(inputFile)
|
|
If fileOutput.DateLastModified < fileInput.DateLastModified Then
|
|
ExportAsHTML inputFile, outputFile
|
|
End If
|
|
Else
|
|
ExportAsHTML inputFile, outputFile
|
|
End If |