Welcome / Bienvenue / Benvinguts / Bienvenidos
For information about my translation services, please visit the main site.
Pour des informations sur mes services, merci de regarder le site principal.
Para información sobre mis servicios de traducción, visite el web principal.

Don’t send me your pdf files for translation! See how I translated five booklets for a UN agency

Need a book or booklet translating? If you’re tempted to send your translator the pdf files, think again.

The Food and Agriculture Organization of the United Nations (FAO) asked me to translate five handbooks related to African countries from French to English: one on pastoral land tenure in the Niger, and four on free, prior and informed consent in Mali, Mauritania, Senegal and Tunisia. (Click on the country names to see my work. A good translator should be willing to share some of their work, unless they only ever translate confidential documents.)

Old version of the Niger document

Old version of the Niger document

Don’t send me pdfs!

The first text I worked on was the one about pastoral land in the Niger. For this document, I only had access to the pdf file, so I used a pdf editing tool to insert my translations. Not ideal, since there are many design issues when you work directly on a pdf, but the client hadn’t managed to get the original file, so I had to make do.

Among the many issues I faced, I had to use a substitute font, and some of the texts didn’t fit the boxes that had been designed specifically for the French text and the original font.

Published version of the Niger document

Published version of the Niger document

In the end, the client inserted my translations manually into the original document, much to my relief, because my version looked like the first of the two snippets on the right, whereas the final version was like the second snippet, with much more elegant fonts and boxes that matched the length of the text (compare the two versions of “MANAGEMENT OF PASTORAL RESOURCES”).

Because I had I alerted the client to the problems likely to arise, by the time I started work on the four other documents they had found the originals, which had been made using InDesign. You might assume translators won’t want to work with InDesign files, but that’s exactly what a good translator wants, as it makes our life much easier if we can work on the original document.

Armed with the originals, I extracted the text using my professional software, translated it, then generated new files with the same layout. Using the InDesign file, the client generated proofs, which I then checked through.

At this stage, there is always some work that still needs to be done, mainly because many portions of text will be longer or shorter in the target text than in the source text. But the work needed to fix such issues is minimal, and the client would have needed to do them anyway, even if my translations had been copy-pasted in by the graphic designer.

By working with the InDesign files, I saved my client time and money.

Find a translator who will work with your InDesign files

Like many of my previous clients, the project manager at FAO was delighted at how much I reduced their workload.

Many clients are reluctant to share InDesign files. Perhaps graphic designers warn them that the translator might mess up the format. But when clients do allow me to work with the originals, they never regret it.

Here’s the feedback I received from another client who was initially reluctant to allow me to work on the InDesign files:

InDesign feedback

Feedback from a previous client

The graphic designer’s fear is understandable but misguided. My software leaves the formatting exactly how it is. I work on a file containing the text extracted from the InDesign file, and my translation is then inserted back into the original, without any formatting adjustments being made.

Send me your InDesign files for translation
If you need to translate some InDesign files, don’t hesitate to contact me. You’ll find my contact details on my website.


Writing special characters in Khoekhoegowab

Writing in Namibia’s indigenous languages can be difficult, since the keyboards we use in Namibia are not designed for typing the special characters used in our country’s languages.

That’s why I created tools to make these special characters more accessible: one for Khoekhoegowab (also known as Nama/Damara) and one for Otjiherero.

Download the Khoekhoegowab tool.

How to use the tool

Continue reading


Why you probably need a VAT number if you’re based in France

Most freelancers in France seem to believe that, like in the United Kingdom and the Republic of Ireland (and possibly other states), small business with income below a certain threshold are not required to acquire an intra-EU VAT number. However, a government website makes it very clear that any French business or auto-entrepreneur that purchases or supplies services across EU borders needs to obtain a number. The €10,000 threshold that applies to goods does not apply to services. Here’s what the French authorities say:

En revanche, le numéro devient obligatoire … lorsqu’elle vend ou achète des prestations de services à des sociétés établies dans l’UE.

This rule is so unknown that many freelance translators have reported that they have struggled to convince the tax office to give them a VAT number. I therefore recommend that when you request the number, you provide the tax authorities with a print-out of the webpage that states that you require it.

To request the number, you must use the messaging service of your professional account.

See also Invalid Swedish VAT numbers – how to correct them.

If you found this article useful, why not translate it into French so that more people will find it? I will add a sentence stating who translated it and a link to your website. You may use the article on your own blog too, provided that you state the source. Send me an e-mail if you are interested.


Prevent PerfectIt from introducing mistakes into your text

A common complaint on PerfectIt user forums is that PerfectIt introduces mistakes when you use the fix button. This is particularly dangerous if you use the Fix all button. Imagine trying to remove a hyphen from 30 occurrences of the same word, only to discover much later (when it’s too late to use undo) that it has introduced 30 mistakes in your document!

