カテゴリー : Text Editor

[Atom] getaddrinfo ENOTFOUND atom.io atom.io:443 エラーの解決方法

apm starred して getaddrinfo ENOTFOUND atom.io atom.io:443 というエラーが表示されたら、apm login して Token を保存すれば解決します。

エラーメッセージ

$ apm starred
getaddrinfo ENOTFOUND atom.io atom.io:443

apm login で解決

$ apm login
Welcome to Atom!
 
Before you can publish packages, you'll need an API token.
 
Visit your account page on Atom.io https://atom.io/account,
copy the token and paste it below when prompted.
 
Press [Enter] to open your account page on Atom.io. 
Token> xxxxx
Saving token to Keychain ✓

エラーメッセージが分かりにくい!

[Atom.io] atom-beauty で JavaScript ソースコードを整形する

JavaScript 使う新規プロジェクトでフォーマッターを使いたいなということで、Atom でソースコードを綺麗に整形してくれる atom-beautify を使ってみました。

atom-beauty のインストール

メニューバーから [Atom] → [Preferences] → [Install] にて、 atom-beautify パッケージを検索してインストールしましょう。

apm で管理しているなら apm install atom-beautify しましょう。

atom-beauty の設定方法

メニューバーから [Atom] → [Preferences] → [Packages] にて、atom-beautify の Settings から設定画面を開けます。

atom-beautify settings

僕の場合、JavaScript の設定は Indent size だけデフォルトの 4 から 2 に変更する以外は特に何もしていません。

atom-beauty の使い方

Atom エディタ上で、右クリックをして Beauty editor contents を押すと JavaScript のソースコードが整形されます。

Control + alt(option) + b のショートカットキーでも整形できます。 Mac も Windows も同じです。

フォーマッターのような便利ツールを導入して開発をどんどん楽にしていきたいですね。

[Atom] The editor has crashed エラーの解決方法 #AtomEditor

出社していつも通り Atom エディターを起動しようとしたら The editor has crashed というエラーで起動できなくなってました・・・。

Atom - The editor has crashed

The editor has crashed エラーの解決方法

Atom を起動できるようにするための解決方法は、

  1. apm list で install されている package を確認する
  2. apm uninstall –hard packageName で package をアンインストールする
  3. Atom をエラーなく起動できるかチェックする

という手順をパッケージ毎に繰り返し試してみるしかなさそうでした。

パッケージのアンインストール後に Atom を正常に起動できたら、そのパッケージがエラーの原因なはずです。

調査の流れ

「パッケージを1つずつアンインストールして Atom の起動を試す」という解決方法に至るまでに調査したことを書き残しておきます。

まず、Atom をオプション付きで起動してログを確認しました。

$ atom -d -f .
2015-11-05 10:20:31.096 Atom[12864:6941378] App load time: 276ms
[12864:1105/102031:INFO:CONSOLE(387)] "Could not load atom-beautifier@0.5.0 because it uses deprecated APIs that have been removed.", source: /Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js (387)

atom-beautifier がダメっぽいのでアンインストールしました。

$ apm uninstall atom-beautifier
Uninstalling atom-beautifier ✓

ログがでなくなったので次に –test オプションを付けて実行してみます。

