- Bumped version to 1.8-cvs

- Improved the error message when the dictionary cannot be loaded at startup
 - Updated the french translation
 - Made some Game fields private
 - Added more constness
This commit is contained in:
Olivier Teulière 2008-11-22 14:40:25 +00:00
parent 66538b4806
commit 4b766d2622
13 changed files with 344 additions and 329 deletions

View file

@ -3,7 +3,7 @@ dnl Process this file with autoconf to produce a configure script.
dnl -------------------------------------------------------------- dnl --------------------------------------------------------------
dnl configure.in for Eliot dnl configure.in for Eliot
dnl -------------------------------------------------------------- dnl --------------------------------------------------------------
AC_INIT(eliot, 1.7a) AC_INIT(eliot, 1.8-cvs)
AC_CONFIG_SRCDIR(qt/main.cpp) AC_CONFIG_SRCDIR(qt/main.cpp)
AM_INIT_AUTOMAKE AM_INIT_AUTOMAKE
AM_CONFIG_HEADER(config.h) AM_CONFIG_HEADER(config.h)

View file

@ -39,7 +39,7 @@ AIPercent::AIPercent(float iPercent)
} }
void AIPercent::compute(const Dictionary &iDic, Board &iBoard, bool iFirstWord) void AIPercent::compute(const Dictionary &iDic, const Board &iBoard, bool iFirstWord)
{ {
m_results.clear(); m_results.clear();

View file

@ -46,7 +46,7 @@ public:
* This method does the actual computation. It will be called before any * This method does the actual computation. It will be called before any
* of the following methods, so it must prepare everything for them. * of the following methods, so it must prepare everything for them.
*/ */
virtual void compute(const Dictionary &iDic, Board &iBoard, bool iFirstWord); virtual void compute(const Dictionary &iDic, const Board &iBoard, bool iFirstWord);
/// Return the move played by the AI /// Return the move played by the AI
virtual Move getMove() const; virtual Move getMove() const;

View file

@ -70,7 +70,7 @@ public:
* This method does the actual computation. It will be called before any * This method does the actual computation. It will be called before any
* of the following methods, so it must prepare everything for them. * of the following methods, so it must prepare everything for them.
*/ */
virtual void compute(const Dictionary &iDic, Board &iBoard, bool iFirstWord) = 0; virtual void compute(const Dictionary &iDic, const Board &iBoard, bool iFirstWord) = 0;
/// Return the move played by the AI /// Return the move played by the AI
virtual Move getMove() const = 0; virtual Move getMove() const = 0;

View file

@ -77,7 +77,7 @@ void Duplicate::playAI(unsigned int p)
AIPlayer *player = dynamic_cast<AIPlayer*>(m_players[p]); AIPlayer *player = dynamic_cast<AIPlayer*>(m_players[p]);
ASSERT(player != NULL, "AI requested for a human player"); ASSERT(player != NULL, "AI requested for a human player");
player->compute(m_dic, m_board, m_history.beforeFirstRound()); player->compute(getDic(), getBoard(), getHistory().beforeFirstRound());
const Move move = player->getMove(); const Move move = player->getMove();
if (move.getType() == Move::CHANGE_LETTERS || if (move.getType() == Move::CHANGE_LETTERS ||
move.getType() == Move::PASS) move.getType() == Move::PASS)
@ -169,7 +169,7 @@ void Duplicate::recordPlayerMove(const Move &iMove, unsigned int p)
const Rack &newRack = helperComputeRackForMove(oldRack, iMove); const Rack &newRack = helperComputeRackForMove(oldRack, iMove);
// Update the rack and the score of the playing player // Update the rack and the score of the playing player
m_players[p]->endTurn(iMove, m_history.getSize(), newRack); m_players[p]->endTurn(iMove, getHistory().getSize(), newRack);
m_hasPlayed[p] = true; m_hasPlayed[p] = true;
} }

View file

@ -87,7 +87,7 @@ void FreeGame::playAI(unsigned int p)
AIPlayer *player = static_cast<AIPlayer*>(m_players[p]); AIPlayer *player = static_cast<AIPlayer*>(m_players[p]);
player->compute(m_dic, m_board, m_history.beforeFirstRound()); player->compute(getDic(), getBoard(), getHistory().beforeFirstRound());
const Move move = player->getMove(); const Move move = player->getMove();
if (move.getType() == Move::CHANGE_LETTERS || if (move.getType() == Move::CHANGE_LETTERS ||
move.getType() == Move::PASS) move.getType() == Move::PASS)
@ -113,7 +113,7 @@ void FreeGame::recordPlayerMove(const Move &iMove, unsigned int p)
const Rack &newRack = helperComputeRackForMove(oldRack, iMove); const Rack &newRack = helperComputeRackForMove(oldRack, iMove);
// Record the invalid move of the player // Record the invalid move of the player
m_players[p]->endTurn(iMove, m_history.getSize(), newRack); m_players[p]->endTurn(iMove, getHistory().getSize(), newRack);
} }
@ -225,7 +225,7 @@ int FreeGame::checkPass(const wstring &iToChange, unsigned int p) const
return 3; return 3;
// Check that the letters are valid for the current dictionary // Check that the letters are valid for the current dictionary
if (!m_dic.validateLetters(iToChange)) if (!getDic().validateLetters(iToChange))
return 4; return 4;
// It is forbidden to change letters when the bag does not contain at // It is forbidden to change letters when the bag does not contain at
@ -234,7 +234,7 @@ int FreeGame::checkPass(const wstring &iToChange, unsigned int p) const
#ifdef REAL_BAG_MODE #ifdef REAL_BAG_MODE
if (m_bag.getNbTiles() < 7 && !iToChange.empty()) if (m_bag.getNbTiles() < 7 && !iToChange.empty())
#else #else
Bag bag(m_dic); Bag bag(getDic());
realBag(bag); realBag(bag);
if (bag.getNbTiles() < 7 && !iToChange.empty()) if (bag.getNbTiles() < 7 && !iToChange.empty())
#endif #endif

View file