In this video, I explain why it happens and how you can prevent it from happening.

I also mention a PerfectIt masterclass series that I’ll be running soon. The series will be announced on this blog. In the meantime, follow the #PerfectItMasterclass hashtag on Twitter, where I’ll be sharing some PerfectIt tips and explaining giving you a preview of some of the things I’ll be talking about during the masterclass.


How to change the language in all stories (including comments) in a Word document

Updated version uploaded on 1 December 2022. This updated version includes a correction of the error that was in the video and other minor tweaks, and it now updates the language in certain cases where it previously did not work.

Ever felt frustrated when Word keeps selecting the wrong language every time you add a comment? This video explains how to change the language for all elements of a Word document, including footnotes, comments and text boxed, in an instant.

The macro code is below. The video explains how to import the code. Note that near the top of the code, sandwiched between asterisks, there is a line you may need to change, depending on the language and variety that you want to use.

Please leave a comment to let me know whether it works for you.

Sub LanguageAllStyles()

Dim LanguageId As MsoLanguageID

LanguageId = msoLanguageIDEnglishUK ' Insert the Name or the Value listed at https://learn.microsoft.com/en-us/office/vba/api/word.wdlanguageid.


' Macro to change language in styles
' Loosely based on a macro posted by Macropod (17 July 2012)
' http://www.vbaexpress.com/forum/showthread.php?42993-Solved-Macro-to-change-all-styles-to-a-specific-languageDim TrackChangesActive As Boolean ' Only possible values are True/False

Dim CheckSpellingAsYouTypeActive As Boolean
Dim CheckGrammarAsYouTypeActive As Boolean
Dim ShowFormatChanges As Boolean
Dim doc As Document
Dim SkipTrackChangesQuestion As Boolean

Dim oDoc As Document, oSty As Style, oStor As Range

Application.ScreenUpdating = False

'Block taken from my personal “MacroSwitchesOff” code
If Options.CheckSpellingAsYouType = True Then CheckSpellingAsYouTypeActive = True Else CheckSpellingAsYouTypeActive = False ' Checks whether CheckSpellingAsYouType is switched on.
Options.CheckSpellingAsYouType = False
' Forces Word to check everything again with the new language. Cancel the above line if you don’t want Word to forget when you’ve “Ignored” a flagged spelling.
' Without switching this setting off and on, Word still underlines words that are correctly written in the new language.
If Options.CheckGrammarAsYouType = True Then CheckGrammarAsYouTypeActive = True Else CheckGrammarAsYouTypeActive = False
Options.CheckGrammarAsYouType = False
' See previous comment

If ActiveDocument.ActiveWindow.View.ShowFormatChanges = True Then ShowFormatChanges = True Else ShowFormatChanges = False
ActiveDocument.ActiveWindow.View.ShowFormatChanges = False
'Check whether Format changes are shown

If ActiveDocument.TrackRevisions = True Then TrackChangesActive = True Else TrackChangesActive = False

If SkipTrackChangesQuestion <> True Then ' Skip the track changes question
If MsgBox("Perform the operation with track changes?", _
vbYesNoCancel) = vbNo Then
ActiveDocument.TrackRevisions = False
ActiveDocument.TrackRevisions = True
End If
End If

Set oDoc = ActiveDocument
With oDoc
For Each oSty In .Styles
StatusBar = oSty
On Error Resume Next
oSty.LanguageId = LanguageId
On Error GoTo 0
End With

With oDoc
For Each oStor In .StoryRanges
StatusBar = "Setting story " & oStor & " to language " & LanguageId
oStor.LanguageId = LanguageId
Next oStor
End With

ActiveDocument.Range.LanguageId = LanguageId ' Uses the normal method, equivalent of pressing ctrl+a and setting the language.

'Block taken from my personal “MacroSwitchesOnAgain” code
' The lines below revert settings to the status they had before the macro was run
If TrackChangesActive = True Then ActiveDocument.TrackRevisions = True
If CheckSpellingAsYouTypeActive = True Then Options.CheckSpellingAsYouType = True
If CheckGrammarAsYouTypeActive = True Then Options.CheckGrammarAsYouType = True
If ShowFormatChanges = True Then ActiveDocument.ActiveWindow.View.ShowFormatChanges = True
ActiveDocument.ActiveWindow.View.ShowFormatChanges = True

Application.ScreenUpdating = True

MsgBox ("Finished! The language of all sections of the document has been set to " & LanguageId & ". If you wanted to select another language, open the VBA editor by pressing alt+f11 and change the 'LanguageID' shown at the top of the script")
End Sub


Red Bull and the No Homers Club: Does “any” mean “all” in the Formula 1 rulebook?

