皮皮网

【正确阅读源码】【winmerge 源码】【源码 教程】vscode源码二次开发

2024-11-18 19:34:08 来源:高并发源码

1.Mac搭建grafana二次开发环境操作教程(文详解)
2.「VS Code 整活」100行代码,源码写一个超实用的次开悬浮翻译插件
3.gennia.io 开发小记
4.微信小程序开发用什么语言微信小程序开发用什么语言?
5.web前端主要学习什么?
6.让练习打字这件事不那么枯燥,你可以试试这几个网站

vscode源码二次开发

Mac搭建grafana二次开发环境操作教程(文详解)

       Grafana是源码开源的图表数据展示系统,可以配置很多的次开dashboard,还可以下载别人已经配置好的源码dashboard。

       这篇博客介绍下如何在mac下搭建grafana的次开正确阅读源码二次开发环境。

一、源码安装grafana

       首先,次开我们可以通过brew把grafana安装到系统里,源码来看一看这个开源系统的次开功能。

       如果你的源码brew是直接可用的,就在terminal中直接运行下面的次开命令,否则,源码需要先brewupdate一下。次开

brewinstallgrafana

       装好以后,源码通过如下命令可以启动grafana

brewservicesstartgrafana

       然后打开localhost:,看到下面的图,就可以了。

       初始账号密码是admin/admin。

       通过下面的命令可以关闭和重启grafana

brewservicesstopgrafanabrewservicesrestartgrafana二、搭建grafana的开发环境

       grafana依赖node和go,需要先安装好node和go。

1、winmerge 源码安装node

       我这里的grafana是7.3,需要版本的node

       安装node有两种方式

       如果之前没有装过,直接brewinstallnode就可以了,这样安装的node默认是最新版本,如果需要指定版本,可以在node后通过@来指定安装某个版本。

       通过版本管理神器n来升级

npmin-g//安装node版本管理神器n-V//安装后查看n的版本nlatest//使用或安装最新的官方发布:nstable//使用或安装稳定的正式版本:nlts//使用或安装最新的LTS正式版本:

       安装好node后顺便升级下npm

npminpm@latest-g2、安装golang

       依然通过brew安装go

brewinstallgo//安装golang

       然后查看go的环境变量配置

goenv

       上面的命令默认得到如下信息

GOMODULE=""GOARCH="amd"GOBIN=""GOCACHE="/Users/XXXXX/Library/Caches/go-build"GOENV="/Users/XXXXX/Library/ApplicationSupport/go/env"GOEXE=""GOFLAGS=""GOHOSTARCH="amd"GOHOSTOS="darwin"GOINSECURE=""GOMODCACHE="/Users/XXXXX/go/pkg/mod"GONOPROXY=""GONOSUMDB=""GOOS="darwin"GOPATH="/Users/XXXXX/go"GOPRIVATE=""GOPROXY=""GOROOT="/usr/local/go"GOSUMDB="sum.golang.org"GOTMPDIR=""GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd"GCCGO="gccgo"AR="ar"CC="clang"CXX="clang++"CGO_ENABLED="1"GOMOD=""CGO_CFLAGS="-g-O2"CGO_CPPFLAGS=""CGO_CXXFLAGS="-g-O2"CGO_FFLAGS="-g-O2"CGO_LDFLAGS="-g-O2"PKG_CONFIG="pkg-config"GOGCCFLAGS="-fPIC-m-pthread-fno-caret-diagnostics-Qunused-arguments-fmessage-length=0-fdebug-prefix-map=/var/folders/3m/xp_vx4jj3lh8chqq5tq_dwgn/T/go-build=/tmp/go-build-gno-record-gcc-switches-fno-common"

       注意GOPATH地址,在"/Users/XXXXX/go"下,其中XXXXX是我的用户名。但是在XXXXX下是没有go这个文件夹,需要我们自己建立。

       假如我们想写一个go的helloworld,就需要把这个程序放到go目录下。

       假如想要修改GOPATH也是可以的。用如下命令:

vim~/.bash_profile

       添加如下代码:exportGOPATH="XXXXXXXXXX"然后快捷键shift+zz关闭文件

       这时候,在terminal中输入echo$GOPATH,就可以看到刚刚设置的GOPATH了。

       到这一步,go就算安装到我们的电脑里了。

3、下载grafana的源码 教程源代码

       由于grafana是开源的,因此代码托管在github上,地址:makerun

       到这里,grafana的二次开发环境就搭建好了。

作者:晴天同学

