2026a

# 环境和设置


Syslab 选项设置和常用快捷键设置。Syslab 平台的上方工具栏 Ribbon,提供快捷按钮,支持打开 Syslab 选项设置页面,如下图:

# Syslab 选项设置

# 路径设置

Syslab 提供路径相关设置。设置项说明如下:

  • Julia 可执行文件路径:julia.exe文件路径,推荐使用 Syslab 提供的 Julia 环境;
  • MWORKS.Sysplorer 可执行文件路径:系统建模软件 mworks.exe 的文件路径;
  • MLang 安装目录:M 语言的执行环境,默认为<Syslab 安装路径>/Tools/TyMLangDist

# Julia 工作区

Syslab 提供 Julia 工作区相关设置。设置项说明如下:

  • 是否显示模块:工作区是否显示 Module 节点,默认不显示;
  • 是否显示函数:工作区是否显示 Function 节点,默认不显示;
  • 是否显示结构体:工作区是否显示 Struct 节点,默认不显示;
  • 是否显示取值为 nothing 的变量:工作区是否显示值为 nothing 的变量,默认不显示。

# 变量编辑器

控制变量编辑器单元格最大显示长度,默认为 100。

如果数据长度超出 100 个长度,则超出部分显示为...。如果想要显示更多数据,可以根据需要调大该选项设置。

# 预加载

Syslab 提供预加载相关设置。设置项说明如下:

控制启动命令行窗口时是否预加载函数库:默认不勾选,即启动命令行窗口时不预加载函数库。

若要启动命令行窗口时预加载函数库,请勾选该复选框,并选择需要预加载的函数库,然后重启命令行窗口生效。

# 调试

Syslab 提供调试相关设置。设置项说明如下:

  • 调试模式:

    • attach 模式(推荐):在命令行窗口中调试;
    • launch 模式:启动新程序并进行调试。
  • 调试器性能选项:

    • 设置需要编译模式执行的函数或模块(Module):请参见 Julia 调试配置
    • 将设置断点的函数库采用解释模式执行,其余编译模式执行:默认勾选,可以提升调试性能。
    • 对 Base 标准库函数直接调用(跳过 invokelatest)以提升性能:默认勾选,可以提升调试性能。
    • 若函数内部没有断点,则自动启用编译模式:默认勾选,可以提升调试性能。
    • 自动设置函数为编译或解释模式执行(实验性)。大幅提升调试性能,但是存在少数场景下函数断点不生效的情况。默认不勾选,手动勾选后,可以提升调试性能。

    “自动设置函数为编译或解释模式执行”选项有以下局限性:

    1. 要求调试的文件可以直接运行,不需要提前执行其他文件,否则该选项不生效。
    2. 调试节时,该选项不生效。
    3. 对于将变量赋值给函数的场景,可能出现函数断点不生效的情况,可以通过添加注释 # CALLEE: func1,func2 手动添加函数调用关系。
    function test1(i)
        x = i + 1
        return x
    end
    
    function test2(i)
        x = i + 2
        return x
    end
    
    function main()
        res = 1 
        for i = 1:100
            # CALLEE: test1,test2
            f = test1
            f2 = test2
            res = res + f(i) + f2(i)
            sleep(0.05)
        end
        return res + 1
    end
    
    main()
    
  • 调试变量表格:

    控制调试变量表格是否实时刷新:默认勾选。

# 语言服务

Syslab 提供语言服务相关设置。设置项说明如下:

指定需要被高亮的未定义符号:默认为 package functions

  • none:不高亮任何符号;
  • package functions:默认选择,高亮未定义的函数;
  • symbols:高亮未定义的符号,不包含 fields 字段;
  • all:高亮未定义的符号,包含 fields 字段,如下图所示:

# 导出配置

Syslab 提供导出文件相关设置。设置项说明如下:

  • 导出 csv 文件:控制导出 csv 文件是否添加默认表头,默认不添加;
  • 导出 txt 文件:导出 txt 的列分隔符选择,默认是空格。

# Julia 命令行窗口

