Advanced Character component search (not only radical)

#1
Hi,

I have a feature request regarding search. There are multiple characters which share a portion of the components and I would like to show them all even when they don't share the radical.

Possibily also including character structure, but not necessarily. Something similar (but possibly simpler and better than):

http://www.yellowbridge.com/chinese/adv-character-dictionary.php

Example: I want to find all of

贤紧肾竖坚 (...?)

Maybe just a simple "list all components that should be included in the search" would suffice, if looking at the char structure is too complex, for example in this case entering "丨“ and "丨" and "又" could find all characters which contain at least two gun3 and at least one you4.

Would be very useful to me to improve learning of similar characters.

Thanks for your consideration!

C.
 

mikelove

皇帝
Staff member
#2
Already supported, sort of - tap on the component in the CHARS tab in one of the characters that contains it and you'll see a list of other characters that contain that component.
 
#3
Hi, thanks for your reply, I am aware of the feature to look for a single component,
however this does not work for multiple components.
In the example of the characters given above, how would you suggest to find all those characters?

Looking for all characters containing 又 on its own yields just too many results, as is the case for 丨 .

To be effective in this case the search should at least apply an AND to the results I think.
 

mikelove

皇帝
Staff member
#4
Ah, yes, we'd love to do that too but we haven't yet come up with a good way to enter components - there are too many for a radical table type grid to work, and our handwriting recognition system doesn't support all of them either. Best idea we've come up with so far is simply to let people add components from CHARS to a sort of meta search box floating above the screen (with them then tapping on a button to send it to the search box) - a bit of UI that might be useful in a few other places too, actually - but it would have to be baked into our app in a pretty obvious way if we wanted it to see much use.
 
#5
That seems a good idea actually, maybe a similar option could be selecting a subset of the components of the char and then choosing something like "search all containing these components"..
 

mikelove

皇帝
Staff member
#6
Something like that, yes - gather stuff from different parts of Pleco into something a bit more visible + flexible than a clipboard.
 
#7
For japanese Kanji there is a similar search in www.tangorin.com/kanji (tap on Multi-Radical Search) and in http://kanji.sljfaq.org/mr.html. To find the above characters, you first have to convert one of them into a traditional character, then with 臣 and 又 you can see all characters made of those radicals. (The stroke order of the japanese and the chinese 臣 is totally different, therefore there are 7 japanese and 6 chinese strokes for the same character).
 
#8
I came here to feature-request "search by multiple components" as well. I find myself wanting this more and more recently as I study Chinese. My primary use case is to do horizontal searches (see e.g. www.hackingchinese.com/horizontal-vocabulary-learning/) of other characters that contain a certain structure. E.g. all the characters that contain the bottom half of "带".

At any rate, here is a concrete suggestion: if all of the search terms in the search box are components (defined as characters listed as components of other characters in the CHARS section, possibly/probably recursive), then also do a search-by-component. E.g. searching for "巾冂" would find those two components but also "带", "掃", etc. (note sadly that this is example will fail because 巾 contains 冂).

No new UI is required, and it is a bit hidden but useful for those who need it.
 
#9
Ah, yes, we'd love to do that too but we haven't yet come up with a good way to enter components
The most natural way I can think of to do this would be to call up the "source" character and touch-select the desired strokes or components to match directly...of course, it would require a stroke-based representation of each character in the background in order to be searchable in that way.
 

mikelove

皇帝
Staff member
#10
@Bob P - that's a little dicey because it would feel like a bug if a user randomly stumbled onto it; there's nothing obvious about components to make it clear these are components. I suppose we could put up a little bar like 'component search for ...' if we found that all of the characters in the search box could be assembled to make a character, or break them out in a separate search results section, but this would have to be along with a regular search.

My other concern would be that a lot of common components don't have standard character codes + aren't supported by HWR - this would only work for some characters and not all.

My inclination on this is something a bit closer to @colinsky's method but without the need to actually tap on components to match - we'd simply list them. Basically a more efficient version of the current CHARS tab, you can enter a character by whatever method you like, instantly see a list of all of its components and pluck one out of that to add to your search. (tapping on bits of a character is cool but it's a tough project data-wise and I suspect also a bit slower in practice than simply tapping on the exact component you want from a list of them)
 

mikelove

皇帝
Staff member
#17
@ACardiganAndAFrown - that's fair, my thinking was that we'd break this out into a separate section of search results when we found a match (it's fast enough that we can check that database on any search containing hanzi) so it wouldn't feel like a bug because you'd still be seeing regular results too.
 
#18
@mikelove, yes, I agree with your design -- that would be perfect. Selection of components in CHARS from a given character was roughly what I had in mind. I agree that we don't need the ideographic description markers in the search (although it would be a cool extension).