attributesToTransliterate parameter specifies which attributes should be transliterated when using Japanese.
This allows users to search in one writing system, such as Hiragana and match records written in another, such as Kanji or Katakana.
Usage
- Attribute names are case-sensitive.
- Only supported for Japanese content.
- You must set
indexLanguagesto"ja"for this setting to take effect. "*"applies transliteration to all searchable attributes.
Example
Current API clients
Current API clients
var response = await client.SetSettingsAsync(
"INDEX_NAME",
new IndexSettings
{
IndexLanguages = new List<SupportedLanguage> { Enum.Parse<SupportedLanguage>("Ja") },
AttributesToTransliterate = new List<string> { "name", "description" },
}
);
final response = await client.setSettings(
indexName: "INDEX_NAME",
indexSettings: IndexSettings(
indexLanguages: [
SupportedLanguage.fromJson("ja"),
],
attributesToTransliterate: [
"name",
"description",
],
),
);
response, err := client.SetSettings(client.NewApiSetSettingsRequest(
"INDEX_NAME",
search.NewEmptyIndexSettings().SetIndexLanguages(
[]search.SupportedLanguage{search.SupportedLanguage("ja")}).SetAttributesToTransliterate(
[]string{"name", "description"})))
if err != nil {
// handle the eventual error
panic(err)
}
UpdatedAtResponse response = client.setSettings(
"INDEX_NAME",
new IndexSettings()
.setIndexLanguages(Arrays.asList(SupportedLanguage.JA))
.setAttributesToTransliterate(Arrays.asList("name", "description"))
);
const response = await client.setSettings({
indexName: 'theIndexName',
indexSettings: { indexLanguages: ['ja'], attributesToTransliterate: ['name', 'description'] },
});
var response =
client.setSettings(
indexName = "INDEX_NAME",
indexSettings =
IndexSettings(
indexLanguages = listOf(SupportedLanguage.entries.first { it.value == "ja" }),
attributesToTransliterate = listOf("name", "description"),
),
)
$response = $client->setSettings(
'INDEX_NAME',
['indexLanguages' => [
'ja',
],
'attributesToTransliterate' => [
'name',
'description',
],
],
);
response = client.set_settings(
index_name="INDEX_NAME",
index_settings={
"indexLanguages": [
"ja",
],
"attributesToTransliterate": [
"name",
"description",
],
},
)
response = client.set_settings(
"INDEX_NAME",
Algolia::Search::IndexSettings.new(index_languages: ["ja"], attributes_to_transliterate: ["name", "description"])
)
val response = Await.result(
client.setSettings(
indexName = "INDEX_NAME",
indexSettings = IndexSettings(
indexLanguages = Some(Seq(SupportedLanguage.withName("ja"))),
attributesToTransliterate = Some(Seq("name", "description"))
)
),
Duration(100, "sec")
)
let response = try await client.setSettings(
indexName: "INDEX_NAME",
indexSettings: IndexSettings(
attributesToTransliterate: ["name", "description"],
indexLanguages: [SearchSupportedLanguage.ja]
)
)
Legacy API clients
Legacy API clients
IndexSettings settings = new IndexSettings
{
IndexLanguages = new List { "ja" }
AttributesToTransliterate = new List { "name", "description" }
};
// Synchronous
index.SetSettings(settings);
// Asynchronous
await index.SetSettings(settings);
res, err := index.SetSettings(search.Settings{
IndexLanguages: opt.IndexLanguages("ja"),
AttributesToTransliterate: opt.AttributesToTransliterate(
"name",
"description",
),
})
IndexSettings setting = new IndexSettings().setIndexLanguages(
Arrays.asList("ja")
).setAttributesToTransliterate(
Arrays.asList("name", "description")
);
// Synchronous
index.setSettings(setting);
// Asynchronous
index.setSettingsAsync(setting);
index.setSettings({
indexLanguages: ["ja"],
attributesToTransliterate: ["name", "description"],
});
val settings = settings {
indexLanguages = listOf(Language.Japanese)
attributesToTransliterate = listOf(Attribute("attribute"))
}
index.setSettings(settings)
$index->set_settings(array(
'indexLanguages' => ['ja'],
'attributesToTransliterate' => array(
'name',
'description'
)
));
index.set_settings(
{"indexLanguages": ["ja"], "attributesToTransliterate": ["name", "description"]}
)
index.set_settings(
{
indexLanguages: ["ja"],
attributesToTransliterate: [
"name",
"description"
]
}
)
client.execute {
setSettings of "myIndex" `with` IndexSettings(
indexLanguages = Some(Seq("ja")),
attributesToTransliterate = Some(Seq("Attribute", "*"))
)
}
let settings = Settings()
.set(\.indexLanguages, to: [.japanese])
.set(\.attributesToTransliterate, to: ["name", "description"])
index.setSettings(settings) { result in
if case .success(let response) = result {
print("Response: \(response)")
}
}