-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Proposing a simple means to cover various word forms from a button action #254
Comments
I think it should be possible to reopen an issue, if you've closed it, but don't worry. Thanks for the new proposal. I like it, since it's very generic and can be used in very flexible ways. Therefore it's fitting with the general idea of AsTeRICS Grid to be as flexible as possible for many use cases. I think of the following extensions of your proposal:
|
Hi Benjamin,
Yes, going through the exercise of creating a grid set made me realize how
challenging it is to create one that was both grammatically complete and
efficient as far as minimizing user interactions. Other speech devices use
language models that include some features for accessing variations on
words in some cases by anticipating what comes next (which I do in some
cases), in other cases by providing a way to alter word endings - a special
button to add -ing, or similar to a word (for which there is no current
action in AG). But, I think the generic word-forms approach offers utility
and efficiency.
Right now in my grid set, I find that I frequently have to navigate to the
verb branch that has the correct conjugation via the Home page which adds
at least 3 extra button pushes just to get to the correct verb form.
Currently, on my home page, if you select I, You, He, She, etc, navigation
takes you to the verb branch that suits the pronoun in the present tense.
So, "I said.." requires that I return to the Home page, select the button
for verb variations, then select the past tense verb branch, and search
grids for the "said" element. I actually think that for students, selecting
the correct (or desired) tense or conjugation from the root verb element
grid would be instructive, and reduce the navigation load and grid count.
As for using a pop up, I like the idea of the user being able to see all
the options from which they can choose, rather than indexing through a list.
Thanks for considering this,
jl
…On Mon, Mar 27, 2023 at 4:22 AM Benjamin Klaus ***@***.***> wrote:
I think it should be possible to reopen an issue, if you've closed it, but
don't worry.
Thanks for the new proposal. I like it, since it's very generic and can be
used in very flexible ways. Therefore it's fitting with the general idea of
AsTeRICS Grid to be as flexible as possible for many use cases.
I think of the following extensions of your proposal:
-
we could provide an optional possibility to add something like tags or
a label to word forms. So it could be used in a generic way (like for
sibling names) or for something like verb conjugations, where each word
form could have a label like this:
- "am" 1.PS
- "are" 2.PS
- "is" 3.PS ...
Then we could add an action "change word form to" to any element and
e.g. add it to an element containing "I" with "change word form to 1.PS"
changing all words of the grid to word form "1.PS" (if existing). In
that way some kind of grammar could be modelled within the configuration
without having to add explicit grammar rules for a specific language.
-
for verbs we could still use a way to import conjugations (and
automatically add the labels) using the API from verbix.com
<https://api.verbix.com/>
-
I think some kind of popup shown by a separate action that shows all
existing word forms would also be great. So e.g. "normal tap" = select
element with current word form, "long tap" = show popup with all exsting
alternatives, making it possible to directly select one. Although we would
have to think about how to make this accessible if alternative input
options like scanning are used.
—
Reply to this email directly, view it on GitHub
<#254 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AF4D6ZW7MBRFDVAINNV73CLW6FE6DANCNFSM6AAAAAAWHTFJK4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
I'm working on a board set that works for different languages. We've already discussed some things, Benjamin, here now some specific examples. Sign explanation: Sentence: You (plural, feminine) aren't doctors. English: German: French: Turkish: (?) Means that I'm not sure which if any changed word the button "olmak" should show after clicking the grammar button, because the wordform depends on the previous word and while you've told me it would be possible to make word changes in the speaking bar according to the previous word (like with are + not => aren't), I could imagine that making already the button show a specific word depending on the word in the speaking bar would be additionally tricky to code? Like after clicking "are" the "not"-button automatically changing to "n't"? As an example for the ending differences in Turkish: "You are doctors" would be |
That's the basic form how actions could change word forms which I have in mind. However it would also be possible to attach the action to change to ** 2nd person plural ** to the "You" button, so that there is no need to click an extra button for that. But it also will be possible with the extra button.
I think that will be possible if the ** not ** button also is a button which changes the word form, like ** 2nd person plural ** before. So it will change all word forms (where existing) to the form labelled with
So then the first button ** 2nd person plural ** selects the first word form with label To consider here:
This is different from "are" to "aren't" in the example before since "non" was first. I think in this case the user would have to select "êtes" first and afterwards click ** not ** in order to apply the
I think I don't fully understand this example. However I think "değilsiniz" probably should be a word form of "olmak", also with the tags |
So then it would show "You" and "are" in the bar? One thing that speaks against that is that "are" might be need to be used without "you" previously, like in questions (Are you tired?) but if this could also be possible, that's good to know.
I'd assume that if the user clicks a "wrong" combination (like ** 2nd person plural ** + ** feminine ** for an English verb) then it doesn't matter if other fields change. As long as everything resets once a "normal word"-button is clicked.
Okay, so I guess then some kind of conditional programming "if last word in bar is xxx, replace it with xyy after clicking this button" is not possible or difficult to program?
It would be an advanced version of the previously mentioned question. The suggestions you've made would also work and I can think of other options too, but purely from the view of how the word would be produced and formed verbally, in the case of Turkish left-to-right, that would be the optimal solution so I want to check if that's possible and if not. |
Hi everyone,
I am inclined to think that the introduction of technical jargon and other
grammatical understanding requirements to access language excludes
communicators who lack those learned skills, but who might otherwise be
able to hear when a correct word form "sounds right."
When I constructed Quick Say 20, I did try to anticipate correct verb
forms by simply linking to likely grids as in:
I --> am (what about the possibility of "will", "was" ?)
You --> are ( what about the possibility of "will", "were" ? )
She, it --> is ( what about the possibility of "will", "was" ? )
This doesn't always work, but the communicator can always go to the home
page and drill down to the correct word form - at the expense of extra
button pushes.
Then there is the possibility of some sort of natural language processing
that offers predictions for the next word - this seems like a modern
approach, but may not work well offline.
A simple approach, as I suggested before, is not grammar based, but offers
the communicator choices, and can be used in instances to cover verb
tenses, singular/plural, fast/faster/fastest, etc.
It would work like this:
1. The page designer would add a "word list" action to a grid element. The
action would permit the creation of an ordered list of word alternatives.
The word list action would be denoted by a small + in the upper left corner
of the element to cue the communicator that there are alternative word
forms.
2. The user would click an element like for the word "fast". The user
could then click the same element to get "faster" to replace "fast", and a
third click yields "fastest." An additional click on that element would
cycle back to "fast." The wordlist iterating would cease as soon as any
other element is selected.
Users could rely on their innate grammatical sense to arrive at what sounds
right to them.
The main drawback for my simple approach would be potentially many clicks
needed to arrive at the desired word form.
Another drawback would be that the word list action may preclude
auto-linking back to a home page, or previous page - if that is desired.
Anyway, I am glad you all are thinking about this and I look forward to
trying out any of your ideas.
Thanks,
Jim Luther
So, I am advocating the
…On Mon, Mar 27, 2023 at 4:22 AM Benjamin Klaus ***@***.***> wrote:
I think it should be possible to reopen an issue, if you've closed it, but
don't worry.
Thanks for the new proposal. I like it, since it's very generic and can be
used in very flexible ways. Therefore it's fitting with the general idea of
AsTeRICS Grid to be as flexible as possible for many use cases.
I think of the following extensions of your proposal:
-
we could provide an optional possibility to add something like tags or
a label to word forms. So it could be used in a generic way (like for
sibling names) or for something like verb conjugations, where each word
form could have a label like this:
- "am" 1.PS
- "are" 2.PS
- "is" 3.PS ...
Then we could add an action "change word form to" to any element and
e.g. add it to an element containing "I" with "change word form to 1.PS"
changing all words of the grid to word form "1.PS" (if existing). In
that way some kind of grammar could be modelled within the configuration
without having to add explicit grammar rules for a specific language.
-
for verbs we could still use a way to import conjugations (and
automatically add the labels) using the API from verbix.com
<https://api.verbix.com/>
-
I think some kind of popup shown by a separate action that shows all
existing word forms would also be great. So e.g. "normal tap" = select
element with current word form, "long tap" = show popup with all exsting
alternatives, making it possible to directly select one. Although we would
have to think about how to make this accessible if alternative input
options like scanning are used.
—
Reply to this email directly, view it on GitHub
<#254 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AF4D6ZW7MBRFDVAINNV73CLW6FE6DANCNFSM6AAAAAAWHTFJK4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
I think all of this should be possible:
So the user should be as flexible as possible to create a solution that fits best for a use case.
Yes, that's where I'm not completely sure, when to reset the collection of tags in the background. But yes, probably if any element without an "change word form"-action is selected. Maybe also if the collected tags like
Nearly everything you can imagine is possible to program ;)
So if it's about the order of clicking, I think this should be possible with the proposed system:
In this example "değilsiniz" is stored and defined as a word form of "olmak" with tags |
Thanks @jamjolu for your thoughts! I think your ideas could also be integrated or be a special form of the approach with tags I'm discussing with @msantos-87.
Here it could be possible to define word forms of and elment with the base form "be" like this:
Then there could be an action like ** change to A simple special form of the approach would be to define word forms of an element without any tags so, e.g.:
As before an action like ** go to next word form ** on this element would make it possible to choose one of the siblings.
Yes, I think both should be in the same tab for "word forms" in the "edit element" dialog. There you could define word forms with tags to be able to do more sophisticated things like discussed before or only a list of words without tags for the simple use case, like for the siblings. |
A question that arises for me: "How to manage the tags for word forms"? Some possibilities:
|
Yes, I think what you are proposing would work well for generic word forms.
I wonder if adding a "next word form" element could be added to the Global
Grid to cycle through options, if there are any? And, would that be
preferable?
Anyway, I am open to trying anything.
By the way, I just put together an audio book search and play page based on
a collaboration between Project Gutenberg (public domain literature in
English) and Microsoft AI where the folks at Microsoft converted 4840 texts
to audio books. The PG+M Project page is a simple flat list of the 4840
books in alphabetical order- no search, no embedded player.
https://marhamilresearch4.blob.core.windows.net/gutenberg-public/Website/index.html#Listen
They do have links to where the books can be searched such as at the
Internet Archive and other podcast aggregators, but nothing that can be
customized for users who have accessibility challenges.
My page offers search by author or title and a booklist feature so the user
can save books they wish to listen to. The playpoint for each book is also
saved so user can play the audio book from where they last paused. I
leveraged a prior web app I made to provide supports for multiple access
methods, various TTS voices, various foreground/background color themes,
etc. There are a few bugs related to a YouTube player that can cause the
page to hang (usually refreshing the page clears the errors). Also,
currently the page voice defaults to English, but on iPads I get all kinds
of non-English TTS voices causing comical pronounciation issues.
https://jamjolu.neocities.org/gutenberg/gutenberg_AWP
<https://jamjolu.neocities.org/gutenberg/gutenberg_AWP>
I have spent too much time on the above page, but I do hope to iron out the
wrinkles sometime, and to put together a YouTube demo/how-to.
Thanks,
jl
…On Tue, Jan 2, 2024 at 7:14 AM Benjamin Klaus ***@***.***> wrote:
Thanks @jamjolu <https://github.com/jamjolu> for your thoughts!
I think your ideas could also be integrated or be a special form of the
approach with tags I'm discussing with @msantos-87
<https://github.com/msantos-87>.
I --> am (what about the possibility of "will", "was" ?)
Here it could be possible to define word forms of and elment with the base
form "be" like this:
- 1.P, INFINITIVE: "am"
- 1.P, PAST: "was"
- 1.P, FUTURE: "will be"
Then there could be an action like ** change to 1.P ** on the element
"I", so clicking on on it adds "I" to the bar and at the same time changes
"be" to the first word form including 1.P = "am" in the grid. Then at the
"be" ("am") button there could be another action defined like ** go to next
word form **, so clicking on "am" adds "am" to the bar and at the same time
changes "am" to "was". The user then could click "was" in order replace
"am" with "was" in the bar, or leave it as it is, if "am" is the desired
form.
A simple special form of the approach would be to define word forms of an
element without any tags so, e.g.:
- base form (label): "sibling"
- other forms: "max", "anna", "peter"
As before an action like ** go to next word form ** on this element would
make it possible to choose one of the siblings.
The page designer would add a "word list" action to a grid element.
Yes, I think both should be in the same tab for "word forms" in the "edit
element" dialog. There you could define word forms with tags to be able to
do more sophisticated things like discussed before or only a list of words
without tags for the simple use case, like for the siblings.
—
Reply to this email directly, view it on GitHub
<#254 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AF4D6ZVJYXIF6KFKRAONN5DYMP2ZFAVCNFSM6AAAAAAWHTFJK6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZTHE2TGNBSGA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I think it should be possible. However then it probably would only cycle through the forms for the last element added to the bar and not all elements with word forms in the grid?!
Great idea. I've planned an integration of podcasts to AG, which would be quite similar in terms of listening to long audio files. However I've not thought about it in detail and further discussions about it should be done in a separate issue. |
I have more questions about the word form implementation. I've to decide how to save the data internally and this has implications on the usability. So we have to decide if:
What do you think? So technically speaking the data format would be something like this: let wordforms = [
{
tags: ["BASE"],
value: {
"DE": "sein",
"EN": "be"
}
},
{
tags: ["1P"],
value: {
"DE": "bin",
"EN": "am"
}
},
{
tags: ["2P"],
value: {
"DE": "bist",
"EN": "are"
}
},
{
tags: ["1P", "NEGATION"],
value: {
"DE": "bin nicht",
"EN": "am not"
}
},
{
tags: ["2P", "NEGATION"],
value: {
"DE": "bist nicht",
"EN": "aren't"
}
}
// ...
] And this would be an example, were some tags are only for available for specific languages: let wordforms = [
{
tags: ["BASE"],
value: {
"EN": "red",
"ES": "rojo"
}
},
{
tags: ["FEMININE"],
value: {
"ES": "roja"
}
},
{
tags: ["MASCULINE"],
value: {
"ES": "rojo"
}
}
] So if the current content language is "EN" and the action ** change to For the "sibling usecase" I think it will be something like this: let wordforms = [
{
value: {
"DEFAULT": "Benjamin",
}
},
{
value: {
"DEFAULT": "Jim"
}
},
{
value: {
"DEFAULT": "Matthew",
"DE": "Matthias",
"EN": "Matthew",
"ES": "Mateo",
"IT": "Matteo"
}
}
] So |
I just realised that I'm not sure if I understood this correctly.
I'd go with 2 (default tags for the most important concepts like 1.P, 2.P, ... NEGATION, PLURAL, ... with the possibility to extend these default tags with own ones) but while trying it to keep it as language-neutral as possible. Which could be done by using abbreviations, so not SINGULAR but SG, PLURAL but PL, ACCUSATIVE but ACC etc.
The most common case will be that a word in one language can use tags that another language doesn't need. E.g. an example with an adjective like "small". For English the tags (comparative, superlative) is all that could be applied to the word. For Spanish the tags (masculine/feminine, singular/plural, comparative, superlative, diminutive) could be applied. |
Yes, exactly, this was my idea. And yes, in this case you can achieve the same thing like with the if-then rules, but with no extra system which has to be there to define these if-then rules - that's why I like it better.
Yes. We also could think of some special rules like "if a button changes the last word in the bar, don't add it to the bar, otherwise add it" and "if a word form is added to the bar, where the last word in the bar caused this word form, remove the last word before adding the new one". A practical example:
Other way:
OK, so you would think that tags should be completely independent for every language? Maybe with the possibility to add some predefined / user defined sets of tags to a word form for a specific language (I think of verbs, where it will be cumbersome to add all persons / plural for every language again)? Then the question of how to implement / define the ** change to form So the word forms would look more like this (just writing it down for me, in order to be able to imagine): let wordforms = {
"EN": [
{
tags: ["BASE"],
value: "tall"
},
{
tags: ["COMPARATIVE"],
value: "taller"
},
{
tags: ["SUPERLATIVE"],
value: "tallest"
}
],
"ES": [
{
tags: ["BASE"],
value: "alto"
},
{
tags: ["FEMININE"],
value: "alta"
},
{
tags: ["MASCULINE"],
value: "alto"
},
{
tags: ["MASCULINE", "PLURAL"],
value: "altos"
},
{
tags: ["MASCULINE", "SUPERLATIVE"],
value: "el mas alto"
}
]
} And here I think it needs some feature to quickly add sets of tags to a word, in order to prevent duplicated work. So if adding many spanish adjectives, to quickly add serveral word forms with tags: For actions we would need something like this: let changeWordAction = {
"EN": {
changeToTags: ["SUPERLATIVE"]
// maybe more properties
},
"ES": {
changeToTags: ["MASCULINE", "SUPERLATIVE"]
// maybe more properties
}
} |
Yay, perfect =)
So that would in the case of "am/is/are not" result in one not having to programm "am not" in the "to be" button, because that would happen automatically? Sure could be useful in some cases / for some languages.
Can't right now think of a case where that would be useful respectively how it isn't already kinda covered with the other options but I haven't finished going through all of the grammar of the languages that I want to translate to.
I think having a set of predefined tags for all languages of the most common flexions/changes not connected to a word form can be useful. Jim and others would have to say if they deem an additional connection to word forms useful for them, for me I don't need it. I think the most common tags would be for verbs then for adjectives comparative, superlative
Not sure if I'm understanding this correctly. Is But yeah, I'm not sure if I've understood that correctly. |
Please look at my two practical examples in my comment right below these rules to see where I think these rules could make sense.
No, it's the tag to which the word forms should be changed to. I also think that I wouldn't translate tag names, so
|
My first draft for the UI defining word forms: On the top possibilities to add new word forms and import / export them from / to some spreadsheet software. In the table the possibilities to edit, remove and rearrange them: Rendering of the tags within the table should be the same like in the selection element, but as said, it's the first draft. Feel free to give feedback. |
I just shouldn't multitask while writing a post here ;) Re-writing my previous post.
It's looking good for me, very intuitive and user-friendly. :) |
Also, something that just crossed my mind: Since you wrote that it could be possible to import conjugations (and automatically add the labels) using the API from verbix.com... If tables with all the necessary flexions for non-verbs exist for all needed languages and they are somewhere online, would it be possible to import them in one go via API too? After applying whatever-necessary programming to it, of course, I'm struggling to understand how APIs work... Also, will the imported conjugations be visible in the word forms overview or will only the word forms that people specifically create be visible there? |
There are services which really provice an API, which is meant to be used programmatically by other applications (like Verbix). So you can do a request to a specified enpoint like There are many other services, which also provide the data, but no API, e.g. Reverso. Now of course it is also possible to programmatically retrieve data from a website like this, however it's more effort and probably also often violates the copyright/terms of use of the sevice. I saw that you have to apply to get access to the Verbix API, which I've done now. There are also other projects like these which provide ways to use data from an open source, which has no API (like Wiktionary):
Yes, if we find good APIs, which is the hard part. I've also found paid ones like ultralingua.com, but the quality of the result wasn't very convincing for my tests.
All should be visible in the table, shouldn't matter if it's added manually or via spreadsheet import or an API. |
To clarify where I want to go to with this question: For the word forms that are not available through verbix - or if verbix wouldn't work then for all necessary forms - I will be producing them myself. Originally in excel but that can then be transformed to whatever other format needed. So, once this data is created, I'd be totally fine with making it publicly available for everyone under CC, like it could be uploaded to the domain of my project or even directly to asterics.eu or to github. What I want to know as I don't understand the programming part of it, is if it would be possible to transform/program the data in a way that would make it available for automatic use in AsTeRICS Grid for everyone, like you're planning with verbix? Maybe even in a way where anyone who wants to add more words or more languages would be free to contribute and it would then again be automatically available for AsTeRICS Grid? (If I'm understanding the screenshot correctly, with the import option you've created one would have to import the data for each word separatedly, not all at once?)
Great! :) |
That's great and very much fits with our idea of open ressources for AAC 👍
Yes, it would be definitely possible, however of course some more work to do. At the moment I would just try to create the data in machine-readable way, then it can be transformed to whatever needed for an API easily. I can imagine creating such an API on my own in the future or maybe also @arasaac-dga could imagine to do it?! The easiest way would be just to upload it on github (probably best within an own repository) and if the structure is good, then github also could be used as an API, like ian-hamlin/verb-data already did it. At this repo it's already possible to use the github API like https://raw.githubusercontent.com/ian-hamlin/verb-data/master/json/spanish/content/e/echar.json and directly use this within AsTeRICS Grid. This repo could also be forked (copied) and then more language/words could be added. But as said, the first step is to create the data in a machine readable way. I would propose this format within a spreadsheet:
Then it's easy to filter the words within the spreadsheet and also to import/export them to/from AsTeRICS Grid or any format that's needed for an API. It would be also possible to try to write a program that automatically extracts word forms data from these Wiktionary tables: https://de.wiktionary.org/wiki/Flexion:sein - it would be OK, since these ressources are already CC licensed. |
Perfect :) |
I have moved forward in implementing and I have a question. Look at this example: What happens in the background:
My question: how now one could write "you aren't he is" instead of "you aren't he isn't" using our system? I think we need some extra button/action "reset word forms" for cases like this. Or do you have a different idea? With this clicking order everything would be fine:
So the problem is only for the case where the word in the bar is changed afterwards. |
Would it be possible to clear the tags whenever a grammar button is clicked that changes a word in the speaking bar? (Provided that "2.Pers" and "negation" are different kinds of grammar buttons in that if one were to click first "you" then "be" and afterwards "2.pers." it would not change the "be" in the bar to "are"?) Or better, would it be possible to tell it to apply the negation only to the bar and not the rest of the board? |
Theoretically anything which is a consistent rule is possible to program. However I wonder what's most intuitive and understandable. I wonder what's the benefit if it's possible to change word forms within the bar and within the grid at the same time or if it would be better to globally choose between one of both approaches:
I think approach (2) in general is more intuitive and also has the benefit that "You" could already have the action ** change to |
Finally I think/hope we've reached a state which can be released to the main version.
Additionally I did quite big changes to the code for the collection element (bar). Previously I've collected "text only" and "elements with images" separately, which results in quite complex and error-prone code. So I've changed it and now I'm collecting elements only in a single, unified way. However of course, this should be tested well, in order to make sure that I haven't broken something that was working before. I've updated my test configuration, which you could also use: It contains:
If everything works fine and no errors are found, I would like to release this state and for fine-tuning or minor feature improvements, we should use new issues. @arasaac-dga please also update the translations in crowdin. |
There are a bunch languages that don't use separate pronouns so the equivalent of the English Sending you an email in a moment. |
…oncatenated base forms like "sein:de;ser:es", #254
This is the finished textual documentation for the word form feature: https://github.com/asterics/AsTeRICS-Grid/blob/master/docs/documentation_user/10_word_forms.md |
Checking if really our Grammar API wins over the Word Forms we have found one case in which that doesn't happen. As you can see in video attached (https://app.box.com/s/r2s2myp7p5luzbf5vmcdsrfe8c4ml4m0), when "Change word form in grid elements" is selected the verb is changed to "quiere" when you press in "él" and when you press PLAY the API grammar must change to "yo y él queremos comer" as made when you select other action like "Change in collection element" (see video https://app.box.com/s/r2s2myp7p5luzbf5vmcdsrfe8c4ml4m0). We have tried other communicators and the problem occurs too. So, please check it in order the API always win ;-) |
Your API still "wins" in this situation, however the result for In the second example |
Yes, it's true. Thanks to this example we have located a little issue only with "want" verbs and only in some persons. With other verbs, fix the grammar correctly. So it's on our part. Thanks anyway for checking it. |
…ed for word forms -> change everywhere (otherwise "I am" -> "You" changes "am" to "are"), #254
…action with tags of currently selected word form, #254
…howing "am" and "am not" for 1.PERS (not "you" etc.), #254
I closed my own issue, #252 by accident (my own Github ignorance.) It is just as well as the suggestion by Klues led me to this proposal instead.
I propose a button action that would permit users to toggle through various word forms for verbs, nouns, and adjective/adverbs.
As Klues proposed a new tab in the button editing box called "grammar" into which one could record various verb conjugations and inflections, singular/plural noun forms, adjectival or adverbial alternatives etc.. I propose a more generic "word forms" tab that would be independent of grammar.
Examples:
be am is are being was were been
box boxes
hot hotter hottest
It could also function as a way to toggle through members of a related set:
(positive, comparative, superlative) - good better best
(sibling names) - John Mary Bob Mike
The Word Forms tab would would allow user's to record the set of word alternatives.
The element action would index over the set of alternatives based on the last entry in the Collection element and replace the last element if an alternative exists.
A button element with more than one word form could have a small + on it (similar to the small box for links) to denote the existence of word alternatives.
Please check out #252 for a more complete discussion.
Thanks,
jl
The text was updated successfully, but these errors were encountered: