Texts in Romance languages usually place footnote markers before punctuation. In English we place them after the punctuation. I usually change this on the fly while translating, but I’ve just received a text I outsourced because it was Italian-English and the translator hasn’t moved the footnote markers. No worries! There’s no need to go through the footnotes one by one, as a quick find-and-replace routine in Word will put the footnote markers in the right place (if you prefer, you’ll find a macro at the bottom of the page). Open up the find/replace box, select “Use wildcards”, and enter the following:
Find: (^2)([.,:;\?\!])
Replace: \2\1
It should be safe to use Replace All, but if you want to play safe you can click the Find button once and then keep clicking Replace.
Explanation:
^2 = Footnote reference (same as ^f without wildcards)
[ ] = Look for any character contained in the square brackets. The ? and ! are preceded by a backslash because they normally have special meanings. The backslash tells Word to ignore the special meaning and look for a literal ? or !.
\2 = Replace with the contents of the second parenthesis
\1 = Replace with the contents of the first parenthesis
If you wish to do the opposite conversion, to convert the English format to that used by the Romance languages, run the following procedure, also with wildcards:
Find: ([.,:;\?\!])(^2)
Replace: \2\1
If you have to perform either of these regularly you may want to create a macro. Here’s the code for converting to the English format:
Sub MoveFootnotesForEnglish()
'
' Macro by www.anglopremier.com (thanks to Simon Turner for converting to macro format)
' Moves footnote markers to after punctuation
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "(^2)([.,:;\?\!])"
.Replacement.Text = "\2\1"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
For those of you working from English to Romance languages, here’s the macro for you:
Sub MoveFootnotesFromEnglish()
'
' Macro by www.anglopremier.com (thanks to Simon Turner for converting to macro format)
' Moves footnote markers to before punctuation
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "([.,:;\?\!])(^2)"
.Replacement.Text = "\2\1"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
Very helpful. The two macros should probably have different names though!
Thank you this is fantastically helpful!