Skip to content
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

Language Forge should include the "Publish In" field from FLEx #1239

Open
rmunn opened this issue Nov 6, 2021 · 4 comments
Open

Language Forge should include the "Publish In" field from FLEx #1239

rmunn opened this issue Nov 6, 2021 · 4 comments
Assignees
Labels
large task Issues which have been estimated by the team lead to require substantial effort and time

Comments

@rmunn
Copy link
Collaborator

rmunn commented Nov 6, 2021

Is your feature request related to a problem? Please describe.
FLEx includes a "Publish In" field, which lets you subdivide your dictionary entries according to where you want them published (e.g., publish all words to the website, but only the most common words to the printed dictionary). Currently Language Forge doesn't include a "Publish In" at all, so the Send/Receive process ignores that field in FLEx and doesn't touch it.

Describe the solution you'd like
Language Forge should add a "Publish In" field to its data model, and include it in the Send/Receive process. The field should be a selection from a list, just like the Parts of Speech (Grammatical Categories) list.

Describe alternatives you've considered
Not making any changes, which isn't really a good alternative. This will be very straightforward to implement, and there's no good reason not to do it.

Additional context
Without the "Publish In" field, once we add tagging (#1008) features, users are likely to try to use tags to divide their words into "publish" and "don't publish" categories. While tags would work for that (as well as for many other uses we haven't considered yet), there's already an existing mechanism in place for that specific classification, so it's better that we guide the user towards that mechanism. That way it will work seamlessly with any publishing-assistance features that FLEx includes, if any. (I'm not familiar with that part of the FLEx code base.)

@rmunn rmunn added the triage label Nov 6, 2021
@alex-larkin
Copy link

This is wonderful!

One limitation of this field in FLEx is that new entries are automatically tagged as "publish"- not ideal. As long as LF doesn't do this, it should prove to be more helpful!

Side notes:

  • I know that in my use case, I consider multiple types of publications and desire to indicate for each entry which publications I want it to appear in. This is why I created a custom list that broke S/R with LF. However, it wasn't something I was activly using or needing, so I deleted it for the time being.
  • Does anyone know where the FLEx development team keeps track of it's issues? I would like to request that they change the behavior of that field.

Thanks!

@rmunn rmunn self-assigned this Nov 8, 2021
@rmunn
Copy link
Collaborator Author

rmunn commented Nov 8, 2021

Turns out the way FLEx implements this is to have a "Do not publish in" list that you can edit, and then the "Publish In" field is a read-only field that's basically "Everything publication type, except for the ones you listed in the 'Do not publish in' field". Which is... complicated.

Because Language Forge needs to support FLEx versions from 8.2 onwards, even if FLEx does change the behavior of the "Publish In" field in the future, we will still have to deal with the way it works right now in FLEx, and support the "Do not publish in" behavior for as long as we still support Send/Receive with FLEx 8.2. (Which should be as long as it has any significant installed user base; we should not be forcing users to upgrade for our own convenience as developers).

So I need to think about the UI for the "Publish In" field in LF. I think I will make it a list where you can add or delete items from the list, similar to the Semantic Domains list, and where you can click a delete button on each list item to remove it from the list. That way we don't confuse the users with the inverted logic of "If I want to publish it in my main dictionary, I need to make sure the main dictionary is not in the 'Do not publish in' field."

@rmunn rmunn added engineering Tasks which do not directly relate to a user-facing feature or fix large task Issues which have been estimated by the team lead to require substantial effort and time Sync feature and removed triage labels Nov 9, 2021
@rmunn
Copy link
Collaborator Author

rmunn commented Nov 9, 2021

After further work, I'm discovering that the Send/Receive part of this is going to be tricky. I'm reconsidering whether to prioritize this over the entry-tagging feature. I thought this would be a quick one, but I'm now estimating a couple of weeks to get this done right.

@alex-larkin alex-larkin removed the engineering Tasks which do not directly relate to a user-facing feature or fix label Dec 21, 2021
@rmunn
Copy link
Collaborator Author

rmunn commented Feb 9, 2023

Had a further idea for the UI in Language Forge: it should show as "Publish in" with a radio button with two choices. Default is "All", and the other choice is a dropdown list of specific locations to publish in. (Side note: is "locations" the term used in FLEx? Research needed.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
large task Issues which have been estimated by the team lead to require substantial effort and time
Projects
Development

No branches or pull requests

3 participants