Syslab 提供启动参数相关设置。设置项说明如下:

  • 控制软件打开时是否启动命令行窗口:默认勾选,打开 Syslab 时自动启动命令行窗口;
  • julia 进程启动线程数:默认为空;
  • julia 启动附加参数:默认为空。

Syslab 提供终端显示相关设置。设置项说明如下:

  • 控制终端光标是否闪烁:默认勾选;
  • 在 REPL 中打印执行的代码并将其添加到历史命令中:默认不勾选;
  • 数据格式:用于控制 Julia 命令行窗口数值格式的显示,默认是 default;
  • 控制终端在其缓冲区中保留的最大行数:默认为 1000 行。随着行数的增加,内存量也会增加。

# 数据格式

当前 Julia 命令行窗口支持以下 5 种数值显示格式:

  • default:自适应十进制小数点紧凑格式,Float64 类型的标量与向量最多显示 17 位有效数字,Float32 类型的标量与向量最多显示 8 位有效数字,Float64 和 Float32 类型的二维及以上数组最多显示 6 位有效数字。

    a64 = 123456789.123456789
    # 1.2345678912345679e8
    
    arr64 = [a64, a64]
    #=
    2-element Vector{Float64}:
     1.2345678912345679e8
     1.2345678912345679e8
    =#
    
    mat64 = [a64 a64; a64 a64]
    #=
    2×2 Matrix{Float64}:
      1.23457e8  1.23457e8
      1.23457e8  1.23457e8
    =#
    
    a32 = Float32(123.45678)
    # 123.45678f0
    
  • short:短固定十进制小数点紧凑格式。Float64 和 Float32 类型的数据最多显示 6 位有效数字。

    a64 = 123456789.123456789
    # 1.23457e8
    
    arr64 = [a64, a64]
    #=
    2-element Vector{Float64}:
     1.23457e8
     1.23457e8
    =#
    
    a32 = Float32(123.45678)
    # 123.457
    
    mat32 = Float32[a32 a32; a32 a32]
    #=
    2×2 Matrix{Float32}:
     123.457  123.457
     123.457  123.457
    =#
    
  • long:长固定十进制小数点紧凑格式。Float64 类型的数据最多显示 17 位有效数字,Float32 类型的数据最多显示 8 位有效数字。

    a64 = 123456789.123456789
    # 1.2345678912345679e8
    
    arr64 = [a64, a64]
    #=
    2-element Vector{Float64}:
     1.2345678912345679e8
     1.2345678912345679e8
    =#
    
    a32 = Float32(123.45678)
    # 123.45678f0
    
    mat32 = Float32[a32 a32; a32 a32]
    #=
    2×2 Matrix{Float32}:
     123.45678  123.45678
     123.45678  123.45678
    =#
    
  • shortE:短科学计数法。小数点后包含 5 位数。

    a64 = 123456789.123456789
    # 1.23457e+08
    
    arr64 = [a64, a64]
    #=
    2-element Vector{Float64}:
     1.23457e+08
     1.23457e+08
    =#
    
    a32 = Float32(123.45678)
    # 1.23457f+02
    
    mat32 = Float32[a32 a32; a32 a32]
    #=
    2×2 Matrix{Float32}:
     1.23457f+02  1.23457f+02
     1.23457f+02  1.23457f+02
    =#
    
  • longE:长科学计数法。Float64 类型的数据小数点后包含 16 位,Float32 类型的数据小数点后包含 7 位。

    a64 = 123456789.123456789
    # 1.2345678912345679e+08
    
    arr64 = [a64, a64]
    #=
    2-element Vector{Float64}:
      1.2345678912345679e+08
      1.2345678912345679e+08
    =#
    
    a32 = Float32(123.45678)
    # 1.2345678f+02
    
    mat32 = Float32[a32 a32; a32 a32]
    #=
    2×2 Matrix{Float32}:
     1.2345678f+02  1.2345678f+02
     1.2345678f+02  1.2345678f+02
    =#
    

提示

数值格式仅影响数据在 Julia 命令行窗口中的显示方式,而不是计算或保存它们的方式。

