DITA and XMetaL Discussion
XMetaL Community Forum › DITA and XMetaL Discussion › Using a ditaval file in a 64bit system
-
mmoulder June 4, 2010 at 8:52 pm
Using a ditaval file in a 64bit system
June 4, 2010 at 8:52 pmParticipants 5Replies 6Last Activity 12 years, 9 months agoI am using xmetal 6.0 EE to build a ditamap. when I reference a ditaval file located at:
C:Program Files (x86)XMetaL 6.0AuthorDITAXACssharedrenditionsfilterspro_mac_guide.ditaval
The build stops with the error:
XMetaL was unexpected at this time.
C:mozydoxditaval>echo *********** File content : C:Program Files (x86)XMetaL 6.0AuthorDITAXACssharedrenditionsfilterspro_mac_guide.ditavalSeems to work if the ditaval file is in just Program Files, but when you add the (x86) to the end, it peters out.
JoAnne June 7, 2010 at 8:01 pm
Reply to: Using a ditaval file in a 64bit system
June 7, 2010 at 8:01 pmTry putting the whole path in quotation marks. I've run into similar issues with other programs (I'm also on a 64-bit machine) and that fixed it.
mmoulder June 7, 2010 at 8:04 pm
Reply to: Using a ditaval file in a 64bit system
June 7, 2010 at 8:04 pmThe problem is, you are selecting the ditaval file from the XMetaL interface, so it won't allow you to do that.
Derek Read June 7, 2010 at 10:15 pm
Reply to: Using a ditaval file in a 64bit system
June 7, 2010 at 10:15 pmTry putting one of the following into the “Other output parameters” text box for your deliverable type (on the Advanced tab):
DITAVAL_PATH_BACK_SLASH = c:my path with spacesmyfile.ditaval
DITAVAL_PATH_BACK_SLASH = "c:my path with spacesmyfile.ditaval"Then check the output log file to see if the following entry made it in:
set DITAVAL_PATH_BACK_SLASH=c:my path with spacesmyfile.ditaval
set DITAVAL_PATH_BACK_SLASH="c:my path with spacesmyfile.ditaval"Note that doing it this way you'll probably see two entries, the default value first and then later on in the log the value you want to actually use.
mmoulder June 7, 2010 at 10:20 pm
Reply to: Using a ditaval file in a 64bit system
June 7, 2010 at 10:20 pmIf I am understanding you correctly, this wouldn't work either as we could have 12 different ditaval files to select from for a single output type. We were hoping to use the filter folder to start using ditaval files so the writers wouldn't have to remember every condition to use when creating the different guides.
I actually moved my install from the Program Files (x86) directory to a new directory. However, we are also now seeing that the ditaval files aren't even being used when we select them from the Advance button on the Set Conditions screen. Any idea why this is happening? Mine might be because I moved my install path. If so, that is a bug.
Derek Read June 7, 2010 at 10:50 pm
Reply to: Using a ditaval file in a 64bit system
June 7, 2010 at 10:50 pmOK, I've just finished testing this and the form that I put with quotations does not work. Our code actually wraps everything in quotes when it runs (to handle the space issue) and so that ends up with double spaces. The other form (without quotes) is working fine no matter where I put the file on my system.
However, keep in mind that I'm not testing with 64-bit (not specifically mentioned in this thread, but I believe it is known to others here that this is not supported yet) so can't say 100% that you will get the same results. On a 32-bit install it is working fine.
If you use a different DITAVAL file to produce different outputs and want to make this easy to use for your authors I would duplicate a deliverable type (there's a button for that), give it an easy to understand name, and then add the parameter to that specific deliverable only.
So, the authors might have the following deliverable types listed (shown here together with the parameters) when you go to generate output (let's say you're producing plain HTML just for the heck of it):
Multiple HTML
(no special parameters, default settings)Multiple HTML for Admins
DITAVAL_PATH_BACK_SLASH = c:file pathadmins_only.ditavalMultiple HTML for Other People version 1
DITAVAL_PATH_BACK_SLASH = c:file pathpeople_1.ditavalMultiple HTML for Other People version 2
DITAVAL_PATH_BACK_SLASH = c:file pathpeople_2.ditavaletc…
Derek Read June 7, 2010 at 10:56 pm
Reply to: Using a ditaval file in a 64bit system
June 7, 2010 at 10:56 pmAlso useful for debugging this is that if things do work you should see the content of any ditaval file that is found reflected in the log file after a few lines that look similar to this:
C:WINDOWSsystem32>IF /I EXIST "c:my pathmyfile.ditaval" (
echo *********** File content : c:my pathmyfile.ditaval
TYPE "c:my pathmyfile.ditaval"
echo ***********************************************************************
)
*********** File content : c:my pathmyfile.ditaval
dita val file content here... -
AuthorPosts
- You must be logged in to reply to this topic.