A while back I posted this post:
https://guysherman.com/2015/08/22/towards-a-cross-platform-cc-dev-environment/
At the time I was using GCC as my compiler, so I was using:
linter-gcc
and autocomplete-clang
. I found the GCC linter a bit flakey, and to be honest, GCC’s error messages are just the worst. So, I decided to move to Clang as my compiler and have switched to linter-clang
. One of the nice things here is I now only need the .clang_complete file to supply options to Clang, which makes life a little simpler. The whole thing seems a great deal more reliable now. I also found out that the directives in the .clang_complete file need to be on separate lines.
Also, at some point the atom-build plugin changed so that I need to put fully-qualified paths into all my build commands, there is a way to put variables in there, so here’s what I have now:
{ "cmd": "{PROJECT_PATH}/waf", "name": "Build", "sh": "true", "cwd": "{PROJECT_PATH}", "targets": { "Clean" : { "cmd": "{PROJECT_PATH}/waf clean", "sh": "true" } //... } }
I’ve dispensed with the atom-debugger
plugin, because it wasn’t mature enough, plus I feel hardcore using a command-line debugger!
A couple of other plugins I use are:
atom-snippets
to have a preamble template when I create new filesopen-terminal-here
to make it quick to open a terminal window to do things like interacting with git, and debugging.
Finally, I found a neat theme which is inspired by Google’s Material Design design-language, you need two packages for it:
- atom-material-ui
- atom-material-syntax
So, this brings the package list to:
- atom-snippets
- autocomplete-clang
- autocomplete-plus
- build
- linter
- linter-clang
- open-terminal-here
- switch-header-source
- atom-material-ui
- atom-material-syntax