ranges: lowercase as needed when indexing
This commit is contained in:
parent
595e419d93
commit
8b60cffa65
@ -23,6 +23,7 @@
|
|||||||
#include "rclconfig.h"
|
#include "rclconfig.h"
|
||||||
#include "smallut.h"
|
#include "smallut.h"
|
||||||
#include "log.h"
|
#include "log.h"
|
||||||
|
#include "unacpp.h"
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
@ -31,13 +32,22 @@ namespace Rcl {
|
|||||||
void add_field_value(Xapian::Document& xdoc, const FieldTraits& ft,
|
void add_field_value(Xapian::Document& xdoc, const FieldTraits& ft,
|
||||||
const string& data)
|
const string& data)
|
||||||
{
|
{
|
||||||
string ndata{data};
|
string ndata;
|
||||||
|
|
||||||
switch (ft.valuetype) {
|
switch (ft.valuetype) {
|
||||||
case FieldTraits::STR:
|
case FieldTraits::STR:
|
||||||
|
if (o_index_stripchars) {
|
||||||
|
if (!unacmaybefold(data, ndata, "UTF-8", UNACOP_UNACFOLD)) {
|
||||||
|
LOGDEB("Rcl::add_field_value: unac failed for ["<<data<< "]\n");
|
||||||
|
ndata = data;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
ndata = data;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case FieldTraits::INT:
|
case FieldTraits::INT:
|
||||||
{
|
{
|
||||||
|
ndata = data;
|
||||||
int len = ft.valuelen ? ft.valuelen : 10;
|
int len = ft.valuelen ? ft.valuelen : 10;
|
||||||
leftzeropad(ndata, len);
|
leftzeropad(ndata, len);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user