用 ChatGPT 帮忙批量修改 Zotero 7.0 中附件的标题

2024.09.13 Friday @BJ

使用新版的 Zotero 7.0 有一段时间了,比之前的版本好用很多,但有个小问题实在想吐槽一下。

就是文献的附件,虽然设置了自动重命名,但重命名的是 filename,显示的是 title,比如下面这样的

Zotero

对于习惯了旧版直接用文件名来显示的用户来说,新增这个显示方法实在不习惯。常有种没重命名成功的感觉。

官方对这个问题有个说法:

Why do attachments have names like “PDF” or “Accepted Version” instead of their filenames in the items list?

https://www.zotero.org/support/kb/attachment_title_vs_filename

但我还是希望用旧版本的显示格式,怎么办?

Zotero 官网倒是给出一个方法,但代码是用来将 title 都设置成 'PDF',不是我想要的。

Zotero

居然有办法修改,咱就试试改改代码,问问 ChatGPT,试错之后果然得到设置方法了。

ChatGPT

最终代码如下:

var items = ZoteroPane.getSelectedItems();
for (let item of items) {
    if (!item.isRegularItem()) continue;
    let attachment = await item.getBestAttachment();
    if (!attachment) continue;
    let title = attachment.getField('title');
    
    if (!title.endsWith('.pdf')) {
        let attachmentPath = attachment.getFilePath();
        let fileName = attachmentPath.split('/').pop();

        attachment.setField('title', fileName);
        await attachment.saveTx();
    }
}

使用前:

使用前

使用后:


使用后

注:代码写作的官方指导链接如下
dev:client_coding:javascript_api [Zotero Documentation]

后记:

使用插件 Actions & Tags 可以将这个功能添加到菜单中,下面是现成的参考代码,亲测可行!
https://github.com/windingwind/zotero-actions-tags/discussions/381

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容