Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>chroma-craft-lintNew to Visual Studio Code? Get it now.
chroma-craft-lint

chroma-craft-lint

MetaSilicon

|
307 installs
| (1) | Free
chroma-craft language craft lint
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

chroma-craft-lint

1. 功能

1.1 语法

  1. 支持C++ craft 关键词及函数高亮;时间,电压,电流常量的高亮显示;字符串高亮显示
  2. 支持craft内置函数的悬停提示
  3. 支持dec pln的文件的代码补全
  4. 支持单行注释高亮显示,暂不支持块注释高亮显示
  5. TODO: 跨文件go to def / peak def
  6. TODO: makefile
  7. TODO: 语法error + warning检测

1.2 编辑器

  1. 支持vscode ctrl+/ 快速注释/反注释代码和代码块
  2. 支持符合对自动补全() [] {} '' ""
  3. 支持注释、代码块折叠
  4. 支持选中单词后高亮当前自的所有出现

1.3 备注

悬停+代码补全如下:

SET_DEC_FILE""

WAIT

START_UP()

TEST_PRO

{

BEFORE_TEST: ;

AFTER_TEST: ;

}

RELEASE()

SPEC_DEF()

{

}

test_end(){

1;

}

test_end()

TEST_NO

DATALOG_MSG

FORCE_I_MLDPS(MLDPS_name, f_current, i_range, v_range, v_clamp, m_mode, ON/OFF, wait_time);

FORCE_V_MLDPS(MLDPS_name, f_volt, v_range, i_range, I_clamp, m_mode, ON/OFF, wait_time);

JUDGE_I_MLDPS(MLDPS_name, I_min, I_max, wait_time[, ave_cnt, ave_mode, sampling_interval, rpt_min, rpt_max ]);

JUDGE_V_MLDPS(MLDPS_name, V_min, V_max, wait_time[, ave_cnt, ave_mode, sampling_interval, rpt_min, rpt_max ]);

MEAS_I_MLDPS(MLDPS_name, wait_time[, ave_cnt, ave_mode, sampling_interval]);

MEAS_V_MLDPS(MLDPS_name, wait_time[, ave_cnt, ave_mode, sampling_interval]);

doubleValue = RESULT_MLDPS(socket_no, MLDPS_name);

doubleValue = MIN_RESULT_MLDPS(socket_no, MLDPS_name);

doubleValue = MAX_RESULT_MLDPS(socket_no, MLDPS_name);

FORCE_I_PMU (PMU_number[|PMU_number], f_current, I_range, V_range, V_clamp, ON/OFF, wait_time);

FORCE_V_PMU (PMU_number[|PMU_number], voltage, V_range, I_range, I_clamp, ON/OFF, wait_time);

JUDGE_I_PMU (PMU_number, I_min, I_max, wait_time [, ave_cnt, ave_mode, sampling_interval, ave_min, ave_max ]);

JUDGE_V_PMU (PMU_number , judge_mode, V_min, V_max, wait_time[, ave_cnt, ave_mode, sampling_interval] [, ave_min, ave_max ]);

MEAS_I_PMU (PMU_number, wait_time[, ave_cnt, ave_mode, sampling_interval]);

MEAS_V_PMU (PMU_number, judge_mode, wait_time[, ave_cnt, ave_mode, sampling_interval]);

PARAL_INC(allsegpin)

PIN_INC(allsegpin)

FORCE_I_PPMU (pin_name, f_current, I_range, v_range, pv_clamp, nv_clamp, wait_time);

FORCE_V_PPMU (pin_name, f_volt, v_range, I_range, I_clamp, wait_time);

FORCE_I_PPMU_X (pin_name, f_current, I_range, v_range, pv_clamp, nv_clamp, wait_time, lvl_no);

FORCE_V_PPMU_X (pin_name, f_volt, v_range, I_range, I_clamp, wait_time, lvl_no);

JUDGE_I_PPMU(pin_name, I_min, I_max, wait_time [, ave_cnt, ave_mode, sampling_interval , rpt_min, rpt_max] [, meas_value]);

JUDGE_V_PPMU(pin_name, V_min, V_max, wait_time [, ave_cnt, ave_mode, sampling_interval , rpt_min, rpt_max] [, meas_value]);

