I suspect you've put your file in the wrong place, or put excess content into it, or used the wrong encoding.

Language files need to be saved with "UTF8-without-BOM" encoding format. Your text editor will have a setting for that.

Non-Admin language files should be stored at:
/includes/languages/english.php
/includes/languages/french.php
/includes/languages/YOUR_TEMPLATE_NAME_HERE/english.php
/includes/languages/YOUR_TEMPLATE_NAME_HERE/french.php

Productivity tip: the /includes/languages/YOUR_TEMPLATE_NAME_HERE/french.php file only needs the things you've changed from the /includes/languages/french.php file. It doesn't need a complete copy of everything in the /includes/languages/french.php file.

Yes, it DOES load both files. But it always loads the one in YOUR_TEMPLATE_NAME_GOES_HERE folder first, and then loads the master (and skips anything already defined from the first file since "define"s cannot be re-"define"-d). This is to allow for backward-compatibility for people who apply outdated language packs on new ZC versions without adding the new translations to their override files.