{"author":{"address":"0x56af91a252c1009c5a065eac15aa2ec9a278a0dd","user":"https://learnblockchain.cn/people/16052"},"content":{"body":"\u003e 作为一名开发者，在开源的世界里贡献自己的力量一直是我所向往的。最近，我迎来了两个令我无比喜悦的开源贡献成果，今天就想和大家分享一下这段充满乐趣与挑战的经历。\r\n\r\n# 一、Sui仓库的贡献\r\n\r\nSui是一个非常令人兴奋的项目，我一直都想在这个项目上做出一些贡献。然而，为Sui仓库贡献代码的过程并不是一帆风顺的。\r\n\r\n我的第一次PR提交经历了几次波折。在提交之前，我花费了大量的时间去研究Sui的代码结构，寻找我能够贡献的地方。当我终于准备好了我的第一个PR提交后，却遇到了一些审核上的问题。不过，我并没有放弃，而是根据官方的反馈不断地修改和完善我的代码。\r\n\r\n最终，经过坚持不懈的努力，官方成功地将我的第一个PR合入到了主分支。这对我来说是一个巨大的鼓舞，而且我还有更多的PR正在准备中，希望能够在未来为Sui项目带来更多的价值。\r\n\r\n![image.png](https://img.learnblockchain.cn/attachments/2024/12/ayetCKk567621ac5513f3.png)\r\n\r\n对于想要为像Sui这样的大型项目做贡献的开发者，我也有一些心得体会：\r\n\r\n1. 1. **熟悉项目架构**：在开始贡献之前，要花足够的时间去熟悉项目的整体架构和代码风格。这可以帮助你更快地找到适合自己贡献的地方，并且能够让你的代码更好地融入到项目中。\r\n2. 2. **耐心应对审核**：大型项目的代码审核往往会比较严格，可能会收到很多反馈和修改意见。这个时候不要灰心，要把这些反馈当作是提升自己的机会，耐心地去修改和完善。\r\n3. 3. **持续学习和跟进**：项目是在不断发展的，要持续学习和跟进项目的最新动态。这样不仅可以让你的贡献更符合项目的需求，还能够让你在这个过程中不断提升自己的技术水平。\r\n\r\n# 二、Zed插件的贡献\r\n\r\n在上周末，我在试用Zed编辑器时，发现了一个困扰我的问题。我当时正在编写Move智能合约，但在Zed中这些代码并没有高亮显示。对于习惯了通过高亮来快速定位和检查代码的我来说，这无疑是一个急需解决的问题。\r\n\r\n起初，我打算自己实现一个能让Move语言在Zed中实现高亮显示的插件。然而，在我深入研究的过程中，我惊喜地发现MystenLabs实验室的大神们已经有了一个初步版本的插件。不过，当我尝试去使用这个插件时，却发现它加载失败。\r\n\r\n这激发了我的好奇心和挑战欲。我开始仔细排查问题，深入研究大神们的代码。通过反复的调试和分析，我终于找到了导致加载失败的原因，并成功修复了这个问题。之后，我将我的修复提交并合入到了大神们的代码仓库中。这一举措顺利地为Move开发者们提供了在Zed上可用的第一个Move语言支持插件。\r\n\r\n![image.png](https://img.learnblockchain.cn/attachments/2024/12/Zuh6PP2g67621ae19f00c.png)\r\n\r\n对于有类似想法，想要为编辑器插件做贡献的朋友，我有以下几点建议：\r\n\r\n1. 1. **发现问题是关键**：在日常使用工具的过程中，要善于发现那些影响效率或者体验的问题。这些问题往往就是很好的贡献切入点。\r\n2. 2. **参考已有成果**：在决定自己动手之前，先看看是否有其他人已经在做类似的工作。这样可以避免重复劳动，并且有可能在已有基础上进行更高效的改进。\r\n3. 3. **深入研究代码**：当遇到问题时，不要害怕深入到代码中去。调试和分析代码的过程虽然可能会很漫长，但每一个找到问题根源的瞬间都是值得的。\r\n4. 4. **积极沟通和提交**：如果是在已有项目基础上做改进，与原作者或者项目维护者的沟通非常重要。在提交修复或改进时，要遵循 zed 项目的代码符合项目的规范和风格。\r\n\r\n开源贡献的过程虽然会有挑战，但每一次成功的贡献所带来的成就感是无法用言语来形容的。我希望我的这些经历能够激励更多的开发者加入到开源贡献的行列中来，让我们一起在开源的世界里创造更多的价值！","title":"我的开源贡献之旅：从Sui仓库到Zed Move插件"},"history":null,"timestamp":1734482693,"version":1}