关键字:

app.sourcery.ai、v0.dev、bolt.new、.vsix、magicui.design、npx、shadcn、marquee、volcengine-python-sdk 

Cursor笔记_LLVM

 IDE 开发工具相关的项目尤其是 cursor,快速崛起,“有灵魂的工具”让个人开发变成一种协作

Cursor笔记_Visual_02

Tip:

  • 设置 “Codebase-wide”,即面向整个代码库。具体为为代码库范围内的问题计算嵌入向量。
  • “Autocomplete Preferences”(自动补全偏好设置)。导入 GH Copilot 将会覆盖 Cursor Tab,而 Cursor Tab 是一个比 GH Copilot 更强大的版本,它可以进行行中补全以及提供完整的差异内容。
  • 有两种模型分别,第一种模型Premium models(高级模型)总共快速请求配额为 (slow premium requests)500 次;第二种模型 “gpt-4o-mini” 和 “cursor-small”没有月度配额限制。
  • 在 Cursor 中生成的代码归用户所有,无论免费版、专业版还是商业版,用户可自由使用包括商业用途。
  • Pylance 在 Cursor 中主要用于增强 Python 语言的开发体验(左侧菜单栏的 “扩展” 添加Python/Pylance)。Pylance 可以提供以下功能: 智能代码补全:能够根据上下文和 Python 语言的语法规则,为你提供准确的代码补全建议,提高编码效率。 类型提示:帮助你理解代码中变量、函数参数和返回值的类型,减少类型相关的错误。 错误检查:实时检测代码中的语法错误、类型错误等问题,并给出明确的错误提示,便于你及时修复。 代码导航:方便地在代码中进行跳转,快速定位到函数定义、变量引用等位置。
  • 插件“sourcery”会审查 GitHub 拉取请求,提供拉取请求摘要、审查指南和代码审查。Sourcery 是一款用于帮助开发人员优化和重构代码的工具。.vsix 是 Visual Studio Integration Extension(Visual Studio 集成扩展)的缩写,它是一种压缩文件格式,类似于.zip,用于打包和分发 Visual Studio 扩展。
  • Cursir Settings-Features——>Auto Import:可以避免开发者手动查找和编写导入语句,提高编码速度,同时减少因导入错误导致的代码问题。例如在使用 Python 编写代码时,如果用户输入了一个未导入的第三方库函数,如 “numpy.array”,若开启 “Auto Import” 功能,编辑器会自动检测到 “numpy” 未被导入,然后自动在代码文件的开头添加 “import numpy” 语句.
  • Partial Accepts:指部分接受功能,可能涉及在代码处理或交互过程中,对于某些操作或输入不是完全接受整个内容,而是允许接受其中一部分进行处理。
  • “Chat Always search the web”(聊天始终搜索网络),等同于每个提示中都包含 “@web”,用于控制聊天时是否始终进行网络搜索。
  • vadimcn/codelldb 是一个与 LLDB(LLDB 是基于 LLVM 项目【Low Level Virtual Machine是一个包含一系列编译器工具和库的开源项目】开发的调试器。LLVM 是一个广泛应用于编译器开发和优化的基础设施,LLDB 作为其调试工具,继承了 LLVM 的一些先进技术和设计理念) 调试器相关的项目,能够方便地执行调试命令,如设置断点、单步执行、查看变量和表达式的值等,使得调试过程更加顺畅和高效。
  • marquee主要用于实现网页上的滚动效果,在不同的技术发展阶段有不同的实现方式,现代开发中更倾向于使用 CSS 或结合 JavaScript 库来实现,以获得更好的性能、兼容性和可维护性。
  • Streamlit是一个用于机器学习、数据可视化的 Python 框架,它能几行代码就构建出一个精美的在线 app 应用。Streamlit 可在几分钟内将数据脚本转换为可共享的 Web 应用程序。



1、在 Anaconda 中,环境管理是一项重要功能,它允许用户为不同的项目创建独立的 Python 环境,以避免不同项目之间的依赖冲突

  • Jupyter Notebook / JupyterLab:集成了代码、文本和可视化的环境,常用于数据分析和机器学习。在 Anaconda Prompt 中输入 “jupyter notebook” 或 “jupyter lab” 启动。
  • Spyder:一个集成开发环境(IDE),适合进行 Python 代码开发。可在 Anaconda Navigator 中启动。
  • 点击 “Anaconda Prompt” 应用程序,这将打开一个命令行窗口,并且会自动激活 Anaconda的基础(base)环境,此时命令行提示符前会显示(base)。
  • 要进入特定的 Anaconda 环境(假设环境名为myenv),在打开的 Anaconda Prompt 中输入conda activate myenv,然后回车,即可进入名为myenv的环境,此时命令行提示符前会显示(myenv)。
---conda activate cursorenv出现报错
对注册表项“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell”的访问被拒绝。 要更改默认(LocalMachine)作用域的执行策略,请使用“以管理员身份运行”选项     
启动 Windows PowerShell。要更改当前用户的执行策略,请运行 "Set-ExecutionPolicy -Scope CurrentUser"。
PS C:\Users\admin> Set-ExecutionPolicy Unrestricted -Scope LocalMachine
PS E:\技术支持室\Cursor\my-web> Get-ExecutionPolicy
Unrestricted
---常用命令
conda activate cursorenv  激活该环境,然后在该环境中安装所需的包。
conda deactivate           退出当前环境
conda remove -n cursorenv --all    删除的 Anaconda 环境
conda info --envs / conda env list   当前处于的环境会在列表中以*号标记出来

