首页
/ jsPsych插件更新:HTML键盘响应功能增强与引用规范

jsPsych插件更新:HTML键盘响应功能增强与引用规范

2025-07-06 00:18:43作者:咎岭娴Homer

项目概述

jsPsych是一个基于JavaScript的开源心理学实验框架,专门为在浏览器中运行行为实验而设计。它提供了一套模块化的插件系统,使研究人员能够轻松构建复杂的实验流程。本次更新主要针对其中的HTML键盘响应插件(@jspsych/plugin-html-keyboard-response)进行了功能增强和规范化改进。

核心更新内容

1. 引用信息标准化

本次2.1.0版本最重要的改进是为所有插件和扩展添加了标准化的引用信息。现在每个插件都包含完整的引用属性(citations),支持两种主流学术引用格式:

  • APA格式:心理学领域最常用的引用格式
  • BibTeX格式:LaTeX文档处理系统使用的引用格式

这一改进使得研究人员在使用jsPsych进行实验时,能够更方便地引用所使用的具体插件,符合学术规范要求。

2. 新增getCitations()功能

框架新增了一个实用函数getCitations(),开发者可以通过这个函数轻松生成所需的引用信息。该函数接受两个参数:

  1. 插件/扩展名称数组:指定需要引用的插件列表
  2. 引用格式字符串:指定输出格式("apa"或"bibtex")

函数会自动将jsPsych核心库的引用信息放在首位,然后按照传入的插件顺序输出各自的引用信息,每个引用之间用换行符分隔。

3. 自动化引用生成机制

在构建过程中,系统会自动从每个插件目录根部的.cff文件(如果有的话)提取引用信息,并生成标准化的引用字段。这种自动化流程确保了引用信息的准确性和一致性,同时减少了维护成本。

技术实现细节

引用数据结构

每个插件现在在其info字段中包含一个citations属性,结构如下:

citations: {
  apa: "完整的APA格式引用字符串",
  bibtex: "完整的BibTeX格式引用字符串"
}

构建流程改进

在项目的构建过程中,构建脚本会:

  1. 检查每个插件目录下是否存在.cff文件
  2. 如果存在,则解析该文件提取必要的引用信息
  3. 自动生成APA和BibTeX两种格式的引用字符串
  4. 将这些信息注入到插件的info字段中

getCitations()函数实现

该函数的实现逻辑包括:

  1. 首先添加jsPsych核心库的固定引用
  2. 遍历传入的插件名称数组
  3. 从每个插件的info.citations字段获取指定格式的引用
  4. 将所有引用合并为一个字符串,用换行符连接

对研究实践的影响

这一更新对心理学实验研究具有重要意义:

  1. 学术规范性提升:使研究者能够正确引用实验程序中使用的具体技术组件,符合开放科学和可重复研究的要求。

  2. 工作流程简化:自动生成的引用信息减少了研究人员手动查找和格式化引用所需的时间。

  3. 引用完整性:确保实验方法部分可以详细说明所有使用的技术工具,提高研究的透明度。

使用建议

对于使用HTML键盘响应插件的研究人员,建议:

  1. 在方法部分明确说明使用了jsPsych框架及具体插件版本
  2. 使用内置的getCitations()函数生成所需的引用信息
  3. 当发布基于jsPsych的研究时,考虑同时分享实验程序的源代码

未来展望

这一引用系统的建立为jsPsych生态系统的学术化发展奠定了基础。未来可能会进一步扩展:

  1. 支持更多引用格式(如MLA、Chicago等)
  2. 增加DOI等持久化标识符的支持
  3. 开发可视化工具帮助生成引用
  4. 与学术数据库集成实现自动引用更新

本次更新虽然看似只是添加了引用功能,但实际上提升了整个框架的学术严谨性和可用性,体现了jsPsych项目对开放科学实践的承诺。

登录后查看全文
热门项目推荐

项目优选

收起
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
136
187
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
881
521
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
361
381
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
181
264
kernelkernel
deepin linux kernel
C
22
5
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
7
0
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.09 K
0
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
83
4
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
613
60
open-eBackupopen-eBackup
open-eBackup是一款开源备份软件,采用集群高扩展架构,通过应用备份通用框架、并行备份等技术,为主流数据库、虚拟化、文件系统、大数据等应用提供E2E的数据备份、恢复等能力,帮助用户实现关键数据高效保护。
HTML
118
78