alpheios-project / arethusa

Arethusa: Annotation Environment
http://sosol.perseids.org/tools/arethusa
MIT License
34 stars 26 forks source link

make a morph table editor plugin #734

Open balmas opened 8 years ago

balmas commented 8 years ago

A few people now, including Timo Korkiakangas, have requested that we have a view of morphology similar to that which was available in the P4 treebanking interface. This would be helpful when doing disambiguation and review/correction of many sentences.

Per Timo:

"I would like pretty much the same structure as the old editor had. It is important that the lemma + morph analyses can be selected from a drop-down menu, but having a separate field for the lemma would greatly increase usability (because then you could see all the necessary things at one glance).

For me who have lots of special vocabulary in my charters it was also crucial that the personal ocabulary learned the new lemmas (and their analyses) that I entered in the 'add new lemma' field. The notes field
was also important, as I ingested there some special annotations than I turned into XML attributes later on. I guess these points may apply to other users as well." See attached PDF for example of this view in P4 Taulukkonäkymiä tutkijaseminaariin 2011.pdf

balmas commented 8 years ago

@fbaumgardt this is the plugin we were discussing yesterday.

fbaumgardt commented 8 years ago

Ack!

fbaumgardt commented 8 years ago

If I understand correctly, Timo would like to run a second morphology service with user-defined analyses and have possible hits displayed together with the bsp/morpheus and document results. As well as persisting his manual entries. Does this service exist already? If not, do we have a CRUD endpoint that we can use here?

balmas commented 8 years ago

I believe, in a sense at least, arethusa already has the user service he's talking about - that's the morph_local_storage service. See https://github.com/alpheios-project/arethusa/wiki/Morphology-Handling

The changes I have in #737 are needed for us to be able to deploy this though.

fbaumgardt commented 8 years ago

Got it! On first glance arethusaLocalStorage looked like a dummy to me, but I just realized we're using grevory/angular-local-storage. Thanks!

I have the template up and am just looking into using arethusa.text, morph and relation.

balmas commented 8 years ago

super. I'm curious whether you will find that the unit tests I wrote for morph_local_storage help make its functionality clearer. https://github.com/alpheios-project/arethusa/blob/issue674and705/spec/arethusa.morph/morph_local_storage_spec.js

balmas commented 8 years ago

First implementation in #741

timokorkiakangas commented 8 years ago

This table view is very much what I - and probably many colleagues - wish to have. This completes nicely the Arethusa environment by making it possible to work flexibly on large amounts of annotated material, e.g. when correcting your own annotation. Since you asked some feedback, two rather banal but important points follow:

1) As Giuseppe stated, it would be very useful to have the morphological tag expanded, but indicating only the part-of-speech is usually not enough. Actually, working on morph tags is not essentially easier than with the bare XML file. An expansion of type "part sg pres part act masc abl" (as it was in the old table editor) might be the best choice instead of "t-sppamb" because "participle singular present participle active masculine ablative" would be too lengthy.

2) For heavy-users it might be useful to have more words/rows on the screen - this means a less airy layout. I refer here to the old table editor (see the screenshot [with the gibberish Finnish name :)] at the beginning of the thread). In spite of its archaic appearance, the old editor was very practical because you could just have one minute's look at the table and see if the entire sentence was correctly annotated. Now you need to scroll down all the time. Or can I modify the layout somehow from the settings?

I don't know if this was the sort of feedback you wished to have. At the moment everything else seems to be perfect. As a user of Perseus/Perseids tools from 2010, I can't but marvel at how much progress the annotation environment has witnessed in these years.

fbaumgardt commented 8 years ago

Thank you, Giuseppe and Timo for your suggestions! Now that you’ve mentioned them they seem pretty obvious. I’ll get right to it and they should be up with Bridget’s next Arethusa deployment. Don’t hesitate to keep sending in things you’d like to see fixed with the table!

Am 02.04.2016 um 14:35 schrieb timokorkiakangas notifications@github.com:

This table view is very much what I - and probably many colleagues - wish to have. This completes nicely the Arethusa environment by making it possible to work flexibly on large amounts of annotated material, e.g. when correcting your own annotation. Since you asked some feedback, two rather banal but important points follow:

