LatinToLocal will work only for search
This commit is contained in:
@@ -1424,7 +1424,7 @@ XLATEXPORT IBMPC
|
||||
XLATLOCALSET IBMPC
|
||||
|
||||
// Used to translate latin A-Za-z to local charset if one of neighbours
|
||||
// is from local charset too.
|
||||
// is from local charset too. Will work only for search.
|
||||
// ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
|
||||
;LatinToLocal ABCDEFG<46>IJKLMNOPQRSTUVWXYZabcdefghijklmno<6E>qrstuvwx<77>z ;cp866 - H,p,y
|
||||
|
||||
|
@@ -1671,7 +1671,7 @@ XlatCharSet CP850 ASCII 850_ASC.chs
|
||||
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>⨭᪨<E2A8AD> <20>㪢 <20><> <20><><EFBFBD>᪨<EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㤥<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⮫쪮 <20><><EFBFBD> <20><>⨭᪨<E2A8AD> <20>㪢, <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><>ᥤ<EFBFBD><E1A5A4><EFBFBD><EFBFBD>
|
||||
// <20>㪢<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>쭮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><E0AEA2>.
|
||||
// <20>㪢<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>쭮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><E0AEA2>. <20><><EFBFBD><EFBFBD>⠥<EFBFBD> ⮫쪮 <20><><EFBFBD> <20><><EFBFBD>᪠.
|
||||
// ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
|
||||
;LatinToLocal ABCDEFG<46>IJKLMNOPQRSTUVWXYZabcdefghijklmno<6E>qrstuvwx<77>z ;cp866 - H,p,y
|
||||
|
||||
|
@@ -19,7 +19,7 @@ ______________________________________________________________________
|
||||
|
||||
+ New config file token LatinToLocal.
|
||||
Used to translate latin A-Za-z to local charset if one of neighbours
|
||||
is from local charset too.
|
||||
is from local charset too. Will work only for search.
|
||||
|
||||
+ New config file token AreaRecycleBin <area>. GoldEd will move deleted
|
||||
messages to <area>, if this token is defined.
|
||||
|
@@ -27,6 +27,10 @@
|
||||
#include <golded.h>
|
||||
#include <gesrch.h>
|
||||
|
||||
#if defined(__USE_ALLOCA__)
|
||||
#include <malloc.h>
|
||||
#endif
|
||||
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
|
||||
@@ -117,7 +121,28 @@ bool FindString(GMsg* msg, const char* prompt, int what) {
|
||||
w_progress(MODE_UPDATE, C_INFOW, AA->lastread(), AA->Msgn.Count(), LNG->AdvancedSearch);
|
||||
|
||||
bool success = false;
|
||||
if(AA->LoadMsg(msg, AA->Msgn.CvtReln(AA->lastread()), margin)) {
|
||||
if(AA->LoadMsg(msg, AA->Msgn.CvtReln(AA->lastread()), margin))
|
||||
{
|
||||
if (CFG->latin2local)
|
||||
{
|
||||
Latin2Local(msg->by);
|
||||
Latin2Local(msg->to);
|
||||
|
||||
if (!msg->attr.frq() && !msg->attr.att() && !msg->attr.urq())
|
||||
Latin2Local(msg->re);
|
||||
|
||||
for (Line *ln = msg->lin; ln; ln = ln->next)
|
||||
{
|
||||
#if defined(__USE_ALLOCA__)
|
||||
char *temp = (char *)alloca(ln->txt.length()+1);
|
||||
#else
|
||||
__extension__ char temp[ln->txt.length()+1];
|
||||
#endif
|
||||
strcpy(temp, ln->txt.c_str());
|
||||
Latin2Local(temp);
|
||||
ln->txt = temp;
|
||||
}
|
||||
}
|
||||
|
||||
// If hit, search again current mail without shortcircuit evaluation
|
||||
success = srchmgr.search(msg, false, true);
|
||||
|
@@ -110,25 +110,6 @@ int Area::LoadMsg(GMsg* msg, uint32_t msgno, int margin, int mode) {
|
||||
|
||||
msg->TextToLines(margin);
|
||||
|
||||
if (!mode && !AA->attr().hex())
|
||||
{
|
||||
Latin2Local(msg->by);
|
||||
Latin2Local(msg->to);
|
||||
|
||||
if (!msg->attr.frq() && !msg->attr.att() && !msg->attr.urq())
|
||||
Latin2Local(msg->re);
|
||||
|
||||
for (Line *ln = msg->lin; ln; ln = ln->next)
|
||||
#ifdef _MSC_VER
|
||||
Latin2Local(ln->txt.begin());
|
||||
#else
|
||||
{ char*str=strdup(ln->txt.data());
|
||||
Latin2Local(str);
|
||||
ln->txt.assign(str);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
Reference in New Issue
Block a user