Remember the No Homers Club in The Simpsons? A young Homer Simpson (in a flashback scene) is denied entry to the No Homers Club. He protests that Homer Glumplich is part of the club, before being told by the doorman: “It says ‘No Homers‘ (with the final s stressed). We’re allowed to have one.”

Of course, The Simpsons is a fictional show, but this week, Formula 1 team Red Bull presented an argument on the meaning of “any cars” that is just as ludicrous as that of the No Homers Club.

Before I discuss the meaning of “any”, for the sake of any readers who did not watch the 2021 Abu Dhabi Grand Prix and do not watch Formula 1, I’ll explain what happened last Sunday in layman’s terms, for the sake of context. You can skip to the subheading “What the rules say” if you watched last Sunday’s race.

Continue reading


Institutional style guides

During my presentation entitled “An overview of institutional styles: from excellent tips we can all apply to the downright weird guidelines we should probably ignore” for the 2021 conference of Mediterranean Editors and Translators, I talked about the style guidelines of different international institutions.

The style guides I mentioned during the publication that are publicly available can be downloaded from the following links:

Council of Europe English Style Guide
European Commission Claire’s Writing Tips
FAO Style
OAS English Language Style Guide
OECD Style Guide (third edition)
United Nations Editorial Manual Online
WIPO Style Guide
WMO Writing and Style Guide
World Bank Group Publications Editorial Style Guide

This information has been posted on my blog. Please also visit my main website to find out more about the services I offer.


GoOpti discount code

For a €5 discount with GoOpti, use the voucher code RFLID5M5H3VW on the payment page or use this referral link. Once you have used the coupon code, the discount will apply automatically.

GoOpti is a door-to-door airport shuttle service, so you don’t have to worry about walking with your luggage to catch the bus or train.

In Rome, private and shared transfers are now available from Rome to Fiumicino and Ciampino airports and vice versa. In Italy, the company runs shuttles to and from most airports in the north of the country: Bergamo, Bologna, Cesena, Faenza, Ferrara, Forlí, Genoa (Genova), Imola, Mantua (Mantova), Milan-Malpensa, Milan-Linate, Modena, Padua (Padova), Parma, Piacenza, Pordenone, Ravenna, Reggio Emilia, Rimini, Rovigo, Savona, Treviso, Trieste, Udine, Venice-Marco Polo (Venezia), Verona and Vicenza.

In Slovenia, GoOpti runs shuttles to and from Bled, Brnik, Ljubljana, Maribor and Murska Sobota, with connections to Budapest Airport in Hungary, Graz Airport in Austria and Trieste Airport in Italy.

In Croatia, it operates in Opatija, Porec, Portoroz, Pula, Rovinj and Zagreb, with connections to Belgrade in Serbia and Budapest Airport in Hungary.

In Austria, its shuttles run to and from Graz, Salzburg and Vienna airports and connect with Klagenfurt and Villach. From Salzburg airport you can connect to Munich Airport in Bavaria, Germany.


Peer-to-peer lending platforms: referral codes with special offers

Referral codes:
EstateGuru: EGU22806
October: TBARTON
Reinvest24: nhv4dof8
EvoEstate: 5eccdd7a62c79 / InRento: inr6440

In this post, you will find affiliate links to EstateGuru, Iuvo, October, Reinvest24 and EvoEstate, four peer-to-peer lending platforms that I use. By using these links, you’ll benefit from special offers.

I won’t write about the pros and cons of using these platforms, as plenty has already been written about them online. Please note that this post contains affiliate links that benefit me as well as the person using them.

EstateGuru provides property-backed business loans. It includes an auto-invest option. My current annual return, at the time of writing, is 10.82%. If you use this sign-up link or the promotion code EGU22806, we will both receive an extra 0.5% on investments in the first three months.

Iuvo provides loan to businesses, and includes the option to buy back. My current net annual return at the time of writing is 9.96%. The platform doesn’t provide a referral link. Instead, I have to send an invitation by e-mail. Leave me a comment or send me your address to my own e-mail address, and I’ll send you an invitation. If you invest more than €1,000, we’ll each receive an extra 2% of your invested amount, up to a maximum of €200. Normal: For investment of €1,000+, 1.5% each, up to €150

October also provides links to businesses. They offer a mixture of loans at rates of 6-9% and State-guaranteed loans at 2%. The downside is that there’s no auto-invest function, and many of the loans sell out within a few minutes of opening. If you use this referral link or the referral code TBARTON, then we each get an extra €20 for every €500 that you invest.

