希望可以通过 方向键 ←→ 快速切换不同分组 而不是现在的仅可以支持 ↑↓
每一个框住的可以做一个分组
使用主题 Asri
有一个大概的思路
这个主题会在分组的中间添加一个 b3-menu__separator
标记 b3-menu__separator
的位置, 如果触发了 ← → 则将焦点跳转到当前焦点的下一个 b3-menu__separator
位置的下一个 button 位置
希望可以通过 方向键 ←→ 快速切换不同分组 而不是现在的仅可以支持 ↑↓
每一个框住的可以做一个分组
使用主题 Asri
这个主题会在分组的中间添加一个 b3-menu__separator
标记 b3-menu__separator
的位置, 如果触发了 ← → 则将焦点跳转到当前焦点的下一个 b3-menu__separator
位置的下一个 button 位置
思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。
融合块、大纲和双向链接,重构你的思维。
提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。
这个主题会在分组的中间添加一个
b3-menu__separator
仅在未筛选时才加这个 b3-menu__separator
, 筛选时是没有分组的,比如你输入 /j
或 /gj
就知道了。
不过,在无分组情况下,我通过 skipElementNumInSearch = 3
模拟实现了,这个变量的作用是,在没有分组情况下,按方向键跳过几个元素(如下图第二个 GIF 所示)。
效果如下
有分组效果
无分组效果
代码
注意事项
由于左右方向键和思源的左右方向键冲突,这里采用了一些技巧,避开了这些问题,但不保证后续有没有别的问题,理论上应该问题不大。如果发现有兼容问题,可以开启 useCompatibilityMode = true
,使用兼容模式,但兼容模式需要用 ctrl/cmd+左右方向键
代替,可能体验较差。
最后提醒下,保存后刷新下页面,确保脚本正确执行。
祝你好运 🍀
这个主题会在分组的中间添加一个
b3-menu__separator
仅在未筛选时才加这个 b3-menu__separator
, 筛选时是没有分组的,比如你输入 /j
或 /gj
就知道了。
不过,在无分组情况下,我通过 skipElementNumInSearch = 3
模拟实现了,这个变量的作用是,在没有分组情况下,按方向键跳过几个元素(如下图第二个 GIF 所示)。
效果如下
有分组效果
无分组效果
代码
注意事项
由于左右方向键和思源的左右方向键冲突,这里采用了一些技巧,避开了这些问题,但不保证后续有没有别的问题,理论上应该问题不大。如果发现有兼容问题,可以开启 useCompatibilityMode = true
,使用兼容模式,但兼容模式需要用 ctrl/cmd+左右方向键
代替,可能体验较差。
最后提醒下,保存后刷新下页面,确保脚本正确执行。
祝你好运 🍀
当每一列的元素只有一个的时候
按左右方向键会自动变成和上下键一样了,你试试就知道了。这里的 skipElementNumInSearch
为 0 确实也应该支持下,不过这个设置不设置都一样,通常设置大于 0 就行了,当只有一列时也是支持的,但不是通过这个参数支持的。
另外,我所理解的虚拟分组,其实就是根据 列表总高度 / 菜单项行高,计算出每列应该显示多少行,然后按方向键时,根据这个行数跳到下一列的首行。
这种算法理论上是可行的,但实际会不会准却也不好说,比如你下面这个截图,第一列就只有 4 行,其他的 5 行。
其实,我觉得,之所以用左右方向键的目的,无非是快速定位菜单项,那么无论是虚拟分组也好,跳过 n 个菜单项也好,其实目的都达到了,只不过虚拟分组看起来更优雅些罢了。
但会不会足够稳定尚未可知,我空了再看看,不保证能解决问题,有时工具就是工具,能用够用就行。
Unity 是由 Unity Technologies 开发的一个让开发者可以轻松创建诸如 2D、3D 多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。
flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。
NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。
安全永远都不是一个小问题。
FlowUs.息流 个人及团队的新一代生产力工具。
让复杂的信息管理更轻松、自由、充满创意。
阿里云是阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司。提供云服务器、云数据库、云安全等云计算服务,以及大数据、人工智能服务、精准定制基于场景的行业解决方案。
AngularJS 诞生于 2009 年,由 Misko Hevery 等人创建,后为 Google 所收购。是一款优秀的前端 JS 框架,已经被用于 Google 的多款产品当中。AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等。2.0 版本后已经改名为 Angular。
RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。
Spring 是一个开源框架,是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 JavaEE 应用程序开发提供集成的框架。
Hadoop 是由 Apache 基金会所开发的一个分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
用爱发电 (Programming With Love) 是一个以开源精神为核心的民间开源爱好者技术组织,“用爱发电”象征开源与贡献精神,加入组织,代表你将遵守组织的“个人开源爱好者”的各项条款。申请加入:用爱发电组织邀请帖。
用爱发电组织官网:https://programmingwithlove.stackoverflow.wiki/
Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。
Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。
Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。
V2EX 是创意工作者们的社区。这里目前汇聚了超过 400,000 名主要来自互联网行业、游戏行业和媒体行业的创意工作者。V2EX 希望能够成为创意工作者们的生活和事业的一部分。
百度(Nasdaq:BIDU)是全球最大的中文搜索引擎、最大的中文网站。2000 年 1 月由李彦宏创立于北京中关村,致力于向人们提供“简单,可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。
gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。
Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。
Quicker 您的指尖工具箱!操作更少,收获更多!
uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。
上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)
确认过眼神后的灵魂连接,站在链在!
Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。