当前位置: 首页 > news >正文

【前端:Typst】--let关键字的用法

在 Typst 中,#let 命令是用于定义变量和函数的核心指令,其用法非常灵活。以下是详细的用法说明和示例。

目录

1.基础变量定义

2.函数定义

3.默认参数

4.内容块参数(Content Blocks)

5.递归函数


1.基础变量定义

// 定义简单变量
#let name = "Typst"
#let version = 0.10
#let is_active = true// 使用变量
当前系统: #name\
版本号: #version\
激活状态: #if is_active  {"激活"} else {"未激活"}

注意:Typst 不支持中文作为变量或直接输出的标识符,需要使用引号"中文字符"

2.函数定义

// 基本函数
#let greet(name) = "Hello, " + name + "!"
#greet("World")  // 输出:Hello, World!

多参数函数

#let add(a, b) = a + b 
1 + 2 = #add(1, 2)

注意:调用函数和变量的时候都需要添加 #

3.默认参数

#let banner(text1, color: blue) = {set text(fill: color, weight: "bold")[ #text1 ]
}#banner("重要通知")\  // 蓝色
#banner("紧急警告", color: red)  // 红色

注意:在 Typst 中,大括号 {} 是代码块,中括号 [] 表示内容块(文本段落)。如果你想让一个函数“输出”一段可见的文本内容,必须把它写在 [] 中。,文本前面需要添加‘#’

也就是说:通过函数调用文本需要是一下格式:

  [ #text1 ]

注意:大括号用来定义函数体的内部约束,定义函数或组件,第二就是代码块

4.内容块参数(Content Blocks)

#let framed(body) = {box(stroke: 1pt,inset: 8pt,body)
}#framed[这是一个带边框的内容区块,可以包含 *任意* 内容。
]
box创建一个矩形容器,可用于布局

5.递归函数

#let countdown(n) = {if n <= 0 {text("发射!")} else {str(n) + " " + countdown(n - 1)  
}
}#countdown(5)

http://www.lryc.cn/news/587618.html

相关文章:

  • ethers.js-5–和solidity的关系
  • Popover API 实战指南:前端弹层体验的原生重构
  • 七、深度学习——RNN
  • C语言-流程控制
  • 详解从零开始实现循环神经网络(RNN)
  • 使用 keytool 在服务器上导入证书操作指南(SSL 证书验证错误处理)
  • kafka的部署
  • Android系统的问题分析笔记 - Android上的调试方式 bugreport
  • 论文阅读:WildGS-SLAM:Monocular Gaussian Splatting SLAM in Dynamic Environments
  • 深入浅出Kafka Consumer源码解析:设计哲学与实现艺术
  • Angular 框架下 AI 驱动的企业级大前端应用开
  • Kafka 时间轮深度解析:如何O(1)处理定时任务
  • 【Python】-实用技巧5- 如何使用Python处理文件和目录
  • 计算机网络通信的相关知识总结
  • 基于GA遗传优化的多边形拟合算法matlab仿真
  • vscode/cursor怎么自定义文字、行高、颜色
  • PHP password_hash() 函数
  • 仓储智能穿梭车:提升仓库效率50%的自动化核心设备
  • Ubuntu系统下Conda的详细安装教程与Python多版本管理指南
  • 【软件架构】软件体系结构风格实现
  • I2C设备寄存器读取调试方法
  • 卷绕/叠片工艺
  • React源码3:update、fiber.updateQueue对象数据结构和updateContainer()中enqueueUpdate()阶段
  • 新手向:Python自动化办公批量重命名与整理文件系统
  • 理解:进程、线程、协程
  • LLM表征工程还有哪些值得做的地方
  • python的小学课外综合管理系统
  • 我对muduo的梳理以及AI的更改
  • MFC UI表格制作从专家到入门
  • LeetCode经典题解:206、两数之和(Two Sum)