「VS Code 整活」行代码,写一个超实用的悬浮翻译插件

       翻译插件是编程日常中不可或缺的工具,尤其对于初学者和英文水平参差不齐的开发者。在探索了一系列VSCode翻译插件后,我发现了一款特别实用的神器——Google Translate Extension。这款插件与众不同,它无需通过科学上网,也不强制绑定快捷键,其最显著的功能是支持选中文本后直接悬浮翻译。

       经过这两年的VSCode二次开发经验积累,我被这个功能深深吸引,决定自己动手开发一个类似插件,以此作为学习的契机。现在,让我们一起步入这个行代码的旅程,探索这个超实用悬浮翻译插件的内部构造。

       从代码目录结构来看,主要逻辑集中在src目录。以入口文件extension.js为例,sfhao源码代码经过精简,仅剩行。接下来,我们将从代码流程出发,深入解析这个插件的各个关键步骤。

       首先,我们从初始化配置入手,定义必要的参数和功能。接着,编写触发函数,实现选中文本后的悬浮翻译功能。这一过程涉及调用Google Translate API,解析翻译结果,并触发显示。

       在translate.js中,我们看到的是一个简洁明了的翻译方法实现。其中,一段正则表达式被用来解析驼峰函数名,以适应不同的翻译需求。接下来,是显示悬浮翻译结果的关键部分。在hoverDisposable的retinanet源码代码中,我们能发现如何获取翻译结果,并将其以直观的方式展示给用户。

       值得注意的是,插件在展示翻译结果时,会自动生成一个指向Google Translate的链接,方便用户深入了解翻译内容的背景和细节。这一设计考虑周到,体现了开发者对用户体验的重视。

       总的来说,这款插件不仅简化了翻译流程,提升编程效率,还通过精简代码和优化功能设计,实现了高效、便捷的使用体验。对于VSCode插件开发的初学者来说,这是一个很好的学习案例。

       作为个人的一次尝试,我将代码进行了精简优化,并分享在GitHub上,供有兴趣的开发者参考和使用。当然,对于不想亲自动手的同学,也可以尝试使用CS的自定义模板,同样能够体验到这款插件带来的便利。

gennia.io 开发小记

       在假期里,我尝试开发了一个即时战略网页游戏,名为 Generals.io,这激发了我自学并亲手打造游戏的想法。经过一个半月的努力,我成功推出了自己的游戏,名为 gennia.cn 或 gennia.io。

       作为游戏开发新手,我对网站和后端开发几乎没有经验。好奇 ChatGPT 是否能显著降低开发难度,我决定尝试一下。事实证明,ChatGPT 对我帮助很大,尽管我仍需学习许多知识以充分利用其功能。ChatGPT 生成的代码有误或冗余,但偶尔也令人惊喜,发现某些功能的实现方式。

       我选择了写一个网站游戏,理由是微信小游戏需要软件著作权和通过特定框架,而开发 app 不符合我的业余爱好。最终我选择了使用 React + Next.js 作为前端框架,TailwindCSS 初期作为 CSS 框架,但后来改为 MUI,因为 MUI 对新手更友好。后端框架我开始使用 Next.js,但因不支持 Socket.IO,最终切换为 Express。

       我调研了多个游戏后端框架,但最终选择了 Express,因为它可以与前后端共享部分代码。在学习过程中,我主要依赖 ChatGPT 来快速入门并解决问题。

       我采用的工具包括 ChatGPT3.5、Copilot Chat 和 GitHub。在开发过程中,我参考了许多类似项目,发现许多程序员(特别是OI选手)用不同语言复现了游戏,并开发了机器人。我基于 gennia 和 generals-io-web 进行二次开发,但在参考代码后进行了大量修改。

       我遇到过使用 Copilot 生成复杂代码的困难,以及代码过于古怪、冗余的参考项目。与一位高中生合作者一起开发,我们通过交流、修复 bug 和改进 UI,将游戏基础功能开发完成。我还在旅游时支持了手机端版本。

       为了解决数据存储问题,我选择了 PostgreSQL 数据库,并使用 ORM Prisma,这对我这样的新手非常友好。我购买了 gennia.io 和 cn 的域名,并在国外服务器上部署。

       在游戏开发过程中,我遇到了许多 bug 和性能问题,修复了大部分基础操作相关问题。我计划在后续仅做有限的维护,并在用户增加时考虑将其发展成一个成熟的游戏。

       在学习和实践过程中,我发现了游戏开发的许多细节,包括使用 Zhihu On VSCode 进行创作。未来,我希望能继续探索更多全栈项目,尝试更多有趣的游戏开发。

微信小程序开发用什么语言微信小程序开发用什么语言?

       å¾®ä¿¡å°ç¨‹åºéœ€è¦å“ªäº›å¼€å‘工具?

