【VS Code】Aide一个强大的AI提效扩展

简介

Aide 是一个强大的 AI 辅助开发 VSCode 扩展,旨在提升您的编码体验。以下是您应该选择 Aide 的原因:

  • 📖 提高代码可读性:一键为您的代码添加详细注释,提高可读性,而无需修改原始文件。
  • 🔄 轻松代码转换:即时将代码在不同语言或框架之间转换,使理解不熟悉的代码或迁移项目变得更容易。
  • 🔧 让大师帮你改代码:把你的代码给 AI 优化,看看大师是怎么写代码的。
  • 🔮 神奇的智能粘贴:粘贴时智能转换剪贴板内容,包括将设计截图转换为 UI 代码。简化跨语言、跨框架开发和设计到代码的工作流程。
  • 🗂️ 高效批量处理:轻松使用 AI 处理多个文件或文件夹,显著提高您的生产力。
  • 🏷️ 智能变量重命名:获取 AI 驱动的变量名建议及解释,帮助您为代码选择最佳名称。
  • 🤖 可自定义AI命令:创建并执行自定义 AI 命令,实现与代码库的灵活交互。

官网

官网地址:aide.nicepkg.cn/zh

文档

官网文档地址:aide.nicepkg.cn/zh/guide/ge...

安装插件

请使用 VSCode >= 1.82.0 版本。

在VS Code扩展插件搜索【Aide】进行安装

配置 OpenAI Key

配置OpenAI Key结合OpenAI可以让助手更准确、更智能

这里我基于DeepSeek为例

基本使用

代码查看器助手

使用 AI 为整个文件或选定的代码添加注释,使其易于阅读。实验发现,该功能还有代码续写的功能,对未完成代码进行续写。

编辑文件选中【代码查看器助手】,Aide会在侧边栏生成对应的添加注释和补全的代码,并提供多个快捷操作按钮:

  • 快速关闭:直接关闭代码查看器页签
  • 复制全文:会复制当前添加注释的所有代码到剪切板
  • 对比原文:新开一个页签展示与源文件的对比结果
  • 替换原文:直接插入到源文件

代码转换

使用 AI 将整个文件或选定的代码从一种编程语言转换为另一种。支持任何语言。大部分语言支持高亮。

打开源文件,点击【代码转换】,选择需要转换的语言【JavaScript】

Aide配置中会默认记住转换的语言,如果不希望Aide自动记住转换语言,可以到Aide设置页面取消勾选(取消勾选需要在未进行转换之前操作,如果已进行过语言转换取消勾选本次操作将不起作用,操作可以看下面配置操作)

如果已进行过语言转换会在 .vscode/settings.json 文件生成配置,如需转换为其他语言需要手动修改或者删除文件

大师帮你改代码

使用 AI 优化和重构整个文件或选定的代码。支持多种编程语言。

打开源文件,点击【大师帮你改代码】,选择优化规则【加强安全措施】

智能粘贴

使用 AI 智能识别剪贴板里的代码或者图片并进行格式转换,然后粘贴到当前编辑器中。

使用场景:

  • 作为一个不满足于现状的 CV 工程师,你希望粘贴功能更智能。
  • 智能粘贴将智能识别剪贴板内容并自动转换。
  • 复制 JSON 粘贴到 TypeScript 文件,会自动生成类型定义。
  • 复制 HTML 粘贴到 Flutter 文件,会自动转换为 Flutter Widget。
  • 复制 Python 函数粘贴到 Rust 文件,会自动生成对应的 Rust 函数。
  • 复制设计稿截图粘贴到 Vue/React/Flutter 代码中,会自动生成对应的UI 代码。
  • 复制数据库设计图粘贴到 SQL 文件,会自动生成相应的 SQL 代码。
json 复制代码
{
  "name": "John",
  "age": 30,
  "isAdmin": true
}

复制上面内容到剪切板,在 type.ts 文件中选择【智能粘贴】,Aide会帮我们自动转换为 interface 接口定义

AI批量处理文件

使用 AI 将选中的多个文件代码根据你的需求处理。

选择文件或者目录,右键【AI 批量处理文件】

批量复制文件为AI提示词

将选定文件的内容复制到剪贴板,并格式化为 AI 交互提示。

选择文件或者目录,右键【复制为AI提示词】

