Merge branch 'staged' into dev

This commit is contained in:
Xiao YiFang 2022-10-05 15:42:29 +08:00
commit 5ad877e1bc
3 changed files with 26 additions and 24 deletions

View file

@ -1032,42 +1032,44 @@ void EpwingBook::fixHeadword( QString & headword )
headword.remove( QChar( 0x30FB ) ); // Used in Japan transcription headword.remove( QChar( 0x30FB ) ); // Used in Japan transcription
if( isHeadwordCorrect( headword) ) //if( isHeadwordCorrect( headword) )
return; // return;
QString fixed = headword; QString fixed = headword;
QRegularExpression leadingSlashRx( "/[^/]+/" ); QRegularExpression leadingSlashRx( "/[^/]+/" );
fixed.remove(leadingSlashRx ); fixed.remove(leadingSlashRx );
if( isHeadwordCorrect( fixed ) ) //if( isHeadwordCorrect( fixed ) )
{ //{
headword = fixed; // headword = fixed;
return; // return;
} //}
gd::wstring folded = Folding::applyPunctOnly( gd::toWString( fixed ) ); gd::wstring folded = Folding::applyPunctOnly( gd::toWString( fixed ) );
fixed = gd::toQString( folded ); fixed = gd::toQString( folded );
if( isHeadwordCorrect( fixed ) ) //if( isHeadwordCorrect( fixed ) )
{ //{
headword = fixed; // headword = fixed;
return; // return;
} //}
folded = Folding::applyDiacriticsOnly( folded ); folded = Folding::applyDiacriticsOnly( folded );
fixed = gd::toQString( folded ); fixed = gd::toQString( folded );
if( isHeadwordCorrect( fixed ) ) //if( isHeadwordCorrect( fixed ) )
{ //{
headword = fixed; // headword = fixed;
return; // return;
} //}
folded = Folding::applyWhitespaceOnly( folded ); //folded = Folding::applyWhitespaceOnly( folded );
fixed = gd::toQString( folded ); //fixed = gd::toQString( folded );
if( isHeadwordCorrect( fixed ) ) //if( isHeadwordCorrect( fixed ) )
headword = fixed; // headword = fixed;
headword = fixed;
} }
void EpwingBook::getArticle( QString & headword, QString & articleText, void EpwingBook::getArticle( QString & headword, QString & articleText,

View file

@ -596,7 +596,7 @@ bool isPunct( wchar ch )
case 0xFF64: // HALFWIDTH IDEOGRAPHIC COMMA case 0xFF64: // HALFWIDTH IDEOGRAPHIC COMMA
return true; return true;
default: default:
return false; return QChar::isPunct(ch)||QChar::isSymbol(ch);
} }
} }

View file

@ -81,12 +81,12 @@ void HeadwordListModel::requestFinished()
filtered << w; filtered << w;
} }
} }
if( filtered.isEmpty() )
return;
beginInsertRows( QModelIndex(), words.size(), words.size() + filtered.count() - 1 ); beginInsertRows( QModelIndex(), words.size(), words.size() + filtered.count() - 1 );
for( const auto & word : filtered ) for( const auto & word : filtered )
words.append( word ); words.append( word );
endInsertRows(); endInsertRows();
} }
} }