微信小程序需要哪些开发工具?

       ä¸€ã€å¾®ä¿¡å°ç¨‹åºå®˜æ–¹å¼€å‘工具

       æ³¨æ„ï¼Œå®ƒåªæ˜¯ä¸€ä¸ªå·¥å…·ï¼Œä¸æ˜¯IDE。官方工具中的代码编辑功能是将vscode的代码编辑功能嵌入到工具中,不足以支持开发。

       ä¼˜åŠ¿

       å› ä¸ºæ˜¯å®˜æ–¹å·¥å…·ï¼Œå…¶ä»–第三方工具有这种不可比拟的天然优势,如果不是他们的代码编辑功能太弱。

       å®˜æ–¹å·¥å…·ï¼Œå¯è°ƒè¯•ï¼Œå¯é¢„览。

       åŸºæœ¬çš„代码编辑、智能提示、调试等功能都有。

       é¡¹ç›®ç®¡ç†ï¼Œåˆ›ä½œï¼Œæ‰‹æœºé¢„览,代码提交,审核。

       å®˜æ–¹ç»´æŠ¤æ›´æ–°

       åŠ£åŠ¿

       ç¼ºç‚¹ä¹Ÿå¾ˆæ˜Žæ˜¾ã€‚总的来说是工具而不是IDE。代码编辑功能不好,写代码很别扭,这是我放弃的最重要原因。

       api提示不全,需要逐个检查API,会影响写代码的速度。

       å¾ˆå¤šå¿…要的快捷键都没有,比如全选关键词,快速复制一行等等。

       ä½ ä¸èƒ½é€‰æ‹©ä¸»é¢˜ï¼Œä½†ä½ ä¸å–œæ¬¢ç™½è‰²çš„风格。

       æ— æ’件,无插件,无插件。重要的事情说三遍。

       è¯„ä»·

       ç›®å‰æˆ‘们需要使用微信web开发工具来创建、调试、查看、预览、上传小程序,所以这个工具必不可少。但是代码编辑功能太差,建议用其他第三方代码编辑工具代替。

       äºŒã€å³æ—¶åº”用&mdash&mdash适合技术小白的小程序开发工具

       ä¸¥æ ¼æ¥è¯´ï¼Œå³æ—¶åº”用不是专业程序员的开发工具,但绝对是制作微信小程序的一个非常强大的工具。不懂技术和编程的人一定会爱上即时应用这个工具。

       ä¼˜åŠ¿

       å¯è§†åŒ–操作,直接拖拽组件生成页面。

       æä¾›å¤§é‡é€‚用的模板。

       ä»£ç å¯ä»¥æ‰“包下载,直接连接小程序的开发工具。

       ä¸‹è½½çš„代码可以任意编辑。

       åŠ£åŠ¿

       ç”µå•†æ¨¡æ¿å±…多,其他类别的模板很少。

       å¤æ‚的功能还是需要专业程序员进行二次开发。

       è¯„ä»·

       å®¢è§‚来说,即时应用这个微信小程序制作工具非常适合技术小白。因为相当于帮你做了所有需要代码的部分,不用太担心技术问题。当然,如果你是程序员,可以基于生成的代码进行二次开发。

       ä¸‰ã€‚崇高文本3&mdash&mdash简单高效的开发工具

       Subetext3位于代码编辑器中,不是IDE,它的代码提示一般,但是使用起来非常方便。

       ä¼˜åŠ¿

       æ–‡ä»¶æ‰“开速度快,UI简洁大方。

       ä»£ç ç¼–辑体验舒适高效。

       æœ‰äº†å¤§é‡çš„插件,我们基本上可以找到相应的插件来满足不同的需求。

       ç¬¬ä¸‰æ–¹å¼€å‘者开发代码着色和代码提示的小插件。

       åŠ£åŠ¿

       æ²¡æœ‰è°ƒè¯•ï¼Œæ²¡æœ‰é¢„览

       å› ä¸ºæ˜¯ç¬¬ä¸‰æ–¹å¼€å‘者写的插件,所以代码提示不是很全面。

       è¯„ä»·

       ä½¿ç”¨é—¨æ§›ä¸å¤ªé«˜ï¼Œå¯ä»¥å¿«é€Ÿä¸Šæ‰‹ã€‚但如果想实现一些丰富的功能,就比较难了。

       4.WebStorm&mdash&mdash功能多样的重型开发工具

       WebStorm上有个插件,可以实现代码提示,不能调试和预览,是个重度工具。如果是,可以试试这个工具。

       ä¼˜åŠ¿

       æœ‰æ’件可以实现代码高亮、代码提示等功能。

       å®ƒæœ‰éžå¸¸æˆç†Ÿå’Œä¸°å¯Œçš„功能。

       å„种快捷键

       åŠ£åŠ¿

       æ— æ³•è°ƒè¯•é¢„览。

       åŠŸèƒ½è¶Šå¤šï¼Œè¶Šè‡ƒè‚¿

       è¯„ä»·

       ä¸Žä¸Šè¿°å·¥å…·ç›¸æ¯”,Webstorm具有强大的代码编辑功能。但是开发小程序需要插件支持,体积臃肿。

       æ€Žä¹ˆè®¾ç½®æ‰‹æœºå¾®ä¿¡ç•Œé¢æ˜¾ç¤ºçš„语言?

       1、微信主界面中点击“我的”。

       2、点击“我的”页面中的“设置”按钮。

       3、在设置页面中找到“通用”。

       4、在通用页面中,找到“多语言”。

       5、在多语言界面中,找到要选择的语言,这里选择英文。

       6、记得点击右上角的保存,保存后会提示重启微信,重启微信后,显示语言就改成英文了。

       æ‰©å±•èµ„料:

       å¾®ä¿¡æ”¯æŒè·¨é€šä¿¡è¿è¥å•†ã€è·¨æ“ä½œç³»ç»Ÿå¹³å°é€šè¿‡ç½‘络快速发送免费(需消耗少量网络流量)语音短信、视频、图片和文字,同时,也可以使用通过共享流媒体内容的资料和基于位置的社交插件“摇一摇”、“漂流瓶”、“朋友圈”、”公众平台“、”语音记事本“等服务插件。

