Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
5a0f935
not rm device macro if no dev pack installed
github0null Nov 20, 2021
498ccc7
format command name
github0null Nov 21, 2021
81a13e8
rm temp file after read jlink dev list
github0null Nov 21, 2021
c2b55d2
support modify project deps by yaml config file
github0null Nov 21, 2021
8d148c2
update changelog
github0null Nov 21, 2021
37d63a3
optimize code
github0null Nov 21, 2021
8b66fcc
optimize code
github0null Nov 21, 2021
beb62f9
change note header for 'eide-deps-*.yaml'
github0null Nov 21, 2021
add4247
fix: when switching the active editor, the dep yml config file is del…
github0null Nov 22, 2021
beda5d8
Update EIDEProjectExplorer.ts
github0null Nov 22, 2021
14f338b
fix: when switching the active editor, the dep yml config file is del…
github0null Nov 22, 2021
2bbf9d4
When save dep config, delete duplication item
github0null Nov 23, 2021
a56bbf0
change: support independent armcc compiler paths
github0null Nov 23, 2021
fb5cc4e
change some hint string
github0null Nov 23, 2021
fbe6bf2
Update arm.v5.verify.json
github0null Nov 24, 2021
7dbddce
add version number for binaries
github0null Nov 24, 2021
9a9a9c8
when open import warnings, save it to workspace
github0null Nov 26, 2021
eda4a6a
allow add compiler options for file
github0null Nov 27, 2021
1f8dad3
support display map view
github0null Nov 27, 2021
bb1be4d
new: support download cmsis pack from repo
github0null Nov 28, 2021
3b254e3
random select proxy host
github0null Nov 28, 2021
83d1a00
update changelog
github0null Nov 28, 2021
df339a9
optimize ram/flash layout view
github0null Nov 28, 2021
f00c282
gen builder params with indent
github0null Nov 28, 2021
1bd7a21
modify: don't parse internal macros from ac6 compiler
github0null Nov 28, 2021
50e41a5
optimize map viewer
github0null Nov 29, 2021
92a21a6
optimize code
github0null Nov 29, 2021
5f84b57
update
github0null Nov 29, 2021
dfa450d
optimize code
github0null Nov 29, 2021
14b73a4
optimize vir folder
github0null Nov 30, 2021
4f9e10f
update
github0null Dec 1, 2021
f6512f2
optimize code, support source importer
github0null Dec 1, 2021
2a78d99
Update node-utility
github0null Dec 1, 2021
bee39e8
update submodule
github0null Dec 1, 2021
5f6a4ed
optimize for unify builder
github0null Dec 2, 2021
7af1b92
allow show file folder and modify virtual source path
github0null Dec 3, 2021
13cf580
validate project name when change it
github0null Dec 3, 2021
d1cd8b7
support show output files
github0null Dec 4, 2021
0cfd077
support show axf/elf file info
github0null Dec 4, 2021
4cffe45
change flasher program path type to 'input'
github0null Dec 4, 2021
f58876e
allow multi program and erase flash
github0null Dec 4, 2021
d618f19
add erase all command
github0null Dec 4, 2021
abf5c17
support default hex path for empty value
github0null Dec 4, 2021
f9ab24d
optimize importer
github0null Dec 5, 2021
2fc9d2b
support armcc disasm
github0null Dec 5, 2021
60158c5
optimize
github0null Dec 5, 2021
d714266
v2.15.0
github0null Dec 5, 2021
6f4ce87
Update .vscodeignore
github0null Dec 5, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,6 @@ bin_bk

# shell script
*.sh

