Files
MySensors/projects/SublimeText/MySensors.sublime-project
Patrick Fallberg 2d5404de97 CppCheck cleanup (#975)
* Add support for inline cppcheck suppressions
* Clean out all known cppcheck issues
* Terminate toll-gate on found cppcheck issues
2017-11-07 20:37:36 +01:00

162 lines
6.5 KiB
Plaintext

{
"folders":
[
{
"path": "..\\..\\"
}
],
"settings":
{
// Plugins that are nice to have but does not require any project specific settings:
// PackageControl (https://packagecontrol.io/installation) Practically mandatory if you indend to install plugins
// EditorConfig (https://github.com/sindresorhus/editorconfig-sublime) Automatically apply the default MySensors file encoding and settings
// DoxyDoxygen (https://github.com/20Tauri/DoxyDoxygen) Helps writig Doxygen tags and allows to generate documentation
// BracketHighlighter (https://github.com/facelessuser/BracketHighlighter) Highlights any type of brackets and provides easy navigation between them
// GitGutter (https://github.com/jisaacks/GitGutter) Provides access to file diffs through the gutter area
// OpenInclude (https://github.com/titoBouzout/Open-Include) Allows opening header files found in project without having to look them up
// SideBarEnhancements (https://github.com/SideBarEnhancements-org/SideBarEnhancements) Enhances the sidebar
// SyncedSideBar (https://github.com/TheSpyder/SyncedSideBar) Syncs the sidebar to the currently opened file
// EasyClangComplete is a clang based plugin that provides autocompletion features.
// Installation instructions is available here: https://github.com/niosus/EasyClangComplete
// MySensors core library uses some coding style rules. Artistic Style can be used to format the code according to these rules
// The below settings enable automatic formatting of the code upon saving in Sublime Text
// Artistic Style is avaliable here: http://astyle.sourceforge.net
// The plugin is available here: https://github.com/timonwong/SublimeAStyleFormatter
// The coding style is documented here: https://www.mysensors.org/download/contributing
"AStyleFormatter":
{
"debug": false,
"autoformat_on_save": true,
"options_c":
{
"additional_options_file": "$project_path/../../.mystools/astyle/config/style.cfg",
"use_only_additional_options": true
},
"options_c++":
{
"additional_options_file": "$project_path/../../.mystools/astyle/config/style.cfg",
"use_only_additional_options": true
},
},
"rulers": [100],
},
// MySensors core library uses cppcheck to do static code analysis.
// The below settings enable cppcheck as a linter for automatic code analysis during development.
// cppcheck is avaliable here: http://cppcheck.sourceforge.net
// The plugin is available here: https://github.com/SublimeLinter/SublimeLinter-cppcheck
// The framework for the plugin is available here: https://sublimelinter.readthedocs.io/en/latest/installation.html
"SublimeLinter":
{
"linters":
{
"cppcheck":
{
"@disable": false,
"args": ["--force", "--library=avr",
"--suppressions-list=$project_path/../../.mystools/cppcheck/config/suppressions.cfg",
"-I$project_path/../../", "-I$project_path/../../core",
// Arduino IDE hardware location might differ on your system...
"-I$project_path/../../../../../Apps/arduino/hardware/tools/avr/avr/include",
"-DCPPCHECK", "--language=c++", "--inline-suppr"],
"enable": "style,information",
"excludes": [],
"std": []
},
}
},
// The project defines build targets for all Arduino based boards supported by MySensors.
// The plugin needed to do the build (which require the Arduino IDE to be installed) is
// available here: https://github.com/jacobrosenthal/arduino-cli
// You also need to make sure you set up sketch book paths properly and that you can
// build sketches and examples for the MySensors library in the IDE.
"build_systems":
[
{
"name": "MySensors",
"file_regex": "^(?'filename'.*.ino).*$",
"line_regex": "^.*:(?'line number'[0-9]+)(: )(?'error message'.*)$",
"selector": "source.arduino",
"shell": true,
"target": "arduinocli",
"variants":
[
{
"cmd": ["--board","MySensors:samd:mysensors_gw_native","--verify","$file"],
"name": "just build (SenseBenderGW)"
},
{
"cmd": ["--board","MySensors:samd:mysensors_gw_native","--upload","$file"],
"name": "build and upload (SenseBenderGW)"
},
{
"cmd": ["--board","MySensors:avr:MysensorsMicro:cpu=8Mhz","--verify","$file"],
"name": "just build (SenseBenderMicro 8Mhz)"
},
{
"cmd": ["--board","MySensors:avr:MysensorsMicro:cpu=8Mhz","--upload","$file"],
"name": "build and upload (SenseBenderMicro 8Mhz)"
},
{
"cmd": ["--board","MySensors:avr:MysensorsMicro:cpu=1Mhz","--verify","$file"],
"name": "just build (SenseBenderMicro 1Mhz)"
},
{
"cmd": ["--board","MySensors:avr:MysensorsMicro:cpu=1Mhz","--upload","$file"],
"name": "build and upload (SenseBenderMicro 1Mhz)"
},
{
"cmd": ["--board","arduino:avr:pro:cpu=8MHzatmega328","--verify","$file"],
"name": "just build (ArduinoProMini 3.3V)"
},
{
"cmd": ["--board","arduino:avr:pro:cpu=8MHzatmega328","--upload","$file"],
"name": "build and upload (ArduinoProMini 3.3V)"
},
{
"cmd": ["--board","arduino:avr:pro:cpu=16MHzatmega328","--verify","$file"],
"name": "just build (ArduinoProMini 5V)"
},
{
"cmd": ["--board","arduino:avr:pro:cpu=16MHzatmega328","--upload","$file"],
"name": "build and upload (ArduinoProMini 5V)"
},
{
"cmd": ["--board","arduino:avr:nano:cpu=atmega328","--verify","$file"],
"name": "just build (ArduinoNano)"
},
{
"cmd": ["--board","arduino:avr:nano:cpu=atmega328","--upload","$file"],
"name": "build and upload (ArduinoNano)"
},
{
"cmd": ["--board","arduino:avr:uno","--verify","$file"],
"name": "just build (ArduinoUno)"
},
{
"cmd": ["--board","arduino:avr:uno","--upload","$file"],
"name": "build and upload (ArduinoUno)"
},
{
"cmd": ["--board","arduino:avr:mega:cpu=atmega2560","--verify","$file"],
"name": "just build (ArduinoMega)"
},
{
"cmd": ["--board","arduino:avr:mega:cpu=atmega2560","--upload","$file"],
"name": "build and upload (ArduinoMega)"
},
{
"cmd": ["--board","esp8266:esp8266:generic:CpuFrequency=80,FlashFreq=40,FlashMode=dio,UploadSpeed=115200,FlashSize=512K64,ResetMethod=ck,Debug=Disabled,DebugLevel=None____","--verify","$file"],
"name": "just build (ESP8266)"
},
{
"cmd": ["--board","esp8266:esp8266:generic:CpuFrequency=80,FlashFreq=40,FlashMode=dio,UploadSpeed=115200,FlashSize=512K64,ResetMethod=ck,Debug=Disabled,DebugLevel=None____","--upload","$file"],
"name": "build and upload (ESP8266)"
},
]
}
],
}