Syslab 提供数组大小限制相关设置。设置项说明如下:

将最大数组大小限制为 RAM 的一定百分比:检查请求的内存是否超过上限,默认不勾选,勾选时数组大小百分比默认设置为 100%,如下图所示:

# Python 命令行窗口

Syslab 提供 Python 命令行窗口的选项设置。设置项说明如下:

  • Python 终端:打开 py 脚本,单击 Ribbon 工具栏中的运行,会启动默认终端,然后使用 Python 解释器运行激活的 py 脚本;
  • IPython 终端:打开 py 脚本,单击 Ribbon 工具栏中的运行,会启动 IPython 终端并运行激活的 py 脚本。

# IPython 终端

在 Syslab 主界面,进入首选项>Python 命令行窗口,选择 IPython 终端(实验性),即可切换为 IPython 终端,如下图:

IPython 是一种基于 Python 的交互式解释器,提供了强大的编辑和交互功能。相比 Python 终端,IPython 终端拥有以下优势。

  1. 支持 tab 键自动补全。

  2. 支持 object? 和 object?? 内省功能,在变量后面加上?,可以打印出该变量的详细信息,?? 和 ? 功能相似,?? 增加了查看函数或模块对象源代码的功能。

    In [1]: my_list = [1,2,3]
    
    In [2]: my_list?
    Type:        list
    String form: [1, 2, 3]
    Length:      3
    Docstring:
    Built-in mutable sequence.
    
    If no argument is given, the constructor creates a new empty list.
    The argument must be an iterable if specified.
    
  3. IPython 终端中自带一系列魔术命令(magic command),例如 %run、%timeit、%pwd 等。

    In [3]: # 创建D:/test.py文件,内容为 print("hello world")
      ...: %run "D:/test.py" # 执行 py 脚本
    hello world
    
    In [4]: %timeit [i for i in range(1000)] # 测量单行代码的运行时间
    18.3 µs ± 267 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
    
    In [5]: %pwd # 显示当前工作目录
    Out[5]: 'c:\\Users\\TR\\Documents'
    

IPython 终端的设置项说明如下:

  • 在控制台的命名空间中运行,而不是新的:默认不勾选。

    若勾选该设置,假设 IPython 终端中已有x变量,即使 py 文件中未定义x,单击执行 py 文件时,仍然能够使用终端中已有的x变量,而不会报错name 'x' is not defined

# 内存监测

Syslab 提供内存监测相关设置。设置项说明如下:

  • 控制是否开启内存监测,开启后将实时监测总内存/julia 进程内存使用情况:默认勾选。

    内存的使用量会在状态栏显示,悬停则会有详细信息:

    提供设置内存监测频率的选项,默认为 1 s。

    • 监测总内存使用率:默认勾选。实时检测总内存,可以自定义告警阈值为 80% 至 100%,默认值为 90%,超过设置的告警阈值时,Syslab 会发出告警;

    • 监测 Julia 进程内存使用量:默认勾选。实时监测 julia 进程的内存使用量,可以自定义告警阈值,默认值为 27 GB,超过设置的告警阈值时,Syslab 会发出告警。

# 包服务器

Syslab 提供包服务器相关设置。设置项说明如下:

  • 启用离线模式:默认不勾选。若勾选,表示将包服务器设为离线模式,在此情况下安装 Julia 包,会使用 Syslab 内置携带的 Julia 包进行安装。如果 Syslab 没有携带该 Julia 包,则安装会失败;

  • Julia 包服务器地址(重启命令行窗口生效):提供下拉列表,用户可以选择要使用的 Julia 包服务器。默认使用苏州同元包服务器。

# 代理

Syslab 提供代理设置,功能说明如下:

  • 手动配置代理:默认不勾选。

    勾选后开启手动配置代理功能,需要输入目标代理服务器对应的代理主机名以及代理端口号。如 Syslab 已配置过代理,则回填已有的代理信息;

  • 代理身份认证:默认不勾选,勾选后可输入用户名密码

  • 测试连接:测试手动配置代理的主机名与端口号的可达性。

