zotero://select for collections

Is it possible to use a zotero://select link for a collection? Or, alternatively to link to an item in a specific collection?
  • edited October 11, 2018
    I've added support for the former in the latest beta.

    zotero://select/library/collections/:collectionKey
    zotero://select/groups/:groupID/collections/collectionKey
  • It seems to work like a charm in Zotero version 57-beta-3. Thank you very much for the implementation!
  • This is a much expected and welcome feature for me, but unless I'm mistaken there's no way of determining the collectionKey of a given collection within the GUI.

    Could you please add a "Copy zotero://select link" entry to the collection context menu ?

    Thanks in advance !
  • No, sorry. That doesn't exist for items either. I assume you're using a third-party extension (Zutilo?), so you'd have to ask the developer of that extension to add this.
  • Thanks for your answer. I'm indeed using Zutilo.

    So, if there's no way for Zotero users to come up to the right zotero://select link by themselves, how did you expect them to benefit from this feature when implementing it ? I'm feeling like I'm missing something here...
  • Well, I implemented it because zuphilip asked for it…

    The item version was originally an internal mechanism used for the (ancient) timeline feature. Some people found it useful in other contexts and Zutilo added the ability to generate it. The same thing can happen here. But I doubt enough people would use it to merit default context-menu options.

    In the meantime, if you're using syncing, you can see the collection key in the URL when you click on the collection in the web library.
  • ( I have implemented a very easy custom translator to export for debugging which will also show you the collection(s) an item is in: https://github.com/UB-Mannheim/zotkat/blob/master/Zotero JSON.js and will use this functionality in my plugin https://github.com/zuphilip/zotero-open-citations/issues/19 )
  • As a naive (non-programming) user, I have been longing for this for a long time - I often want to link to a collection from another program, or from within zotero. I already link to items via zutilo. It would make collections a great deal more useful!
  • @Hecksher: Not sure what the "this" is referring to. zotero://select for collections has been implemented.
  • I mean a simple way to copy links to collections - like zutilo's right-click for items. I know you said we should appeal to zutilo for that. I was just expressing my sense that it would be really helpful -- I'm certainly one who would use it.
  • edited May 4, 2019
    @dstillman Thank you so much for implementing this! It works like a charm

    But when I try to select a specific item in a specific collection using the following:
    zotero://select/groups/:groupID/collections/collectionKey/items/item.libraryID_item.key (OR just item.key no library id, it gives the same result)

    Or the same in my library:
    zotero://select/library/collections/:collectionKey/items/item.libraryID_item.key

    (example)
    zotero://select/groups/2321942/collections/YH5INLCB/items/6_J7G9KP3R

    It selects all items of the collection in library view if in a different collection
    or if I am already in the collection it selects all items in the collection.

    What am I missing? if zotero it could send me to an specific item and collection it would help a lot to move quickly around collections using notes to store the links.
  • @c.cin: I've added support for selecting items within collections and searches, along with a few other improvements, in the latest Zotero beta. See the commit message for details.
  • edited 25 days ago
    Thank you so much for caring and improved that functionality!

    But I just tried it but I couldn't get it to work in neither my group nor my library.
    I am using zotero standalone, 5.0.67-beta.12+6ba6028ed:

    Here was the improvement from the commit message
    Fix the 'itemKey' parameter:
    zotero://select/library/collections/:collectionKey/items?itemKey=:itemKey1,:itemKey2

    I tried it in a group This link to a collection works fine.
    zotero://select/groups/2297866/collections/6WXTWPYV

    Using the same collection and group I tried selecting an item using item.key
    but the hyperlink wasn't clickable in both examples
    zotero://select/library/collections/6WXTWPYV/items?itemKey=NM6AQ84Y
    zotero://select/library/collections/6WXTWPYV/items?itemKey=3_NM6AQ84Y

    In my library neither of two worked as well
    zotero://select/library/collections/TE5FLTMQ/items?itemKey=0_LYDK57CH
    zotero://select/library/collections/TE5FLTMQ/items?itemKey=LYDK57CH

    I used a translator to tried to find the itemKey2
    Using item.key2 (undefined) and itemKey2 (error when exporting)

    Also using the this that was also in that page also led to an unclickable link
    - Support items within collections and searches:
    zotero://select/groups/:groupID/collections/:collectionKey/items/:itemKey
    zotero://select/groups/2321942/collections/YH5INLCB/items/6_J7G9KP3R

    I tried this with different item types, with the same result.

    Any hints on how to make it work? I am really excited to use this feature!
  • First, forget the 0_ part — that's not part of an object key. Object keys are 8-character strings.
    Using the same collection and group I tried selecting an item using item.key
    but the hyperlink wasn't clickable in both examples
    zotero://select/library/collections/6WXTWPYV/items?itemKey=NM6AQ84Y
    That's not a group — that's your personal library, with a collection key from a group.
    In my library neither of two worked as well
    zotero://select/library/collections/TE5FLTMQ/items?itemKey=LYDK57CH
    The specified collection has to directly contain the item, regardless of whether you're using recursiveCollections to change what's displayed.

  • edited 25 days ago
    I am so happy!!! it works! This is going to be really useful
    I have no further questions regarding its use, this post is to explain how to use it.
    My mistake was getting too caught up trying to follow the example :
    zotero://select/library/collections/:collectionKey/items?itemKey=:itemKey1,:itemKey2

    How to use
    As dstillman said the item must be in the collection,
    If it is there via recursive collections it won't work on that item.
    It does work even if the same item is in different collections (if you use different collection keys)

    Both using /items or /items?itemKey= work

    For personal collections
    You only need the collection key and item key

    zotero://select/library/collections/UNLPD5ET/items?itemKey=LYDK57CH

    For groups
    As dstilman said it, it has to say groups first as in the functionality to jump to a specific collection. Otherwise it won't work

    So you need in addition to the collection and item key the group id (in the url of a group it shows is a number not the name of the group)

    zotero://select/groups/2297866/collections/KD26G5DG/items?itemKey=QTATT2AI

    Thank you for taking the time to explain it to me! dstillman
  • edited 25 days ago
    @zuphilip

    I am trying find a way to get the collection key from an export translator to include the improvements to zotero select that dstillman added in my version of his uri translator.

    But zotero.json above doesn't provide me with the collection key as it you mention it can. It shows the group id and item key.

    I think I tried all the built-in options that allow for an export translator in zotero standalone to find the collection key, without success in finding the collection key.

    This is what using zotero.json displays for this item
    zotero://select/groups/2297866/collections/KD26G5DG/items?itemKey=QTATT2AI

    {
    "itemType": "bookSection",
    "extra": "C",
    "title": "' ' P . 2. ",
    "creators": [],
    "tags": [
    {
    "tag": "\"",
    "type": 0
    },
    {
    "tag": "@",
    "type": 0
    },
    {
    "tag": "<",
    "type": 0
    }
    ],
    "attachments": [],
    "notes": [
    {
    "key": "8P9NAVYK",
    "itemType": "note",
    "parentItem": "QTATT2AI",
    "note": "",
    "tags": [],
    "relations": {},
    "dateAdded": "2019-05-23 00:02:37",
    "dateModified": "2019-05-23 00:02:37",
    "uri": "http://zotero.org/groups/2297866/items/8P9NAVYK",
    "uniqueFields": {},
    "itemID": 11816,
    "libraryID": 3,
    "sourceItemKey": "QTATT2AI",
    "seeAlso": []
    }
    ],
    "itemID": 11321,
    "seeAlso": []
    }
Sign In or Register to comment.