Skip to content

1.4.2

Choose a tag to compare

@FIRSTKANG FIRSTKANG released this 09 Sep 22:43
· 2 commits to main since this release

Folder Terminal 1.4.2

文件树「复制」图标重构升级:从单一可配置模式改为一组可独立操作的动作图标,并新增「在系统文件管理器中展示」与「图标配色」能力。
文件夹行图标扩展升级:在原有「在此打开终端」图标旁新增一组辅助动作图标,并对系统管理器中展示 / 绝对路径计算做了共享抽取。

✨ 新增

  • 文件行复制图标改为动作组:悬停文档时横向浮现一组图标,各可独立操作
    • 复制标题(heading
    • 复制 Wiki 文件路径(route,去扩展名相对路径,如 wiki/ideas/xxx
    • 复制内容(copy,完整 Markdown 源码)
    • 复制 Wiki 绝对路径(link,磁盘绝对路径)
    • 在 Finder / 资源管理器中展示(folder-open,定位并选中该文档;macOS open -R、Windows explorer /select、Linux 打开所在目录)
  • 文件夹行辅助动作图标:悬停文件夹时,在「终端」图标左侧横向浮现一组动作(与文件图标同尺寸、同配色、同 hover 样式)
    • 在 Finder / 资源管理器中展示(folder-open,定位并选中该文件夹)
    • 复制 Wiki 文件路径(route,相对库根的路径,如 wiki/ideas
    • 复制 Wiki 绝对路径(link,磁盘绝对路径)
  • 库根文件夹特判:绝对路径复制库根本身(无尾部斜杠),展示功能定位库根目录
  • 文件树图标配色:设置面板新增「文件树图标颜色」取色器,可自定义「终端」与「复制」图标组的颜色;右侧重置按钮恢复跟随主题

🔧 重构

  • 抽取共享模块 src/shellUtils.ts
    • toAbsPath(app, relPath):文件/文件夹绝对路径计算,统一非桌面端适配器的退化逻辑
    • revealInFileManager(absPath, linuxOpenDir):平台命令执行(macOS open -R / Windows explorer /select / Linux xdg-open
  • folderIconsfileCopyIcons 同步改为调用共享函数,删除各自重复的本地实现(共约 90 行)

🐛 修复

  • tooltip 与 title 重叠:删除按钮上的原生 title,仅保留 aria-label,消除浏览器气泡与 Obsidian 暗色 tooltip 同弹的重叠
  • 悬停目录时点亮所有后代图标:改为行自身直子选择器(.tree-item-self:hover > …),仅显示被悬停的那一行的图标
  • 点击后图标驻留:点击后主动 blur(),释放按钮焦点,避免 :focus-within 让该行图标常驻、与下一行图标同时出现
  • 复制到系统剪贴板(文件本体)不可用:经排查为 Obsidian 渲染沙盒限制(Web Clipboard 拒绝自定义类型、Electron 文件剪贴板对 Finder 不生效),暂时屏蔽该图标,功能实现保留以便后续开放
  • 文件「复制文件路径」改为带后缀的相对路径:此前复制的是去扩展名的相对路径(wiki/ideas/xxx),现在复制原始 file.pathwiki/ideas/xxx.md),可直接用于 cp、终端引用等文件系统操作
  • 图标提示文案同步:「复制 Wiki 文件路径」→「复制文件路径」(中英文词条均已更新),文件夹相对路径无扩展名,语义与文案不受影响

交互

  • 两级 hover:悬停文件行时图标以浅化的设置色浮现(默认混入主题背景色 60%),移到图标本体上提升为完整设置色并轻微加深强调;未设置配色时沿用主题默认图标色

验证

  • 悬停文件/文件夹:仅当前行图标浮现,不点亮其他行
  • 复制标题 / Wiki 路径 / 绝对路径 / 内容:剪贴板内容正确并弹出「已复制」
  • 在 Finder 展示:macOS 弹出 Finder 并选中该文档
  • 图标配色:取色后终端与复制图标同步变色,重置后恢复主题色