MEAS_I_PPMU(pin_name, wait_time[, ave_cnt, ave_mode, sampling_interval] [,meas_value]);

MEAS_V_PPMU(pin_name, wait_time[, ave_cnt, ave_mode, sampling_interval] [, meas_value]);

SET_LEVELN(lvl_no, pin_name, vil, vih, vol,voh, iol, ioh, vref [, cll, clh] [, vppmu, ippmu, i_range ]);

LEVELS (level_set_no, wait_time);

INIT_DRIVE_STATE (pin_name, drv_init, io_init);

JUDGE_STATE (pin_name, state);

RATEN (time_set_no, period_value);

MARKERN (ts_no, pin_name, DT0, DT1, DT2, IO_0, IO_1, CT0, CT1);

FRUN_CLK (pin_name, period_value, rising_edge, falling_edge);

FRUN_CLK_MODE (pin_name, turn_on_mode, frz_mode, ON/OFF);

PIN_MODE (pin_name, d_format, c_mode, c_mask, io_format, load_mode);

SET_CBIT(pin_name , ON/OFF, wait_time);

RELAY_ON (pin_name, relay_resource, wait_time);

RELAY_OFF (pin_name, relay_resource, wait_time);

JUDGE_FREQ (pin_name, start_addr, stop_addr, ignore_stop_addr, F_min, F_max, freq_range[, divide_count, time_out, TFTM_plus_count ]);

MEAS_FREQ (pin_name, start_addr, stop_addr, ignore_addr, freq_range[, divide_count, timeout, TFTM_plus_count ] );

JUDGE_PAT (start_addr, stop_addr [, stop_plus_count, ignore_start_addr, ignore_stop_addr, Ignore_stop_plus_count, fail_count_limit, log_start_address, log_plus_count ]);

PAT_CONTINUE( );

LOAD_PAT ("./pattern_object_file_name" [, SPM_start_address]);

PAT_CONTINUE( );

LOAD_PAT ("./pattern_object_file_name" [, SPM_start_address]);

Active_site = GET_ACTIVE_SOCKET ( );

DISABLE_SOCKET (socket_no[ | socket_no ]);

ENABLE_SOCKET (socket_no[ | socket_no ]);

SOCKET_SET (socket_no[, FRZ_ON | FRZ_OFF])

{

}

SOCKET_INC[ (FRZ_ON | FRZ_OFF[, FRZ_SOCKET_DISABLE])]

{

}

POWER_DOWN_FAIL_SITE([ mode ] );

PLAN_RESULT_MS[SOCKET_NUMBER]

JUDGE_RESULT_MS[SOCKET_NUMBER];

BACKUP_PLAN_RESULT();

FAIL_REJUDGE(n)

{

}

RESULT_PIN_MS(pin_name, value_ms );

Value = RESULT_PIN (socket_no, pin_name );

JUDGE_VARIABLE (socket_no, var, lower_limit, upper_limit [, "string" ]);

JUDGE_VARIABLE_MS(var, lower_limit, upper_limit [, "string" ]);

SET_CAPTURE_MEM_MODE(pin_name, log_src, ON/OFF ,log_size_rng[, datalog_display_count ][ ,log_mode, turn_over_mode] );

READ_CAPTURE_MEM_BLOCK(socket_no, pin_name, st_addr, sp_addr, data);

SET_SHMOO_TG ( direction, index, TG_type, pin_name, Start, Stop, Delta, Marker, TS_no, delay [, strobe_style, window_width] );

SET_SHMOO_LEVEL ( direction, index, Level_type, pin_name, Start, Stop, Delta, Level_mode, delay );

SET_SHMOO_POWER ( direction, index, DC_type, force_type ,pin_name, Start, Stop, Delta, delay );

RUN_SHMOO( location, point, location, point, point_delay, Iteration, exec_mode, per_site_display_flag[, output_path [ , before_judge_function, after_judge_function, shmoo_function_datalog ] ] );

SET_SHMOO_COMPARE(compare_mode, compare_socket, compare_times);

SET_SHMOO_X(index,mode);

SET_SHMOO_Y(index,mode);

SET_SHMOO_COOR(flag)

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft