当前位置: 首页 > java >正文

语雀编辑器内双击回车插入当前时间js脚本

打算多记录自己的想法,或者说灵感、念头

我想要的格式大概是这样的:

17:06 我写下第一个记录17:08 又一个想法18:38 又一个想法

但是每次写时间都太麻烦了,想着能不能用程序或者脚本实现。

最终用脚本实现了:

// ==UserScript==
// @name         语雀编辑器双回车插入时间
// @namespace    http://tampermonkey.net/
// @version      7.0
// @description  连续按两次 Enter,在语雀文档中插入当前时间
// @author       whx
// @match        https://www.yuque.com/jueming-qh7bj/nelzrt/*
// @grant        none
// ==/UserScript==
(() => {let lastEnterTime = 0;function formatDate(date, format) {const pad = (num) => num.toString().padStart(2, '0');return format.replace(/MM/g, pad(date.getMonth() + 1)).replace(/dd/g, pad(date.getDate())).replace(/HH/g, pad(date.getHours())).replace(/mm/g, pad(date.getMinutes())).replace(/ss/g, pad(date.getSeconds()));}const timeFormat = 'MM-dd HH:mm';function insertTextAtCursor(text) {const el = document.activeElement;if (el &&(el.tagName === 'INPUT' || el.tagName === 'TEXTAREA') &&typeof el.selectionStart === 'number') {const start = el.selectionStart;const end = el.selectionEnd;const val = el.value;el.value = val.slice(0, start) + text + val.slice(end);const cursorPos = start + text.length;el.selectionStart = el.selectionEnd = cursorPos;} else if (el && el.isContentEditable) {document.execCommand('insertText', false, text);} else {console.warn('当前焦点既不是输入框,也不是contenteditable元素,无法插入文本');}}document.addEventListener('keyup', (e) => {if (e.key === 'Enter') {const now = Date.now();if (now - lastEnterTime < 500) {const timeStr = formatDate(new Date(), timeFormat) + '  ';insertTextAtCursor(timeStr);}lastEnterTime = now;}});
})();

这个脚本只能在我的语雀的记录知识库里面用,如果你要用的话,需要改开头的这一行:

// @match        https://www.yuque.com/jueming-qh7bj/nelzrt/*

这一行的意思是https://www.yuque.com/jueming-qh7bj/nelzrt/的子路径下该插件生效

将@match 后面的参数修改成你要使用的网页地址就好了

下面是测试结果:
在这里插入图片描述

http://www.xdnf.cn/news/15567.html

相关文章:

  • 取消office word中的段落箭头标记
  • Java零基础快速入门
  • Vue3入门-组件及组件化
  • Kafka——无消息丢失配置怎么实现?
  • SpringMVC核心注解:@RequestMapping详解
  • java-字符串
  • modelscope ProxyError: HTTPSConnectionPool(host=‘www.modelscope.cn‘, port=443)
  • JxBrowser 7.43.5 版本发布啦!
  • HTML 常用语义标签与常见搭配详解
  • 图片画廊浏览(侧重 CSS 网格布局和模态框交互)
  • 代码随想录算法训练营第二十二天
  • 项目学习笔记 display从none切换成block
  • 基于SD-WAN的智慧高速解决方案:高效、低成本的智能交通实践
  • 数据结构 双向链表(2)--双向链表的实现
  • Kotlin集合聚合
  • ABP VNext + EF Core 二级缓存:提升查询性能
  • FAISS深度学习指南:构建高效向量检索系统的完整方法论
  • Dify工作流节点-Agent
  • 二分查找算法(一)
  • 玩转Docker | 使用Docker部署vnStat网络流量监控服务
  • Python编程基础(六)| 用户输入和while循环
  • 算法精讲--正则表达式(二):分组、引用与高级匹配技术
  • GENERALIST REWARD MODELS: FOUND INSIDE LARGELANGUAGE MODELS
  • 7.17 滑动窗口 |assign |memo |pii bfs
  • 【Linux】如何使用nano创建并编辑一个文件
  • 使用token调用Spring OAuth2 Resource Server接口错误 insufficient_scope
  • Redis1:高并发与微服务中的键值存储利器
  • 第四章 OB SQL调优
  • OJ题目里面的复杂图形的输出类型的汇总展示(巧妙地利用对称性offset偏移量)
  • 轻松将文件从 iPhone 传输到 Mac