# test
test
3 changes: 0 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
[submodule "res/eide_makefile_template"]
path = res/eide_makefile_template
url = git@github0null.io:root/eide_makefile_template.git
[submodule "lib/node-utility"]
path = lib/node-utility
url = git@github.com:github0null/node-utility.git
1 change: 1 addition & 0 deletions .vscodeignore
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ bin/builder/*.xml
bin/builder/*.exe.config
bin/tools
docs
test

# shell script
*.sh
32 changes: 30 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,40 @@

***

### [v2.15.0] (**requirements: VsCode ^1.60.0**)
- 新增:向**项目属性**视图增加一个**修改**按钮,允许以直接修改 yaml 配置文件的形式修改其配置,[文档](https://docs.em-ide.com/#/zh-cn/project_deps)
- 新增:向**项目资源**视图增加一个配置按钮,允许**为单个的文件或组增加任意编译选项**,支持使用 glob 模式匹配源文件和组,[文档](https://docs.em-ide.com/#/zh-cn/project_manager?id=为源文件附加单独的编译选项)
- 新增:为 **虚拟文件夹**/**源文件** 增加修改路径选项,允许修改文件的路径(方便直接修改整个虚拟文件夹树以及其链接到的源文件)
- 新增:将烧录选项 `程序文件` 的文件选择器取消,改为输入框;允许一次烧录多个程序文件,**程序文件** 字段格式 '`<filePath>[,addr][;<filePath>...]`'
- 新增:增加全片擦除功能,`ctrl+shift+p` 打开命令面板,输入 `Erase Chip`,即可执行(某些烧录器可能不支持,则该命令将退化为普通的烧录命令)
- 新增:在 **项目资源** 树中增加 `Output Files` 目录,用于查看生成的编译产物; 同时增加 axf, elf 信息查看功能,点击 axf/elf 文件即可打开
- 新增:增加文件右键菜单项:打开所在目录
- 新增:支持 armcc 反汇编查看,通过编辑器右键菜单 `查看反汇编` 即可打开
- 新增:鼠标悬停显示文件,文件夹数量(仅虚拟文件夹)
- 新增:支持通过编写外部 js 脚本来导入其他IDE项目文件中的文件树,宏,头文件等信息(方便导入 `SEGGER Embedded Studio`,`IAR For ARM` 等其他任意 IDE 的项目),[文档](https://docs.em-ide.com/#/zh-cn/project_manager?id=从其他-ide-项目导入源文件资源)
- 新增:在输出目录生成 .map.view 文件,打开即可显示 map 文件的资源统计视图(仅支持ARMCC/GCC工程),[文档](https://docs.em-ide.com/#/zh-cn/utility_functions?id=查看程序资源视图)
- 新增:支持在线下载安装 Keil 芯片支持包,默认远程仓库地址:https://github.com/github0null/eide-cmsis-pack
- 修复:CMSIS Config Wizard 在解析不符合要求的字符串类型时,出现误判
- 修复:删除 CMSIS 包之后,相应的 MCU 预定义宏被删除
- **更改:调整某些配置的显示名称**,如 **项目依赖** 更改为 **项目属性**
- 更改:使用 Linux VT100 颜色代码添加更完备的编译输出日志高亮(**win10 以下的系统可能不支持**;可通过向插件配置 `Builder.AdditionalCommandLine` 添加 `-no-color` 关闭色彩输出)
- **更改:支持为 Armcc v5/v6 工具链单独设置编译器路径,同时保留旧的 MDK TOOLS.INI 设置方法**
- 更改:生成 *.obj 时,根据相对路径将 obj 生成至相应的文件夹树中(若有无法计算相对路径的文件,统一生成至 `obj` 目录)
- 优化:当烧录选项 `程序文件` 为空时,使用默认的程序文件路径(ui 上显示为 `${projectName}.hex`)
- 优化:允许带空格的虚拟文件夹命名
- 优化:项目资源文件夹树排序显示
- 优化:读取完 JLink Device 列表后,删除临时文件
- 优化:调整构建工具的 Log 显示
- 优化 CMSIS Wizard UI:使被禁用的子项表单控件无法被选中
- 优化 CMSIS Wizard UI:调整布局,优化 vscode 主题颜色适配
- 优化 完善 CMSIS Wizard 的语法支持程度
***

### [v2.14.0]
- 优化:增加一些编译器预定义宏
- 优化:优化 Builder Config UI,修复选项卡阴影区域显示不正常的问题
- 新增:支持显示源文件的头文件引用,默认开启,可在插件设置中关闭
- 新增:增加 [CMSIS Configuration Wizard](https://arm-software.github.io/CMSIS_5/Pack/html/configWizard.html) 功能。 打开带有 CMSIS Config 格式的头文件,右键菜单选择 `CMSIS Configuration Wizard` 即可打开配置UI
![preview](./img/cmsis_wizard_preview.png)
- 新增:增加 [CMSIS Configuration Wizard](https://arm-software.github.io/CMSIS_5/Pack/html/configWizard.html) 功能。 打开带有 CMSIS Config 格式的头文件,右键菜单选择 `CMSIS Configuration Wizard` 即可打开配置UI,[文档](https://docs.em-ide.com/#/zh-cn/cmsis_wizard)
***

### [v2.13.0]
Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

## 功能特性 🎉

* 支持 8051,STM8,Cortex-M,RISC-V 项目
* 支持开发 8051,STM8,Cortex-M,RISC-V 项目
* 支持导入 KEIL 项目 (仅支持 KEIL 5 及以上版本)
* 支持安装标准的 KEIL 芯片支持包 (仅用于 Cortex-M 项目)
* 提供丰富的项目模板方便快速开始项目
Expand All @@ -30,6 +30,8 @@
* 内置的串口监视器,一键打开串口
* 支持使用 Cppcheck 对项目进行静态检查
* 自动生成默认调试配置,为调试器插件 Cortex-debug / STM8-debug 生成默认配置
* 支持编写 js 脚本来导入任意的 IDE 项目源文件资源
* 内置多种实用工具,`CMSIS Config Wizard UI`, `反汇编查看`,`程序资源视图` ...

***

Expand Down
6 changes: 3 additions & 3 deletions lang/arm.v5.verify.json
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@
},
"optimize-for-time": {
"markdownDescription": "Optimize for time",
"description.zh-cn": "代码时间优化",
"description.zh-cn": "Optimize for time",
"type": "boolean",
"enum": [
true,
Expand Down Expand Up @@ -233,7 +233,7 @@
},
"strict-ANSI-C": {
"markdownDescription": "strict ANSI C",
"description.zh-cn": "使用标准(严格)的 ANSI C",
"description.zh-cn": "strict ANSI C",
"type": "boolean",
"enum": [
true,
Expand Down Expand Up @@ -430,4 +430,4 @@
}
}
}
}
}
9 changes: 9 additions & 0 deletions lang/axf.info.language-configuration.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"comments": {
"lineComment": ";"
},
"indentationRules": {
"increaseIndentPattern": "^[a-zA-Z_]\\w*\\s*:\\s*",
"decreaseIndentPattern": "^[a-zA-Z_]\\w*\\s*:\\s*"
}
}
59 changes: 59 additions & 0 deletions lang/axf.info.tmLanguage.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
{
"information_for_contributors": [
"armcc axf information"
],
"version": "1.0.0",
"name": "axf.info",
"scopeName": "source.axf.info",
"patterns": [
{
"include": "#elf_header"
},
{
"include": "#keyword"
},
{
"include": "#number"
},
{
"include": "#string"
}
],
"repository": {
"elf_header": {
"match": "^\\s*([\\w\\/][\\w\\/\\s]+):",
"captures": {
"1": {
"name": "entity.name.type"
}
}
},
"keyword": {
"match": "\\(([A-Z_]+)\\)|(SHF_[\\w]+|PF_[\\w]+)",
"captures": {
"1": {
"name": "keyword.control.import"
},
"2": {
"name": "keyword.control.import"
}
}
},
"number": {
"match": "\\b([0-9a-f]+H|0x[0-9a-f]+|[0-9a-f]+)\\b",
"captures": {
"1": {
"name": "constant.numeric"
}
}
},
"string": {
"match": "(\"[^\"]*\"|'[^']*')",
"captures": {
"1": {
"name": "string"
}
}
}
}
}
9 changes: 9 additions & 0 deletions lang/elf.info.language-configuration.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"comments": {
"lineComment": ";"
},
"indentationRules": {
"increaseIndentPattern": "^[a-zA-Z_]\\w*\\s*:\\s*",
"decreaseIndentPattern": "^[a-zA-Z_]\\w*\\s*:\\s*"
}
}
48 changes: 48 additions & 0 deletions lang/elf.info.tmLanguage.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{
"information_for_contributors": [
"gnu elf information"
],
"version": "1.0.0",
"name": "elf.info",
"scopeName": "source.elf.info",
"patterns": [
{
"include": "#elf_header"
},
{
"include": "#number"
},
{
"include": "#string"
}
],
"repository": {
"elf_header": {
"match": "^\\s*([\\w\\/][\\w\\/\\s]+):\\s+(.*)",
"captures": {
"1": {
"name": "entity.name.type"
},
"2": {
"name": "string"
}
}
},
"number": {
"match": "\\b([0-9a-f]+H|0x[0-9a-f]+|[0-9a-f]+)\\b",
"captures": {
"1": {
"name": "constant.numeric"
}
}
},
"string": {
"match": "(\"[^\"]*\"|'[^']*')",
"captures": {
"1": {
"name": "string"
}
}
}
}
}
2 changes: 1 addition & 1 deletion lang/stm8.iar.verify.json
Original file line number Diff line number Diff line change
Expand Up @@ -504,7 +504,7 @@
"linker-config": {
"readable_name": "Linker config file path",
"readable_name.zh-cn": "链接脚本路径",
"description": "linker config file path.\n Example: \"lnkstm8xxx.icf\"\n or \"./lnkstm8xxx.icf\" (relative by workspace folder)\n or \"${ToolDir}/stm8/config/lnkstm8xxx.icf\"",
"description": "linker config file path.\n Example: \"lnkstm8xxx.icf\"\n or \"./lnkstm8xxx.icf\" (relative by workspace folder)\n or \"${ToolchainRoot}/stm8/config/lnkstm8xxx.icf\"",
"type": "string",
"default": "lnkstm8s103f3.icf"
},
Expand Down
2 changes: 1 addition & 1 deletion lib/node-utility
Submodule node-utility updated 1 files
+18 −21 File.ts
Loading