diff --git a/.travis.yml b/.travis.yml
index 4d6263a..58c053f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -11,53 +11,24 @@ notifications:
script: sh build-package.sh
+language: generic
+
+cache:
+ timeout: 1000
+
git:
- depth: 10
+ depth: 1
-php:
- - '5.6'
-python:
- - '2.7'
-go:
- - release
-
-matrix:
- include:
- - os: linux
- dist: trusty
- sudo: required
- services:
- - docker
- env:
- - ATOM_CHANNEL=stable
- - os: linux
- dist: trusty
- sudo: required
- services:
- - docker
- env:
- - ATOM_CHANNEL=beta
- # - os: linux
- # dist: trusty
- # sudo: require
- # env:
- # - ATOM_CHANNEL=stable
- # - os: linux
- # dist: trusty
- # sudo: require
- # env:
- # - ATOM_CHANNEL=beta
- - os: osx
- env:
- - ATOM_CHANNEL=stable
- # - os: osx
- # env:
- # - ATOM_CHANNEL=beta
+os:
+ - linux
+ - osx
+sudo: required
env:
global:
- - APM_TEST_PACKAGES="language-marko language-html-swig language-svg language-d mavensmate-atom language-lua language-puppet fuse"
- - PATH="/home/travis/gopath/bin:$HOME/.linuxbrew/bin:$PATH"
+ matrix:
+ - ATOM_SCRIPT_NAME=atom-beta APM_SCRIPT_NAME=apm-beta
+ - ATOM_SCRIPT_NAME=atom APM_SCRIPT_NAME=apm
addons:
apt:
@@ -71,9 +42,7 @@ addons:
- libgnome-keyring-dev
- fakeroot
- crystal
- - ocaml
- camlp4
- - opam
- aspcud
- php5-cli
- golang
@@ -85,111 +54,38 @@ cache:
- vendor/bundle # gems are installed here, https://docs.travis-ci.com/user/languages/ruby/#Dependency-Management
- node_modules
- $HOME/.atom
- - $HOME/.stack
+ - $HOME/.opam
before_install:
- # Install Homebrew on Linux
+ # linux: Install Nix, Nix packages, upgrade pip, and install python packages
+ # osx: Update Homebrew, remove conflicting cask, brew bundle, symlink elm-format,
+ # upgrade pip, and install python packages
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
- git clone --depth=1 https://github.com/Linuxbrew/brew.git ~/.linuxbrew || true;
+ curl https://nixos.org/nix/install | sh &&
+ . ~/.nix-profile/etc/profile.d/nix.sh &&
+ nix-env -i uncrustify R elm-format terraform atom atom-beta opam &&
+ pip install --upgrade pip &&
+ pip install --user -r requirements.txt;
+ elif [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
+ brew update && brew cask zap oclint && brew bundle &&
+ ln -s /usr/local/bin/elm-format-0.17 /usr/local/bin/elm-format &&
+ pip2 install --upgrade pip &&
+ pip2 install -r requirements.txt;
+ else
+ echo Error:TRAVIS_OS_NAME && exit 1;
fi
- # Update Homebrew
- - brew update
- - brew tap homebrew/dupes
- - brew tap homebrew/versions
# Ruby language support
- # - gem install ruby-beautify --verbose
- # - gem install rubocop
- - gem install htmlbeautifier
- - gem install puppet-lint
- # Sass language support
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- gem install sass;
- else
- docker pull unibeautify/sass-convert;
- fi
- # Python language support
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
- sudo chmod 777 -R /opt/python;
- pip install --upgrade pip;
- pip install --user --upgrade autopep8;
- pip install --user --upgrade isort;
- else
- pip install --upgrade pip;
- pip install --upgrade autopep8;
- pip install --upgrade isort;
- fi
- # SQL language support
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
- pip install --user --upgrade sqlparse;
- else
- pip install --upgrade sqlparse;
- fi
- # Java, C, C++, C#, Objective-C, D, Pawn, Vala
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- brew install uncrustify;
- else
- docker pull unibeautify/uncrustify;
- fi
+ - bundle install
# R
- - brew tap homebrew/science
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- brew install r;
- rscript --version;
- else
- docker pull unibeautify/rscript;
- fi
+ - Rscript --version
# PHP
- - brew tap homebrew/homebrew-php
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- brew install php56 || true;
- brew gist-logs php56 || true;
- echo -e "\n[Phar]\nphar.readonly = Off\n" >> /usr/local/etc/php/5.6/php.ini;
- brew install php-cs-fixer || true;
- brew gist-logs php-cs-fixer || true;
- fi
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
- wget http://get.sensiolabs.org/php-cs-fixer.phar -O php-cs-fixer;
- chmod a+x php-cs-fixer;
- mv php-cs-fixer $HOME/.linuxbrew/bin/php-cs-fixer;
- fi
+ - composer install
# CoffeeScript
- npm install coffee-formatter
- # Haskell
- # - brew install haskell-stack
- # - stack setup
- # - stack install stylish-haskell
- # Elm
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- curl -L -o /tmp/elm-format.tgz
- https://github.com/avh4/elm-format/releases/download/0.7.0-exp/elm-format-0.17-0.7.0-exp-mac-x64.tgz;
- tar xvzf /tmp/elm-format.tgz -C /usr/local/bin;
- fi
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
- curl -L -o /tmp/elm-format.tgz https://github.com/avh4/elm-format/releases/download/0.7.0-exp/elm-format-0.17-0.7.0-exp-linux-x64.tgz;
- tar xvzf /tmp/elm-format.tgz -C $HOME/.linuxbrew/bin;
- fi
# OCaml
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- brew install ocaml;
- brew install opam;
- fi
- - opam init --auto-setup
+ # - opam init --auto-setup
# Init environment variables for opam
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- eval `opam config env`;
- fi
- - opam install --yes ocp-indent
- # Crystal
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install crystal-lang; fi
- # Bash
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
- pip install --user beautysh;
- else
- pip install beautysh;
- fi
- # terraform
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- brew install terraform;
- else
- docker pull hashicorp/terraform;
- fi
+ # - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
+ # eval `opam config env`;
+ # fi
+ # - opam install --yes ocp-indent
diff --git a/Brewfile b/Brewfile
new file mode 100644
index 0000000..16f2eb2
--- /dev/null
+++ b/Brewfile
@@ -0,0 +1,11 @@
+tap 'homebrew/php'
+tap 'caskroom/versions'
+brew 'uncrustify'
+brew 'r'
+brew 'composer'
+brew 'opam'
+brew 'crystal-lang'
+brew 'terraform'
+brew 'elm-format'
+cask 'atom'
+cask 'atom-beta'
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 509f883..85f7041 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,23 @@
# Next
- Add support for MagicPython grammar [#1851](https://github.com/Glavin001/atom-beautify/issues/1851)
+- Add "Reindent" option for sqlformat. See [#1926](https://github.com/Glavin001/atom-beautify/pull/1926).
+- Add hindent and brittany beautifiers for haskell
+- Breaking change to `pybeautifier`: Fix typo, change `formater` to `formatter`. See [#1898](https://github.com/Glavin001/atom-beautify/pull/1898).
+- Fixes [#1773](https://github.com/Glavin001/atom-beautify/issues/1773) and [#793](https://github.com/Glavin001/atom-beautify/issues/793). ruby-beautify with Rubocop now respects `Exclude` settings, and properly loads inherited config files (like `~/.rubocop.yml`)
+- Add hindent and brittany beautifiers for haskell
+- Fix [#1862](https://github.com/Glavin001/atom-beautify/issues/1862) Add support for ocp-indent as an executable
+- See [#601](https://github.com/Glavin001/atom-beautify/issues/1862) Add support for tsx files
+- See [#1497](https://github.com/Glavin001/atom-beautify/issues/1497) and [#802](https://github.com/Glavin001/atom-beautify/issues/802)
+- ...
+
+# v0.30.9 (2017-11-22)
+- Fix [#1949](https://github.com/Glavin001/atom-beautify/issues/1949): Fix beautify on save when text has not changed.
+
+# v0.30.8 (2017-11-22)
+- Fix [#1949](https://github.com/Glavin001/atom-beautify/issues/1949): Fix beautify on save when text has not changed.
+
+# v0.30.7 (2017-11-21)
+- Refactor handleSaveEvent to use onWillSave async ([#1924](https://github.com/Glavin001/atom-beautify/pull/1924), [#1895](https://github.com/Glavin001/atom-beautify/issues/1895))
# v0.30.6 (2017-10-30)
- See [#645](https://github.com/Glavin001/atom-beautify/issues/645). Add support for Terraform fmt.
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000..4805589
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,6 @@
+source "https://rubygems.org"
+
+gem "rubocop"
+gem "htmlbeautifier"
+gem "puppet-lint"
+gem "sass"
diff --git a/README-template.md b/README-template.md
index 911743d..2d743ef 100644
--- a/README-template.md
+++ b/README-template.md
@@ -6,6 +6,11 @@
[![Gitter](https://img.shields.io/gitter/room/Glavin001/atom-beautify.svg?style=flat-square)](https://gitter.im/Glavin001/atom-beautify)
[![Bountysource](https://img.shields.io/bountysource/team/atom-beautify/activity.svg?style=flat-square)](https://www.bountysource.com/teams/atom-beautify)
[![Paypal Donations](https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=X2RK5DKN6YXPJ&lc=CA&item_name=Atom%2dBeautify&item_number=atom%2dbeautify¤cy_code=CAD&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHosted)
+[![Twitter URL](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/unibeautify)
+
+**Sign up for Unibeautify CI: [https://goo.gl/jmM4QN](https://goo.gl/jmM4QN)**
+
+**Help improve Atom-Beautify by completing the quick questionnaire: [https://goo.gl/iEHBNr](https://goo.gl/iEHBNr)**
| Mac OS and | |
| --- | --- |
@@ -65,6 +70,18 @@ Thank you.
Atom-Beautify is going to be completely rewritten with [Unibeautify](https://github.com/Unibeautify/unibeautify) at its core!
See [`unibeautify` branch](../../tree/unibeautify) for work in progress and [Issue #1174](https://github.com/Glavin001/atom-beautify/issues/1174).
+### Poll: Improving installation of third-party beautifiers
+
+Many users are experiencing issues when installing third party beautifiers (e.g. Uncrustify, PHP-CS-Fixer, and many more).
+A possible solution is a "cloud" service which provides remote access to these beautifiers. Atom-Beautify would then communicate with these services, allowing for zero-installation beautification.
+
+Please let us know what you think!
+
+[![](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/Yes%2C%20cloud%20solution%20would%20be%20great!)](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/Yes%2C%20cloud%20solution%20would%20be%20great!/vote)
+[![](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20enjoy%20manually%20installing%20beautifiers)](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20enjoy%20manually%20installing%20beautifiers/vote)
+[![](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20am%20happy%20using%20Docker)](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20am%20happy%20using%20Docker/vote)
+[![](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20do%20not%20want%20to%20send%20me%20code%20over%20the%20Internet)](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20do%20not%20want%20to%20send%20me%20code%20over%20the%20Internet/vote)
+
## Beautifiers
Some of the supported beautifiers are developed for Node.js and are automatically installed when Atom-Beautify is installed. However, other beautifiers are command-line interface (CLI) applications and require you to manually install them.
diff --git a/README.md b/README.md
index efc62f7..be11077 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,11 @@
[![Gitter](https://img.shields.io/gitter/room/Glavin001/atom-beautify.svg?style=flat-square)](https://gitter.im/Glavin001/atom-beautify)
[![Bountysource](https://img.shields.io/bountysource/team/atom-beautify/activity.svg?style=flat-square)](https://www.bountysource.com/teams/atom-beautify)
[![Paypal Donations](https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=X2RK5DKN6YXPJ&lc=CA&item_name=Atom%2dBeautify&item_number=atom%2dbeautify¤cy_code=CAD&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHosted)
+[![Twitter URL](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/unibeautify)
+
+**Sign up for Unibeautify CI: [https://goo.gl/jmM4QN](https://goo.gl/jmM4QN)**
+
+**Help improve Atom-Beautify by completing the quick questionnaire: [https://goo.gl/iEHBNr](https://goo.gl/iEHBNr)**
| Mac OS and | |
| --- | --- |
@@ -65,6 +70,18 @@ Thank you.
Atom-Beautify is going to be completely rewritten with [Unibeautify](https://github.com/Unibeautify/unibeautify) at its core!
See [`unibeautify` branch](../../tree/unibeautify) for work in progress and [Issue #1174](https://github.com/Glavin001/atom-beautify/issues/1174).
+### Poll: Improving installation of third-party beautifiers
+
+Many users are experiencing issues when installing third party beautifiers (e.g. Uncrustify, PHP-CS-Fixer, and many more).
+A possible solution is a "cloud" service which provides remote access to these beautifiers. Atom-Beautify would then communicate with these services, allowing for zero-installation beautification.
+
+Please let us know what you think!
+
+[![](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/Yes%2C%20cloud%20solution%20would%20be%20great!)](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/Yes%2C%20cloud%20solution%20would%20be%20great!/vote)
+[![](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20enjoy%20manually%20installing%20beautifiers)](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20enjoy%20manually%20installing%20beautifiers/vote)
+[![](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20am%20happy%20using%20Docker)](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20am%20happy%20using%20Docker/vote)
+[![](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20do%20not%20want%20to%20send%20me%20code%20over%20the%20Internet)](https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod/poll/01BY57P9ACSDQASVT7KYZKZESK/No%2C%20I%20do%20not%20want%20to%20send%20me%20code%20over%20the%20Internet/vote)
+
## Beautifiers
Some of the supported beautifiers are developed for Node.js and are automatically installed when Atom-Beautify is installed. However, other beautifiers are command-line interface (CLI) applications and require you to manually install them.
@@ -74,6 +91,7 @@ Some of the supported beautifiers are developed for Node.js and are automaticall
| align-yaml | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
| autopep8 | :warning: 2 executables | :warning: Only 1 of 2 executables | :whale: With [Docker](https://www.docker.com/):
1. Install [autopep8 (`autopep8`)](https://github.com/hhatto/autopep8) with `docker pull unibeautify/autopep8`
:bookmark_tabs: Manually:
1. Install [autopep8 (`autopep8`)](https://github.com/hhatto/autopep8) by following https://github.com/hhatto/autopep8#installation
2. Install [isort (`isort`)](https://github.com/timothycrosley/isort) by following https://github.com/timothycrosley/isort#installing-isort
|
| beautysh | :warning: 1 executable | :white_check_mark: :100:% of executables | :whale: With [Docker](https://www.docker.com/):
1. Install [beautysh (`beautysh`)](https://github.com/bemeurer/beautysh) with `docker pull unibeautify/beautysh`
:bookmark_tabs: Manually:
1. Install [beautysh (`beautysh`)](https://github.com/bemeurer/beautysh) by following https://github.com/bemeurer/beautysh#installation
|
+| brittany | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to https://github.com/lspitzner/brittany and follow the instructions. |
| clang-format | :warning: 1 executable | :white_check_mark: :100:% of executables | :whale: With [Docker](https://www.docker.com/):
1. Install [ClangFormat (`clang-format`)](https://clang.llvm.org/docs/ClangFormat.html) with `docker pull unibeautify/clang-format`
:bookmark_tabs: Manually:
1. Install [ClangFormat (`clang-format`)](https://clang.llvm.org/docs/ClangFormat.html) by following https://clang.llvm.org/docs/ClangFormat.html
|
| cljfmt | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
| Coffee Formatter | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
@@ -90,6 +108,7 @@ Some of the supported beautifiers are developed for Node.js and are automaticall
| gofmt | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to https://golang.org/cmd/gofmt/ and follow the instructions. |
| goimports | :warning: 1 executable | :white_check_mark: :100:% of executables | :whale: With [Docker](https://www.docker.com/):
1. Install [goimports (`goimports`)](https://godoc.org/golang.org/x/tools/cmd/goimports) with `docker pull unibeautify/goimports`
:bookmark_tabs: Manually:
1. Install [goimports (`goimports`)](https://godoc.org/golang.org/x/tools/cmd/goimports) by following https://godoc.org/golang.org/x/tools/cmd/goimports
|
| hh_format | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to http://hhvm.com/ and follow the instructions. |
+| hindent | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to https://github.com/commercialhaskell/hindent and follow the instructions. |
| HTML Beautifier | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to https://github.com/threedaymonk/htmlbeautifier and follow the instructions. |
| JS Beautify | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
| JSCS Fixer | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
@@ -97,13 +116,14 @@ Some of the supported beautifiers are developed for Node.js and are automaticall
| Lua beautifier | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
| Marko Beautifier | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
| Nginx Beautify | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
-| ocp-indent | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to https://www.typerex.org/ocp-indent.html and follow the instructions. |
+| ocp-indent | :warning: 1 executable | :white_check_mark: :100:% of executables | :whale: With [Docker](https://www.docker.com/):
1. Install [ocp-indent (`ocp-indent`)](https://www.typerex.org/ocp-indent.html) with `docker pull unibeautify/ocp-indent`
:bookmark_tabs: Manually:
1. Install [ocp-indent (`ocp-indent`)](https://www.typerex.org/ocp-indent.html) by following https://www.typerex.org/ocp-indent.html#installation
|
| Perltidy | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to http://perltidy.sourceforge.net/ and follow the instructions. |
| PHP-CS-Fixer | :warning: 2 executables | :warning: Only 1 of 2 executables | :whale: With [Docker](https://www.docker.com/):
1. Install [PHP-CS-Fixer (`php-cs-fixer`)](https://github.com/FriendsOfPHP/PHP-CS-Fixer) with `docker pull unibeautify/php-cs-fixer`
:bookmark_tabs: Manually:
1. Install [PHP (`php`)](http://php.net/) by following http://php.net/manual/en/install.php
2. Install [PHP-CS-Fixer (`php-cs-fixer`)](https://github.com/FriendsOfPHP/PHP-CS-Fixer) by following https://github.com/FriendsOfPHP/PHP-CS-Fixer#installation
|
| PHPCBF | :warning: 2 executables | :warning: Only 1 of 2 executables | :whale: With [Docker](https://www.docker.com/):
1. Install [PHPCBF (`phpcbf`)](https://github.com/squizlabs/PHP_CodeSniffer) with `docker pull unibeautify/phpcbf`
:bookmark_tabs: Manually:
1. Install [PHP (`php`)](http://php.net/) by following http://php.net/manual/en/install.php
2. Install [PHPCBF (`phpcbf`)](https://github.com/squizlabs/PHP_CodeSniffer) by following https://github.com/squizlabs/PHP_CodeSniffer#installation
|
+| Prettier | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
| Pretty Diff | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
| Pug Beautify | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
-| puppet-lint | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to http://puppet-lint.com/ and follow the instructions. |
+| puppet-lint | :warning: 1 executable | :white_check_mark: :100:% of executables | :whale: With [Docker](https://www.docker.com/):
1. Install [puppet-lint (`puppet-lint`)](http://puppet-lint.com/) with `docker pull unibeautify/puppet-lint`
:bookmark_tabs: Manually:
1. Install [puppet-lint (`puppet-lint`)](http://puppet-lint.com/) by following http://puppet-lint.com/
|
| pybeautifier | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to https://github.com/guyskk/pybeautifier and follow the instructions. |
| Remark | :white_check_mark: | :ok_hand: Not necessary | :smiley: Nothing! |
| Rubocop | :warning: Manual installation | :construction: Not an executable | :page_facing_up: Go to https://github.com/bbatsov/rubocop and follow the instructions. |
@@ -135,7 +155,7 @@ See [all supported options in the documentation at `docs/options.md`](docs/opti
| C++ | `C++` |`.h`, `.hh`, `.cc`, `.cpp`, `.cxx`, `.C`, `.cu`, `.c++`, `.hpp`, `.hxx`, `.h++`, `.cuh` | **[`Uncrustify`](https://github.com/uncrustify/uncrustify)**, [`clang-format`](https://clang.llvm.org/docs/ClangFormat.html) |
| Crystal | `Crystal` |`.cr` | **[`Crystal`](http://crystal-lang.org)** |
| C# | `C#` |`.cs` | **[`Uncrustify`](https://github.com/uncrustify/uncrustify)** |
-| CSS | `CSS` |`.css` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`CSScomb`](https://github.com/csscomb/csscomb.js), [`Pretty Diff`](https://github.com/prettydiff/prettydiff), [`SassConvert`](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#syntax) |
+| CSS | `CSS` |`.css` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`CSScomb`](https://github.com/csscomb/csscomb.js), [`Prettier`](https://github.com/prettier/prettier), [`Pretty Diff`](https://github.com/prettydiff/prettydiff), [`SassConvert`](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#syntax) |
| CSV | `CSV` |`.csv` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
| D | `D` |`.d` | **[`Uncrustify`](https://github.com/uncrustify/uncrustify)**, [`dfmt`](https://github.com/Hackerpilot/dfmt) |
| EJS | `EJS`, `JavaScript Template`, `HTML (Angular)` |`.ejs` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
@@ -148,17 +168,17 @@ See [all supported options in the documentation at `docs/options.md`](docs/opti
| Go | `Go` |`.go` | **[`gofmt`](https://golang.org/cmd/gofmt/)**, [`goimports`](https://godoc.org/golang.org/x/tools/cmd/goimports) |
| Golang Template | `HTML (Go)`, `Go Template` |`.gohtml` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
| Handlebars | `Handlebars`, `HTML (Handlebars)` |`.hbs`, `.handlebars` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
-| Haskell | `Haskell` |`.hs` | **[`stylish-haskell`](https://github.com/jaspervdj/stylish-haskell)** |
+| Haskell | `Haskell` |`.hs` | **[`stylish-haskell`](https://github.com/jaspervdj/stylish-haskell)**, [`brittany`](https://github.com/lspitzner/brittany), [`hindent`](https://github.com/commercialhaskell/hindent) |
| HTML | `HTML` |`.html` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
| Jade | `Jade`, `Pug` |`.jade`, `.pug` | **[`Pug Beautify`](https://github.com/vingorius/pug-beautify)** |
| Java | `Java` |`.java` | **[`Uncrustify`](https://github.com/uncrustify/uncrustify)** |
-| JavaScript | `JavaScript` |`.js` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`ESLint Fixer`](https://github.com/eslint/eslint), [`JSCS Fixer`](https://github.com/jscs-dev/node-jscs/), [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
-| JSON | `JSON` |`.json` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
+| JavaScript | `JavaScript` |`.js` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`ESLint Fixer`](https://github.com/eslint/eslint), [`JSCS Fixer`](https://github.com/jscs-dev/node-jscs/), [`Prettier`](https://github.com/prettier/prettier), [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
+| JSON | `JSON` |`.json` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`Prettier`](https://github.com/prettier/prettier), [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
| JSX | `JSX`, `JavaScript (JSX)`, `Babel ES6 JavaScript`, `JavaScript with JSX` |`.jsx`, `.js` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)**, [`JS Beautify`](https://github.com/beautify-web/js-beautify) |
| LaTeX | `BibTeX`, `LaTeX`, `TeX` |`.bib`, `.tex`, `.sty`, `.cls`, `.dtx`, `.ins`, `.bbx`, `.cbx` | **[`Latex Beautify`](https://github.com/cmhughes/latexindent.pl)** |
-| LESS | `LESS` |`.less` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)**, [`CSScomb`](https://github.com/csscomb/csscomb.js) |
+| LESS | `LESS` |`.less` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)**, [`CSScomb`](https://github.com/csscomb/csscomb.js), [`Prettier`](https://github.com/prettier/prettier) |
| Lua | `Lua` |`.lua`, `.ttslua` | **[`Lua beautifier`](https://github.com/Glavin001/atom-beautify/blob/master/src/beautifiers/lua-beautifier/beautifier.coffee)** |
-| Markdown | `GitHub Markdown` |`.markdown`, `.md` | **[`Tidy Markdown`](https://github.com/slang800/tidy-markdown)**, [`Remark`](https://github.com/wooorm/remark) |
+| Markdown | `GitHub Markdown` |`.markdown`, `.md` | **[`Tidy Markdown`](https://github.com/slang800/tidy-markdown)**, [`Prettier`](https://github.com/prettier/prettier), [`Remark`](https://github.com/wooorm/remark) |
| Marko | `Marko` |`.marko` | **[`Marko Beautifier`](https://github.com/marko-js/marko-prettyprint)** |
| Mustache | `HTML (Mustache)` |`.mustache` | **[`JS Beautify`](https://github.com/beautify-web/js-beautify)**, [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
| Nginx | `nginx` |`.conf` | **[`Nginx Beautify`](https://github.com/denysvitali/nginxbeautify)** |
@@ -175,19 +195,20 @@ See [all supported options in the documentation at `docs/options.md`](docs/opti
| Ruby | `Ruby`, `Ruby on Rails` |`.rb` | **[`Rubocop`](https://github.com/bbatsov/rubocop)**, [`Ruby Beautify`](https://github.com/erniebrodeur/ruby-beautify) |
| Rust | `Rust` |`.rs`, `.rlib` | **[`rustfmt`](https://github.com/rust-lang-nursery/rustfmt)** |
| Sass | `Sass` |`.sass` | **[`SassConvert`](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#syntax)** |
-| SCSS | `SCSS` |`.scss` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)**, [`CSScomb`](https://github.com/csscomb/csscomb.js), [`SassConvert`](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#syntax) |
+| SCSS | `SCSS` |`.scss` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)**, [`CSScomb`](https://github.com/csscomb/csscomb.js), [`Prettier`](https://github.com/prettier/prettier), [`SassConvert`](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#syntax) |
| Spacebars | `Spacebars` | | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
| SQL | `SQL (Rails)`, `SQL` |`.sql` | **[`sqlformat`](https://github.com/andialbrecht/sqlparse)** |
| SVG | `SVG` |`.svg` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
| Swig | `HTML (Swig)`, `SWIG` |`.swig` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
| Terraform | `Terraform` |`.tf` | **[`terraformfmt`](https://www.terraform.io/docs/commands/fmt.html)** |
| TSS | `TSS` |`.tss` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
+| TSX | `TypeScriptReact` |`.tsx` | **[`TypeScript Formatter`](https://github.com/vvakame/typescript-formatter)** |
| Twig | `HTML (Twig)` |`.twig` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
-| TypeScript | `TypeScript` |`.ts` | **[`TypeScript Formatter`](https://github.com/vvakame/typescript-formatter)** |
+| TypeScript | `TypeScript` |`.ts` | **[`TypeScript Formatter`](https://github.com/vvakame/typescript-formatter)**, [`Prettier`](https://github.com/prettier/prettier) |
| UX Markup | `UX` |`.ux` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
| Vala | `Vala` |`.vala`, `.vapi` | **[`Uncrustify`](https://github.com/uncrustify/uncrustify)** |
| Visualforce | `Visualforce` |`.page` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
-| Vue | `Vue Component` |`.vue` | **[`Vue Beautifier`](https://github.com/Glavin001/atom-beautify/blob/master/src/beautifiers/vue-beautifier.coffee)** |
+| Vue | `Vue Component` |`.vue` | **[`Vue Beautifier`](https://github.com/Glavin001/atom-beautify/blob/master/src/beautifiers/vue-beautifier.coffee)**, [`Prettier`](https://github.com/prettier/prettier) |
| XML | `SLD`, `XML`, `XHTML`, `XSD`, `XSL`, `JSP`, `GSP` |`.sld`, `.xml`, `.xhtml`, `.xsd`, `.xsl`, `.jsp`, `.gsp`, `.plist`, `.recipe`, `.config` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)**, [`JS Beautify`](https://github.com/beautify-web/js-beautify) |
| XTemplate | `XTemplate` |`.xtemplate` | **[`Pretty Diff`](https://github.com/prettydiff/prettydiff)** |
| YAML | `YAML` |`.yml`, `.yaml` | **[`align-yaml`](https://github.com/jonschlinkert/align-yaml)** |
diff --git a/appveyor.yml b/appveyor.yml
index bf21dfb..d82f7f6 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -10,136 +10,35 @@ environment:
# /E:ON and /V:ON options are not enabled in the batch script intepreter
# See: http://stackoverflow.com/a/13751649/163740
CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\appveyor\\run_with_env.cmd"
-
- matrix:
- - PYTHON: "C:\\Python27"
- PYTHON_VERSION: "2.7.8"
- PYTHON_ARCH: "32"
- RUBY_VERSION: 23
-
- # - PYTHON: "C:\\Python27-x64"
- # PYTHON_VERSION: "2.7.8"
- # PYTHON_ARCH: "64"
- #
- # - PYTHON: "C:\\Python33"
- # PYTHON_VERSION: "3.3.5"
- # PYTHON_ARCH: "32"
- #
- # - PYTHON: "C:\\Python33-x64"
- # PYTHON_VERSION: "3.3.5"
- # PYTHON_ARCH: "64"
- #
- # - PYTHON: "C:\\Python34"
- # PYTHON_VERSION: "3.4.1"
- # PYTHON_ARCH: "32"
- #
- # - PYTHON: "C:\\Python34-x64"
- # PYTHON_VERSION: "3.4.1"
- # PYTHON_ARCH: "64"
+ PATH: C:\Ruby23\bin;C:\Ruby23-x64\DevKit\mingw\bin;C:\Python27;C:\Python27\Scripts;%PATH%
init:
- cmd: rd /s /q %CHOCOLATEYINSTALL%
- ps: iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
install:
-
- - ECHO "Filesystem root:"
- - ps: "ls \"C:/\""
-
- - cinst atom -y
- - cd %APPVEYOR_BUILD_FOLDER%
- # Add Atom's bin (apm, etc) to PATH
- - SET PATH=%LOCALAPPDATA%\atom\bin;%PATH%
+ - cinst packages.config -y
+ - refreshenv
- apm install
- # Install CLI beautifiers
+ # https://packaging.python.org/guides/supporting-windows-using-appveyor/
+ - pip install -r requirements.txt
- # Install Python (from the official .msi of http://python.org) and pip when
- # not already installed.
- - "powershell ./appveyor/install.ps1"
+ # Gemfile Install
+ - bundle install
- # Prepend newly installed Python to the PATH of this build (this cannot be
- # done from inside the powershell script as it would require to restart
- # the parent CMD process).
- - "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%"
-
- # Check that we have the expected version and architecture for Python
- - "python --version"
- - "python -c \"import struct; print(struct.calcsize('P') * 8)\""
-
- # Install the build dependencies of the project. If some dependencies contain
- # compiled extensions and are not provided as pre-built wheel packages,
- # pip will build them from source using the MSVC compiler matching the
- # target Python version and architecture
- - "%CMD_IN_ENV% pip install --upgrade autopep8"
- - where autopep8
-
- - "%CMD_IN_ENV% pip install --upgrade isort"
- - where isort
-
- - "%CMD_IN_ENV% pip install --upgrade sqlparse"
-
- # Ruby & Gem
- - SET PATH=C:\Ruby%RUBY_VERSION%\bin;C:\Ruby23-x64\DevKit\mingw\bin;%PATH%
- # Rubocop
- - gem install rubocop
- - where rubocop
- # HTMLBeautifier
- - gem install htmlbeautifier
- - where htmlbeautifier
- # Puppet-Lint
- - gem install puppet-lint
- - where puppet-lint
- # Sass
- - gem install sass
- - where sass-convert
-
- # emacs
- - cinst emacs -y
- - where emacs
-
- # terraform
- - cinst terraform -y
- - where terraform
-
- # FIXME: Enable allowEmptyChecksums, until someone fixes the checksum issue of php
- - choco feature enable -n allowEmptyChecksums
# PHP
- ps: Set-Service wuauserv -StartupType Manual
- - cinst php -y
- - ps: "ls \"C:\\tools\\php71\""
- - "SET PATH=C:\\tools\\php71;%PATH%"
- - where php
# PHP-CS-Fixer
- - cinst curl -y # Use cURL to download file from URL
- - curl http://get.sensiolabs.org/php-cs-fixer.phar -o php-cs-fixer
- - "SET PATH=%cd%;%PATH%" # Add current working directory to PATH
- - where php-cs-fixer
-
- # Uncrustify
- - curl -k -L https://sourceforge.net/projects/uncrustify/files/uncrustify/uncrustify-0.65/uncrustify-0.65-win32.zip/download -o uncrustify.zip
- - cinst 7zip.commandline -y
- - 7za e uncrustify.zip -ouncrustify-d
- - "SET PATH=%cd%\\uncrustify-d;%PATH%"
- - where uncrustify
+ - composer install
# elm-format
- - curl -k -L https://github.com/avh4/elm-format/releases/download/0.7.0-exp/elm-format-0.18-0.7.0-exp-win-i386.zip -o elm-format.zip
- - 7za e elm-format.zip -oelm-format-d
- - "SET PATH=%cd%\\elm-format-d;%PATH%"
- - where elm-format
-
- # Beautysh
- - pip install beautysh
- - where beautysh
-
+ - npm install -g elm-format@exp
+
build_script:
- - cd %APPVEYOR_BUILD_FOLDER%
# Install languages to Atom
- - apm install language-marko language-html-swig language-svg language-elm language-d mavensmate-atom language-lua language-puppet fuse
- # Show current PATH
- - echo %PATH%
+ - apm install --packages-file atom-packages.txt
# Run tests on package
#- "%LOCALAPPDATA%\\atom\\bin\\atom.cmd --test spec"
- apm test --path %LOCALAPPDATA%/atom/bin/atom.cmd
diff --git a/appveyor/install.ps1 b/appveyor/install.ps1
deleted file mode 100644
index 0f165d8..0000000
--- a/appveyor/install.ps1
+++ /dev/null
@@ -1,180 +0,0 @@
-# Sample script to install Python and pip under Windows
-# Authors: Olivier Grisel, Jonathan Helmus and Kyle Kastner
-# License: CC0 1.0 Universal: http://creativecommons.org/publicdomain/zero/1.0/
-
-$MINICONDA_URL = "http://repo.continuum.io/miniconda/"
-$BASE_URL = "https://www.python.org/ftp/python/"
-$GET_PIP_URL = "https://bootstrap.pypa.io/get-pip.py"
-$GET_PIP_PATH = "C:\get-pip.py"
-
-
-function DownloadPython ($python_version, $platform_suffix) {
- $webclient = New-Object System.Net.WebClient
- $filename = "python-" + $python_version + $platform_suffix + ".msi"
- $url = $BASE_URL + $python_version + "/" + $filename
-
- $basedir = $pwd.Path + "\"
- $filepath = $basedir + $filename
- if (Test-Path $filename) {
- Write-Host "Reusing" $filepath
- return $filepath
- }
-
- # Download and retry up to 3 times in case of network transient errors.
- Write-Host "Downloading" $filename "from" $url
- $retry_attempts = 2
- for($i=0; $i -lt $retry_attempts; $i++){
- try {
- $webclient.DownloadFile($url, $filepath)
- break
- }
- Catch [Exception]{
- Start-Sleep 1
- }
- }
- if (Test-Path $filepath) {
- Write-Host "File saved at" $filepath
- } else {
- # Retry once to get the error message if any at the last try
- $webclient.DownloadFile($url, $filepath)
- }
- return $filepath
-}
-
-
-function InstallPython ($python_version, $architecture, $python_home) {
- Write-Host "Installing Python" $python_version "for" $architecture "bit architecture to" $python_home
- if (Test-Path $python_home) {
- Write-Host $python_home "already exists, skipping."
- return $false
- }
- if ($architecture -eq "32") {
- $platform_suffix = ""
- } else {
- $platform_suffix = ".amd64"
- }
- $msipath = DownloadPython $python_version $platform_suffix
- Write-Host "Installing" $msipath "to" $python_home
- $install_log = $python_home + ".log"
- $install_args = "/qn /log $install_log /i $msipath TARGETDIR=$python_home"
- $uninstall_args = "/qn /x $msipath"
- RunCommand "msiexec.exe" $install_args
- if (-not(Test-Path $python_home)) {
- Write-Host "Python seems to be installed else-where, reinstalling."
- RunCommand "msiexec.exe" $uninstall_args
- RunCommand "msiexec.exe" $install_args
- }
- if (Test-Path $python_home) {
- Write-Host "Python $python_version ($architecture) installation complete"
- } else {
- Write-Host "Failed to install Python in $python_home"
- Get-Content -Path $install_log
- Exit 1
- }
-}
-
-function RunCommand ($command, $command_args) {
- Write-Host $command $command_args
- Start-Process -FilePath $command -ArgumentList $command_args -Wait -Passthru
-}
-
-
-function InstallPip ($python_home) {
- $pip_path = $python_home + "\Scripts\pip.exe"
- $python_path = $python_home + "\python.exe"
- if (-not(Test-Path $pip_path)) {
- Write-Host "Installing pip..."
- $webclient = New-Object System.Net.WebClient
- $webclient.DownloadFile($GET_PIP_URL, $GET_PIP_PATH)
- Write-Host "Executing:" $python_path $GET_PIP_PATH
- Start-Process -FilePath "$python_path" -ArgumentList "$GET_PIP_PATH" -Wait -Passthru
- } else {
- Write-Host "pip already installed."
- }
-}
-
-
-function DownloadMiniconda ($python_version, $platform_suffix) {
- $webclient = New-Object System.Net.WebClient
- if ($python_version -eq "3.4") {
- $filename = "Miniconda3-3.5.5-Windows-" + $platform_suffix + ".exe"
- } else {
- $filename = "Miniconda-3.5.5-Windows-" + $platform_suffix + ".exe"
- }
- $url = $MINICONDA_URL + $filename
-
- $basedir = $pwd.Path + "\"
- $filepath = $basedir + $filename
- if (Test-Path $filename) {
- Write-Host "Reusing" $filepath
- return $filepath
- }
-
- # Download and retry up to 3 times in case of network transient errors.
- Write-Host "Downloading" $filename "from" $url
- $retry_attempts = 2
- for($i=0; $i -lt $retry_attempts; $i++){
- try {
- $webclient.DownloadFile($url, $filepath)
- break
- }
- Catch [Exception]{
- Start-Sleep 1
- }
- }
- if (Test-Path $filepath) {
- Write-Host "File saved at" $filepath
- } else {
- # Retry once to get the error message if any at the last try
- $webclient.DownloadFile($url, $filepath)
- }
- return $filepath
-}
-
-
-function InstallMiniconda ($python_version, $architecture, $python_home) {
- Write-Host "Installing Python" $python_version "for" $architecture "bit architecture to" $python_home
- if (Test-Path $python_home) {
- Write-Host $python_home "already exists, skipping."
- return $false
- }
- if ($architecture -eq "32") {
- $platform_suffix = "x86"
- } else {
- $platform_suffix = "x86_64"
- }
- $filepath = DownloadMiniconda $python_version $platform_suffix
- Write-Host "Installing" $filepath "to" $python_home
- $install_log = $python_home + ".log"
- $args = "/S /D=$python_home"
- Write-Host $filepath $args
- Start-Process -FilePath $filepath -ArgumentList $args -Wait -Passthru
- if (Test-Path $python_home) {
- Write-Host "Python $python_version ($architecture) installation complete"
- } else {
- Write-Host "Failed to install Python in $python_home"
- Get-Content -Path $install_log
- Exit 1
- }
-}
-
-
-function InstallMinicondaPip ($python_home) {
- $pip_path = $python_home + "\Scripts\pip.exe"
- $conda_path = $python_home + "\Scripts\conda.exe"
- if (-not(Test-Path $pip_path)) {
- Write-Host "Installing pip..."
- $args = "install --yes pip"
- Write-Host $conda_path $args
- Start-Process -FilePath "$conda_path" -ArgumentList $args -Wait -Passthru
- } else {
- Write-Host "pip already installed."
- }
-}
-
-function main () {
- InstallPython $env:PYTHON_VERSION $env:PYTHON_ARCH $env:PYTHON
- InstallPip $env:PYTHON
-}
-
-main
diff --git a/appveyor/run_with_env.cmd b/appveyor/run_with_env.cmd
deleted file mode 100644
index 3a472bc..0000000
--- a/appveyor/run_with_env.cmd
+++ /dev/null
@@ -1,47 +0,0 @@
-:: To build extensions for 64 bit Python 3, we need to configure environment
-:: variables to use the MSVC 2010 C++ compilers from GRMSDKX_EN_DVD.iso of:
-:: MS Windows SDK for Windows 7 and .NET Framework 4 (SDK v7.1)
-::
-:: To build extensions for 64 bit Python 2, we need to configure environment
-:: variables to use the MSVC 2008 C++ compilers from GRMSDKX_EN_DVD.iso of:
-:: MS Windows SDK for Windows 7 and .NET Framework 3.5 (SDK v7.0)
-::
-:: 32 bit builds do not require specific environment configurations.
-::
-:: Note: this script needs to be run with the /E:ON and /V:ON flags for the
-:: cmd interpreter, at least for (SDK v7.0)
-::
-:: More details at:
-:: https://github.com/cython/cython/wiki/64BitCythonExtensionsOnWindows
-:: http://stackoverflow.com/a/13751649/163740
-::
-:: Author: Olivier Grisel
-:: License: CC0 1.0 Universal: http://creativecommons.org/publicdomain/zero/1.0/
-@ECHO OFF
-
-SET COMMAND_TO_RUN=%*
-SET WIN_SDK_ROOT=C:\Program Files\Microsoft SDKs\Windows
-
-SET MAJOR_PYTHON_VERSION="%PYTHON_VERSION:~0,1%"
-IF %MAJOR_PYTHON_VERSION% == "2" (
- SET WINDOWS_SDK_VERSION="v7.0"
-) ELSE IF %MAJOR_PYTHON_VERSION% == "3" (
- SET WINDOWS_SDK_VERSION="v7.1"
-) ELSE (
- ECHO Unsupported Python version: "%MAJOR_PYTHON_VERSION%"
- EXIT 1
-)
-
-IF "%PYTHON_ARCH%"=="64" (
- ECHO Configuring Windows SDK %WINDOWS_SDK_VERSION% for Python %MAJOR_PYTHON_VERSION% on a 64 bit architecture
- SET DISTUTILS_USE_SDK=1
- SET MSSdk=1
- "%WIN_SDK_ROOT%\%WINDOWS_SDK_VERSION%\Setup\WindowsSdkVer.exe" -q -version:%WINDOWS_SDK_VERSION%
- "%WIN_SDK_ROOT%\%WINDOWS_SDK_VERSION%\Bin\SetEnv.cmd" /x64 /release
- ECHO Executing: %COMMAND_TO_RUN%
- call %COMMAND_TO_RUN% || EXIT 1
-) ELSE (
- ECHO Using default MSVC build environment for 32 bit architecture
- ECHO Executing: %COMMAND_TO_RUN%
- call %COMMAND_TO_RUN% || EXIT 1
-)
diff --git a/atom-packages.txt b/atom-packages.txt
new file mode 100644
index 0000000..e7b6b1e
--- /dev/null
+++ b/atom-packages.txt
@@ -0,0 +1,10 @@
+language-marko
+language-html-swig
+language-svg
+language-d
+mavensmate-atom
+language-lua
+language-elm
+language-puppet
+fuse
+react
diff --git a/build-package.sh b/build-package.sh
index 98674d1..eaade9a 100644
--- a/build-package.sh
+++ b/build-package.sh
@@ -1,63 +1,21 @@
#!/bin/sh
-echo "Downloading latest Atom release..."
-ATOM_CHANNEL="${ATOM_CHANNEL:=stable}"
-
-if [ "$TRAVIS_OS_NAME" = "osx" ]; then
- curl -s -L "https://atom.io/download/mac?channel=$ATOM_CHANNEL" \
- -H 'Accept: application/octet-stream' \
- -o "atom.zip"
- mkdir atom
- unzip -q atom.zip -d atom
- if [ "$ATOM_CHANNEL" = "stable" ]; then
- export ATOM_APP_NAME="Atom.app"
- export ATOM_SCRIPT_NAME="atom.sh"
- export ATOM_SCRIPT_PATH="./atom/${ATOM_APP_NAME}/Contents/Resources/app/atom.sh"
- else
- export ATOM_APP_NAME="Atom ${ATOM_CHANNEL}.app"
- export ATOM_SCRIPT_NAME="atom-${ATOM_CHANNEL}"
- export ATOM_SCRIPT_PATH="./atom-${ATOM_CHANNEL}"
- ln -s "./atom/${ATOM_APP_NAME}/Contents/Resources/app/atom.sh" "${ATOM_SCRIPT_PATH}"
- fi
- export PATH="$PWD/atom/${ATOM_APP_NAME}/Contents/Resources/app/apm/bin:$PATH"
- export ATOM_PATH="./atom"
- export APM_SCRIPT_PATH="./atom/${ATOM_APP_NAME}/Contents/Resources/app/apm/node_modules/.bin/apm"
-else
- curl -s -L "https://atom.io/download/deb?channel=$ATOM_CHANNEL" \
- -H 'Accept: application/octet-stream' \
- -o "atom.deb"
+if [ "$TRAVIS_OS_NAME" != "osx" ]; then
/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1280x1024x16
export DISPLAY=":99"
- dpkg-deb -x atom.deb "$HOME/atom"
- if [ "$ATOM_CHANNEL" = "stable" ]; then
- export ATOM_SCRIPT_NAME="atom"
- export APM_SCRIPT_NAME="apm"
- else
- export ATOM_SCRIPT_NAME="atom-$ATOM_CHANNEL"
- export APM_SCRIPT_NAME="apm-$ATOM_CHANNEL"
- fi
- export ATOM_SCRIPT_PATH="$HOME/atom/usr/bin/$ATOM_SCRIPT_NAME"
- export APM_SCRIPT_PATH="$HOME/atom/usr/bin/$APM_SCRIPT_NAME"
fi
-
echo "Using Atom version:"
-"$ATOM_SCRIPT_PATH" -v
+"$ATOM_SCRIPT_NAME" -v
echo "Using APM version:"
-"$APM_SCRIPT_PATH" -v
+"$APM_SCRIPT_NAME" -v
echo "Downloading package dependencies..."
-"$APM_SCRIPT_PATH" clean
-"$APM_SCRIPT_PATH" install
+"$APM_SCRIPT_NAME" clean
+"$APM_SCRIPT_NAME" install
-TEST_PACKAGES="${APM_TEST_PACKAGES:=none}"
-
-if [ "$TEST_PACKAGES" != "none" ]; then
- echo "Installing atom package dependencies..."
- for pack in $TEST_PACKAGES ; do
- "$APM_SCRIPT_PATH" install $pack
- done
-fi
+echo "Installing atom package dependencies..."
+"$APM_SCRIPT_NAME" install --packages-file atom-packages.txt
if [ -f ./node_modules/.bin/coffeelint ]; then
if [ -d ./src ]; then
@@ -100,9 +58,9 @@ fi
if [ -d ./spec ]; then
echo "Running specs..."
- "$ATOM_SCRIPT_PATH" --test spec
+ "$ATOM_SCRIPT_NAME" --test spec
else
echo "Missing spec folder! Please consider adding a test suite in `./spec`"
exit 1
fi
-exit
\ No newline at end of file
+exit
diff --git a/composer.json b/composer.json
new file mode 100644
index 0000000..5c33245
--- /dev/null
+++ b/composer.json
@@ -0,0 +1,5 @@
+{
+ "require": {
+ "friendsofphp/php-cs-fixer": ">0"
+ }
+}
diff --git a/docs/code/alphabetical_index.html b/docs/code/alphabetical_index.html
index bee2772..3fb9fa7 100644
--- a/docs/code/alphabetical_index.html
+++ b/docs/code/alphabetical_index.html
@@ -60,6 +60,11 @@
Beautifiers
+