Giter VIP home page Giter VIP logo

platformio-mode's Introduction

PlatformIO Mode

MELPA MELPA Stable

platformio-mode is an Emacs minor mode which allows quick building and uploading of PlatformIO projects with a few short key sequences.

Code completion can be provided by installing any package compatible with .ccls files, such as ccls. To keep the index up to date, run platformio-init-update-workspace (C-c i i) after installing any libraries.

Dependencies

Currently the only dependency is Projectile to facilitate running commands in the project root.

Keymap

The default keymap prefix is C-c i.

The following keybindings are currently available.

Function Keymap
Build C-c i b
Upload C-c i u
Upload using Programmer C-c i p
Upload SPIFFS C-c i s
Monitor device C-c i m
Clean C-c i c
Update C-c i d
Update Workspace C-c i i
Boards List C-c i l

Installation

The recommended way to install PlatformIO-Mode is using MELPA.

Configuration

Here is a sample config using PlatformIO-Mode in conjunction with ccls.

(require 'platformio-mode)

;; Enable ccls for all c++ files, and platformio-mode only
;; when needed (platformio.ini present in project root).
(add-hook 'c++-mode-hook (lambda ()
                           (lsp-deferred)
                           (platformio-conditionally-enable)))

カスタマイズメモ

インストール

emacs上で、M-x package-install-fileを実行し、platformio-mode.elファイルを指定する。処理が完了すると、package-user-dir変数の場所にautoloadファイルとかが作成される。

変更点

  • Platformioのバイナリが~/.local/bin配下に配置されていたが、Emacs上で確認したPATH環境変数にそのディレクトリがなかったため、各コマンドが実行できなかった。PATHに追加する方法がよくわからなかったので、path-to-platformio変数を追加して、実行ファイルのパスを指定できるようにした。

platformio-mode's People

Contributors

zachmassia avatar dantecatalfamo avatar thomasf avatar ollelinderos avatar peterhoeg avatar purcell avatar bricewge avatar water-dropwort avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.