diff --git a/HISTORY.rst b/HISTORY.rst index 3db54e6c..2f435338 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -4,9 +4,12 @@ Release Notes PlatformIO 2.0 -------------- -2.7.2 (2016-01-??) +2.8.0 (2016-01-??) ~~~~~~~~~~~~~~~~~~ +* `PlatformIO IDE `_ for + Atom + (`issue #470 `_) * Added ``pio`` command line alias for ``platformio`` command (`issue #447 `_) * Added SPL-Framework support for Nucleo F401RE board diff --git a/README.rst b/README.rst index e5c9ac2c..0120a23d 100644 --- a/README.rst +++ b/README.rst @@ -93,7 +93,7 @@ settings for most popular `Embedded Boards `_. * Colourful `command-line output `_ * `IDE Integration `_ with - *Arduino, Eclipse, Emacs, Energia, Qt Creator, Sublime Text, Vim, Visual Studio* + *Arduino, Atom, Eclipse, Emacs, Energia, Qt Creator, Sublime Text, Vim, Visual Studio* * Cloud compiling and `Continuous Integration `_ with *AppVeyor, Circle CI, Drone, Shippable, Travis CI* * Built-in `Serial Port Monitor `_ and configurable @@ -171,6 +171,7 @@ Frameworks: * `Energia `_ * `SPL `_ * `mbed `_ +* `WiringPi `_ For further details, please refer to `What is PlatformIO? `_ diff --git a/docs/_static/ide-atom-platformio.png b/docs/_static/ide-atom-platformio.png new file mode 100644 index 00000000..b4764138 Binary files /dev/null and b/docs/_static/ide-atom-platformio.png differ diff --git a/docs/ide/atom.rst b/docs/ide/atom.rst index d4fa0c5b..cd6c48b9 100644 --- a/docs/ide/atom.rst +++ b/docs/ide/atom.rst @@ -11,69 +11,92 @@ .. _ide_atom: -Atom -==== +PlatformIO IDE for Atom +======================= `Atom `_ is a text editor that's modern, approachable, yet hackable to the core—a tool you can customize to do anything but also use productively without ever touching a config file. -This software can be used with: +PlatformIO IDE for `Atom `_ is the missing integrated +development environment which provides comprehensive facilities +for IoT development: -* all available :ref:`platforms` -* all available :ref:`frameworks` +* Cross-platform builder without external dependencies to the system + software: -Refer to the `Atom Documentation `_ -page for more detailed information. + - 200+ embedded boards + - 15+ development platforms + - 10+ frameworks + +* C/C++ `Intelligent code completion `_ +* C/C++ `Code Linter `_ +* Library Manager +* Built-in Terminal .. contents:: -Integration ------------ +Requirements +------------ -There is Atom based `platomformio `_ -package which can be installed `Using Atom Packages `_. +The only one requirement is `Python Interpreter `_. +PlatformIO is written in Python and works on Mac OS X, Linux, Windows OS and +ARM-based credit-card sized computers (Raspberry Pi, BeagleBone, CubieBoard). -If you have ``clang`` installed in your system (is installed by default in Mac -OS X), you can enable completions using -`autocomplete-clang `_ package. -This package requires ``.clang_complete`` file and PlatformIO can generate it. +.. attention:: + **Windows Users**: Please `Download the latest Python 2.7.x + `_ and install it. + **DON'T FORGET** to select ``Add python.exe to Path`` feature on the + "Customize" stage, otherwise ``python`` command will not be available. -Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer `_ -command and generate project via :option:`platformio init --ide` command: +Installation +------------ -.. code-block:: shell +1. Download and install `Atom `_ text editor +2. Install `platformio-ide `_ package + using: - platformio init --ide atom --board %TYPE% + - **Mac OS X**: ``Menu: Atom > Preferences > Install`` + - **Other OS**: ``Menu: File > Settings > Install`` - # For example, generate project for Arduino UNO - platformio init --ide atom --board uno +User Guide +---------- -.. warning:: - The libraries which are added, installed or used in the project - after generating process wont be reflected in IDE. To fix it you - need to reinitialize project using :ref:`cmd_init` (repeat it). +Building / Uploading / etc. +~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Articles / Manuals ------------------- +* ``cmd-alt-b`` / ``ctrl-alt-b`` / ``f9`` builds project without auto-uploading. +* ``cmd-alt-u`` / ``ctrl-alt-u`` builds and uploads (if no errors). +* ``cmd-alt-c`` / ``ctrl-alt-c`` cleans compiled objects. +* ``cmd-alt-t`` / ``ctrl-alt-t`` / ``f7`` run other targets (Upload using Programmer, Upload SPIFFS image, Update platforms and libraries). +* ``cmd-alt-g`` / ``ctrl-alt-g`` / ``f4`` cycles through causes of build error. +* ``cmd-alt-h`` / ``ctrl-alt-h`` / ``shift-f4`` goes to the first build error. +* ``cmd-alt-v`` / ``ctrl-alt-v`` / ``f8`` toggles the build panel. +* ``escape`` terminates build / closes the build window. -* Jan 16, 2016 - **Dani Eichhorn** - `ESP8266 Arduino IDE Alternative: PlatformIO `_ -* Dec 22, 2015 - **Jan Penninkhof** - `Over-the-Air ESP8266 programming using PlatformIO `_ -* Jul 20, 2015 - **Eli Fatsi** - `Arduino Development in Atom Editor `_ +More details `Atom Build package `_. -See more :ref:`articles`. +Code completion and Linting +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +PlatformIO IDE uses `clang `_ for the code completion +and linting. To check that ``clang`` is available in your system, please open +Terminal and run ``clang --version``. If ``clang`` is not installed, then install it: + +- **Mac OS X**: Install the latest Xcode along with the latest Command Line Tools + (they are installed automatically when you run ``clang`` in Terminal for the + first time, or manually by running ``xcode-select --install`` +- **Windows**: Download the latest `Clang for Windows `_. + Please select "Add to PATH" option on the installation step. +- **Linux**: Using package managers: ``apt-get install clang`` or ``yum install clang``. +- **Other Systems**: Download the latest `Clang for the other systems `_. + +**Warning**: If you have previously generated PlatformIO project you need to +reinitialize it using ``Menu: PlatformIO > Initialize new Project (or update existing)`` +and specify for the which board should be activated Code completion and Linter. Screenshot ---------- -Building -^^^^^^^^ - -.. image:: ../_static/ide-platformio-atom-1.gif - :target: https://atom.io/packages/platomformio - -Uploading -^^^^^^^^^ - -.. image:: ../_static/ide-platformio-atom-2.gif - :target: https://atom.io/packages/platomformio +.. image:: ../_static/ide-atom-platformio.png + :target: ../_static/ide-atom-platformio.png diff --git a/platformio/__init__.py b/platformio/__init__.py index 80a7f604..7197b8c1 100644 --- a/platformio/__init__.py +++ b/platformio/__init__.py @@ -14,7 +14,7 @@ import sys -VERSION = (2, 7, "2.dev6") +VERSION = (2, 8, "0.dev0") __version__ = ".".join([str(s) for s in VERSION]) __title__ = "platformio"