1) As Giuseppe stated, it would be very useful to have the morphological tag expanded, but indicating only the part-of-speech is usually not enough. Actually, working on morph tags is not essentially easier than with the bare XML file. An expansion of type "part sg pres part act masc abl" (as it was in the old table editor) might be the best choice instead of "t-sppamb" because "participle singular present participle active masculine ablative" would be too lengthy.

2) For heavy-users it might be useful to have more words/rows on the screen - this means a less airy layout. I refer here to the old table editor (see the screenshot [with the gibberish Finnish name :)] at the beginning of the thread). In spite of its archaic appearance, the old editor was very practical because you could just have one minute's look at the table and see if the entire sentence was correctly annotated. Now you need to scroll down all the time. Or can I modify the layout somehow from the settings?

I don't know if this was the sort of feedback you wished to have. At the moment everything else seems to be perfect. As a user of Perseus/Perseids tools from 2010, I can't but marvel at how much progress the annotation environment has witnessed in these years.

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/alpheios-project/arethusa/issues/734#issuecomment-204770861

fbaumgardt commented 8 years ago

Check #744 for the fixes.

balmas commented 8 years ago

The changes in #744 are now deployed to the staging environment. @timokorkiakangas and @gcelano you may need to restart your browser and/or clear your cache to pick them up.

timokorkiakangas commented 8 years ago

Thank you so much, Frederik and Bridget! I like the new layout (of course it could still be somewhat denser in the vertical direction) and that the new forms are added in a new window. The text plugin with colours is also great! I feel confident to start a new annotation correction job with this as soon as possible.

fbaumgardt commented 8 years ago

That’s great to hear! The issue with the row height is that we’re reusing components and resizing them would affect other user interfaces. It’s probably possible to customize them just in the table, but my CSS magic is not quite there yet. :)

Am 06.04.2016 um 03:57 schrieb timokorkiakangas notifications@github.com:

Thank you so much, Frederik and Bridget! I like the new layout (of course it could still be somewhat denser in the vertical direction) and that the new forms are added in a new window. The text plugin with colours is also great! I feel confident to start a new annotation correction job with this as soon as possible.

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/alpheios-project/arethusa/issues/734#issuecomment-206195422

balmas commented 8 years ago

I'm hoping to deploy this to the production environment on Monday. One remaining question is how to make it more easily accessible from within Arethusa itself without having to manually adjust the URL. The two most obvious options are:

1) to make it a layout (it would then be accessible via the 'l' keyboard shortcut) 2) reuse relocateHandler code for the switch between staging/production

@fbaumgardt what do you think?

balmas commented 8 years ago

I've been experimenting a bit with adding the table layout into the main perseids config (so that it would be accessible via the l shortcut to cycle layouts). This has exposed a couple of interesting things that I need to pursue a bit further

  1. We want the table plugin to be a "main" plugin for the table layout, but would like it not to appear in the other layouts. I'm not positive the code supports this yet
  2. We might have missed something in the table plugin code to allow it to advertise the changes it makes to the tokens to other plugins --- switching between layouts (e.g. from table back to sidepanel) the changes made to the tokens in the table plugin are not being represented in the other views.
fbaumgardt commented 8 years ago

Before I forget this:

  1. I still know very little about the layout engine, but will look into it asap. The same is true for relocateHandler.
  2. I will also look into this. In principle, I use the other plugins directly.

Is your layout config in the code already or do you have it running somewhere I can take a look?

Thank you for bug hunting!

Am 11.04.2016 um 13:30 schrieb Bridget Almas notifications@github.com:

I've been experimenting a bit with adding the table layout into the main perseids config (so that it would be accessible via the l shortcut to cycle layouts). This has exposed a couple of interesting things that I need to pursue a bit further

We want the table plugin to be a "main" plugin for the table layout, but would like it not to appear in the other layouts. I'm not positive the code supports this yet

We might have missed something in the table plugin code to allow it to advertise the changes it makes to the tokens to other plugins --- switching between layouts (e.g. from table back to sidepanel) the changes made to the tokens in the table plugin are not being represented in the other views.

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/alpheios-project/arethusa/issues/734#issuecomment-208464243

balmas commented 8 years ago

Thanks @fbaumgardt ! You can find my initial work on this in the tablelayout branch.