# 帮助文档

Syslab 提供帮助文档相关设置。设置项说明如下:

提供下拉列表,用户可以选择指定浏览器来打开 Syslab 帮助文档。

# 日志设置

Syslab 提供日志文件相关设置。设置项说明如下:

  • 自动清理日志:默认勾选。清理日志的周期,可以是每日、每周、每月;
  • 立即清除:单击后,立即清除日志文件;
  • 控制是否保持 Julia 命令行窗口崩溃日志:默认勾选。

# 快捷键设置

# 常用快捷键

Syslab 平台常用命令及其快捷键
命令 快捷键 说明
language-julia.startREPL Alt+J Alt+O 启动命令行窗口
language-julia.stopREPL Alt+J Alt+K 关闭命令行窗口
workbench.action.showCommands F1 / Ctrl + Shift + P 显示命令面板
workbench.action.quickOpen Ctrl + P / Ctrl + E 转到文件
workbench.action.newWindow Ctrl + Shift + N 打开新窗口
workbench.action.closeWindow Ctrl + Shift + W / Alt + F4 关闭窗口
editor.action.webvieweditor.showFind Ctrl + F 编辑器内查找
editor.action.startFindReplaceAction Ctrl + H 编辑器内替换
editor.action.formatDocument Shift + Alt + F 格式化文档
workbench.action.closeActiveEditor Ctrl + W / Ctrl + F4 关闭编辑器
workbench.action.files.newUntitledFile Ctrl + N 创建新文件
workbench.action.files.openFile Ctrl + O 打开文件
workbench.action.files.save Ctrl + S 保存
workbench.action.files.saveAs Ctrl + Shift + S 另存为
saveAll Ctrl + K S 全部保存
workbench.action.toggleSidebarVisibility Ctrl + B 切换侧栏可见性
editor.debug.action.toggleBreakpoint F9 切换断点
workbench.action.debug.start F5 开始/继续调试
workbench.action.debug.stop Shift + F5 停止调试
workbench.action.debug.stepOver F10 步进
workbench.action.debug.stepInto F11 步入
workbench.action.debug.stepOut Shift + F11 步出

# 全部快捷键

单击左侧边栏下方的设置图标,选择键盘快捷方式,打开键盘快捷方式页面,可以浏览和编辑本平台的所有快捷键。

# Syslab 各平台快捷键差异

Syslab 各平台快捷键差异
Windows Linux Online 说明
Ctrl+K Ctrl+T Ctrl+K Ctrl+T Ctrl+K Ctrl+G 颜色主题
Shift+Alt+F Ctrl+Shift+I Shift+Alt+F 格式化文档
F12 F12 Ctrl+F12 转到定义
Alt+F12 Ctrl+Shift+F10 Alt+F12 速览定义
Ctrl+N Ctrl+N Ctrl+Alt+Windows+N 新建文件
Ctrl+W Ctrl+W Ctrl+M 关闭编辑器
Ctrl+K Ctrl+W Ctrl+K Ctrl+W Ctrl+K Ctrl+M 关闭所有编辑器
Ctrl+K R Ctrl+K R / 显示资源管理器中的活动文件
Ctrl+K O Ctrl+K O / 显示新窗口/实例中的活动文件
F11 F11 Alt+F11 单步执行
Ctrl+C Ctrl+Shift+C Ctrl+C 复制和清除选择
Ctrl+V Ctrl+Shift+V Ctrl+V 粘贴到活动终端中
Ctrl+↑ / ↓ Ctrl+Shift+↑ / ↓ Ctrl+↑ / ↓ 滚动到上/下一条命令
Ctrl+Home / End Shift+Home / End Ctrl+Home / End 滚动到顶部/底部

# 主题设置

Syslab 提供颜色主题设置。在工具栏 Ribbon 的视图 Tab 中,单击颜色主题按钮, 弹出颜色主题选择列表,允许用户切换不同的颜色主题。上下箭头键可以预览颜色主题的效果,单击颜色主题,颜色主题更改生效。