web前端主要学习什么?

       æ‚¨å¥½ï¼Œweb前端学习内容包括以下8个阶段:

       é˜¶æ®µ1.前端核心基础

       HTML +_CSS核心、JavaScript基础语法、JavaScript面向对象、JavaScript DOM和BOM编程、jQuery框架

       é˜¶æ®µ2.HTML5 + CSS3 + 移动端核心

       HTML5新特性、Canvas专列、CSS3新特性、CSS3进阶、CSS3实例演练

       é˜¶æ®µ3.移动端

       ç§»åŠ¨ç«¯æ ¸å¿ƒã€ç§»åŠ¨ç«¯é€‚配、移动端特效

       é˜¶æ®µ4.服务器端

       æœåŠ¡å™¨ç«¯å¼€å‘、数据库操作、前后端交互核心、微信公众号开发

       é˜¶æ®µ5.JavaScript高级

       JavaScript基础深入剖析、JavaScript面向对象深入讲解、JavaScript异步编程、JavaScript函数式编程、JavaScript设计模式

       é˜¶æ®µ6.前端必备

       æ€§èƒ½ä¼˜åŒ–、版本控制工具、模块化、项目构建工具

       é˜¶æ®µ7.高级框架

       React框架基本使用、React框架进阶、Vue框架基本使用、Vue框架进阶、Vue源码分析

       é˜¶æ®µ8.小程序

       åŽŸç”Ÿå°ç¨‹åºå…¥é—¨ã€åŽŸç”Ÿå°ç¨‹åºAPI使用、小程序框架Mpvue

       web前端学什么

       å¸Œæœ›å¯ä»¥å¸®åˆ°ä½ ï¼

让练习打字这件事不那么枯燥,你可以试试这几个网站

       让打字练习不再枯燥乏味,这里有几款特色各异的网站供你选择:

       首先,TypingClub作为热门之选,以其趣味课程和逐步升级的挑战吸引人。但国内访问速度慢是个问题。Typing则是它的优质替代,它涵盖课程训练、速度测试和比赛游戏,包括Typing Lessons等多模块,课程内容丰富且质量高,特别提供HTML、CSS等编程语言的打字训练。

       对于键盘操作者,Qwerty Learner专为英语工作者设计,结合单词记忆与键盘锻炼,涵盖各种考试词汇库,设计注重肌肉记忆的正确性,还有VScode插件,方便快捷。

       如果你偏爱阅读,Typelit提供免费的古典文学在线打字练习,支持多语种小说。对于双拼学习者,Shuang提供友好入门模式,适合各种双拼方案,还有Linci的二次开发版本,UI设计独特。

       至于速度测试,FastFingers和Typing-cn提供打字测试和竞赛,语言选择广泛。FastFingers允许全拼、双拼等多种方案,而Typing-cn则以中文全拼为主,用户可上传自定义词组。

       这些网站各有千秋,无论你是追求乐趣,还是专业提升,都能在其中找到适合自己的方式,让打字练习变得生动有趣。