diff --git a/src/main/java/org/codelibs/fess/es/client/FessEsClient.java b/src/main/java/org/codelibs/fess/es/client/FessEsClient.java
index ce4e95f54..550aedbd0 100644
--- a/src/main/java/org/codelibs/fess/es/client/FessEsClient.java
+++ b/src/main/java/org/codelibs/fess/es/client/FessEsClient.java
@@ -873,8 +873,9 @@ public class FessEsClient implements Client {
// highlighting
final HighlightBuilder highlightBuilder = new HighlightBuilder();
- queryHelper.highlightedFields(stream -> stream.forEach(hf -> highlightBuilder.field(hf,
- fessConfig.getQueryHighlightFragmentSizeAsInteger(), fessConfig.getQueryHighlightNumberOfFragmentsAsInteger())));
+ queryHelper.highlightedFields(stream -> stream.forEach(hf -> highlightBuilder.field(new HighlightBuilder.Field(hf)
+ .highlighterType(fessConfig.getQueryHighlightType()).fragmentSize(fessConfig.getQueryHighlightFragmentSizeAsInteger())
+ .numOfFragments(fessConfig.getQueryHighlightNumberOfFragmentsAsInteger()))));
searchRequestBuilder.highlighter(highlightBuilder);
// facets
diff --git a/src/main/java/org/codelibs/fess/mylasta/direction/FessConfig.java b/src/main/java/org/codelibs/fess/mylasta/direction/FessConfig.java
index 1016651f9..eebf0efbf 100644
--- a/src/main/java/org/codelibs/fess/mylasta/direction/FessConfig.java
+++ b/src/main/java/org/codelibs/fess/mylasta/direction/FessConfig.java
@@ -450,6 +450,9 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
/** The key of the configuration. e.g. 5 */
String QUERY_HIGHLIGHT_NUMBER_OF_FRAGMENTS = "query.highlight.number.of.fragments";
+ /** The key of the configuration. e.g. fvh */
+ String QUERY_HIGHLIGHT_TYPE = "query.highlight.type";
+
/** The key of the configuration. e.g. 100000 */
String QUERY_MAX_SEARCH_RESULT_OFFSET = "query.max.search.result.offset";
@@ -2426,6 +2429,13 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
*/
Integer getQueryHighlightNumberOfFragmentsAsInteger();
+ /**
+ * Get the value for the key 'query.highlight.type'.
+ * The value is, e.g. fvh
+ * @return The value of found property. (NotNull: if not found, exception but basically no way)
+ */
+ String getQueryHighlightType();
+
/**
* Get the value for the key 'query.max.search.result.offset'.
* The value is, e.g. 100000
@@ -5352,6 +5362,10 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
return getAsInteger(FessConfig.QUERY_HIGHLIGHT_NUMBER_OF_FRAGMENTS);
}
+ public String getQueryHighlightType() {
+ return get(FessConfig.QUERY_HIGHLIGHT_TYPE);
+ }
+
public String getQueryMaxSearchResultOffset() {
return get(FessConfig.QUERY_MAX_SEARCH_RESULT_OFFSET);
}
diff --git a/src/main/resources/fess_config.properties b/src/main/resources/fess_config.properties
index bba95ce36..02668182f 100644
--- a/src/main/resources/fess_config.properties
+++ b/src/main/resources/fess_config.properties
@@ -210,6 +210,7 @@ query.browser.lang.parameter.name=browser_lang
query.replace.term.with.prefix.query=true
query.highlight.fragment.size=50
query.highlight.number.of.fragments=5
+query.highlight.type=fvh
query.max.search.result.offset=100000
query.additional.response.fields=
query.additional.api.response.fields=