UAlbertaALTLab / morphodict

The Language Independent Intelligent Dictionary
https://morphodict.readthedocs.io/
Apache License 2.0
23 stars 11 forks source link

Develop and switch to multi-pane layouts #167

Open aarppe opened 4 years ago

aarppe commented 4 years ago

As an extension #131 , turn the paradigms into sets of self-contained panes, that can be turned into various layout presentations based on available space.

aarppe commented 4 years ago

In the mockups from Sept 2019, this is a nice visualization of what we'd want to achieve at the top level, in terms of the presentation of multiple panes labeled appropriately:

image

aarppe commented 4 years ago

@eddieantonio Here's a proposal for defining panes. Row and column labels are marked with _ and |, respectively (in comparison to < and ^). Both labels, but in particular the column labels can have a hierarchy, which is used to organize the panes according to available space. One can also use the column labels to refer to the panes. What is not indicated as a label is a reference to an FST-generated form. In this format, the forms are specified in full, indicating the lemma slot with {{lemma}} - this means that one would not necessarily need a separate specification/file for the paradigms and their generation.

[edited to introduce row hierarchy as well]

             | AI | Prs | Ind
_ Sg _ 1Sg   {{lemma}}+V+AI+Ind+1Sg
_ Sg _ 2Sg   {{lemma}}+V+AI+Ind+2Sg
_ Sg _ 3Sg   {{lemma}}+V+AI+Ind+3Sg
_ Pl _ 1Pl   {{lemma}}+V+AI+Ind+1Pl
_ Pl _ 12Pl  {{lemma}}+V+AI+Ind+12Pl 
_ Pl _ 2Pl   {{lemma}}+V+AI+Ind+2Pl
_ Pl _ 3Pl   {{lemma}}+V+AI+Ind+3Pl
_  _ 4Sg/Pl  {{lemma}}+V+AI+Ind+4Sg/Pl
_  _ X       {{lemma}}+V+AI+Ind+X

             | AI | Prs | Cnj
_ Sg _ 1Sg   PV/e+{{lemma}}+V+AI+Cnj+1Sg
_ Sg _ 2Sg   PV/e+{{lemma}}+V+AI+Cnj+2Sg
_ Sg _ 3Sg   PV/e+{{lemma}}+V+AI+Cnj+3Sg
_ Pl _ 1Pl   PV/e+{{lemma}}+V+AI+Cnj+1Pl
_ Pl _ 12Pl  PV/e+{{lemma}}+V+AI+Cnj+12Pl 
_ Pl _ 2Pl   PV/e+{{lemma}}+V+AI+Cnj+2Pl
_ Pl _ 3Pl   PV/e+{{lemma}}+V+AI+Cnj+3Pl
_  _ 4Sg/Pl  PV/e+{{lemma}}+V+AI+Cnj+4Sg/Pl
_  _ X       PV/e+{{lemma}}+V+AI+Cnj+X

The relabeling of the row and column labels, allowing for alternative schemes, is based on crk.altlabel.tsv. Space allowing, the two panes could be presented next to each other, in which case only one set of row labels would be necessary, and the column label for tense could be shared. If space would require the above to be presented in a single column vertically, then it would be a matter of UI design whether tense would be indicated as a column label for both panes, or only once.

aarppe commented 4 years ago

Here's a sketch for the entire AI full paradigm layout:

image
eddieantonio commented 3 years ago

This issue should be split into two:

Will address #567 and #568

aarppe commented 3 years ago

First steps implemented in #581 and #582.

aarppe commented 3 years ago

This is initiated in #581 and #582 for a static paradigm layout solution with multiple panes, so that a dynamic multipane solution is left until later.

aarppe commented 1 month ago

Maybe we should allow for multiple columns under the subpanes, thus implementing the accordion approach as a hybrid of the current paradigm layouts and the novel ones tentatively implemented in the new morphodict-frontend.

aarppe commented 1 month ago

Here's a screenshot of an early mockup implementation of the accordion-style presentation of subparadimg panes:

Image

The code for creating this is the following (to be run in: morphodict/scripts):

cat ~/altdev/morphodict/src/CreeDictionary/res/layouts/VAI/revised/VAI.tsv | ./generate-pane-accordion.sh ~/altdev/morphodict/src/CreeDictionary/res/crk.altlabel.tsv 4 'html' ~/giellalt/lang-crk/src/crk-strict-generator-with-morpheme-boundaries-giellaltbuild.hfstol nipâw > VAI.html

aarppe commented 1 month ago

https://gist.github.com/aarppe/aa47979c72a68a56b81e3e67b36fd54d