I made a french translation of this extension. There is the code:
<?php
// Language definitions used in pun_pm
$lang_pun_pm = array(
'Private messages' => 'Messagerie privée',
'New message' => 'Nouveau message privé',
'Edit message' => 'Éditer le message',
'Delete message' => 'Effacer le message',
'Compose message' => 'Composer un message',
'Delete draft' => 'Effacer le brouillon',
'Inbox' => 'Boite de réception',
'Outbox' => 'Boite d\'envois',
'Write' => 'Écrire',
'Message' => 'Message',
'Send button' => 'Envoyer',
'Save draft' => 'Sauver comme brouillon',
'To' => 'À',
'Receiver\'s username' => 'Entrer le nom du destinataire',
'Subject' => 'Sujet',
'Preview' => 'Prévisualiser',
'Empty body' => 'Le corps du message ne devrait pas être vide.',
'Empty receiver' => 'Le nom du destinataire ne devrait pas être vide.',
'Non-existent username' => 'Le destinataire «%s» n\'existe pas. Veuillez vérifier son nom d\'utilisateur.',
'Empty all fields' => 'Les messages vides ne peuvent pas être sauvé comme brouillon.',
'Empty' => '<Vide>',
'Receiver' => 'À',
'Edit date' => 'Dernière édition',
'Sender' => 'De',
'Not sent' => '<Pas envoyé>',
'Messsage send errors' => '<strong>Attention!</strong> Les erreurs suivantes doivent être corrigé avant que votre message puisse être sauvé ou envoyé:',
'Messsage edit errors' => '<strong>Attention!</strong> Le message ne peut pas être édité à cause des erreurs suivantes:',
'Delivered message' => 'Un message envoyé ne peut pas être édité.',
'Non-existent message' => 'Le message spécifié n\'existe pas.',
'Select all' => 'Selectionner tout',
'Delete selected' => 'Supprimer la selection',
'Selected messages' => 'Messages selectionnés:',
'Delete confirmation' => 'Êtes-vous certain de vouloir effacer ces messages ?',
'Delete confirmation 1' => 'Êtes-vous certain de vouloir effacer ce message ?',
'Confirm delete draft' => 'Êtes-vous certain de vouloir effacer ce brouillon ?',
'Not selected' => 'Pas de message selectionné. Vous devez selectionner le(s) message(s) à effacer.',
'Too long message' => 'Le poids de votre message est de %s octets. La limite autorisée est de %s octets.',
'Sent' => 'Envoyé',
'Read' => 'Lire',
'Not sent' => 'Non-envoyé (brouillon)',
'Not read' => 'Pas lu',
'Status' => 'État',
'sent' => 'envoyé',
'draft' => 'brouillon',
'read' => 'lire',
'delivered' => 'Livré',
'Quick reply' => 'Répondre',
'Incoming message' => 'Message entrant',
'Outgoing message' => 'Message sortant',
'Sent -> draft' => '<strong>Note!</strong> L\'état du message est passé de «envoyé» à «brouillon». Il ne sera pas livré avant que vous ne l\'envoyiez une nouvelle fois.',
'Message to yourself' => 'Vous ne pouvez pas vous écrire à vous-même.',
'Inbox limit' => 'Limite de la boite de réception',
'Outbox limit' => 'Limite de la boite d\'envois',
'Features title' => 'Messages privés',
'Outbox full' => 'La boite d\'envois totalise un nombre de messages dépassant la limite des %s autorisés. Veuillez, s\'il vous plait, effectuer un tri dans vos messages et supprimer les plus inutiles.',
'Inbox almost full' => '<strong>Notice!</strong> La boite de réception totalise un nombre de messages approchant la limite des %s autorisés. Veuillez, s\'il vous plait, effectuer un tri dans vos messages et supprimer les plus inutiles. Cette situation vous empèchera de recevoir de nouveaux messages.',
'Inbox overflow' => '<strong>Warning!</strong> La boite de réception totalise un nombre de messages à la limite des %s autorisés. Veuillez, s\'il vous plait, effectuer un tri dans vos messages et supprimer les plus inutiles. <em>Cette situation vous empèche de recevoir de nouveaux messages</em>.',
'Outbox almost full' => '<strong>Notice!</strong> La boite d\'envois totalise un nombre de messages approchant la limite des %s autorisés. Veuillez, s\'il vous plait, effectuer un tri dans vos messages et supprimer les plus inutiles. Cette situation vous empèchera d\'envoyer de nouveaux messages.',
'Inbox limit info' => 'Quantité maximum de messages dans la boite de réception. 0 = sans limite.',
'Outbox limit info' => 'Quantité maximum de messages dans la boite d\'envois. 0 = sans limite.',
'Empty box' => 'Cette boite est vide.',
'Preview message' => 'Voici comment votre message apparaîtra:',
'Invalid message save' => 'Vous avez tenté d\'éditer un message inexistant. Enregistrez le une nouvelle fois.',
'Invalid message send' => 'Vous avez tenté d\'éditer un message inexistant. Envoyez le une nouvelle fois',
'Message saved' => 'Votre message a été sauvegardé. Redirection...',
'Message sent' => 'Votre message a été envoyé. Redirection...',
'Message deleted' => 'Effacement effectué. Redirection...',
'New link' => 'Nouveaux messages',
'New link active' => '<strong>Nouveaux messages (%d)</strong>',
'New link full' => '<strong>Nouveaux messages (!)</strong>',
'Sent -> draft note' => 'Si vous appuyez sur le bouton «Éditer le message», l\'état du message deviendra «brouillon» et il ne sera pas livré.',
'PM' => 'MP',
'Snow new count' => 'Afficher «Nouveaux messages (N)» au sommet de toutes les pages.',
'Show global link' => 'Lien vers la boite de réception dans la barre de navigation principale.',
'Navigation links' => 'Barre de navigation',
'Send PM' => 'Envoyer un message privé',
'Sent note' => 'L\'état du message est «envoyé». Cela signifie que le message n\'a pas pas encore été livré car votre correspondant n\'a pas visité le forum depuis l\'envois ou que sa boite de réception est pleine.',
'Begin message quote' => 'Citer le début du message dans la liste de messages.',
'PM settings' => 'Configuration des messages privés',
);
?>