2、看视频【Magic UI 搭配 Shadcn CLI 一键集成,结合 Cursor 和 V0 提升网页开发效率】https://www.bilibili.com/video/BV1dr1iYSE8z?vd_source=1b7dd9d20e34f6eeadfaed0b8d9f6806操作笔记

  • Node.js — 在任何地方运行 JavaScript (nodejs.org)下载安装node-v20.18.0-x64.msi
  • npx是 Node.js 附带的一个命令行工具,用于方便地执行本地或远程的 Node.js 包中的可执行脚本。npx可以指定要执行的包的版本,例如npx <package-name>@<version>
  • “shadcn” -- “shadcn-ui”,是一个用 React 编写的 UI 组件集合。
npx shadcn@latest add "https://magicui.design/r/marquee"
报错:
npm error enoent ENOENT: no such file or directory, lstat 'C:\Users\admin\AppData\Roaming\npm'
检查C:\Users\admin\AppData\Roaming\npm目录不存在,手动创建后OK
---以下会在当前目录生成magic-demo子目录
√ The path E:\技术支持室\Cursor\my-web does not contain a package.json file. Would you like to start a new Next.js project? ... yes
? What is your project named? » magic-demo
--安装完运行到本地
PS E:\技术支持室\Cursor\my-web\magic-demo> npm run dev
> magic-demo@0.1.0 dev
> next dev
  ▲ Next.js 14.2.16
  - Local:        http://localhost:3000

3、Cursor Settings-General-Rules for AI(所有聊天和 Ctrl-K 会话中展示的规则

# Role
你是一名优秀且拥有20年经验的产品经理和精通所有编程语言的工程师。与你交流的用户是不懂代码的高中生,不善于表达产品和代码需求。你的工作对用户非常重要,完成后将获得 10000 美元奖励。

# Goal
你的目标是帮助用户以他容易理解的方式完成所需的产品设计和开发工作,你始终非常主动完成所有工作,而不是让用户多次推动你。

在理解用户的产品需求、编写代码、解决代码问题时,始终遵循以下原则。

## 第一步:
- 当用户提出任何需求时,你首先应浏览根目录下的 readme.md 文件和所有代码文档,理解这个项目的目标、架构、实现方式等。如果还没有 readme 文件,你应该创建,这个文件将作为用户使用你提供的所有功能的说明书,以及你对项目内容的规划。因此你需要在 readme.md 文件中清晰描述所有功能的用途、使用方法、参数说明、返回值说明等,确保用户可以轻松理解和使用这些功能。

## 第二部
你需要理解用户正在给你提供的是什么任务
### 当用户直接为你提供需求时,你应当:
   - 首先,你应当充分理解用户需求,并且可以站在用户角度思考:如果我是用户,我需要什么?
   - 其次、你应当作为产品经理理解用户需求是否存在缺陷,你应当和用户探讨和补全需求,直到用户满意为止
   - 最后、你应当使用最简单的解决方案满足用户需求,而非复杂或高级方案
   
### 当用户请求你编写代码时,你应当:
   - 首先、你会思考用户需求是什么,目前你有的代码库内容、并进行一步步的思考和规划
   - 接着、在完成规划后,你应当选择合适的编程语言和框架来实现用户需求,遵循 solid 原则设计代码结构,使用设计模式解决常见问题
   - 再次、编写代码时完善所有代码模块的注释,并在代码中增加必要的监控手段以便清晰知晓错误发生情况
   - 最后、使用简单可控的解决方案满足用户需求,而非复杂的解决方案

### 当用户请求解决代码问题时,你应当:
   - 首先,完整阅读所在代码文件库,理解所有代码的功能
   - 其次,思考导致用户所发送代码错误的原因,并提出解决问题的思路
   - 最后,预设解决方案可能不准确,需和用户进行多次交互,每次交互后总结上一次交互的结果,并根据结果调整解决方案,直到用户满意为止。

## 第三步
在完成用户要求的任务后,对任务完成的步骤进行反思,思考项目可能存在的问题和改进方式,并更新在 readme.md 文件中。

4、使用cursor参照(火山方舟管理控制台)使用通过火山引擎 IAM 授权,按照云标准 IAM 方式进行身份认证和权限范围管理,按如下方式设置 AK/SK 作为环境变量,其中"YOUR_AK""YOUR_SK"需要替换为您在平台创建的密钥:

export VOLC_ACCESSKEY="YOUR_AK"
export VOLC_SECRETKEY="YOUR_SK"

安装pip install --upgrade 'volcengine-python-sdk[ark]'时报错:

pip install --upgrade 'volcengine-python-sdk[ark]'
......
[end of output]
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for volcengine-python-sdk
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (volcengine-python-sdk)

尝试以下解决方法OK!

——是由于 Windows 系统有最长路径限制导致安装失败,可按下 Win+R,输入 regedit 打开注册表编辑器,设置 \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem 路径下的变量 LongPathsEnabled 为 1。

——安装过程中若出现 subprocess-exited-with-error 错误,可能是由于 setuptools 未在构建环境中可用引起的。pip install --upgrade setuptools,再次尝试安装 volcengine-python-sdk。

5、看视频实操

# 需求
请帮我创建在 Chrome 浏览器上,打开任意网页时,右下角展示当前网站二维码的插件。展示的这个二维码应该有以下几个特性:
1. 二维码大小为 256*256。
2. 二维码的中间部分获取展示当前网站的 logo。
3. 二维码的下方,分两行分别展示网站名称和网页标题,网页标题要加粗,最多展示 15 个字。
  • 选用claude-3.5-sonnet可以自动在项目文件夹内生成文件,但是选用gpt-4o-mini只能生成代码,得手动生成文件并拷贝到文件