Question about searches

question

Dear all,

for the upcoming JSesh 7, the main change will be the addition of a simple (yet long awaited) search function for JSesh.

I have a few questions for you. If you answer them (by mail or on JSesh's facebook page), please explain your choices, giving examples of what you would like to be able to do.

I'm writing two variants of the search.

  • the first variant will allow you to search for a sequence of signs, regardless of their layout. That is, "p t" will find both "p*t:pt", "p:t-pt", "Q3*t:pt"... I guess it's the most needed function.
  • a quadrant-oriented MdC search: will retrieve any specific quadrant, with the same layout. As with the previous search, phonetic codes and Gardiner code will give the same result.

My questions :

  • do you need this second type of search?
  • do you want this second search to find only full quadrants, or to be able to find substructures (i.e. finding km:niwtt in n:km:niwtt ?)
  • do you want it to be simple, or to have many options
  • an alternative solution would be to provide a full search editor, a bit like the one used in the Ramsès Project. It would have functionalities like "find two signs in sequence, not necessarily adjacent". It would not be available as fast as the previous one, but I'll be able to reuse most of the code I wrote for Ramsès.

I'm reluctant to write search-and-replace code. With hieroglyphic text, search and replace can be easily defined in some cases (e.g. replace all occurrences of G40 by G41) ; but tricky to write in other cases (e.g. "replace all G41-A by G40"... how do you deal with a (unlikely) string like G41-A:n ... do you create G40-n, or do you create G40:n?). In fact I don't think there is a fully generic way to deal with it. I can propose partial solutions (proposing search and replace only on full quadrants for instance), but I'm not sure it's worthwhile. In most cases, you would use a simple search, and then perform the replace by hand, and call it a day.

What do you think ?

Serge Rosmorduc

Article suivant Article précédent