From d9094ea7569d0c7f50e6f127572d5c58537552aa Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 22 Oct 2012 23:24:30 +0000 Subject: apa6 2.0 (22oct12) git-svn-id: svn://tug.org/texlive/trunk@28045 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/apa6/apa6.pdf | Bin 584969 -> 586502 bytes .../doc/latex/apa6/pseudoTeX/TeX2WordForapa6.bas | 388 +++++++++++++++++++++ .../texmf-dist/doc/latex/apa6/pseudoTeX/apa6.ptex | 95 +++++ .../doc/latex/apa6/samples/bibliography.bib | 1 + .../doc/latex/apa6/samples/longsample.tex | 1 + .../doc/latex/apa6/samples/shortsample.tex | 1 + 6 files changed, 486 insertions(+) create mode 100644 Master/texmf-dist/doc/latex/apa6/pseudoTeX/TeX2WordForapa6.bas (limited to 'Master/texmf-dist/doc/latex') diff --git a/Master/texmf-dist/doc/latex/apa6/apa6.pdf b/Master/texmf-dist/doc/latex/apa6/apa6.pdf index 1c12002b75b..01a463408a1 100644 Binary files a/Master/texmf-dist/doc/latex/apa6/apa6.pdf and b/Master/texmf-dist/doc/latex/apa6/apa6.pdf differ diff --git a/Master/texmf-dist/doc/latex/apa6/pseudoTeX/TeX2WordForapa6.bas b/Master/texmf-dist/doc/latex/apa6/pseudoTeX/TeX2WordForapa6.bas new file mode 100644 index 00000000000..ac5a9f74458 --- /dev/null +++ b/Master/texmf-dist/doc/latex/apa6/pseudoTeX/TeX2WordForapa6.bas @@ -0,0 +1,388 @@ +%% +%% This is file `./pseudoTeX/TeX2WordForapa6.bas', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% apa6.dtx (with options: `bas') +%% ---------------------------------------------------------------------- +%% +%% apa6 - A LaTeX class for formatting documents in compliance with the +%% American Psychological Association's Publication Manual, 6th edition +%% +%% Copyright (C) 2011, 2012 by Brian D. Beitzel +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License (LPPL), either +%% version 1.3c of this license or (at your option) any later +%% version. The latest version of this license is in the file: +%% +%% http://www.latex-project.org/lppl.txt +%% +%% Users may freely modify these files without permission, as long as the +%% copyright line and this statement are maintained intact. +%% +%% This work is not endorsed by, affiliated with, or probably even known +%% by, the American Psychological Association. +%% +%% ---------------------------------------------------------------------- +%% +Attribute VB_Name = "TeX2WordForapa6" +Sub FormatTex2WordDocument() + + Dim strRunningHead, r, E + Dim myrange As Range + + strRunningHead = InputBox("Please type the running head:", "Running Head") + If strRunningHead = "" Then Exit Sub + + Selection.EndKey Unit:=wdStory + Selection.InsertBreak Type:=wdPageBreak + Selection.TypeText Text:="References" & vbCrLf + Selection.MoveUp Unit:=wdLine, Count:=1 + Selection.ParagraphFormat.LeftIndent = InchesToPoints(0) + Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter + + Selection.HomeKey Unit:=wdStory + + Call FormatTex2WordPageHeader(strRunningHead) + Call FormatAndMoveTex2WordTables + Call FormatAndMoveTex2WordFigures + + Selection.EndKey Unit:=wdStory + Selection.InsertBreak Type:=wdPageBreak + Selection.TypeText Text:="Appendix" & vbCrLf + Selection.MoveUp Unit:=wdLine, Count:=1 + Selection.ParagraphFormat.LeftIndent = InchesToPoints(0) + Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter + + ' touch up temporary citations + Selection.HomeKey Unit:=wdStory + + Selection.Find.ClearFormatting + Selection.Find.Replacement.ClearFormatting + With Selection.Find + .Text = "{\" + .Replacement.Text = "{" + .Forward = True + .Wrap = wdFindContinue + .Format = False + .MatchCase = False + .MatchWholeWord = False + .MatchWildcards = False + .MatchSoundsLike = False + .MatchAllWordForms = False + End With + Selection.Find.Execute Replace:=wdReplaceAll + + With Selection.Find + .Text = "@}" + .Replacement.Text = "}" + .Forward = True + .Wrap = wdFindContinue + .Format = False + .MatchCase = False + .MatchWholeWord = False + .MatchWildcards = False + .MatchSoundsLike = False + .MatchAllWordForms = False + End With + Selection.Find.Execute Replace:=wdReplaceAll + + With Selection.Find + .Text = "{e.g.,\" + .Replacement.Text = "{e.g.`, \" + .Forward = True + .Wrap = wdFindContinue + .Format = False + .MatchCase = False + .MatchWholeWord = False + .MatchWildcards = False + .MatchSoundsLike = False + .MatchAllWordForms = False + End With + Selection.Find.Execute Replace:=wdReplaceAll + + With Selection.Find + .Text = "{i.e.,\" + .Replacement.Text = "{i.e.`, \" + .Forward = True + .Wrap = wdFindContinue + .Format = False + .MatchCase = False + .MatchWholeWord = False + .MatchWildcards = False + .MatchSoundsLike = False + .MatchAllWordForms = False + End With + Selection.Find.Execute Replace:=wdReplaceAll + + With Selection.Find + .Text = "{cf.\" + .Replacement.Text = "{cf. \" + .Forward = True + .Wrap = wdFindContinue + .Format = False + .MatchCase = False + .MatchWholeWord = False + .MatchWildcards = False + .MatchSoundsLike = False + .MatchAllWordForms = False + End With + Selection.Find.Execute Replace:=wdReplaceAll + + With Selection.Find + .Text = "@p. " + .Replacement.Text = "@" + .Forward = True + .Wrap = wdFindContinue + .Format = False + .MatchCase = False + .MatchWholeWord = False + .MatchWildcards = False + .MatchSoundsLike = False + .MatchAllWordForms = False + End With + Selection.Find.Execute Replace:=wdReplaceAll + + With Selection.Find + .Text = "@pp. " + .Replacement.Text = "@" + .Forward = True + .Wrap = wdFindContinue + .Format = False + .MatchCase = False + .MatchWholeWord = False + .MatchWildcards = False + .MatchSoundsLike = False + .MatchAllWordForms = False + End With + Selection.Find.Execute Replace:=wdReplaceAll + + ' for table footnotes + With Selection.Find + .Text = "[para,flushleft] " + .Replacement.Text = "" + .Forward = True + .Wrap = wdFindContinue + .Format = False + .MatchCase = False + .MatchWholeWord = False + .MatchWildcards = False + .MatchSoundsLike = False + .MatchAllWordForms = False + End With + Selection.Find.Execute Replace:=wdReplaceAll + + ' delete the instructions + Selection.HomeKey Unit:=wdStory + + Set myrange = Selection.Range + myrange.Start = Selection.Start + + Selection.HomeKey Unit:=wdStory + Selection.Find.ClearFormatting + With Selection.Find + .Execute findText:="Delete these instructions!", Forward:=True, Wrap:=wdFindStop + myrange.End = Selection.End + 1 + myrange.Select + myrange.Delete + End With + + Selection.HomeKey Unit:=wdStory + +End Sub + +Sub FormatTex2WordPageHeader(strRunningHead) + + Dim r, E + + ' set the first page to be a different header + ActiveDocument.PageSetup.DifferentFirstPageHeaderFooter = True + + With ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage) + .Range.ParagraphFormat.LineSpacingRule = wdLineSpaceDouble + .Range.ParagraphFormat.FirstLineIndent = InchesToPoints(0) + .Range.ParagraphFormat.TabStops.ClearAll + .Range.ParagraphFormat.TabStops.Add Position:=InchesToPoints(6.5), _ + Alignment:=wdAlignTabRight, Leader:=wdTabLeaderSpaces + .Range.Text = "Running head: " & UCase(strRunningHead) & vbTab + With .Range.Font + .Name = "Times New Roman" + .Size = 12 + .Bold = False + .Italic = False + End With + + Set r = .Range + E = .Range.End + r.Start = E + .Range.Fields.Add r, wdFieldPage + + End With + + With ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary) + .Range.ParagraphFormat.LineSpacingRule = wdLineSpaceDouble + .Range.ParagraphFormat.FirstLineIndent = InchesToPoints(0) + .Range.Text = UCase(strRunningHead) + .PageNumbers.Add PageNumberAlignment:=wdAlignPageNumberRight + With .Range.Font + .Name = "Times New Roman" + .Size = 12 + .Bold = False + .Italic = False + End With + End With + +End Sub + +Sub FormatAndMoveTex2WordTables() + + Dim i, rngParagraphs As Range + + If ActiveDocument.Tables.Count > 0 Then + + For i = 1 To ActiveDocument.Tables.Count + + Selection.HomeKey Unit:=wdStory + + Set rngParagraphs = ActiveDocument.Range( _ + Start:=ActiveDocument.Tables(1).Range.Start, _ + End:=ActiveDocument.Tables(1).Range.End) + rngParagraphs.Select + + With Selection.Tables(1) + .Borders(wdBorderLeft).LineStyle = wdLineStyleNone + .Borders(wdBorderRight).LineStyle = wdLineStyleNone + With .Borders(wdBorderTop) + .LineStyle = wdLineStyleSingle + .LineWidth = wdLineWidth050pt + .Color = wdColorAutomatic + End With + With .Borders(wdBorderBottom) + .LineStyle = wdLineStyleSingle + .LineWidth = wdLineWidth050pt + .Color = wdColorAutomatic + End With + .Borders(wdBorderHorizontal).LineStyle = wdLineStyleNone + .Borders(wdBorderVertical).LineStyle = wdLineStyleNone + .Borders(wdBorderDiagonalDown).LineStyle = wdLineStyleNone + .Borders(wdBorderDiagonalUp).LineStyle = wdLineStyleNone + .Borders.Shadow = False + '.Rows.Alignment = wdAlignRowLeft + .PreferredWidthType = wdPreferredWidthPercent + .PreferredWidth = 100 + .TopPadding = InchesToPoints(0.08) + .BottomPadding = InchesToPoints(0.08) + .LeftPadding = InchesToPoints(0.08) + .RightPadding = InchesToPoints(0.08) + .Spacing = 0 + .AllowPageBreaks = True + .AllowAutoFit = False + End With + + With Selection.ParagraphFormat + .LineSpacingRule = wdLineSpaceSingle + .LeftIndent = InchesToPoints(0) + .RightIndent = InchesToPoints(0) + .SpaceBefore = 0 + .SpaceBeforeAuto = False + .SpaceAfter = 0 + .SpaceAfterAuto = False + .WidowControl = False + .KeepWithNext = False + .KeepTogether = False + .PageBreakBefore = False + .NoLineNumber = False + .Hyphenation = True + .FirstLineIndent = InchesToPoints(0) + .CharacterUnitLeftIndent = 0 + .CharacterUnitRightIndent = 0 + .CharacterUnitFirstLineIndent = 0 + .LineUnitBefore = 0 + .LineUnitAfter = 0 + .MirrorIndents = False + .TextboxTightWrap = wdTightNone + End With + + rngParagraphs.Cut + + Selection.EndKey Unit:=wdStory + Selection.InsertBreak Type:=wdPageBreak + Selection.TypeText Text:="Table " & i & vbCrLf + Selection.Paste + + Next + + End If + +End Sub + +Sub FormatAndMoveTex2WordFigures() + + Dim i, rngParagraphs As Range + + If ActiveDocument.InlineShapes.Count > 0 Then + + For i = 1 To ActiveDocument.InlineShapes.Count + + Selection.HomeKey Unit:=wdStory + + Set rngParagraphs = ActiveDocument.Range( _ + Start:=ActiveDocument.InlineShapes(1).Range.Start, _ + End:=ActiveDocument.InlineShapes(1).Range.End) + rngParagraphs.Select + rngParagraphs.Cut + + Selection.EndKey Unit:=wdStory + Selection.InsertBreak Type:=wdPageBreak + Selection.Paste + Selection.TypeText Text:=vbCrLf & "Figure " & i & vbCrLf + + Next + + End If + +End Sub +%% +%% Copyright (C) 2011, 2012 by Brian D. Beitzel +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License (LPPL), either +%% version 1.3c of this license or (at your option) any later +%% version. The latest version of this license is in the file: +%% +%% http://www.latex-project.org/lppl.txt +%% +%% Users may freely modify these files without permission, as long as the +%% copyright line and this statement are maintained intact. +%% +%% This work is not endorsed by, affiliated with, or probably even known +%% by, the American Psychological Association. +%% +%% This work is "maintained" (as per LPPL maintenance status) by +%% Brian D. Beitzel. +%% +%% This work consists of the file apa6.dtx +%% and the derived files apa6.ins, +%% apa6.cls, +%% apa6.pdf, +%% README, +%% APAamerican.txt, +%% APAbritish.txt, +%% APAdutch.txt, +%% APAenglish.txt, +%% APAgerman.txt, +%% APAngerman.txt, +%% APAgreek.txt, +%% APAczech.txt, +%% APAendfloat.cfg, +%% apa6.ptex, +%% TeX2WordForapa6.bas, +%% Figure1.pdf, +%% shortsample.tex, +%% longsample.tex, and +%% bibliography.bib. +%% +%% +%% End of file `./pseudoTeX/TeX2WordForapa6.bas'. diff --git a/Master/texmf-dist/doc/latex/apa6/pseudoTeX/apa6.ptex b/Master/texmf-dist/doc/latex/apa6/pseudoTeX/apa6.ptex index 1bd2f0fa0e1..f1220e9148d 100644 --- a/Master/texmf-dist/doc/latex/apa6/pseudoTeX/apa6.ptex +++ b/Master/texmf-dist/doc/latex/apa6/pseudoTeX/apa6.ptex @@ -161,6 +161,100 @@ \@secdef@nonum@paragraphlevel{5}{1}{0}{0}{\normalsize\rm\it}{subparagraph}{Subparagraph} \@addtoreset{subparagraph}{paragraph} +\newcommand\DeclareLanguageMapping[2]{} +\newcommand\addbibresource[1]{} +\newcommand\printbibliography{} + +\def\specialComma{,} +\def\specialSemicolon{;} + +\catcode`\^^G=12 +\newcommand*{\doachar}[1]{% +\if#1\specialComma\specialSemicolon\else#1\fi%% +} +\newcommand*{\makeCommaIntoSemicolon}[1]{% +\def\stuff{#1}\ifx\stuff\@empty\else\@llchars#1^^G\fi} +\def\@llchars#1#2^^G{% +\def\letter{#1}\def\others{#2}% +\ifx\letter\@empty\let\next\@gobble% +\else% +\doachar{#1}% +\ifx\others\@empty \let\next\@gobble% +\else \let\next\@llchars \fi% +\fi% +\next#2^^G} +\catcode`\^^G=15 + +\def\parencite{% + \@ifnextchar[% + {\@parencite}% + {\@parencite[]}% +} +\def\@parencite[#1]{% + \@ifnextchar[% + {\@@parencite[#1]}% + {\@@parencite[#1][]}% +} +\def\@@parencite[#1][#2]#3{% +\makeatletter% +{\{{{#1}\textbackslash}{\makeCommaIntoSemicolon{#3}}@{#2}\}}% +\makeatother% +} +\let\maskparencite=\parencite + +\let\Parencite=\parencite +\let\maskParencite=\parencite + +\let\citep=\parencite +\let\maskcitep=\parencite +\let\Citep=\parencite +\let\maskCitep=\parencite + +\let\cite=\parencite +\let\maskcite=\parencite + +\let\citeyear=\parencite +\let\maskciteyear=\parencite +\let\citeyearpar=\parencite +\let\maskciteyearpar=\parencite + +\def\textcite{% + \@ifnextchar[% + {\@textcite}% + {\@textcite[]}% +} +\def\@textcite[#1]{% + \@ifnextchar[% + {\@@textcite[#1]}% + {\@@textcite[#1][]}% +} +\def\@@textcite[#1][#2]#3{% +\makeatletter% +{\{{{#1}\textbackslash}\makeCommaIntoSemicolon{#3}@{#2}@author-year\}}% +\makeatother% +} +\let\masktextcite=\textcite +\let\Textcite=\textcite +\let\maskTextcite=\textcite + +\let\citet=\textcite +\let\maskcitet=\textcite +\let\Citet=\textcite +\let\maskCitet=\textcite + +\let\citeA=\textcite +\let\maskciteA=\textcite + +\let\citeauthor=\textcite +\let\maskciteauthor=\textcite +\let\Citeauthor=\textcite +\let\maskCiteauthor=\textcite + +\let\citeyearNP=\textcite +\let\maskciteyearNP=\textcite +\let\citeNP=\textcite +\let\maskciteNP=\textcite + \long\def\maketitle{\entity@paragraph@new\begingroup\entity@paragraph@just=1\relax% {\raggedright\entity@paragraph@first=0\entity@paragraph@linespacingmultiple=0\entity@paragraph@spacebetween=240% {\bf INSTRUCTIONS:}\par\entity@paragraph@first=0% @@ -267,6 +361,7 @@ %% APAczech.txt, %% APAendfloat.cfg, %% apa6.ptex, +%% TeX2WordForapa6.bas, %% Figure1.pdf, %% shortsample.tex, %% longsample.tex, and diff --git a/Master/texmf-dist/doc/latex/apa6/samples/bibliography.bib b/Master/texmf-dist/doc/latex/apa6/samples/bibliography.bib index d59cf0084e3..ebec4b5ffef 100644 --- a/Master/texmf-dist/doc/latex/apa6/samples/bibliography.bib +++ b/Master/texmf-dist/doc/latex/apa6/samples/bibliography.bib @@ -223,6 +223,7 @@ the design of multimedia instruction}, %% APAczech.txt, %% APAendfloat.cfg, %% apa6.ptex, +%% TeX2WordForapa6.bas, %% Figure1.pdf, %% shortsample.tex, %% longsample.tex, and diff --git a/Master/texmf-dist/doc/latex/apa6/samples/longsample.tex b/Master/texmf-dist/doc/latex/apa6/samples/longsample.tex index 3159c1696f8..45e081fe73d 100644 --- a/Master/texmf-dist/doc/latex/apa6/samples/longsample.tex +++ b/Master/texmf-dist/doc/latex/apa6/samples/longsample.tex @@ -218,6 +218,7 @@ The detailed results are shown in Table~\ref{tab:DeckedTable}. \lipsum[22] %% APAczech.txt, %% APAendfloat.cfg, %% apa6.ptex, +%% TeX2WordForapa6.bas, %% Figure1.pdf, %% shortsample.tex, %% longsample.tex, and diff --git a/Master/texmf-dist/doc/latex/apa6/samples/shortsample.tex b/Master/texmf-dist/doc/latex/apa6/samples/shortsample.tex index 06cbf83e656..e7cd4257b3b 100644 --- a/Master/texmf-dist/doc/latex/apa6/samples/shortsample.tex +++ b/Master/texmf-dist/doc/latex/apa6/samples/shortsample.tex @@ -155,6 +155,7 @@ skill in interpreting the results for the masses. %% APAczech.txt, %% APAendfloat.cfg, %% apa6.ptex, +%% TeX2WordForapa6.bas, %% Figure1.pdf, %% shortsample.tex, %% longsample.tex, and -- cgit v1.2.3