Skip to content

zzhang-AL/idea-code-copy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Idea Code Path Copier

一款面向 JetBrains IntelliJ 平台的代码路径复制插件,帮助团队在评审、排障或沟通时快速生成“可定位”的代码引用。无论是单行、跨行还是方法名称,都能在一次快捷操作后变成标准化的分享文本。

核心特性

  • 智能定位格式:输出统一的 @模块名/内容根相对路径/文件 结构,自动判断模块或内容根
  • 行号/区间支持
    • 单行选区 → #L120
    • 多行选区 → #L120-135
  • 方法名高亮:精确选中 Java 方法名时输出 #methodName
  • 多光标兼容:支持多段选区,结果逐行写入剪贴板
  • 多入口触发:快捷键、编辑器右键菜单、Tools 菜单、工具栏按钮均可使用
  • 通知可选:设置页提供复制成功通知开关,默认关闭

输出格式示例

场景 复制结果
无选区 @module-name/src/main/java/com/example/app/service/UserService.java
单行选区 @module-name/src/main/java/com/example/app/service/UserService.java#L42
多行选区 @module-name/src/main/java/com/example/app/service/UserService.java#L42-57
仅选中方法名 @module-name/src/main/java/com/example/app/service/UserService.java#loadProfile
多选区 每个选区单独一行,按光标顺序写入

模块名优先取文件所属 Module,其次取内容根名称,最后回退到项目名称。

安装指南

GitHub Releases 安装(推荐)

  1. 访问项目的 Releases 页面,下载最新的 idea-code-copy-plugin-x.y.z.zip
  2. 打开 IDEA:Settings / Preferences → Plugins
  3. 点击齿轮按钮 → Install Plugin from Disk...
  4. 选择下载的 zip 文件并重启 IDE

本地构建产物安装

  1. 执行 gradle clean buildPlugin 生成 build/distributions/idea-code-copy-plugin-x.y.z.zip
  2. 通过“Install Plugin from Disk...” 导入

本地构建与调试

export JAVA_HOME=/opt/homebrew/opt/openjdk@21
/opt/homebrew/opt/gradle@8/bin/gradle clean buildPlugin --no-daemon

产物位于 build/distributions,可直接安装或上传至内部插件仓库。

使用步骤

  1. 在编辑器中定位到目标文件/选区
  2. 使用任意入口触发复制:
    • 快捷键:Alt + Shift + C
    • 编辑器右键菜单:Copy Code Path
    • Tools 菜单:Tools → Copy Code Path
    • 工具栏按钮:带箭头的剪贴板图标
  3. 插件会将结果写入系统剪贴板,可直接粘贴到 IM、Issue、Review 等场景

快捷键可在 Settings / Preferences → Keymap 中搜索 Copy Code Path 自定义。

设置与定制

Settings / Preferences → Tools → Code Path Copier

  • 复制完成通知:默认关闭,开启后在状态栏弹出气泡告知复制条目数
  • 更多配置项欢迎通过 Issue 提案

常见问题解答

1. 模块名为什么不是预期值?

插件会先判断文件所在 Module;若文件位于共享内容根或外部依赖,会退化为内容根目录名或项目名。可通过调整项目结构或内容根映射来影响最终输出。

2. 选中方法体时没有输出 #method

只有精确选中方法名标识符时才会输出 #method,目的是避免多行选区误判。可双击方法名或手动框选方法名称来触发。

3. 快捷键冲突怎么处理?

在 Keymap 中搜索 Copy Code Path,即可查看当前绑定并重新设置。例如将快捷键改为 Ctrl + Alt + C

参与贡献

欢迎提交 Issue 或 Pull Request

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages