+
File path with your configurable header. E.g. your company license. It will be inserted at the beginning of the template
@@ -4650,6 +4656,8 @@ Simulation
config["general"]["general"]["developer_mode"] = element_value
config["documentation"] = {}
config["documentation"]["general"] = {}
+ element_value = document.getElementById("documentation-general-docLink").value;
+ config["documentation"]["general"]["docLink"] = element_value
element_value = document.getElementById("documentation-general-language").value;
config["documentation"]["general"]["language"] = element_value
element_value = document.getElementById("documentation-general-symbol_vhdl").value;
@@ -4684,6 +4692,8 @@ Simulation
config["documentation"]["general"]["magic_config_path"] = element_value
config["editor"] = {}
config["editor"]["general"] = {}
+ element_value = document.getElementById("editor-general-docLink").value;
+ config["editor"]["general"]["docLink"] = element_value
element_value = document.getElementById("editor-general-stutter_comment_shortcuts").checked;
config["editor"]["general"]["stutter_comment_shortcuts"] = element_value
element_value = parseInt(document.getElementById("editor-general-stutter_block_width").value, 10);
@@ -4696,6 +4706,8 @@ Simulation
config["editor"]["general"]["stutter_bracket_shortcuts"] = element_value
config["formatter"] = {}
config["formatter"]["general"] = {}
+ element_value = document.getElementById("formatter-general-docLink").value;
+ config["formatter"]["general"]["docLink"] = element_value
element_value = document.getElementById("formatter-general-formatter_verilog").value;
config["formatter"]["general"]["formatter_verilog"] = element_value
element_value = document.getElementById("formatter-general-formatter_vhdl").value;
@@ -4753,6 +4765,8 @@ Simulation
config["formatter"]["svg"]["aditional_arguments"] = element_value
config["linter"] = {}
config["linter"]["general"] = {}
+ element_value = document.getElementById("linter-general-docLink").value;
+ config["linter"]["general"]["docLink"] = element_value
element_value = document.getElementById("linter-general-linter_vhdl").value;
config["linter"]["general"]["linter_vhdl"] = element_value
element_value = document.getElementById("linter-general-linter_verilog").value;
@@ -4788,6 +4802,8 @@ Simulation
config["linter"]["vsg"]["arguments"] = element_value
config["schematic"] = {}
config["schematic"]["general"] = {}
+ element_value = document.getElementById("schematic-general-docLink").value;
+ config["schematic"]["general"]["docLink"] = element_value
element_value = document.getElementById("schematic-general-backend").value;
config["schematic"]["general"]["backend"] = element_value
element_value = document.getElementById("schematic-general-extra").value;
@@ -4798,6 +4814,8 @@ Simulation
config["schematic"]["general"]["args_ghdl"] = element_value
config["templates"] = {}
config["templates"]["general"] = {}
+ element_value = document.getElementById("templates-general-docLink").value;
+ config["templates"]["general"]["docLink"] = element_value
element_value = document.getElementById("templates-general-header_file_path").value;
config["templates"]["general"]["header_file_path"] = element_value
element_value = document.getElementById("templates-general-indent").value;
@@ -5268,6 +5286,7 @@ Simulation
document.getElementById("general-general-go_to_definition_vhdl").checked = config["general"]["general"]["go_to_definition_vhdl"];
document.getElementById("general-general-go_to_definition_verilog").checked = config["general"]["general"]["go_to_definition_verilog"];
document.getElementById("general-general-developer_mode").checked = config["general"]["general"]["developer_mode"];
+ document.getElementById("documentation-general-docLink").value = config["documentation"]["general"]["docLink"];
document.getElementById("documentation-general-language").value = config["documentation"]["general"]["language"];
document.getElementById("documentation-general-symbol_vhdl").value = config["documentation"]["general"]["symbol_vhdl"];
document.getElementById("documentation-general-symbol_verilog").value = config["documentation"]["general"]["symbol_verilog"];
@@ -5284,11 +5303,13 @@ Simulation
document.getElementById("documentation-general-functions").value = config["documentation"]["general"]["functions"];
document.getElementById("documentation-general-tasks").value = config["documentation"]["general"]["tasks"];
document.getElementById("documentation-general-magic_config_path").value = config["documentation"]["general"]["magic_config_path"];
+ document.getElementById("editor-general-docLink").value = config["editor"]["general"]["docLink"];
document.getElementById("editor-general-stutter_comment_shortcuts").checked = config["editor"]["general"]["stutter_comment_shortcuts"];
document.getElementById("editor-general-stutter_block_width").value = config["editor"]["general"]["stutter_block_width"];
document.getElementById("editor-general-stutter_max_width").value = config["editor"]["general"]["stutter_max_width"];
document.getElementById("editor-general-stutter_delimiters").checked = config["editor"]["general"]["stutter_delimiters"];
document.getElementById("editor-general-stutter_bracket_shortcuts").checked = config["editor"]["general"]["stutter_bracket_shortcuts"];
+ document.getElementById("formatter-general-docLink").value = config["formatter"]["general"]["docLink"];
document.getElementById("formatter-general-formatter_verilog").value = config["formatter"]["general"]["formatter_verilog"];
document.getElementById("formatter-general-formatter_vhdl").value = config["formatter"]["general"]["formatter_vhdl"];
document.getElementById("formatter-istyle-style").value = config["formatter"]["istyle"]["style"];
@@ -5314,6 +5335,7 @@ Simulation
document.getElementById("formatter-svg-configuration").value = config["formatter"]["svg"]["configuration"];
document.getElementById("formatter-svg-core_number").value = config["formatter"]["svg"]["core_number"];
document.getElementById("formatter-svg-aditional_arguments").value = config["formatter"]["svg"]["aditional_arguments"];
+ document.getElementById("linter-general-docLink").value = config["linter"]["general"]["docLink"];
document.getElementById("linter-general-linter_vhdl").value = config["linter"]["general"]["linter_vhdl"];
document.getElementById("linter-general-linter_verilog").value = config["linter"]["general"]["linter_verilog"];
document.getElementById("linter-general-lstyle_verilog").value = config["linter"]["general"]["lstyle_verilog"];
@@ -5327,10 +5349,12 @@ Simulation
document.getElementById("linter-vivado-vhdl_arguments").value = config["linter"]["vivado"]["vhdl_arguments"];
document.getElementById("linter-vivado-verilog_arguments").value = config["linter"]["vivado"]["verilog_arguments"];
document.getElementById("linter-vsg-arguments").value = config["linter"]["vsg"]["arguments"];
+ document.getElementById("schematic-general-docLink").value = config["schematic"]["general"]["docLink"];
document.getElementById("schematic-general-backend").value = config["schematic"]["general"]["backend"];
document.getElementById("schematic-general-extra").value = config["schematic"]["general"]["extra"];
document.getElementById("schematic-general-args").value = config["schematic"]["general"]["args"];
document.getElementById("schematic-general-args_ghdl").value = config["schematic"]["general"]["args_ghdl"];
+ document.getElementById("templates-general-docLink").value = config["templates"]["general"]["docLink"];
document.getElementById("templates-general-header_file_path").value = config["templates"]["general"]["header_file_path"];
document.getElementById("templates-general-indent").value = config["templates"]["general"]["indent"];
document.getElementById("templates-general-clock_generation_style").value = config["templates"]["general"]["clock_generation_style"];
@@ -5526,6 +5550,11 @@ Simulation
}
document.getElementById("mark_general-general-developer_mode").innerHTML = mark;
mark = "";
+ if (projectName !== undefined && config["documentation"]["general"]["docLink"] != undefined) {
+ mark = MODIFIEDMSG;
+ }
+ document.getElementById("mark_documentation-general-docLink").innerHTML = mark;
+ mark = "";
if (projectName !== undefined && config["documentation"]["general"]["language"] != undefined) {
mark = MODIFIEDMSG;
}
@@ -5606,6 +5635,11 @@ Simulation
}
document.getElementById("mark_documentation-general-magic_config_path").innerHTML = mark;
mark = "";
+ if (projectName !== undefined && config["editor"]["general"]["docLink"] != undefined) {
+ mark = MODIFIEDMSG;
+ }
+ document.getElementById("mark_editor-general-docLink").innerHTML = mark;
+ mark = "";
if (projectName !== undefined && config["editor"]["general"]["stutter_comment_shortcuts"] != undefined) {
mark = MODIFIEDMSG;
}
@@ -5631,6 +5665,11 @@ Simulation
}
document.getElementById("mark_editor-general-stutter_bracket_shortcuts").innerHTML = mark;
mark = "";
+ if (projectName !== undefined && config["formatter"]["general"]["docLink"] != undefined) {
+ mark = MODIFIEDMSG;
+ }
+ document.getElementById("mark_formatter-general-docLink").innerHTML = mark;
+ mark = "";
if (projectName !== undefined && config["formatter"]["general"]["formatter_verilog"] != undefined) {
mark = MODIFIEDMSG;
}
@@ -5756,6 +5795,11 @@ Simulation
}
document.getElementById("mark_formatter-svg-aditional_arguments").innerHTML = mark;
mark = "";
+ if (projectName !== undefined && config["linter"]["general"]["docLink"] != undefined) {
+ mark = MODIFIEDMSG;
+ }
+ document.getElementById("mark_linter-general-docLink").innerHTML = mark;
+ mark = "";
if (projectName !== undefined && config["linter"]["general"]["linter_vhdl"] != undefined) {
mark = MODIFIEDMSG;
}
@@ -5821,6 +5865,11 @@ Simulation
}
document.getElementById("mark_linter-vsg-arguments").innerHTML = mark;
mark = "";
+ if (projectName !== undefined && config["schematic"]["general"]["docLink"] != undefined) {
+ mark = MODIFIEDMSG;
+ }
+ document.getElementById("mark_schematic-general-docLink").innerHTML = mark;
+ mark = "";
if (projectName !== undefined && config["schematic"]["general"]["backend"] != undefined) {
mark = MODIFIEDMSG;
}
@@ -5841,6 +5890,11 @@ Simulation
}
document.getElementById("mark_schematic-general-args_ghdl").innerHTML = mark;
mark = "";
+ if (projectName !== undefined && config["templates"]["general"]["docLink"] != undefined) {
+ mark = MODIFIEDMSG;
+ }
+ document.getElementById("mark_templates-general-docLink").innerHTML = mark;
+ mark = "";
if (projectName !== undefined && config["templates"]["general"]["header_file_path"] != undefined) {
mark = MODIFIEDMSG;
}
diff --git a/src/colibri/toolChecker/utils.ts b/src/colibri/toolChecker/utils.ts
index 4c8e2bac..b3fb7e96 100644
--- a/src/colibri/toolChecker/utils.ts
+++ b/src/colibri/toolChecker/utils.ts
@@ -16,10 +16,9 @@
// You should have received a copy of the GNU General Public License
// along with TerosHDL. If not, see .
-import { OS } from 'colibri/process/common';
-import { Process } from 'colibri/process/process';
-import { get_os } from 'colibri/process/utils';
-import { check_if_directory, check_if_path_exist, get_directory } from 'colibri/utils/file_utils';
+import { OS } from '../process/common';
+import { Process } from '../process/process';
+import { get_os } from '../process/utils';
import { join } from 'path';
import * as path from 'path';
diff --git a/src/teroshdl/features/configChecker/externalTools.ts b/src/teroshdl/features/configChecker/externalTools.ts
index b3779437..f0e37b6d 100644
--- a/src/teroshdl/features/configChecker/externalTools.ts
+++ b/src/teroshdl/features/configChecker/externalTools.ts
@@ -24,6 +24,8 @@ import {
import { appendMsg, buildTitle, INTROICON, replaceByResult } from './utils';
import { checkBinary } from 'colibri/toolChecker/utils';
+const HELP = 'https://terostechnology.github.io/terosHDLdoc/docs/external_tools/';
+
export async function checkExternalToolManager(currentConfig: e_config) {
const selectedTool = currentConfig.tools.general.select_tool;
const executionMode = currentConfig.tools.general.execution_mode;
@@ -33,7 +35,7 @@ export async function checkExternalToolManager(currentConfig: e_config) {
let msg = '';
- msg += buildTitle('Checking External Tool Configuration');
+ msg += buildTitle('Checking External Tool Configuration', HELP);
// Check external tool
msg += `${INTROICON} Selected external tool: ${selectedTool.toLocaleUpperCase()}. Installation path: "${installationPath}"\n`;
diff --git a/src/teroshdl/features/configChecker/formatter.ts b/src/teroshdl/features/configChecker/formatter.ts
index b88d6cbf..7b7e2041 100644
--- a/src/teroshdl/features/configChecker/formatter.ts
+++ b/src/teroshdl/features/configChecker/formatter.ts
@@ -20,11 +20,13 @@ import { LANGUAGE } from 'colibri/common/general';
import { Formatter_manager } from '../formatter';
import { appendMsg, buildTitle, INTROICON, replaceByResult } from './utils';
+const HELP = 'https://terostechnology.github.io/terosHDLdoc/docs/guides/formatter';
+
export async function checkFormatter(formatterManager: Formatter_manager) {
let msg = '';
let isOk = true;
- msg += buildTitle('Checking Formatter configuration');
+ msg += buildTitle('Checking Formatter configuration', HELP);
const formatterVhdl = formatterManager.formatterVhdl;
const formatterVerilog = formatterManager.formatterVerilog;
diff --git a/src/teroshdl/features/configChecker/generalConfig.ts b/src/teroshdl/features/configChecker/generalConfig.ts
index 7c964814..86e150e1 100644
--- a/src/teroshdl/features/configChecker/generalConfig.ts
+++ b/src/teroshdl/features/configChecker/generalConfig.ts
@@ -21,13 +21,15 @@ import { appendMsg, BADICON, buildTitle, INTROICON, OKICON, replaceByResult } fr
import { get_python_path, check_python_package } from 'colibri/process/python';
import { checkBinary } from 'colibri/toolChecker/utils';
+const HELP = 'https://terostechnology.github.io/terosHDLdoc/docs/category/installation-checklist';
+
export async function checkGeneralConfig(currentConfig: e_config): Promise {
const installationPath = currentConfig.general.general.makepath;
let isOk = true;
let msg = '';
- msg += buildTitle('Checking general configuration');
+ msg += buildTitle('Checking general configuration', HELP);
// Check make
msg += `${INTROICON} Checking make. This tool is used to run some external tools. Current configured installation path: "${installationPath}"\n`;
diff --git a/src/teroshdl/features/configChecker/linter.ts b/src/teroshdl/features/configChecker/linter.ts
index ea7e1a53..bc919118 100644
--- a/src/teroshdl/features/configChecker/linter.ts
+++ b/src/teroshdl/features/configChecker/linter.ts
@@ -26,11 +26,13 @@ import {
import { Linter_manager } from '../linter';
import { buildTitle, appendMsg, replaceByResult, INTROICON } from './utils';
+const HELP = 'https://terostechnology.github.io/terosHDLdoc/docs/guides/linter';
+
export async function checkLinter(linterManager: Linter_manager) {
let isOk = true;
let msg = '';
- msg += buildTitle('Checking Linter configuration');
+ msg += buildTitle('Checking Linter configuration', HELP);
const vhdlErrorLinter = linterManager.vhdlErrorLinter;
const verilogErrorLinter = linterManager.verilogErrorLinter;
diff --git a/src/teroshdl/features/configChecker/manager.ts b/src/teroshdl/features/configChecker/manager.ts
index 520c74e4..0b52fdc0 100644
--- a/src/teroshdl/features/configChecker/manager.ts
+++ b/src/teroshdl/features/configChecker/manager.ts
@@ -67,7 +67,7 @@ async function verifySetup(
) {
const currentConfig = getConfig(multiProjectManager);
- let msg = '';
+ let msg = '\n';
msg += await checkGeneralConfig(currentConfig);
msg += await checkLinter(linterManager);
msg += await checkExternalToolManager(currentConfig);
diff --git a/src/teroshdl/features/configChecker/schematic.ts b/src/teroshdl/features/configChecker/schematic.ts
index 7a62823d..4d58378a 100644
--- a/src/teroshdl/features/configChecker/schematic.ts
+++ b/src/teroshdl/features/configChecker/schematic.ts
@@ -20,6 +20,8 @@ import { e_config, e_schematic_general_backend } from 'colibri/config/config_dec
import { appendMsg, buildTitle, INTROICON, replaceByResult } from './utils';
import { checkBinary } from 'colibri/toolChecker/utils';
+export const HELP = 'https://terostechnology.github.io/terosHDLdoc/docs/guides/schematic_viewer/installation';
+
export async function checkSchematic(currentConfig: e_config) {
let isOk = true;
const backend = currentConfig.schematic.general.backend;
@@ -30,7 +32,7 @@ export async function checkSchematic(currentConfig: e_config) {
let msg = '';
- msg += buildTitle('Checking Schematic configuration');
+ msg += buildTitle('Checking Schematic configuration', HELP);
let extraMsg = '';
if (backend === e_schematic_general_backend.yowasp || backend === e_schematic_general_backend.yosys) {
diff --git a/src/teroshdl/features/configChecker/utils.ts b/src/teroshdl/features/configChecker/utils.ts
index ca5e4316..1dcada02 100644
--- a/src/teroshdl/features/configChecker/utils.ts
+++ b/src/teroshdl/features/configChecker/utils.ts
@@ -28,8 +28,8 @@ const MSGSEPARATOR = '*************************************************';
const RESULTSTR = 'TEROSHDLRESULT';
-export function buildTitle(title: string): string {
- return `${MSGSEPARATOR}\n${title} ${RESULTSTR}\n${MSGSEPARATOR}\n`;
+export function buildTitle(title: string, help: string): string {
+ return `${MSGSEPARATOR}\n${title} (${help}) ${RESULTSTR}\n${MSGSEPARATOR}\n`;
}
export function appendMsg(result: BinaryCheck, msg: string, displayGroup: string, extraIndent: string = '') {