$ atom --test
[13257:1105/103003:INFO:CONSOLE(27)] "Error: Cannot find module '../lib/atom-jshint-view'
  at Module._resolveFilename (module.js:334:15)
  at Function.Module._resolveFilename (/Applications/Atom.app/Contents/Resources/app.asar/src/module-cache.js:383:52)
  at Function.Module._load (module.js:284:25)
  at Module.require (module.js:363:17)
  at require (module.js:382:17)
  at Object.<anonymous> (/Users/bakorer/.atom/packages/atom-jshint/spec/atom-jshint-view-spec.coffee:1:18)
  at Object.<anonymous> (/Users/bakorer/.atom/packages/atom-jshint/spec/atom-jshint-view-spec.coffee:1:1)
  at Module._compile (module.js:428:26)
  at Object.defineProperty.value [as .coffee] (/Applications/Atom.app/Contents/Resources/app.asar/src/compile-cache.js:169:21)
  at Module.load (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/coffee-script/lib/coffee-script/register.js:45:36)
  at Function.Module._load (module.js:308:12)
  at Module.require (module.js:363:17)
  at require (module.js:382:17)
  at requireSpecs (/Applications/Atom.app/Contents/Resources/app.asar/spec/spec-suite.js:21:7)
  at runAllSpecs (/Applications/Atom.app/Contents/Resources/app.asar/spec/spec-suite.js:78:7)
  at Object.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/spec/spec-suite.js:87:5)
  at Object.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/spec/spec-suite.js:90:4)
  at Module._compile (module.js:428:26)
  at Object.defineProperty.value [as .js] (/Applications/Atom.app/Contents/Resources/app.asar/src/compile-cache.js:169:21)
  at Module.load (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/coffee-script/lib/coffee-script/register.js:45:36)
  at Function.Module._load (module.js:308:12)
  at Module.require (module.js:363:17)
  at require (module.js:382:17)
  at module.exports.runSpecSuite (/Applications/Atom.app/Contents/Resources/app.asar/spec/jasmine-helper.js:60:5)
  at Object.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/spec/spec-bootstrap.js:23:5)
  at Object.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/spec/spec-bootstrap.js:34:4)
  at Module._compile (module.js:428:26)
  at Object.defineProperty.value [as .js] (/Applications/Atom.app/Contents/Resources/app.asar/src/compile-cache.js:169:21)
  at Module.load (module.js:353:32)
  at Function.Module._load (module.js:308:12)
  at Module.require (module.js:363:17)
  at require (module.js:382:17)
  at setupWindow (file:///Applications/Atom.app/Contents/Resources/app.asar/static/index.js:79:25)
  at window.onload (file:///Applications/Atom.app/Contents/Resources/app.asar/static/index.js:35:9)
", source: /Applications/Atom.app/Contents/Resources/app.asar/spec/spec-bootstrap.js (27)

atom-jshint パッケージがエラーの原因っぽいので、これもアンインストールします。

$ apm uninstall atom-jshint
Uninstalling atom-jshint ✓

再び test 実行してみるとログは何も出力されなくなったけど The editor has crashed エラーは未解決のままでした。

$ atom --test

エラーログを確認して問題を特定するという綺麗な解決の流れにしたかったのですが、手掛かりがなくなったので最終的に冒頭に記載した「怪しいパッケージを総当りで uninstall する」という手順にたどり着きました。

もっと良い解決方法をご存知でしたら教えて下さい。


参考情報

Atom エディタのオススメ Package まとめ

Atom エディタで使っているパッケージをまとめてみました。

使ってる Atom パッケージ

共通

ctrl-alt-f でコードフォーマットをかけてくれる atom-beautifier

オートコンプリート

オートコンプリートにファイルやディレクトリも表示してくれる。

矩形選択の機能を追加してくれるパッケージ

JavaScript

apm install するスニペット

以下、コピペするだけで apm star して Package を全てインストールしてくれます。

## Common ##
apm star atom-beautifier
 
apm star autocomplete-plus
apm star autocomplete-snippets
 
apm star multi-cursor
 
apm star pretty-json
 
apm star script
 
 
## Linter ##
# https://atom.io/packages/linter
apm star linter
# https://atom.io/packages/linter-coffeelint
apm star linter-coffeelint
# https://atom.io/packages/linter-jshint
apm star linter-jshint
apm star linter-pug
 
apm star jsonlint
 
 
## Git ##
apm star merge-conflicts
 
 
## JavaScript ##
# A JavaScript code analyzer for deep
apm star atom-ternjs
 
### Vue.js ###
apm star language-vue
 
 
## Jade/Pug/Stylus for our Node.js projects
apm star language-jade
apm star Stylus
 
 
## 最後に star した Package を全てインストール
apm stars --install
 
 
## Install third party plugins
# atom-ternjs
cd ~/.atom/packages/atom-ternjs
npm install tern-node-express

以上です。

Atom Package の参考情報

[Atom] Stylus をシンタックスハイライトしてくれるパッケージ

Atom エディタで Stylus のシンタックスハイライトをしてくれるパッケージは Stylus と language-stylus の2つがあります。

apm-stylus

apm-language-stylus

インストール数が 14000 と 1300 でかなり違うので、僕は圧倒的に多い Stylus を使ってます。

Stylus パッケージのインストール

apm install Stylus

Stylus はニッチではありますが、デフォルトで Atom の Core Package として用意しておいてくれると嬉しいですね。