Hi I'm currently writing my thesis project and I'm using the Gost-nameshort
for thecitationto the one that we use in our department. However, I
wondering if I could delete the comma between the author and the et al.,
(i.e. Nocek, et al., 2004) since this styles are not costumizable maybe some
knows how to erase it in the html code in thebibliographysection. Any
suggestion are very welcome, thank you
The styles are customizable, it's just a bit hard to do so.
The style you want to change is called GostName.XSL and is located in
the <Word 2007 directory>\Bibliography\Style directory. I suggest you
copy the file GostName.XSL to GostNameWithoutComma.XSL and edit that
one.
First thing, you have to uniquely define your style. Look for the
following code (around line 3641):
<xsl:when test="b:OfficeStyleKey">
<xsl:text>GOSTNS</xsl:text>
</xsl:when>
and replace it by
<xsl:when test="b:StyleName">
<xsl:text>Gost - Name Sort without Comma</xsl:text>
</xsl:when>
From now on, whenever you open Word 2007, a new style will be
available from the bibliography style list: "Gost - Name Sort without
Comma".
Now that you have your own style, you can start changing things. Since
you are talking about the comma before et al., I'm guessing you are
talking about the individual citations rather than the bibliography at
end of your work as the latter uses square brackets around et al.
Around line 3922 you have the following code:
<xsl:if test = "$cAuthors > 1">
<xsl:call-template name="templ_prop_AuthorsSeparator"/>
<xsl:call-template name="templ_str_AndOthersUnCap"/>
</xsl:if>
Basically what this code does is saying that if there is more than 1
author, it should display a separator followed by et al (in non
capitalized letters). As you don't want to display the separator, you
just have to replace the separator with a simple space. Hence, the
code would become:
<xsl:if test = "$cAuthors > 1">
<xsl:text> <xsl:text>
<xsl:call-template name="templ_str_AndOthersUnCap"/>
</xsl:if>
If you can't locate the above code, let me know and I'll try to
provide more context.
Yves