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

Create disjoint subgroups #7049

Open
manurare opened this issue Oct 27, 2020 · 8 comments
Open

Create disjoint subgroups #7049

manurare opened this issue Oct 27, 2020 · 8 comments

Comments

@manurare
Copy link

Hi,

I would like to know if it possible to create disjoint groups where entries cannot be shared between them. So I have 3 subgroups (read, skimmed, pending) under the same subgroup. Once I read a paper from the pending group and I move it to the read group for example I would like to automatically be removed from the pending. Is this possible? I know between skimmed and read it is possible by filtering keywords on the read status field. But for pending the read status field is blank

Also, is there a way to make a subgroup a default container. When I add an entry to my library is automatically added to the default "All entries" but I would like to be added as well automatically to the "pending" subgroup.

@k3KAW8Pnf7mkmdSMPHz27
Copy link
Member

k3KAW8Pnf7mkmdSMPHz27 commented Oct 29, 2020

Hello @manurare . I don't use the groups utilities in JabRef but I'd be willing to take a look at it if you can bare with me and my questions 😛

Regarding disjoint groups, I believe the answer is "sort of". There are dynamic groups based on free form search which support search syntax. Along the lines of,
Skärmavbild 2020-10-29 kl  11 05 41
Note that = is shorthand for contains, but according to the documentation you can use regex if you prefer.

Between keywords = and groups = , I believe you can create the wished for behaviour. As far as I know you cannot change the keyword based on moving it to a group, but I also don't know if this is what you want?

My suggestion for a "pending" group would be a free search expression along the lines of groups = "" and keywords != "read" and keywords != "skimmed". According to the documentation you should be able to assign new entries to a specific group but I can't find the setting, perhaps you have better luck?

Should there be more set operations than "union" and "intersection"?

@k3KAW8Pnf7mkmdSMPHz27
Copy link
Member

Issue #6908 seem related (regarding extending set operations)

@manurare
Copy link
Author

Hey,

Thanks for the answer. You gave me a really good hint. Actually for the pending group I did like keywords|readstatus != "read" and keywords|readstatus != "skimmed".

The funny thing now is that (at least in my JabRef 5.1--2020-08-30--e023aa0) if you manage a group by free search expression, the color and icon you had assigned to that same group dissapear and the default color/icon (gray, rotated triangle) appear everytime you restart jabref. But minor issue.

@k3KAW8Pnf7mkmdSMPHz27
Copy link
Member

Good that you found a solution that works for you!

if you manage a group by free search expression, the color and icon you had assigned to that same group dissapear

That is unfortunate, I believe it is the same issue as #6999

@manurare manurare closed this as completed Nov 1, 2020
@koppor
Copy link
Member

koppor commented Nov 1, 2021

I did not find the issue and thus created a forum entry: https://discourse.jabref.org/t/can-i-have-mutually-exclusive-groups/3015?u=koppor

Keywords for the issue search: mutually exclusive groups, entry in a single group

@koppor koppor reopened this Nov 3, 2021
@koppor
Copy link
Member

koppor commented Nov 3, 2021

I reopened, because this IMHO not solved. - A first step is #8206, which allows to craft a search string like NOT(groups=excluded) AND NOT(groups=included), which indicates the "all others" group.

I use it for categorizing papers for related work on a paper: included, excluded, and TODO. With that query, all papers are in the "TODO" group and I can then move them into the other groups after handling (by using the drag'n'drop feature of JabRef)

@koppor koppor linked a pull request Nov 3, 2021 that will close this issue
9 tasks
@koppor koppor removed a link to a pull request Nov 3, 2021
9 tasks
@koppor
Copy link
Member

koppor commented Nov 3, 2021

After rereading, I stated the same as https://github.com/k3KAW8Pnf7mkmdSMPHz27

Thus, this feature should just be documented.

@ThiloteE
Copy link
Member

Syntax that works for

JabRef 5.6--2022-01-30--8ca6b7f
Windows 10 10.0 amd64
Java 16.0.2
JavaFX 17.0.2-ea+3

and which is documented in JabRef docs here

  • included
    use explicit selection

  • excluded
    use the free search expression:
    not groups=included and readstatus=read

  • To Do
    use the free search expressions:

    • not groups=included and not groups=excluded
      or alternatively
    • not groups=included and not groups=excluded and not readstatus=skimmed

@koppor koppor moved this to Low priority in Features & Enhancements Nov 7, 2022
@github-project-automation github-project-automation bot moved this to Normal priority in Prioritization Nov 13, 2024
@calixtus calixtus moved this from Normal priority to Low priority in Prioritization Nov 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Low priority
Development

No branches or pull requests

5 participants