@ -213,7 +213,7 @@ protected:
unsigned int m_currPlayer; unsigned int m_currPlayer;
// TODO: check what should be private and what should be protected // TODO: check what should be private and what should be protected
// private: private:
/// Variant /// Variant
GameVariant m_variant; GameVariant m_variant;
@ -221,12 +221,6 @@ protected:
/// Dictionary currently associated to the game /// Dictionary currently associated to the game
const Dictionary & m_dic; const Dictionary & m_dic;
/// Board
Board m_board;
/// Bag
Bag m_bag;
/** /**
* History of the game. * History of the game.
*/ */
@ -234,6 +228,13 @@ protected:
int m_points; int m_points;
protected:
/// Board
Board m_board;
/// Bag
Bag m_bag;
bool m_finished; bool m_finished;
/********************************************************* /*********************************************************

View file

@ -98,7 +98,7 @@ const Round & Results::get(unsigned int i) const
} }
void Results::search(const Dictionary &iDic, Board &iBoard, void Results::search(const Dictionary &iDic, const Board &iBoard,
const Rack &iRack, bool iFirstWord) const Rack &iRack, bool iFirstWord)
{ {
clear(); clear();

View file

@ -46,7 +46,7 @@ public:
const Round & get(unsigned int) const; const Round & get(unsigned int) const;
/// Perform a search on the board /// Perform a search on the board
void search(const Dictionary &iDic, Board &iBoard, void search(const Dictionary &iDic, const Board &iBoard,
const Rack &iRack, bool iFirstWord); const Rack &iRack, bool iFirstWord);
// FIXME: This method is used to fill the container with the rounds, // FIXME: This method is used to fill the container with the rounds,

View file

@ -134,7 +134,7 @@ void Training::recordPlayerMove(const Move &iMove, unsigned int p)
const Rack &newRack = helperComputeRackForMove(oldRack, iMove); const Rack &newRack = helperComputeRackForMove(oldRack, iMove);
// Record the invalid move of the player // Record the invalid move of the player
m_players[p]->endTurn(iMove, m_history.getSize(), newRack); m_players[p]->endTurn(iMove, getHistory().getSize(), newRack);
} }
@ -163,7 +163,7 @@ void Training::search()
// Search for the current player // Search for the current player
Rack r; Rack r;
m_players[m_currPlayer]->getCurrentRack().getRack(r); m_players[m_currPlayer]->getCurrentRack().getRack(r);
m_results.search(m_dic, m_board, r, m_history.beforeFirstRound()); m_results.search(getDic(), getBoard(), r, getHistory().beforeFirstRound());
} }

View file

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-11-04 21:56+0100\n" "POT-Creation-Date: 2008-11-16 10:29+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,260 +16,266 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: dic/header.cpp:319 dic/header.cpp:320 #: dic/header.cpp:293
msgid "Unknown (old format)" msgid ""
"Too old dictionary format. This format is not supported anymore since Eliot "
"1.8. You can create dictionaries in the new format with the 'compdic' tool "
"provided with Eliot (since version 1.6)."
msgstr "" msgstr ""
#: dic/header.cpp:494 #: dic/header.cpp:435
#, c-format #, c-format
msgid "dictionary name: %s\n" msgid "dictionary name: %s\n"
msgstr "" msgstr ""
#: dic/header.cpp:499 #: dic/header.cpp:438
#, c-format #, c-format
msgid "compressed on: %s\n" msgid "compressed on: %s\n"
msgstr "" msgstr ""
#: dic/header.cpp:503 #: dic/header.cpp:439
#, c-format
msgid "compressed on: Unknown date (old format)\n"
msgstr ""
#: dic/header.cpp:505
#, c-format #, c-format
msgid "compressed using a binary compiled by: %s\n" msgid "compressed using a binary compiled by: %s\n"
msgstr "" msgstr ""
#: dic/header.cpp:506 #: dic/header.cpp:440
#, c-format #, c-format
msgid "dictionary type: %s\n" msgid "dictionary type: %s\n"
msgstr "" msgstr ""
#: dic/header.cpp:507 #: dic/header.cpp:441
#, c-format #, c-format
msgid "letters: %s\n" msgid "letters: %s\n"
msgstr "" msgstr ""
#: dic/header.cpp:508 #: dic/header.cpp:442
#, c-format #, c-format
msgid "number of letters: %lu\n" msgid "number of letters: %lu\n"
msgstr "" msgstr ""
#: dic/header.cpp:509 #: dic/header.cpp:443
#, c-format #, c-format
msgid "number of words: %d\n" msgid "number of words: %d\n"
msgstr "" msgstr ""
#: dic/header.cpp:512 #: dic/header.cpp:445
#, c-format #, c-format
msgid "header size: %lu bytes\n" msgid "header size: %lu bytes\n"
msgstr "" msgstr ""
#: dic/header.cpp:513 #: dic/header.cpp:446
#, c-format #, c-format
msgid "root: %d (edge)\n" msgid "root: %d (edge)\n"
msgstr "" msgstr ""
#: dic/header.cpp:514 #: dic/header.cpp:447
#, c-format #, c-format
msgid "nodes: %d used + %d saved\n" msgid "nodes: %d used + %d saved\n"
msgstr "" msgstr ""
#: dic/header.cpp:515 #: dic/header.cpp:448
#, c-format #, c-format
msgid "edges: %d used + %d saved\n" msgid "edges: %d used + %d saved\n"
msgstr "" msgstr ""
#: dic/header.cpp:517 #: dic/header.cpp:450
#, c-format #, c-format
msgid "letter | points | frequency | vowel | consonant\n" msgid "letter | points | frequency | vowel | consonant\n"
msgstr "" msgstr ""
#: dic/compdic.cpp:408 #: dic/compdic.cpp:401
msgid "Mandatory options:" msgid "Mandatory options:"
msgstr "" msgstr ""
#: dic/compdic.cpp:409 #: dic/compdic.cpp:402
msgid " -d, --dicname <string> Set the dictionary name and version" msgid " -d, --dicname <string> Set the dictionary name and version"
msgstr "" msgstr ""
#: dic/compdic.cpp:410 #: dic/compdic.cpp:403
msgid "" msgid ""
" -l, --letters <string> Path to the file containing the letters (see below)" " -l, --letters <string> Path to the file containing the letters (see below)"
msgstr "" msgstr ""
#: dic/compdic.cpp:411 #: dic/compdic.cpp:404
msgid "" msgid ""
" -i, --input <string> Path to the uncompressed dictionary file (encoded " " -i, --input <string> Path to the uncompressed dictionary file (encoded "
"in UTF-8)" "in UTF-8)"
msgstr "" msgstr ""
#: dic/compdic.cpp:412 #: dic/compdic.cpp:405
msgid "" msgid ""
" The words must be in alphabetical order, without " " The words must be in alphabetical order, without "
"duplicates" "duplicates"
msgstr "" msgstr ""
#: dic/compdic.cpp:413 #: dic/compdic.cpp:406
msgid "" msgid ""
" -o, --output <string Path to the generated compressed dictionary file" " -o, --output <string Path to the generated compressed dictionary file"
msgstr "" msgstr ""
#: dic/compdic.cpp:414 #: dic/compdic.cpp:407
msgid "Other options:" msgid "Other options:"
msgstr "" msgstr ""
#: dic/compdic.cpp:415 #: dic/compdic.cpp:408
msgid " -h, --help Print this help and exit" msgid " -h, --help Print this help and exit"
msgstr "" msgstr ""
#: dic/compdic.cpp:416 #: dic/compdic.cpp:409
msgid "Example:" msgid "Example:"
msgstr "" msgstr ""
#: dic/compdic.cpp:417 #: dic/compdic.cpp:410
msgid " -d 'ODS 5.0' -l letters.txt -i ods5.txt -o ods5.dawg" msgid " -d 'ODS 5.0' -l letters.txt -i ods5.txt -o ods5.dawg"
msgstr "" msgstr ""
#: dic/compdic.cpp:419 #: dic/compdic.cpp:412
msgid "" msgid ""
"The file containing the letters (--letters switch) must be UTF-8 encoded." "The file containing the letters (--letters switch) must be UTF-8 encoded."
msgstr "" msgstr ""
#: dic/compdic.cpp:420 #: dic/compdic.cpp:413
msgid "" msgid ""
"Each line corresponds to one letter, and must contain 5 fields separated " "Each line corresponds to one letter, and must contain 5 fields separated "
"with " "with "
msgstr "" msgstr ""
#: dic/compdic.cpp:421 #: dic/compdic.cpp:414
msgid "one or more space(s)." msgid "one or more space(s)."
msgstr "" msgstr ""
#: dic/compdic.cpp:422 #: dic/compdic.cpp:415
msgid " - 1st field: the letter itself" msgid " - 1st field: the letter itself"
msgstr "" msgstr ""
#: dic/compdic.cpp:423 #: dic/compdic.cpp:416
msgid " - 2nd field: the points of the letter" msgid " - 2nd field: the points of the letter"
msgstr "" msgstr ""
#: dic/compdic.cpp:424 #: dic/compdic.cpp:417
msgid "" msgid ""
" - 3rd field: the frequency of the letter (how many letters of this kind in " " - 3rd field: the frequency of the letter (how many letters of this kind in "
"the game)" "the game)"
msgstr "" msgstr ""
#: dic/compdic.cpp:425 #: dic/compdic.cpp:418
msgid "" msgid ""
" - 4th field: 1 if the letter is considered as a vowel in Scrabble game, 0 " " - 4th field: 1 if the letter is considered as a vowel in Scrabble game, 0 "
"otherwise" "otherwise"
msgstr "" msgstr ""
#: dic/compdic.cpp:426 #: dic/compdic.cpp:419
msgid "" msgid ""
" - 5th field: 1 if the letter is considered as a consonant in Scrabble game, " " - 5th field: 1 if the letter is considered as a consonant in Scrabble game, "
"0 otherwise" "0 otherwise"
msgstr "" msgstr ""
#: dic/compdic.cpp:427 #: dic/compdic.cpp:420
msgid "Example for french:" msgid "Example for french:"
msgstr "" msgstr ""
#: dic/compdic.cpp:428 #: dic/compdic.cpp:421
msgid "A 1 9 1 0" msgid "A 1 9 1 0"
msgstr "" msgstr ""
#: dic/compdic.cpp:429 #: dic/compdic.cpp:422
msgid "[...]" msgid "[...]"
msgstr "" msgstr ""
#: dic/compdic.cpp:430 #: dic/compdic.cpp:423
msgid "Z 10 1 0 1" msgid "Z 10 1 0 1"
msgstr "" msgstr ""
#: dic/compdic.cpp:431 #: dic/compdic.cpp:424
msgid "? 0 2 1 1" msgid "? 0 2 1 1"
msgstr "" msgstr ""
#: dic/compdic.cpp:512 #: dic/compdic.cpp:505
msgid "A mandatory option is missing" msgid "A mandatory option is missing"
msgstr "" msgstr ""
#: dic/compdic.cpp:520 #: dic/compdic.cpp:513
msgid "Cannot stat uncompressed dictionary " msgid "Cannot stat uncompressed dictionary "
msgstr "" msgstr ""
#: dic/compdic.cpp:528 #: dic/compdic.cpp:521
msgid "Cannot open output file " msgid "Cannot open output file "
msgstr "" msgstr ""
#: dic/compdic.cpp:576 #: dic/compdic.cpp:569
#, c-format #, c-format
msgid " Load time: %.3f s\n" msgid " Load time: %.3f s\n"
msgstr "" msgstr ""
#: dic/compdic.cpp:577 #: dic/compdic.cpp:570
#, c-format #, c-format
msgid " Compression time: %.3f s\n" msgid " Compression time: %.3f s\n"
msgstr "" msgstr ""
#: dic/compdic.cpp:579 #: dic/compdic.cpp:572
#, c-format #, c-format
msgid " Maximum recursion level reached: %d\n" msgid " Maximum recursion level reached: %d\n"
msgstr "" msgstr ""
#: dic/listdic.cpp:105 #: dic/listdic.cpp:94
#, c-format #, c-format
msgid "offset binary | structure\n" msgid "offset binary | structure\n"
msgstr "" msgstr ""
#: dic/listdic.cpp:114 #: dic/listdic.cpp:103
#, c-format #, c-format
msgid "usage: %s [-a|-h|-l|-x] dictionary\n" msgid "usage: %s [-a|-h|-l|-x] dictionary\n"
msgstr "" msgstr ""
#: dic/listdic.cpp:115 #: dic/listdic.cpp:104
#, c-format #, c-format
msgid " -a: print all\n" msgid " -a: print all\n"
msgstr "" msgstr ""
#: dic/listdic.cpp:116 #: dic/listdic.cpp:105
#, c-format #, c-format
msgid " -h: print header\n" msgid " -h: print header\n"
msgstr "" msgstr ""
#: dic/listdic.cpp:117 #: dic/listdic.cpp:106
#, c-format #, c-format
msgid " -l: print dictionary word list\n" msgid " -l: print dictionary word list\n"
msgstr "" msgstr ""
#: dic/listdic.cpp:118 #: dic/listdic.cpp:107
#, c-format #, c-format
msgid " -x: print dictionary in hex\n" msgid " -x: print dictionary in hex\n"
msgstr "" msgstr ""
#: dic/regexpmain.cpp:53 #: dic/regexpmain.cpp:46
#, c-format #, c-format
msgid "usage: %s dictionary" msgid "usage: %s dictionary"
msgstr "" msgstr ""
#: dic/regexpmain.cpp:54 #: dic/regexpmain.cpp:47
msgid " dictionary: path to eliot dawg dictionary" msgid " dictionary: path to eliot dawg dictionary"
msgstr "" msgstr ""
#: dic/regexpmain.cpp:95 dic/regexpmain.cpp:119 #: dic/regexpmain.cpp:88 dic/regexpmain.cpp:112
msgid "Enter a regular expression:" msgid "Enter a regular expression:"
msgstr "" msgstr ""
#: dic/regexpmain.cpp:106 #: dic/regexpmain.cpp:99
msgid "result:" msgid "result:"
msgstr "" msgstr ""
#: dic/regexpmain.cpp:115 wxwin/searchpanel.cc:296 #: dic/regexpmain.cpp:108 wxwin/searchpanel.cc:296
msgid "Invalid regular expression: " msgid "Invalid regular expression: "
msgstr "" msgstr ""
#: game/game.cpp:468
msgid "The bag is empty"
msgstr ""
#: game/game.cpp:475 game/game.cpp:485
msgid "Not enough vowels or consonants to complete the rack"
msgstr ""
#: game/training.cpp:49 qt/new_game.cpp:97 qt/new_game.cpp:105 #: game/training.cpp:49 qt/new_game.cpp:97 qt/new_game.cpp:105
#: qt/new_game.cpp:140 qt/ui/new_game.ui:46 #: qt/new_game.cpp:140 qt/ui/new_game.ui:46
msgid "Training" msgid "Training"
@ -309,7 +315,7 @@ msgstr ""
msgid " N | RACK | SOLUTION | REF | PTS | P | BONUS" msgid " N | RACK | SOLUTION | REF | PTS | P | BONUS"
msgstr "" msgstr ""
#: utils/ncurses.cpp:414 qt/history_widget.cpp:143 qt/main_window.cpp:563 #: utils/ncurses.cpp:414 qt/history_widget.cpp:143 qt/main_window.cpp:553
msgid "(PASS)" msgid "(PASS)"
msgstr "" msgstr ""
@ -415,7 +421,7 @@ msgstr ""
msgid " Ctrl-l Refresh the screen" msgid " Ctrl-l Refresh the screen"
msgstr "" msgstr ""
#: utils/ncurses.cpp:486 wxwin/auxframes.cc:147 qt/main_window.cpp:646 #: utils/ncurses.cpp:486 wxwin/auxframes.cc:147 qt/main_window.cpp:636
#: qt/ui/main_window.ui:94 #: qt/ui/main_window.ui:94
msgid "Bag" msgid "Bag"
msgstr "" msgstr ""
@ -481,7 +487,7 @@ msgid "Game saved in '%ls'"
msgstr "" msgstr ""
#: utils/ncurses.cpp:632 wxwin/mainframe.cc:275 wxwin/mainframe.cc:405 #: utils/ncurses.cpp:632 wxwin/mainframe.cc:275 wxwin/mainframe.cc:405
#: wxwin/mainframe.cc:429 qt/main_window.cpp:408 #: wxwin/mainframe.cc:429 qt/main_window.cpp:398
msgid "Load a game" msgid "Load a game"
msgstr "" msgstr ""
@ -495,7 +501,7 @@ msgstr ""
msgid "Invalid saved game" msgid "Invalid saved game"
msgstr "" msgstr ""
#: utils/ncurses.cpp:656 qt/main_window.cpp:422 #: utils/ncurses.cpp:656 qt/main_window.cpp:412
#, c-format #, c-format
msgid "Game loaded" msgid "Game loaded"
msgstr "" msgstr ""
@ -524,7 +530,7 @@ msgstr ""
msgid "Cannot take these letters from the bag" msgid "Cannot take these letters from the bag"
msgstr "" msgstr ""
#: utils/ncurses.cpp:1095 qt/main_window.cpp:212 qt/ui/prefs_dialog.ui:181 #: utils/ncurses.cpp:1095 qt/main_window.cpp:214 qt/ui/prefs_dialog.ui:181
msgid "Training mode" msgid "Training mode"
msgstr "" msgstr ""
@ -745,7 +751,7 @@ msgstr ""
msgid "Cancel last changes" msgid "Cancel last changes"
msgstr "" msgstr ""
#: wxwin/gfxresult.cc:67 qt/history_widget.cpp:53 qt/training_widget.cpp:58 #: wxwin/gfxresult.cc:67 qt/history_widget.cpp:53 qt/training_widget.cpp:59
msgid "Word" msgid "Word"
msgstr "" msgstr ""
@ -797,7 +803,7 @@ msgstr ""
msgid "&New game\tCtrl+N" msgid "&New game\tCtrl+N"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:272 qt/main_window.cpp:326 #: wxwin/mainframe.cc:272 qt/main_window.cpp:316
msgid "Start a new game" msgid "Start a new game"
msgstr "" msgstr ""
@ -817,7 +823,7 @@ msgstr ""
msgid "&Save as...\tCtrl+S" msgid "&Save as...\tCtrl+S"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:276 qt/main_window.cpp:331 #: wxwin/mainframe.cc:276 qt/main_window.cpp:321
msgid "Save the current game" msgid "Save the current game"
msgstr "" msgstr ""
@ -849,7 +855,7 @@ msgstr ""
msgid "&Quit\tCtrl+Q" msgid "&Quit\tCtrl+Q"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:284 qt/main_window.cpp:337 #: wxwin/mainframe.cc:284 qt/main_window.cpp:327
msgid "Quit Eliot" msgid "Quit Eliot"
msgstr "" msgstr ""
@ -857,7 +863,7 @@ msgstr ""
msgid "&Dictionary...\tCtrl+D" msgid "&Dictionary...\tCtrl+D"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:287 wxwin/mainframe.cc:604 qt/main_window.cpp:613 #: wxwin/mainframe.cc:287 wxwin/mainframe.cc:604 qt/main_window.cpp:603
msgid "Choose a dictionary" msgid "Choose a dictionary"
msgstr "" msgstr ""
@ -966,7 +972,7 @@ msgid "Font for the search"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:310 wxwin/mainframe.cc:334 qt/history_widget.cpp:177 #: wxwin/mainframe.cc:310 wxwin/mainframe.cc:334 qt/history_widget.cpp:177
#: qt/main_window.cpp:324 #: qt/main_window.cpp:314
msgid "&Game" msgid "&Game"
msgstr "" msgstr ""
@ -1062,24 +1068,24 @@ msgstr ""
msgid "R&esults" msgid "R&esults"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:331 qt/main_window.cpp:362 #: wxwin/mainframe.cc:331 qt/main_window.cpp:352
msgid "&About..." msgid "&About..."
msgstr "" msgstr ""
#: wxwin/mainframe.cc:331 wxwin/mainframe.cc:733 qt/main_window.cpp:363 #: wxwin/mainframe.cc:331 wxwin/mainframe.cc:733 qt/main_window.cpp:353
#: qt/main_window.cpp:724 #: qt/main_window.cpp:714
msgid "About Eliot" msgid "About Eliot"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:335 qt/main_window.cpp:341 #: wxwin/mainframe.cc:335 qt/main_window.cpp:331
msgid "&Settings" msgid "&Settings"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:336 qt/main_window.cpp:349 #: wxwin/mainframe.cc:336 qt/main_window.cpp:339
msgid "&Windows" msgid "&Windows"
msgstr "" msgstr ""
#: wxwin/mainframe.cc:337 qt/main_window.cpp:361 #: wxwin/mainframe.cc:337 qt/main_window.cpp:351
msgid "&Help" msgid "&Help"
msgstr "" msgstr ""
@ -1096,7 +1102,7 @@ msgstr ""
msgid "Cannot open " msgid "Cannot open "
msgstr "" msgstr ""
#: wxwin/mainframe.cc:440 wxwin/mainframe.cc:449 qt/main_window.cpp:415 #: wxwin/mainframe.cc:440 wxwin/mainframe.cc:449 qt/main_window.cpp:405
msgid "Error while loading the game" msgid "Error while loading the game"
msgstr "" msgstr ""
@ -1207,12 +1213,12 @@ msgstr ""
msgid "Regular expressions" msgid "Regular expressions"
msgstr "" msgstr ""
#: qt/bag_widget.cpp:49 qt/dic_tools_widget.cpp:100 #: qt/bag_widget.cpp:50 qt/dic_tools_widget.cpp:100
msgid "Letter" msgid "Letter"
msgstr "" msgstr ""
#: qt/bag_widget.cpp:50 qt/dic_tools_widget.cpp:101 qt/history_widget.cpp:55 #: qt/bag_widget.cpp:51 qt/dic_tools_widget.cpp:101 qt/history_widget.cpp:55
#: qt/training_widget.cpp:60 #: qt/training_widget.cpp:61
msgid "Points" msgid "Points"
msgstr "" msgstr ""
@ -1274,7 +1280,7 @@ msgstr ""
msgid "Turn" msgid "Turn"
msgstr "" msgstr ""
#: qt/history_widget.cpp:54 qt/training_widget.cpp:59 #: qt/history_widget.cpp:54 qt/training_widget.cpp:60
msgid "Ref" msgid "Ref"
msgstr "" msgstr ""
@ -1282,23 +1288,25 @@ msgstr ""
msgid "Player" msgid "Player"
msgstr "" msgstr ""
#: qt/main_window.cpp:108 qt/main_window.cpp:664 qt/ui/main_window.ui:40 #: qt/main_window.cpp:109 qt/main_window.cpp:654 qt/ui/main_window.ui:40
msgid "Board" msgid "Board"
msgstr "" msgstr ""
#: qt/main_window.cpp:163 #: qt/main_window.cpp:164
msgid "Cannot load dictionary '%1' indicated in the preferences" msgid ""
"Cannot load dictionary '%1' indicated in the preferences.\n"
"Reason: %2"
msgstr "" msgstr ""
#: qt/main_window.cpp:204 #: qt/main_window.cpp:206
msgid "No game" msgid "No game"
msgstr "" msgstr ""
#: qt/main_window.cpp:217 #: qt/main_window.cpp:219
msgid "Duplicate game" msgid "Duplicate game"
msgstr "" msgstr ""
#: qt/main_window.cpp:222 qt/new_game.cpp:99 qt/new_game.cpp:165 #: qt/main_window.cpp:224 qt/new_game.cpp:99 qt/new_game.cpp:165
#: qt/ui/new_game.ui:41 #: qt/ui/new_game.ui:41
msgid "Free game" msgid "Free game"
msgstr "" msgstr ""
@ -1307,201 +1315,189 @@ msgstr ""
msgid "Dictionary: %1" msgid "Dictionary: %1"
msgstr "" msgstr ""
#: qt/main_window.cpp:241 #: qt/main_window.cpp:245
msgid "Dictionary: Unknown (old format)"
msgstr ""
#: qt/main_window.cpp:242
msgid ""
"The dictionary name cannot be retrieved, because you are using an old "
"dictionary format.\n"
"You can probably download a newer version of the dictionary on http://www."
"nongnu.org/eliot/"
msgstr ""
#: qt/main_window.cpp:255
msgid "Eliot - Error" msgid "Eliot - Error"
msgstr "" msgstr ""
#: qt/main_window.cpp:325 #: qt/main_window.cpp:315
msgid "&New..." msgid "&New..."
msgstr "" msgstr ""
#: qt/main_window.cpp:325 #: qt/main_window.cpp:315
msgid "Ctrl+N" msgid "Ctrl+N"
msgstr "" msgstr ""
#: qt/main_window.cpp:328 #: qt/main_window.cpp:318
msgid "&Load..." msgid "&Load..."
msgstr "" msgstr ""
#: qt/main_window.cpp:328 #: qt/main_window.cpp:318
msgid "Ctrl+O" msgid "Ctrl+O"
msgstr "" msgstr ""
#: qt/main_window.cpp:329 #: qt/main_window.cpp:319
msgid "Load an existing game" msgid "Load an existing game"
msgstr "" msgstr ""
#: qt/main_window.cpp:330 #: qt/main_window.cpp:320
msgid "&Save as..." msgid "&Save as..."
msgstr "" msgstr ""
#: qt/main_window.cpp:330 #: qt/main_window.cpp:320
msgid "Ctrl+S" msgid "Ctrl+S"
msgstr "" msgstr ""
#: qt/main_window.cpp:333 #: qt/main_window.cpp:323
msgid "&Print..." msgid "&Print..."
msgstr "" msgstr ""
#: qt/main_window.cpp:333 #: qt/main_window.cpp:323
msgid "Ctrl+P" msgid "Ctrl+P"
msgstr "" msgstr ""
#: qt/main_window.cpp:334 #: qt/main_window.cpp:324
msgid "Print the current game" msgid "Print the current game"
msgstr "" msgstr ""
#: qt/main_window.cpp:336 #: qt/main_window.cpp:326
msgid "&Quit" msgid "&Quit"
msgstr "" msgstr ""
#: qt/main_window.cpp:336 #: qt/main_window.cpp:326
msgid "Ctrl+Q" msgid "Ctrl+Q"
msgstr "" msgstr ""
#: qt/main_window.cpp:342 #: qt/main_window.cpp:332
msgid "&Choose dictionary..." msgid "&Choose dictionary..."
msgstr "" msgstr ""
#: qt/main_window.cpp:342 #: qt/main_window.cpp:332
msgid "Ctrl+C" msgid "Ctrl+C"
msgstr "" msgstr ""
#: qt/main_window.cpp:343 #: qt/main_window.cpp:333
msgid "Select a new dictionary" msgid "Select a new dictionary"
msgstr "" msgstr ""
#: qt/main_window.cpp:344 #: qt/main_window.cpp:334
msgid "&Preferences..." msgid "&Preferences..."
msgstr "" msgstr ""
#: qt/main_window.cpp:344 #: qt/main_window.cpp:334
msgid "Ctrl+F" msgid "Ctrl+F"
msgstr "" msgstr ""
#: qt/main_window.cpp:345 #: qt/main_window.cpp:335
msgid "Edit the preferences" msgid "Edit the preferences"
msgstr "" msgstr ""
#: qt/main_window.cpp:350 #: qt/main_window.cpp:340
msgid "&Bag" msgid "&Bag"
msgstr "" msgstr ""
#: qt/main_window.cpp:350 #: qt/main_window.cpp:340
msgid "Ctrl+B" msgid "Ctrl+B"
msgstr "" msgstr ""
#: qt/main_window.cpp:351 qt/ui/main_window.ui:97 #: qt/main_window.cpp:341 qt/ui/main_window.ui:97
msgid "Show/hide the remaining tiles in the bag" msgid "Show/hide the remaining tiles in the bag"
msgstr "" msgstr ""
#: qt/main_window.cpp:352 #: qt/main_window.cpp:342
msgid "&External board" msgid "&External board"
msgstr "" msgstr ""
#: qt/main_window.cpp:352 #: qt/main_window.cpp:342
msgid "Ctrl+E" msgid "Ctrl+E"
msgstr "" msgstr ""
#: qt/main_window.cpp:353 qt/ui/main_window.ui:111 #: qt/main_window.cpp:343 qt/ui/main_window.ui:111
msgid "Show/hide the external board" msgid "Show/hide the external board"
msgstr "" msgstr ""
#: qt/main_window.cpp:354 #: qt/main_window.cpp:344
msgid "&History" msgid "&History"
msgstr "" msgstr ""
#: qt/main_window.cpp:354 #: qt/main_window.cpp:344
msgid "Ctrl+H" msgid "Ctrl+H"
msgstr "" msgstr ""
#: qt/main_window.cpp:355 qt/ui/main_window.ui:125 #: qt/main_window.cpp:345 qt/ui/main_window.ui:125
msgid "Show/hide the game history" msgid "Show/hide the game history"
msgstr "" msgstr ""
#: qt/main_window.cpp:356 #: qt/main_window.cpp:346
msgid "&Dictionary tools" msgid "&Dictionary tools"
msgstr "" msgstr ""
#: qt/main_window.cpp:356 #: qt/main_window.cpp:346
msgid "Ctrl+D" msgid "Ctrl+D"
msgstr "" msgstr ""
#: qt/main_window.cpp:357 qt/ui/main_window.ui:139 #: qt/main_window.cpp:347 qt/ui/main_window.ui:139
msgid "Show/hide the dictionary tools" msgid "Show/hide the dictionary tools"
msgstr "" msgstr ""
#: qt/main_window.cpp:362 #: qt/main_window.cpp:352
msgid "Ctrl+A" msgid "Ctrl+A"
msgstr "" msgstr ""
#: qt/main_window.cpp:371 qt/main_window.cpp:404 #: qt/main_window.cpp:361 qt/main_window.cpp:394
msgid "You have to select a dictionary first!" msgid "You have to select a dictionary first!"
msgstr "" msgstr ""
#: qt/main_window.cpp:396 #: qt/main_window.cpp:386
msgid "Game started" msgid "Game started"
msgstr "" msgstr ""
#: qt/main_window.cpp:432 #: qt/main_window.cpp:422
msgid "Save a game" msgid "Save a game"
msgstr "" msgstr ""
#: qt/main_window.cpp:437 #: qt/main_window.cpp:427
msgid "Game saved" msgid "Game saved"
msgstr "" msgstr ""
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "N." msgid "N."
msgstr "" msgstr ""
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "RACK" msgid "RACK"
msgstr "" msgstr ""
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "SOLUTION" msgid "SOLUTION"
msgstr "" msgstr ""
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "REF" msgid "REF"
msgstr "" msgstr ""
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "PTS" msgid "PTS"
msgstr "" msgstr ""
#: qt/main_window.cpp:604 #: qt/main_window.cpp:594
msgid "Stop current game?" msgid "Stop current game?"
msgstr "" msgstr ""
#: qt/main_window.cpp:605 #: qt/main_window.cpp:595
msgid "" msgid ""
"Loading a dictionary will stop the current game. Do you want to continue?" "Loading a dictionary will stop the current game. Do you want to continue?"
msgstr "" msgstr ""
#: qt/main_window.cpp:682 qt/ui/main_window.ui:53 qt/ui/main_window.ui:122 #: qt/main_window.cpp:672 qt/ui/main_window.ui:53 qt/ui/main_window.ui:122
msgid "History" msgid "History"
msgstr "" msgstr ""
#: qt/main_window.cpp:699 qt/ui/dic_tools_widget.ui:13 #: qt/main_window.cpp:689 qt/ui/dic_tools_widget.ui:13
#: qt/ui/main_window.ui:136 #: qt/ui/main_window.ui:136
msgid "Dictionary tools" msgid "Dictionary tools"
msgstr "" msgstr ""
#: qt/main_window.cpp:716 #: qt/main_window.cpp:706
msgid "" msgid ""
"Copyright (C) 1999-2008 - Antoine Fraboulet & Olivier Teuliere\n" "Copyright (C) 1999-2008 - Antoine Fraboulet & Olivier Teuliere\n"
"\n" "\n"
@ -1631,15 +1627,15 @@ msgstr ""
msgid "Score" msgid "Score"
msgstr "" msgstr ""
#: qt/training_widget.cpp:199 #: qt/training_widget.cpp:200
msgid "Warning: Cannot set the rack to '%1'" msgid "Warning: Cannot set the rack to '%1'"
msgstr "" msgstr ""
#: qt/training_widget.cpp:224 #: qt/training_widget.cpp:239
msgid "Searching with rack '%1'..." msgid "Searching with rack '%1'..."
msgstr "" msgstr ""
#: qt/training_widget.cpp:226 #: qt/training_widget.cpp:241
msgid "Search done" msgid "Search done"
msgstr "" msgstr ""

330
po/fr.po
View file

@ -8,100 +8,101 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: eliot 1.7\n" "Project-Id-Version: eliot 1.7\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-11-04 21:56+0100\n" "POT-Creation-Date: 2008-11-16 10:29+0100\n"
"PO-Revision-Date: 2008-08-31 10:43+0100\n" "PO-Revision-Date: 2008-11-16 10:35+0100\n"
"Last-Translator: Olivier Teuliere <ipkiss@via.ecp.fr>\n" "Last-Translator: Olivier Teulière <ipkiss@via.ecp.fr>\n"
"Language-Team: French <traduc@traduc.org>\n" "Language-Team: French <traduc@traduc.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: dic/header.cpp:319 dic/header.cpp:320 #: dic/header.cpp:293
msgid "Unknown (old format)" msgid ""
msgstr "Inconnu (vieux format)" "Too old dictionary format. This format is not supported anymore since Eliot "
"1.8. You can create dictionaries in the new format with the 'compdic' tool "
"provided with Eliot (since version 1.6)."
msgstr ""
"Format de dictionnaire trop vieux. Ce format n'est plus supporté depuis "
"Eliot 1.8. Vous pouvez créer des dictionnaires dans le nouveau format avec "
"l'outil 'compdic' fourni avec Eliot (depuis la version 1.6)."
#: dic/header.cpp:494 #: dic/header.cpp:435
#, c-format #, c-format
msgid "dictionary name: %s\n" msgid "dictionary name: %s\n"
msgstr "Nom du dictionnaire : %s\n" msgstr "Nom du dictionnaire : %s\n"
#: dic/header.cpp:499 #: dic/header.cpp:438
#, c-format #, c-format
msgid "compressed on: %s\n" msgid "compressed on: %s\n"
msgstr "Compressé le : %s\n" msgstr "Compressé le : %s\n"
#: dic/header.cpp:503 #: dic/header.cpp:439
#, c-format
msgid "compressed on: Unknown date (old format)\n"
msgstr "Compressé le : Date inconnue (vieux format)\n"
#: dic/header.cpp:505
#, c-format #, c-format
msgid "compressed using a binary compiled by: %s\n" msgid "compressed using a binary compiled by: %s\n"
msgstr "Compressé avec un binaire compilé par : %s\n" msgstr "Compressé avec un binaire compilé par : %s\n"
#: dic/header.cpp:506 #: dic/header.cpp:440
#, c-format #, c-format
msgid "dictionary type: %s\n" msgid "dictionary type: %s\n"
msgstr "Type de dictionnaire : %s\n" msgstr "Type de dictionnaire : %s\n"
#: dic/header.cpp:507 #: dic/header.cpp:441
#, c-format #, c-format
msgid "letters: %s\n" msgid "letters: %s\n"
msgstr "Lettres : %s\n" msgstr "Lettres : %s\n"
#: dic/header.cpp:508 #: dic/header.cpp:442
#, c-format #, c-format
msgid "number of letters: %lu\n" msgid "number of letters: %lu\n"
msgstr "Nombre de lettres : %lu\n" msgstr "Nombre de lettres : %lu\n"
#: dic/header.cpp:509 #: dic/header.cpp:443
#, c-format #, c-format
msgid "number of words: %d\n" msgid "number of words: %d\n"
msgstr "Nombre de mots : %d\n" msgstr "Nombre de mots : %d\n"
#: dic/header.cpp:512 #: dic/header.cpp:445
#, c-format #, c-format
msgid "header size: %lu bytes\n" msgid "header size: %lu bytes\n"
msgstr "Taille du header : %lu octets\n" msgstr "Taille du header : %lu octets\n"
#: dic/header.cpp:513 #: dic/header.cpp:446
#, c-format #, c-format
msgid "root: %d (edge)\n" msgid "root: %d (edge)\n"
msgstr "Racine : %d (arcs)\n" msgstr "Racine : %d (arcs)\n"
#: dic/header.cpp:514 #: dic/header.cpp:447
#, c-format #, c-format
msgid "nodes: %d used + %d saved\n" msgid "nodes: %d used + %d saved\n"
msgstr "Noeuds : %d utilisés + %d évités\n" msgstr "Noeuds : %d utilisés + %d évités\n"
#: dic/header.cpp:515 #: dic/header.cpp:448
#, c-format #, c-format
msgid "edges: %d used + %d saved\n" msgid "edges: %d used + %d saved\n"
msgstr "Arcs : %d utilisés + %d évités\n" msgstr "Arcs : %d utilisés + %d évités\n"
#: dic/header.cpp:517 #: dic/header.cpp:450
#, c-format #, c-format
msgid "letter | points | frequency | vowel | consonant\n" msgid "letter | points | frequency | vowel | consonant\n"
msgstr "lettre | points | frequence | voye. | consonne\n" msgstr "lettre | points | frequence | voye. | consonne\n"
#: dic/compdic.cpp:408 #: dic/compdic.cpp:401
msgid "Mandatory options:" msgid "Mandatory options:"
msgstr "Options obligatoires :" msgstr "Options obligatoires :"
#: dic/compdic.cpp:409 #: dic/compdic.cpp:402
msgid " -d, --dicname <string> Set the dictionary name and version" msgid " -d, --dicname <string> Set the dictionary name and version"
msgstr " -d, --dicname <string> Choisir le nom et la version du dictionnaire" msgstr " -d, --dicname <string> Choisir le nom et la version du dictionnaire"
#: dic/compdic.cpp:410 #: dic/compdic.cpp:403
msgid "" msgid ""
" -l, --letters <string> Path to the file containing the letters (see below)" " -l, --letters <string> Path to the file containing the letters (see below)"
msgstr "" msgstr ""
" -l, --letters <string> Chemin vers un fichier contenant les lettres (voir " " -l, --letters <string> Chemin vers un fichier contenant les lettres (voir "
"ci-dessous)" "ci-dessous)"
#: dic/compdic.cpp:411 #: dic/compdic.cpp:404
msgid "" msgid ""
" -i, --input <string> Path to the uncompressed dictionary file (encoded " " -i, --input <string> Path to the uncompressed dictionary file (encoded "
"in UTF-8)" "in UTF-8)"
@ -109,7 +110,7 @@ msgstr ""
" -i, --input <string> Chemin vers le fichier de dictionnaire non " " -i, --input <string> Chemin vers le fichier de dictionnaire non "
"compressé (encodé en UTF-8)" "compressé (encodé en UTF-8)"
#: dic/compdic.cpp:412 #: dic/compdic.cpp:405
msgid "" msgid ""
" The words must be in alphabetical order, without " " The words must be in alphabetical order, without "
"duplicates" "duplicates"
@ -117,56 +118,56 @@ msgstr ""
" Les mots doivent être triés par ordre alphabétique," " Les mots doivent être triés par ordre alphabétique,"
"sans doublons" "sans doublons"
#: dic/compdic.cpp:413 #: dic/compdic.cpp:406
msgid "" msgid ""
" -o, --output <string Path to the generated compressed dictionary file" " -o, --output <string Path to the generated compressed dictionary file"
msgstr "" msgstr ""
" -o, --output <string Chemin vers le fichier de dictionnaire compressé " " -o, --output <string Chemin vers le fichier de dictionnaire compressé "
"généré" "généré"
#: dic/compdic.cpp:414 #: dic/compdic.cpp:407
msgid "Other options:" msgid "Other options:"
msgstr "Autres options :" msgstr "Autres options :"
#: dic/compdic.cpp:415 #: dic/compdic.cpp:408
msgid " -h, --help Print this help and exit" msgid " -h, --help Print this help and exit"
msgstr " -h, --help Affiche cette aide et quitte" msgstr " -h, --help Affiche cette aide et quitte"
#: dic/compdic.cpp:416 #: dic/compdic.cpp:409
msgid "Example:" msgid "Example:"
msgstr "Exemple :" msgstr "Exemple :"
#: dic/compdic.cpp:417 #: dic/compdic.cpp:410
msgid " -d 'ODS 5.0' -l letters.txt -i ods5.txt -o ods5.dawg" msgid " -d 'ODS 5.0' -l letters.txt -i ods5.txt -o ods5.dawg"
msgstr " -d 'ODS 5.0' -l lettres.txt -i ods5.txt -o ods5.dawg" msgstr " -d 'ODS 5.0' -l lettres.txt -i ods5.txt -o ods5.dawg"
#: dic/compdic.cpp:419 #: dic/compdic.cpp:412
msgid "" msgid ""
"The file containing the letters (--letters switch) must be UTF-8 encoded." "The file containing the letters (--letters switch) must be UTF-8 encoded."
msgstr "" msgstr ""
"Le fichier contenant les lettres (option --letters) doit être encodé en UTF-" "Le fichier contenant les lettres (option --letters) doit être encodé en UTF-"
"8." "8."
#: dic/compdic.cpp:420 #: dic/compdic.cpp:413
msgid "" msgid ""
"Each line corresponds to one letter, and must contain 5 fields separated " "Each line corresponds to one letter, and must contain 5 fields separated "
"with " "with "
msgstr "" msgstr ""
"Chaque ligne correspond à une lettre, et doit contenir 5 champs séparés par " "Chaque ligne correspond à une lettre, et doit contenir 5 champs séparés par "
#: dic/compdic.cpp:421 #: dic/compdic.cpp:414
msgid "one or more space(s)." msgid "one or more space(s)."
msgstr "un ou plusieurs espace(s)." msgstr "un ou plusieurs espace(s)."
#: dic/compdic.cpp:422 #: dic/compdic.cpp:415
msgid " - 1st field: the letter itself" msgid " - 1st field: the letter itself"
msgstr " - 1er champ : la lettre elle-même" msgstr " - 1er champ : la lettre elle-même"
#: dic/compdic.cpp:423 #: dic/compdic.cpp:416
msgid " - 2nd field: the points of the letter" msgid " - 2nd field: the points of the letter"
msgstr " - 2e champ : les points de cette lettre" msgstr " - 2e champ : les points de cette lettre"
#: dic/compdic.cpp:424 #: dic/compdic.cpp:417
msgid "" msgid ""
" - 3rd field: the frequency of the letter (how many letters of this kind in " " - 3rd field: the frequency of the letter (how many letters of this kind in "
"the game)" "the game)"
@ -174,7 +175,7 @@ msgstr ""
" - 3e champ : la fréquence de la lettre (nombre de lettres de ce genre dans " " - 3e champ : la fréquence de la lettre (nombre de lettres de ce genre dans "
"le jeu)" "le jeu)"
#: dic/compdic.cpp:425 #: dic/compdic.cpp:418
msgid "" msgid ""
" - 4th field: 1 if the letter is considered as a vowel in Scrabble game, 0 " " - 4th field: 1 if the letter is considered as a vowel in Scrabble game, 0 "
"otherwise" "otherwise"
@ -182,7 +183,7 @@ msgstr ""
" - 4e champ : 1 si la lettre est considérée comme une voyelle au jeu de " " - 4e champ : 1 si la lettre est considérée comme une voyelle au jeu de "
"Scrabble, 0 sinon" "Scrabble, 0 sinon"
#: dic/compdic.cpp:426 #: dic/compdic.cpp:419
msgid "" msgid ""
" - 5th field: 1 if the letter is considered as a consonant in Scrabble game, " " - 5th field: 1 if the letter is considered as a consonant in Scrabble game, "
"0 otherwise" "0 otherwise"
@ -190,104 +191,112 @@ msgstr ""
" - 5e champ : 1 si la lettre est considérée comme une consonne au jeu de " " - 5e champ : 1 si la lettre est considérée comme une consonne au jeu de "
"Scrabble, 0 sinon" "Scrabble, 0 sinon"
#: dic/compdic.cpp:427 #: dic/compdic.cpp:420
msgid "Example for french:" msgid "Example for french:"
msgstr "Exemple pour le Français :" msgstr "Exemple pour le Français :"
#: dic/compdic.cpp:428 #: dic/compdic.cpp:421
msgid "A 1 9 1 0" msgid "A 1 9 1 0"
msgstr "A 1 9 1 0" msgstr "A 1 9 1 0"
#: dic/compdic.cpp:429 #: dic/compdic.cpp:422
msgid "[...]" msgid "[...]"
msgstr "[...]" msgstr "[...]"
#: dic/compdic.cpp:430 #: dic/compdic.cpp:423
msgid "Z 10 1 0 1" msgid "Z 10 1 0 1"
msgstr "Z 10 1 0 1" msgstr "Z 10 1 0 1"
#: dic/compdic.cpp:431 #: dic/compdic.cpp:424
msgid "? 0 2 1 1" msgid "? 0 2 1 1"
msgstr "? 0 2 1 1" msgstr "? 0 2 1 1"
#: dic/compdic.cpp:512 #: dic/compdic.cpp:505
msgid "A mandatory option is missing" msgid "A mandatory option is missing"
msgstr "Une option obligatoire est manquante" msgstr "Une option obligatoire est manquante"
#: dic/compdic.cpp:520 #: dic/compdic.cpp:513
msgid "Cannot stat uncompressed dictionary " msgid "Cannot stat uncompressed dictionary "
msgstr "Impossible de trouver le dictionnaire non compressé " msgstr "Impossible de trouver le dictionnaire non compressé "
#: dic/compdic.cpp:528 #: dic/compdic.cpp:521
msgid "Cannot open output file " msgid "Cannot open output file "
msgstr "Impossible d'ouvrir le fichier d'output " msgstr "Impossible d'ouvrir le fichier d'output "
#: dic/compdic.cpp:576 #: dic/compdic.cpp:569
#, c-format #, c-format
msgid " Load time: %.3f s\n" msgid " Load time: %.3f s\n"
msgstr " Temps de chargement : %.3f s\n" msgstr " Temps de chargement : %.3f s\n"
#: dic/compdic.cpp:577 #: dic/compdic.cpp:570
#, c-format #, c-format
msgid " Compression time: %.3f s\n" msgid " Compression time: %.3f s\n"
msgstr " Temps de compression : %.3f s\n" msgstr " Temps de compression : %.3f s\n"
#: dic/compdic.cpp:579 #: dic/compdic.cpp:572
#, c-format #, c-format
msgid " Maximum recursion level reached: %d\n" msgid " Maximum recursion level reached: %d\n"
msgstr " Niveau maximum de rcursion atteint : %d\n" msgstr " Niveau maximum de rcursion atteint : %d\n"
#: dic/listdic.cpp:105 #: dic/listdic.cpp:94
#, c-format #, c-format
msgid "offset binary | structure\n" msgid "offset binary | structure\n"
msgstr "offset binaire | structure\n" msgstr "offset binaire | structure\n"
#: dic/listdic.cpp:114 #: dic/listdic.cpp:103
#, c-format #, c-format
msgid "usage: %s [-a|-h|-l|-x] dictionary\n" msgid "usage: %s [-a|-h|-l|-x] dictionary\n"
msgstr "Usage : %s [-a|-h|-l|-x] dictionnaire\n" msgstr "Usage : %s [-a|-h|-l|-x] dictionnaire\n"
#: dic/listdic.cpp:115 #: dic/listdic.cpp:104
#, c-format #, c-format
msgid " -a: print all\n" msgid " -a: print all\n"
msgstr " -a : affiche tout\n" msgstr " -a : affiche tout\n"
#: dic/listdic.cpp:116 #: dic/listdic.cpp:105
#, c-format #, c-format
msgid " -h: print header\n" msgid " -h: print header\n"
msgstr " -h : affiche l'en-tête\n" msgstr " -h : affiche l'en-tête\n"
#: dic/listdic.cpp:117 #: dic/listdic.cpp:106
#, c-format #, c-format
msgid " -l: print dictionary word list\n" msgid " -l: print dictionary word list\n"
msgstr " -l : affiche la liste de mots du dictionnaire\n" msgstr " -l : affiche la liste de mots du dictionnaire\n"
#: dic/listdic.cpp:118 #: dic/listdic.cpp:107
#, c-format #, c-format
msgid " -x: print dictionary in hex\n" msgid " -x: print dictionary in hex\n"
msgstr " -x : affiche le dictionnaire en hexadécimal\n" msgstr " -x : affiche le dictionnaire en hexadécimal\n"
#: dic/regexpmain.cpp:53 #: dic/regexpmain.cpp:46
#, c-format #, c-format
msgid "usage: %s dictionary" msgid "usage: %s dictionary"
msgstr "Usage : %s dictionnaire" msgstr "Usage : %s dictionnaire"
#: dic/regexpmain.cpp:54 #: dic/regexpmain.cpp:47
msgid " dictionary: path to eliot dawg dictionary" msgid " dictionary: path to eliot dawg dictionary"
msgstr " dictionnaire : chemin vers un dictionnaire de type dawg pour Eliot" msgstr " dictionnaire : chemin vers un dictionnaire de type dawg pour Eliot"
#: dic/regexpmain.cpp:95 dic/regexpmain.cpp:119 #: dic/regexpmain.cpp:88 dic/regexpmain.cpp:112
msgid "Enter a regular expression:" msgid "Enter a regular expression:"
msgstr "Entrer une expression régulière :" msgstr "Entrer une expression régulière :"
#: dic/regexpmain.cpp:106 #: dic/regexpmain.cpp:99
msgid "result:" msgid "result:"
msgstr "résultat :" msgstr "résultat :"
#: dic/regexpmain.cpp:115 wxwin/searchpanel.cc:296 #: dic/regexpmain.cpp:108 wxwin/searchpanel.cc:296
msgid "Invalid regular expression: " msgid "Invalid regular expression: "
msgstr "Expression régulière invalide : " msgstr "Expression régulière invalide : "
#: game/game.cpp:468
msgid "The bag is empty"
msgstr "Le sac est vide"
#: game/game.cpp:475 game/game.cpp:485
msgid "Not enough vowels or consonants to complete the rack"
msgstr "Pas assez de voyelles ou de consonnes pour compléter le tirage"
#: game/training.cpp:49 qt/new_game.cpp:97 qt/new_game.cpp:105 #: game/training.cpp:49 qt/new_game.cpp:97 qt/new_game.cpp:105
#: qt/new_game.cpp:140 qt/ui/new_game.ui:46 #: qt/new_game.cpp:140 qt/ui/new_game.ui:46
msgid "Training" msgid "Training"
@ -327,7 +336,7 @@ msgstr "Historique de la partie"
msgid " N | RACK | SOLUTION | REF | PTS | P | BONUS" msgid " N | RACK | SOLUTION | REF | PTS | P | BONUS"
msgstr " N | TIRAGE | SOLUTION | REF | PTS | J | BONUS" msgstr " N | TIRAGE | SOLUTION | REF | PTS | J | BONUS"
#: utils/ncurses.cpp:414 qt/history_widget.cpp:143 qt/main_window.cpp:563 #: utils/ncurses.cpp:414 qt/history_widget.cpp:143 qt/main_window.cpp:553
msgid "(PASS)" msgid "(PASS)"
msgstr "(PASSE)" msgstr "(PASSE)"
@ -438,7 +447,7 @@ msgstr " <pgup>, <pgdown> Naviguer dans une boîte page par page"
msgid " Ctrl-l Refresh the screen" msgid " Ctrl-l Refresh the screen"
msgstr " Ctrl-l Rafraîchir l'écran" msgstr " Ctrl-l Rafraîchir l'écran"
#: utils/ncurses.cpp:486 wxwin/auxframes.cc:147 qt/main_window.cpp:646 #: utils/ncurses.cpp:486 wxwin/auxframes.cc:147 qt/main_window.cpp:636
#: qt/ui/main_window.ui:94 #: qt/ui/main_window.ui:94
msgid "Bag" msgid "Bag"
msgstr "Sac" msgstr "Sac"
@ -504,7 +513,7 @@ msgid "Game saved in '%ls'"
msgstr "Partie sauvée dans '%ls'" msgstr "Partie sauvée dans '%ls'"
#: utils/ncurses.cpp:632 wxwin/mainframe.cc:275 wxwin/mainframe.cc:405 #: utils/ncurses.cpp:632 wxwin/mainframe.cc:275 wxwin/mainframe.cc:405
#: wxwin/mainframe.cc:429 qt/main_window.cpp:408 #: wxwin/mainframe.cc:429 qt/main_window.cpp:398
msgid "Load a game" msgid "Load a game"
msgstr "Charger une partie" msgstr "Charger une partie"
@ -518,7 +527,7 @@ msgstr "Impossible d'ouvrir le fichier '%ls' en lecture"
msgid "Invalid saved game" msgid "Invalid saved game"
msgstr "Partie sauvée invalide" msgstr "Partie sauvée invalide"
#: utils/ncurses.cpp:656 qt/main_window.cpp:422 #: utils/ncurses.cpp:656 qt/main_window.cpp:412
#, c-format #, c-format
msgid "Game loaded" msgid "Game loaded"
msgstr "Partie chargée" msgstr "Partie chargée"
@ -547,7 +556,7 @@ msgstr "Entrer les nouvelles lettres:"
msgid "Cannot take these letters from the bag" msgid "Cannot take these letters from the bag"
msgstr "Impossible de retirer ces lettres du sac" msgstr "Impossible de retirer ces lettres du sac"
#: utils/ncurses.cpp:1095 qt/main_window.cpp:212 qt/ui/prefs_dialog.ui:181 #: utils/ncurses.cpp:1095 qt/main_window.cpp:214 qt/ui/prefs_dialog.ui:181
msgid "Training mode" msgid "Training mode"
msgstr "Mode entraînement" msgstr "Mode entraînement"
@ -768,7 +777,7 @@ msgstr "Vérifier la validité du tirage"
msgid "Cancel last changes" msgid "Cancel last changes"
msgstr "Annuler les derniers changements" msgstr "Annuler les derniers changements"
#: wxwin/gfxresult.cc:67 qt/history_widget.cpp:53 qt/training_widget.cpp:58 #: wxwin/gfxresult.cc:67 qt/history_widget.cpp:53 qt/training_widget.cpp:59
msgid "Word" msgid "Word"
msgstr "Mot" msgstr "Mot"
@ -820,7 +829,7 @@ msgstr "Jouer le mot selectionné"
msgid "&New game\tCtrl+N" msgid "&New game\tCtrl+N"
msgstr "&Nouvelle partie\tCtrl+N" msgstr "&Nouvelle partie\tCtrl+N"
#: wxwin/mainframe.cc:272 qt/main_window.cpp:326 #: wxwin/mainframe.cc:272 qt/main_window.cpp:316
msgid "Start a new game" msgid "Start a new game"
msgstr "Démarrer une nouvelle partie" msgstr "Démarrer une nouvelle partie"
@ -840,7 +849,7 @@ msgstr "&Charger...\tCtrl+O"
msgid "&Save as...\tCtrl+S" msgid "&Save as...\tCtrl+S"
msgstr "&Enregistrer sous...\tCtrl+S" msgstr "&Enregistrer sous...\tCtrl+S"
#: wxwin/mainframe.cc:276 qt/main_window.cpp:331 #: wxwin/mainframe.cc:276 qt/main_window.cpp:321
msgid "Save the current game" msgid "Save the current game"
msgstr "Sauvegarder la partie en cours" msgstr "Sauvegarder la partie en cours"
@ -872,7 +881,7 @@ msgstr "Imprimer dans un fichier PostScript"
msgid "&Quit\tCtrl+Q" msgid "&Quit\tCtrl+Q"
msgstr "&Quitter\tCtrl+Q" msgstr "&Quitter\tCtrl+Q"
#: wxwin/mainframe.cc:284 qt/main_window.cpp:337 #: wxwin/mainframe.cc:284 qt/main_window.cpp:327
msgid "Quit Eliot" msgid "Quit Eliot"
msgstr "Quitter Eliot" msgstr "Quitter Eliot"
@ -880,7 +889,7 @@ msgstr "Quitter Eliot"
msgid "&Dictionary...\tCtrl+D" msgid "&Dictionary...\tCtrl+D"
msgstr "&Dictionnaire...\tCtrl+D" msgstr "&Dictionnaire...\tCtrl+D"
#: wxwin/mainframe.cc:287 wxwin/mainframe.cc:604 qt/main_window.cpp:613 #: wxwin/mainframe.cc:287 wxwin/mainframe.cc:604 qt/main_window.cpp:603
msgid "Choose a dictionary" msgid "Choose a dictionary"
msgstr "Choisir un dictionnaire" msgstr "Choisir un dictionnaire"
@ -989,7 +998,7 @@ msgid "Font for the search"
msgstr "Police de caractères pour la recherche" msgstr "Police de caractères pour la recherche"
#: wxwin/mainframe.cc:310 wxwin/mainframe.cc:334 qt/history_widget.cpp:177 #: wxwin/mainframe.cc:310 wxwin/mainframe.cc:334 qt/history_widget.cpp:177
#: qt/main_window.cpp:324 #: qt/main_window.cpp:314
msgid "&Game" msgid "&Game"
msgstr "&Partie" msgstr "&Partie"
@ -1085,24 +1094,24 @@ msgstr "&Historique de la partie\tCtrl+H"
msgid "R&esults" msgid "R&esults"
msgstr "Ré&sultats" msgstr "Ré&sultats"
#: wxwin/mainframe.cc:331 qt/main_window.cpp:362 #: wxwin/mainframe.cc:331 qt/main_window.cpp:352
msgid "&About..." msgid "&About..."
msgstr "À &propos..." msgstr "À &propos..."
#: wxwin/mainframe.cc:331 wxwin/mainframe.cc:733 qt/main_window.cpp:363 #: wxwin/mainframe.cc:331 wxwin/mainframe.cc:733 qt/main_window.cpp:353
#: qt/main_window.cpp:724 #: qt/main_window.cpp:714
msgid "About Eliot" msgid "About Eliot"
msgstr "À propos d'Eliot" msgstr "À propos d'Eliot"
#: wxwin/mainframe.cc:335 qt/main_window.cpp:341 #: wxwin/mainframe.cc:335 qt/main_window.cpp:331
msgid "&Settings" msgid "&Settings"
msgstr "Para&mètres" msgstr "Para&mètres"
#: wxwin/mainframe.cc:336 qt/main_window.cpp:349 #: wxwin/mainframe.cc:336 qt/main_window.cpp:339
msgid "&Windows" msgid "&Windows"
msgstr "&Fenêtres" msgstr "&Fenêtres"
#: wxwin/mainframe.cc:337 qt/main_window.cpp:361 #: wxwin/mainframe.cc:337 qt/main_window.cpp:351
msgid "&Help" msgid "&Help"
msgstr "&Aide" msgstr "&Aide"
@ -1119,7 +1128,7 @@ msgstr "Eliot : erreur"
msgid "Cannot open " msgid "Cannot open "
msgstr "Impossible d'ouvrir " msgstr "Impossible d'ouvrir "
#: wxwin/mainframe.cc:440 wxwin/mainframe.cc:449 qt/main_window.cpp:415 #: wxwin/mainframe.cc:440 wxwin/mainframe.cc:449 qt/main_window.cpp:405
msgid "Error while loading the game" msgid "Error while loading the game"
msgstr "Erreur pendant le chargement de la partie" msgstr "Erreur pendant le chargement de la partie"
@ -1237,12 +1246,12 @@ msgstr "Plus 1"
msgid "Regular expressions" msgid "Regular expressions"
msgstr "Expressions régulières" msgstr "Expressions régulières"
#: qt/bag_widget.cpp:49 qt/dic_tools_widget.cpp:100 #: qt/bag_widget.cpp:50 qt/dic_tools_widget.cpp:100
msgid "Letter" msgid "Letter"
msgstr "Lettre" msgstr "Lettre"
#: qt/bag_widget.cpp:50 qt/dic_tools_widget.cpp:101 qt/history_widget.cpp:55 #: qt/bag_widget.cpp:51 qt/dic_tools_widget.cpp:101 qt/history_widget.cpp:55
#: qt/training_widget.cpp:60 #: qt/training_widget.cpp:61
msgid "Points" msgid "Points"
msgstr "Points" msgstr "Points"
@ -1304,7 +1313,7 @@ msgstr "Non"
msgid "Turn" msgid "Turn"
msgstr "Coup" msgstr "Coup"
#: qt/history_widget.cpp:54 qt/training_widget.cpp:59 #: qt/history_widget.cpp:54 qt/training_widget.cpp:60
msgid "Ref" msgid "Ref"
msgstr "Ref" msgstr "Ref"
@ -1312,24 +1321,27 @@ msgstr "Ref"
msgid "Player" msgid "Player"
msgstr "Joueur" msgstr "Joueur"
#: qt/main_window.cpp:108 qt/main_window.cpp:664 qt/ui/main_window.ui:40 #: qt/main_window.cpp:109 qt/main_window.cpp:654 qt/ui/main_window.ui:40
msgid "Board" msgid "Board"
msgstr "Grille" msgstr "Grille"
#: qt/main_window.cpp:163 #: qt/main_window.cpp:164
msgid "Cannot load dictionary '%1' indicated in the preferences" msgid ""
"Cannot load dictionary '%1' indicated in the preferences.\n"
"Reason: %2"
msgstr "" msgstr ""
"Impossible de charger le dictionnaire '%1' indiqué dans les préférences" "Impossible de charger le dictionnaire '%1' indiqué dans les préférences.\n"
"Raison : %2"
#: qt/main_window.cpp:204 #: qt/main_window.cpp:206
msgid "No game" msgid "No game"
msgstr "Pas de partie en cours" msgstr "Pas de partie en cours"
#: qt/main_window.cpp:217 #: qt/main_window.cpp:219
msgid "Duplicate game" msgid "Duplicate game"
msgstr "Partie duplicate" msgstr "Partie duplicate"
#: qt/main_window.cpp:222 qt/new_game.cpp:99 qt/new_game.cpp:165 #: qt/main_window.cpp:224 qt/new_game.cpp:99 qt/new_game.cpp:165
#: qt/ui/new_game.ui:41 #: qt/ui/new_game.ui:41
msgid "Free game" msgid "Free game"
msgstr "Partie libre" msgstr "Partie libre"
@ -1338,206 +1350,190 @@ msgstr "Partie libre"
msgid "Dictionary: %1" msgid "Dictionary: %1"
msgstr "Dictionnaire : %1" msgstr "Dictionnaire : %1"
#: qt/main_window.cpp:241 #: qt/main_window.cpp:245
msgid "Dictionary: Unknown (old format)"
msgstr "Dictionnaire : Inconnu (vieux format)"
#: qt/main_window.cpp:242
msgid ""
"The dictionary name cannot be retrieved, because you are using an old "
"dictionary format.\n"
"You can probably download a newer version of the dictionary on http://www."
"nongnu.org/eliot/"
msgstr ""
"Le nom du dictionnaire ne peut pas être récupéré, car vous utilisez un vieux "
"format de dictionnaire.\n"
"Vous ouvez probablement télécharger une nouvelle version du dictionnaire sur "
"http://www.nongnu.org/eliot/"
#: qt/main_window.cpp:255
msgid "Eliot - Error" msgid "Eliot - Error"
msgstr "Eliot - erreur" msgstr "Eliot - erreur"
#: qt/main_window.cpp:325 #: qt/main_window.cpp:315
msgid "&New..." msgid "&New..."
msgstr "&Nouvelle partie..." msgstr "&Nouvelle partie..."
#: qt/main_window.cpp:325 #: qt/main_window.cpp:315
msgid "Ctrl+N" msgid "Ctrl+N"
msgstr "Ctrl+N" msgstr "Ctrl+N"
#: qt/main_window.cpp:328 #: qt/main_window.cpp:318
msgid "&Load..." msgid "&Load..."
msgstr "&Charger..." msgstr "&Charger..."
#: qt/main_window.cpp:328 #: qt/main_window.cpp:318
msgid "Ctrl+O" msgid "Ctrl+O"
msgstr "Ctrl+O" msgstr "Ctrl+O"
#: qt/main_window.cpp:329 #: qt/main_window.cpp:319
msgid "Load an existing game" msgid "Load an existing game"
msgstr "Charger une partie existante" msgstr "Charger une partie existante"
#: qt/main_window.cpp:330 #: qt/main_window.cpp:320
msgid "&Save as..." msgid "&Save as..."
msgstr "&Enregistrer sous..." msgstr "&Enregistrer sous..."
#: qt/main_window.cpp:330 #: qt/main_window.cpp:320
msgid "Ctrl+S" msgid "Ctrl+S"
msgstr "Ctrl+S" msgstr "Ctrl+S"
#: qt/main_window.cpp:333 #: qt/main_window.cpp:323
msgid "&Print..." msgid "&Print..."
msgstr "Im&primer..." msgstr "Im&primer..."
#: qt/main_window.cpp:333 #: qt/main_window.cpp:323
msgid "Ctrl+P" msgid "Ctrl+P"
msgstr "Ctrl+P" msgstr "Ctrl+P"
#: qt/main_window.cpp:334 #: qt/main_window.cpp:324
msgid "Print the current game" msgid "Print the current game"
msgstr "Imprimer la partie en cours" msgstr "Imprimer la partie en cours"
#: qt/main_window.cpp:336 #: qt/main_window.cpp:326
msgid "&Quit" msgid "&Quit"
msgstr "&Quitter" msgstr "&Quitter"
#: qt/main_window.cpp:336 #: qt/main_window.cpp:326
msgid "Ctrl+Q" msgid "Ctrl+Q"
msgstr "Ctrl+Q" msgstr "Ctrl+Q"
#: qt/main_window.cpp:342 #: qt/main_window.cpp:332
msgid "&Choose dictionary..." msgid "&Choose dictionary..."
msgstr "Choisir un &dictionnaire..." msgstr "Choisir un &dictionnaire..."
#: qt/main_window.cpp:342 #: qt/main_window.cpp:332
msgid "Ctrl+C" msgid "Ctrl+C"
msgstr "Ctrl+C" msgstr "Ctrl+C"
#: qt/main_window.cpp:343 #: qt/main_window.cpp:333
msgid "Select a new dictionary" msgid "Select a new dictionary"
msgstr "Choisir un nouveau dictionnaire" msgstr "Choisir un nouveau dictionnaire"
#: qt/main_window.cpp:344 #: qt/main_window.cpp:334
msgid "&Preferences..." msgid "&Preferences..."
msgstr "&Préférences..." msgstr "&Préférences..."
#: qt/main_window.cpp:344 #: qt/main_window.cpp:334
msgid "Ctrl+F" msgid "Ctrl+F"
msgstr "Ctrl+F" msgstr "Ctrl+F"
#: qt/main_window.cpp:345 #: qt/main_window.cpp:335
msgid "Edit the preferences" msgid "Edit the preferences"
msgstr "Modifier les préférences" msgstr "Modifier les préférences"
#: qt/main_window.cpp:350 #: qt/main_window.cpp:340
msgid "&Bag" msgid "&Bag"
msgstr "&Sac" msgstr "&Sac"
#: qt/main_window.cpp:350 #: qt/main_window.cpp:340
msgid "Ctrl+B" msgid "Ctrl+B"
msgstr "Ctrl+B" msgstr "Ctrl+B"
#: qt/main_window.cpp:351 qt/ui/main_window.ui:97 #: qt/main_window.cpp:341 qt/ui/main_window.ui:97
msgid "Show/hide the remaining tiles in the bag" msgid "Show/hide the remaining tiles in the bag"
msgstr "Afficher/cacher les lettres restantes dans le sac" msgstr "Afficher/cacher les lettres restantes dans le sac"
#: qt/main_window.cpp:352 #: qt/main_window.cpp:342
msgid "&External board" msgid "&External board"
msgstr "&Plateau de jeu externe" msgstr "&Plateau de jeu externe"
#: qt/main_window.cpp:352 #: qt/main_window.cpp:342
msgid "Ctrl+E" msgid "Ctrl+E"
msgstr "Ctrl+E" msgstr "Ctrl+E"
#: qt/main_window.cpp:353 qt/ui/main_window.ui:111 #: qt/main_window.cpp:343 qt/ui/main_window.ui:111
msgid "Show/hide the external board" msgid "Show/hide the external board"
msgstr "Afficher/cacher le plateau de jeu externe" msgstr "Afficher/cacher le plateau de jeu externe"
#: qt/main_window.cpp:354 #: qt/main_window.cpp:344
msgid "&History" msgid "&History"
msgstr "&Historique" msgstr "&Historique"
#: qt/main_window.cpp:354 #: qt/main_window.cpp:344
msgid "Ctrl+H" msgid "Ctrl+H"
msgstr "Ctrl+H" msgstr "Ctrl+H"
#: qt/main_window.cpp:355 qt/ui/main_window.ui:125 #: qt/main_window.cpp:345 qt/ui/main_window.ui:125
msgid "Show/hide the game history" msgid "Show/hide the game history"
msgstr "Afficher/cacher l'historique de la partie" msgstr "Afficher/cacher l'historique de la partie"
#: qt/main_window.cpp:356 #: qt/main_window.cpp:346
msgid "&Dictionary tools" msgid "&Dictionary tools"
msgstr "Outils du &dictionnaire" msgstr "Outils du &dictionnaire"
#: qt/main_window.cpp:356 #: qt/main_window.cpp:346
msgid "Ctrl+D" msgid "Ctrl+D"
msgstr "Ctrl+D" msgstr "Ctrl+D"
#: qt/main_window.cpp:357 qt/ui/main_window.ui:139 #: qt/main_window.cpp:347 qt/ui/main_window.ui:139
msgid "Show/hide the dictionary tools" msgid "Show/hide the dictionary tools"
msgstr "Afficher/cacher les outils de recherche dans le dictionnaire" msgstr "Afficher/cacher les outils de recherche dans le dictionnaire"
#: qt/main_window.cpp:362 #: qt/main_window.cpp:352
msgid "Ctrl+A" msgid "Ctrl+A"
msgstr "Ctrl+A" msgstr "Ctrl+A"
#: qt/main_window.cpp:371 qt/main_window.cpp:404 #: qt/main_window.cpp:361 qt/main_window.cpp:394
msgid "You have to select a dictionary first!" msgid "You have to select a dictionary first!"
msgstr "Vous devez d'abord choisir un dictionnaire !" msgstr "Vous devez d'abord choisir un dictionnaire !"
#: qt/main_window.cpp:396 #: qt/main_window.cpp:386
msgid "Game started" msgid "Game started"
msgstr "Partie démarrée" msgstr "Partie démarrée"
#: qt/main_window.cpp:432 #: qt/main_window.cpp:422
msgid "Save a game" msgid "Save a game"
msgstr "Sauvegarder la partie" msgstr "Sauvegarder la partie"
#: qt/main_window.cpp:437 #: qt/main_window.cpp:427
msgid "Game saved" msgid "Game saved"
msgstr "Partie enregistrée" msgstr "Partie enregistrée"
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "N." msgid "N."
msgstr "N." msgstr "N."
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "RACK" msgid "RACK"
msgstr "TIRAGE" msgstr "TIRAGE"
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "SOLUTION" msgid "SOLUTION"
msgstr "SOLUTION" msgstr "SOLUTION"
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "REF" msgid "REF"
msgstr "REF" msgstr "REF"
#: qt/main_window.cpp:471 #: qt/main_window.cpp:461
msgid "PTS" msgid "PTS"
msgstr "PTS" msgstr "PTS"
#: qt/main_window.cpp:604 #: qt/main_window.cpp:594
msgid "Stop current game?" msgid "Stop current game?"
msgstr "Arrêter la partie en cours ?" msgstr "Arrêter la partie en cours ?"
#: qt/main_window.cpp:605 #: qt/main_window.cpp:595
msgid "" msgid ""
"Loading a dictionary will stop the current game. Do you want to continue?" "Loading a dictionary will stop the current game. Do you want to continue?"
msgstr "" msgstr ""
"Charger un dictionnaire arrêtera la partie en cours. Voulez-vous continuer ?" "Charger un dictionnaire arrêtera la partie en cours. Voulez-vous continuer ?"
#: qt/main_window.cpp:682 qt/ui/main_window.ui:53 qt/ui/main_window.ui:122 #: qt/main_window.cpp:672 qt/ui/main_window.ui:53 qt/ui/main_window.ui:122
msgid "History" msgid "History"
msgstr "Historique" msgstr "Historique"
#: qt/main_window.cpp:699 qt/ui/dic_tools_widget.ui:13 #: qt/main_window.cpp:689 qt/ui/dic_tools_widget.ui:13
#: qt/ui/main_window.ui:136 #: qt/ui/main_window.ui:136
msgid "Dictionary tools" msgid "Dictionary tools"
msgstr "Outils du dictionnaire" msgstr "Outils du dictionnaire"
#: qt/main_window.cpp:716 #: qt/main_window.cpp:706
msgid "" msgid ""
"Copyright (C) 1999-2008 - Antoine Fraboulet & Olivier Teuliere\n" "Copyright (C) 1999-2008 - Antoine Fraboulet & Olivier Teuliere\n"
"\n" "\n"
@ -1681,15 +1677,15 @@ msgstr "Impossible de changer les lettres '%1' (%2)"
msgid "Score" msgid "Score"
msgstr "Score" msgstr "Score"
#: qt/training_widget.cpp:199 #: qt/training_widget.cpp:200
msgid "Warning: Cannot set the rack to '%1'" msgid "Warning: Cannot set the rack to '%1'"
msgstr "Attention : Impossible de choisir le tirage '%1'" msgstr "Attention : Impossible de choisir le tirage '%1'"
#: qt/training_widget.cpp:224 #: qt/training_widget.cpp:239
msgid "Searching with rack '%1'..." msgid "Searching with rack '%1'..."
msgstr "Recherche en cours pour le tirage '%1'..." msgstr "Recherche en cours pour le tirage '%1'..."
#: qt/training_widget.cpp:226 #: qt/training_widget.cpp:241
msgid "Search done" msgid "Search done"
msgstr "Recherche terminée" msgstr "Recherche terminée"
@ -1892,6 +1888,26 @@ msgstr "Nouveau tirage"
msgid "Complement" msgid "Complement"
msgstr "Complément" msgstr "Complément"
#~ msgid "Unknown (old format)"
#~ msgstr "Inconnu (vieux format)"
#~ msgid "compressed on: Unknown date (old format)\n"
#~ msgstr "Compressé le : Date inconnue (vieux format)\n"
#~ msgid "Dictionary: Unknown (old format)"
#~ msgstr "Dictionnaire : Inconnu (vieux format)"
#~ msgid ""
#~ "The dictionary name cannot be retrieved, because you are using an old "
#~ "dictionary format.\n"
#~ "You can probably download a newer version of the dictionary on http://www."
#~ "nongnu.org/eliot/"
#~ msgstr ""
#~ "Le nom du dictionnaire ne peut pas être récupéré, car vous utilisez un "
#~ "vieux format de dictionnaire.\n"
#~ "Vous ouvez probablement télécharger une nouvelle version du dictionnaire "
#~ "sur http://www.nongnu.org/eliot/"
#~ msgid "%1 error" #~ msgid "%1 error"
#~ msgstr "Erreur %1" #~ msgstr "Erreur %1"

View file

@ -34,6 +34,7 @@
#include "main_window.h" #include "main_window.h"
#include "dic.h" #include "dic.h"
#include "dic_exception.h"
#include "encoding.h" #include "encoding.h"
#include "header.h" #include "header.h"
#include "game_factory.h" #include "game_factory.h"
@ -158,9 +159,10 @@ MainWindow::MainWindow(QWidget *iParent)
{ {
m_dic = new Dictionary(qtl(dicPath)); m_dic = new Dictionary(qtl(dicPath));
} }
catch (...) catch (DicException &e)
{ {
displayErrorMsg(_q("Cannot load dictionary '%1' indicated in the preferences").arg(dicPath)); displayErrorMsg(_q("Cannot load dictionary '%1' indicated in the "
"preferences.\nReason: %2").arg(dicPath).arg(e.what()));
} }
} }
emit dicChanged(m_dic); emit dicChanged(m_dic);