Reinvest24 is a platform for investing in property. There is no auto-bid function, but if you visit fairly regularly (say, once a week), it’s easy to find investment opportunities. If you use this referral link or the referral code nhv4dof8, we each receive an extra 1% of the amount you invest in the first year (full terms at https://www.reinvest24.com/en/referral-terms).

EvoEstate is also for investing in property. It includes an AutoBid function and allows you to limit your bids only to loans in which the platform has skin in the game. If you use this referral link or the referral code 5eccdd7a62c79, we each receive an additional 0.5% from your investments during the first six months. EvoEstate was recently merged with InRento. With this referral link, we will both earn €20.


Macro to prepare documents for monolingual review in memoQ (and possibly other CAT tools)

MemoQ’s monolingual review feature works best with clean Word documents containing no tracked changes or comments. If you import a document in which changes are still visible or in which there are comments, memoQ will add lots of code to the target text, which you don’t want.

This macro cleans the document up and saves it under a new filename (so that you don’t overwrite the commented version), making it ready to be imported as a monolingual review.

The macro includes comments to explain what some of the lines are doing and how you can adjust the macro to meet your needs.

Since many translators use only straight apostrophes and quotation marks in memoQ, then convert them to the curly variety in the final document sent to the client, the macro includes an optional line (deactivated by default) that will revert all apostrophes and quotation marks to the straight variety. Please read the instructions carefully if you wish to use that line.

Thanks to Kevin Mote, who provided the code for the part of the macro that renames the file. My code is a slightly modified version of his. In particular, unlike Kevin’s version, mine does not overwrite the old version, since most translators would want to keep a copy of the commented version they sent to their client.

Sub PrepareForMemoQMonolingualReview()
' memoQ's monolingual review feature works best when you import a document with no tracked changes and no comments.
' This macro removes them, then resaves the file with "clean-for-import" appended to the file name.
' The part that appends the filename is adapted from the macro provided by Kevin Mote (https://www.linkedin.com/in/kevinmote/) at https://superuser.com/a/781501. Thank you Kevin. This was very helpful!
' Please note that, unlike Kevin's macro, this version does not delete the original file.
Dim strFileFullName, strFileName, strNewName, strFileExtension As String
ActiveDocument.AcceptAllRevisions ' Accepts all tracked changes
ActiveDocument.TrackRevisions = False ' Switches off track changes
ActiveDocument.DeleteAllComments ' Deletes all comments in the active document.

ReplaceQuotes ' Reverts quotation marks and apostrophes back to the straight variety, assuming that this is the variety that was used while working in the CAT tool.
' Remove the apostrophe from the above line if you want the monolingual review document to revert to straight apostrophes and quotation marks.
' Note that to run the above line you also need to have installed the "ReplaceQuotes" and "QuotesReplacementBothWays" macros, which I provided along with several others in a blog post at http://www.anglopremier.com/blog/?p=1119.

' Get current name:
strFileFullName = ActiveDocument.FullName 'for Word docs
'strFileFullName = ActiveWorkbook.FullName 'Use this line instead for for Excel docs
'strFileFullName = Application.ActivePresentation.FullName 'Use this line instead for Powerpoint presentations
If (InStr(strFileFullName, ".") = 0) Then ' Checks whether the full file name contains a file extension by looking for a dot.
res = MsgBox("File has not been saved. Can't rename it.", , "Rename File")
Exit Sub
End If
' strFileName = Right(strFileFullName, Len(strFileFullName) - InStrRev(strFileFullName, "\")) 'strip path - not used. Next line used instead.
strFileName = strFileFullName
strFileExtension = Right(strFileName, Len(strFileName) - InStrRev(strFileName, ".")) ' Identifies the file extension
strFileName = Left(strFileName, (InStr(strFileName, ".") - 1)) ' Strips the extension from the strFileName variable
' If InStr(3, strFileName, "_Delivery", 1) <> 0 Then strFileName = Left(strFileName, (InStr(strFileName, "_Delivery", 1) - 1))
' The above line is not used. Originally intended to strip the word "_Delivery" and the delivery number from the file name (assumes "Delivery" is at least the third character; not case-sensitive). But I dedcided I wanted to keep the delivery number.
' If you wish to remove something from the file name you can reinstate the above line (remove the apostrophe) and replace "_Delivery" with whatever you want to remove.

' Prompt for new name. Replace "_clean-for-import" on the next line if you prefer something else to be appended by default.
strNewName = InputBox("Rename this file to:", "Rename File", strFileName & "_clean-for-import." & strFileExtension) 'Saves with the new name. Extension is not changed.
If (strNewName = "") Or (strNewName = strFileName) Then ' (Check whether user cancelled)
Exit Sub
End If

' Save file with new name:
ActiveDocument.SaveAs2 FileName:=strNewName 'for Word docs
'ActiveWorkbook.SaveAs2 FileName:=strNewName 'for Excel docs
'Application.ActivePresentation.SaveAs FileName:=strNewName 'for Powerpoint presentations

End Sub