arduino 复制代码
File: js/index.py.js.aide.ts
```ts
function number_max(numbers: number[]): number {
    // 定义一个函数 number_max,它接受一个参数 numbers,这个参数预期是一个包含数字的数组
    
    let max_num: number = numbers[0];
    // 初始化变量 max_num,将其设置为数组 numbers 的第一个元素
    // 假设数组至少有一个元素,这个变量将用于存储当前找到的最大值
    
    for (let num of numbers) {
        // 开始一个 for...of 循环,遍历数组 numbers 中的每一个元素
        // 每次循环,num 变量都会被赋值为当前遍历到的元素
        
        if (num > max_num) {
            // 检查当前元素 num 是否大于 max_num
            // 如果是,说明找到了一个新的最大值
            
            max_num = num;
            // 将 max_num 更新为当前元素 num,因为 num 是新的最大值
        }
    }
    
    return max_num;
    // 循环结束后,返回 max_num,它现在是数组 numbers 中的最大值
}

File: js/index.py.js

js 复制代码
function number_max(numbers) {
    // 定义一个函数 number_max,它接受一个参数 numbers,这个参数预期是一个包含数字的数组
    
    let max_num = numbers[0];
    // 初始化变量 max_num,将其设置为数组 numbers 的第一个元素
    // 假设数组至少有一个元素,这个变量将用于存储当前找到的最大值
    
    for (let num of numbers) {
        // 开始一个 for...of 循环,遍历数组 numbers 中的每一个元素
        // 每次循环,num 变量都会被赋值为当前遍历到的元素
        
        if (num > max_num) {
            // 检查当前元素 num 是否大于 max_num
            // 如果是,说明找到了一个新的最大值
            
            max_num = num;
            // 将 max_num 更新为当前元素 num,因为 num 是新的最大值
        }
    }
    
    return max_num;
    // 循环结束后,返回 max_num,它现在是数组 numbers 中的最大值
}

智能重命名变量

使用 AI 给出几个可能的变量名建议以及解释,帮助您更快地重命名变量。

选择变量名,右键【重命名变量】,根据AI给出的变量建议选择一个,会对当前文件中所有同名的变量进行同步替换

自定义命令提问AI

基于选定的文件和用户输入准备并执行自定义 AI 命令。

将文件添加到 Aider 上下文,使用 Aider 对文件进行处理。对Aider感兴趣的可以查看:终端福音,AI终端编程助手Aider

总结

Aide与AI结合提供了一系列调用AI的快捷操作,包括代码注释、代码转换、代码优化、智能文件转语言、批处理文件等,在一定程度上简化了AI的调用复杂度,尤其是代码转换、批处理、智能粘贴等功能使用得当可以极大提高工作效率。

友情提示

见原文:【VS Code】Aide一个强大的AI提效扩展

本文同步自微信公众号 "程序员小溪" ,这里只是同步,想看及时消息请移步我的公众号,不定时更新我的学习经验。

相关推荐
wangruofeng4 小时前
一个 Markdown 文件攒下 37k 星,i-have-adhd 给 AI 输出立了 10 条规矩
github·aigc·ai编程
墨风如雪4 小时前
Grok Bot 从 0 到 1|用云电脑和插件,搭一个能干活的 X 助手
aigc
Csvn5 小时前
第 22 章 安全、合规与治理
人工智能·aigc·agent
全栈弄潮儿7 小时前
需求不清时,如何让 AI 帮你补全问题,而不是瞎写代码
aigc·openai·ai编程
AI创界者8 小时前
前沿多模态大模型 MiniMax-H3无审查 本地部署与深度实测指南
人工智能·aigc·音视频
程序员海军12 小时前
AI 越来越强,为什么打工人反而越来越累、越来越内耗了?
前端·程序员·aigc
山间小僧14 小时前
「AI学习笔记」Agent Memory(一)会话内记忆
aigc·agent·vibecoding
“AI国潮设计-小江”15 小时前
【Python/SDXL实战】潮汕国潮IP视觉落地:普宁英歌舞猫IP & 创意甜品设计(附ComfyUI工作流与商业授权说明)
开发语言·人工智能·python·prompt·aigc
Eric_见嘉16 小时前
打开这个 VSC 设置「组件引用位置」和数量就都清楚了
前端·typescript·visual studio code
Rocky Ding*16 小时前
一文读懂LLM Agent Skills 的运行时本质:从能力路由到渐进式披露
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·agent skills