Skip to content

Commit 74282f6

Browse files
committed
polish
1 parent eade67d commit 74282f6

File tree

3 files changed

+21
-12
lines changed

3 files changed

+21
-12
lines changed

content/_index.org

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#+TITLE: Zig 语言中文社区
22
#+DATE: 2022-07-20T12:42:38+0800
3-
#+LASTMOD: 2024-06-16T13:35:54+0800
3+
#+LASTMOD: 2024-07-08T15:21:19+0800
44

55
{{< figure src="https://ziglang.cc/logo/zigcc-logo-2.svg" height="300px" >}}
66

@@ -32,13 +32,16 @@ Zig Chinese Community is dedicated to sharing and spreading the use of Zig langu
3232
- 邮件:[[mailto:hello@ziglang.cc][hello@ziglang.cc]]
3333
- https://discord.gg/UraRxD6WXD
3434
* 学习资料
35-
由于 Zig 目前还处于快速迭代,因此最权威的资料无疑是官方的 [[https://ziglang.org/documentation/master/][Zig Language Reference]],遇到语言的细节问题,基本都可以在这里找到答案。其次是社区的一些高质量教程,例如:
35+
由于 Zig 目前还处于快速迭代,因此最权威的资料无疑是官方的 [[https://ziglang.org/documentation/master/][Zig Language Reference]],遇到语言的细节问题,基本都可以在这里找到答案。
36+
其次是社区的一些高质量教程,例如:
3637
- [[https://ziglang.cc/learning-zig/][学习 Zig]] :: 该系列教程最初由 Karl Seguin 编写,该教程行文流畅,讲述的脉络由浅入深,深入浅出,是入门 Zig 非常不错的选择
37-
- [[https://ziglang.cc/zig-course/][Zig 语言圣经]] :: 一部全面而深入介绍 Zig 编程语言的权威指南
38+
- [[https://course.ziglang.cc][Zig 语言圣经]] :: 一份内容全面、深入浅出介绍 Zig 的教程
3839
- [[https://codeberg.org/ziglings/exercises/][ziglings/exercises]] :: Learn the Zig programming language by fixing tiny broken programs.
39-
- [[https://ziglang.cc/zig-cookbook/][Zig Cookbook]] :: A collection of simple Zig programs that demonstrate good practices to accomplish common programming tasks
40-
- [[https://github.com/zigcc/zig-idioms][zigcc/zig-idioms]] :: Common idioms used in Zig
40+
- [[https://cookbook.ziglang.cc/][Zig Cookbook]] :: A collection of simple Zig programs that demonstrate good practices to accomplish common programming tasks
4141
- [[https://github.com/zigcc/awesome-zig][zigcc/awesome-zig]] :: A collection of some awesome public Zig programming language projects.
42+
- [[https://github.com/zigcc/zig-idioms][zigcc/zig-idioms]] :: Common idioms used in Zig
43+
44+
推荐使用 asdf 来安装 Zig,具体可参考[[/post/2023/10/14/zig-version-manager/][这里]]。
4245
* 更新日志
4346
- 2024-03-29 :: 使用自定义域名 ziglang.cc
4447
- 2022-12-10 :: 切换主题 [[https://github.com/zwbetz-gh/cupper-hugo-theme][cupper-hugo]] --> [[https://github.com/yihui/hugo-xmin][hugo-xmin]]

content/monthly/202407.org

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
#+TITLE: 202407
22
#+DATE: 2024-07-05T21:22:52+0800
3-
#+LASTMOD: 2024-07-05T21:33:20+0800
3+
#+LASTMOD: 2024-07-08T15:25:05+0800
44
#+DRAFT: true
55

66
* 重大事件
77
* 观点/教程
88
** [[https://kristoff.it/blog/improving-your-zls-experience/][Improving Your Zig Language Server Experience]]
99
Loris Cro 的最新文章,介绍了一个改进 Zig 编码体验的小技巧,十分推荐大家使用。具体来说是这样的:
10-
通过配置 zls,达到保存文件时,自动进行源码检查
10+
通过配置 zls,达到保存文件时,自动进行源码检查,而且速度非常快!
1111
#+begin_src js
1212
{
1313
"enable_build_on_save": true,
1414
"build_on_save_step": "check"
1515
}
1616
#+end_src
17-
zls 做如上配置后(配置文件可以通过 =zls --show-config-path= 查看 ),zls 就会在保存时,自动执行 =zig build check= ,这个 =check= 一般来说是这样的:
17+
将上述内存保存到 zls 的配置文件中,(路径可以通过 =zls --show-config-path= 查看 ),zls 就会在保存时,自动执行 =zig build check= ,这个 =check= 一般来说是这样的:
1818
#+begin_src zig
1919
const exe_check = b.addExecutable(.{
2020
.name = "foo",
@@ -26,8 +26,14 @@ const exe_check = b.addExecutable(.{
2626
const check = b.step("check", "Check if foo compiles");
2727
check.dependOn(&exe_check.step);
2828
#+end_src
29-
由于 Zig 目前的一个 bug([[https://github.com/ziglang/zig/issues/18877][#18877]]),这个 =exe_check= 不能作为 install、run 的依赖,否则在编译时,就不会增加 =-fno-emit-bin= 选项。
3029

31-
而这个选项的作用就是让 Zig 来分析我们的代码,但是不会调用 LLVM 来生成最终的二进制文件,因此速度会比较快。
30+
由于 Zig 目前的一个 bug([[https://github.com/ziglang/zig/issues/18877][#18877]]),这个 =exe_check= 不能作为 install、run 的依赖,否则在编译时,就不会增加 =-fno-emit-bin= 选项。
31+
而这个选项的作用就是让 Zig 来分析我们的代码,但是不会调用 LLVM 来生成最终的二进制文件,因此速度会比较快。
32+
33+
这个配置有个缺点,就是它是个全局配置,在 [[https://github.com/zigtools/zls/issues/1687#issuecomment-1953202544][zigtools/zls#1687]] 有讨论如何改成项目级别的,本质上就是定制 zls 的启动参数。
34+
#+begin_src bash
35+
zls --config-path zls.json
36+
#+end_src
37+
这样不同的项目就可以用不同的检查步骤了。
3238
* 项目/工具
3339
* [[https://github.com/ziglang/zig/pulls?page=1&q=+is%3Aclosed+is%3Apr+closed%3A2024-07-01..2024-08-01][Zig 语言更新]]

content/post/2023-10-14-zig-version-manager.org

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#+TITLE: Zig 多版本管理
22
#+DATE: 2023-10-14T09:23:41+0800
3-
#+LASTMOD: 2024-04-06T16:13:47+0800
3+
#+LASTMOD: 2024-07-08T15:17:05+0800
44
#+TAGS[]: zig
55
#+CATEGORIES[]: 编程语言
66

@@ -13,7 +13,7 @@
1313
- [[https://github.com/hendriknielaender/zvm][hendriknielaender/zvm]] :: Fast and simple zig version manager
1414

1515
他们工作方式类似,大致步骤:
16-
1. 从 https://ziglang.org/download/index.json 这个链接中解析所有版本,然后根据当前系统架构确定要安装的二进制,
16+
1. 从 [[https://ziglang.org/download/index.json][index.json]] 解析所有版本,然后根据当前系统架构确定要安装的二进制,
1717
2. 创建一个类似 =current= 软链用来表示当前的 Zig 安装目录,
1818
3. 根据项目下 =.zig-version= 文件中指定的版本,修改 =current= 软链的指向,保证 =PATH= 中的 Zig 版本是正确的
1919

0 commit comments

Comments
 (0)