Tag Archive atom

atomでremote-syncのパターンマッチ(minimatch)で参考になったサイト

こんにちは、なかしーです。
今日もWEBというかatomのお話です。
前回もremote-syncのお話でしたが、今回も引き続きです。
初回でディレクトリ全体をSyncしたあとは、編集(実質的にはSave)した分だけサーバー側と同期されますが、たまにサーバー側でいじってしまった時には、atom側にも全体持ってきたいとかもあるわけです。
じゃぁまた全体をSyncすればいいじゃん、となるわけではありますが、Laravelつかってる以上、プロジェクト全体を持ってこようとするとatom側でほとんどいじることがないvendorとかapp/storage以下とかまでご丁寧に全部Syncしようとするので、時間が掛かって面倒くさいわけです。
それで、remote-syncのignoreなんかを指定しちゃう時にあんまりminimatchという形式に詳しくなかったので参考にさせてもらったサイトが以下です。
http://motemen.hatenablog.com/entry/2014/07/15/minimatch-cheat-sheet
https://github.com/isaacs/minimatch
それで、私が実際に入れた設定を一部紹介すると、以下のような感じ。他にも有れば同様に追加すればよいでしょう。

"ignore": [
    "vendor/**",
    ".remote-sync.json",
    "app/storage/views/**",
    "app/storage/logs/**",
],

こんな感じです。
 
役に立ったよ、という方、(役に立たなかったよ!という方も)
Facebookページにいいね!して頂けると嬉しいです
受付中イベント情報はこちら
まだの方は、ビジネスクリエーターズへの会員登録をどうぞ。
会員登録は無料です。
明日は大久保さんです。
友だち追加数

atomのremote-syncの鍵認証でタイムアウトする時の対処方法

こんにちは、なかしーです。
今日もWEB関連ですが、atomの話です。
atomは色々とプラグインが便利ということで、remote-syncを入れてVMのLinuxをWindowsからいじいじするとかやりやすい感じです。
SSH鍵をつかって通信させてますが、初回の接続でどうも時間が掛かってしまう時があり、タイムアウトしてしまうことが度々有りましたので、その時の対処方法を紹介します。
要するにremote-syncの設定ファイルのTimeout値をいじるんですが、その場所は
.atom\packages\remote-sync\node_modules\ssh2\lib\Connection.js
の中の
opts.readyTimeout
がそれにあたります。
なので、これを10000から60000位に修正すればよろし。
自分の環境にあわせて調整してみてください。
役に立ったよ、という方、(役に立たなかったよ!という方も)
Facebookページにいいね!して頂けると嬉しいです
受付中イベント情報はこちら
まだの方は、ビジネスクリエーターズへの会員登録をどうぞ。
会員登録は無料です。
明日は大久保さんです。
友だち追加数

atom始めました。(ex-modeがちゃんと動く方法あります)

なかしーです。
今日もWeb関連です。
これまでソースコードはVimで普通にガリガリ書いてましたが、さすがにしんどくなって来たのと、AtomなるGithub謹製のIDEっぽいのが結構使えると聞いて導入してみました。
あんまり優し書き方はしないですが、色々書いておきます。
1,インストール
MSの.Netが強要されます。
インストールはスムーズに完了しますよ。
デフォルトでの起動時間は10数秒ってとこでしょうか。ただのEditorとして使うには向いてません。
 
2,パッケージ、テーマのインストール
入れたのは、以下。

  • color-picker(#FFFFFFとか作るやつ)
  • compare-files(Diffとして)
  • ex-mode(後述)
  • keyboard-localization(後述)
  • laravel(Laravelスニペット)
  • laravel-theme
  • minimap(ソースの全体像を片側に表示してくれるやつ)
  • remote-edit(ちょっとしたリモートホスト上のファイルのイジイジ用として使うんじゃないかな。)
  • remote-sync(開発サーバー上のソースをまるごとPC上に持ってきて作業してます)
  • vim-mode(後述)

 
3,ちょこちょこ設定、Tipsなど
思い出せる部分だけでも書いときます。

  • エディタからTree View(所謂左側に出てくるプロジェクトとかのファイルを表示するアレ)に移動するにはCtrl+0(ゼロ)で切替ができます。そこでもVim風に操作できるっぽい。
  • remote-editは、パスワードだとうまく動かなかった気がする。SSH Keyでやったらちゃんと動いた。
  • remote-syncのignoreアレイで、最初フルパスで指定したからちゃんと動かなかったけど、ターゲット以下のパスとして書いたら動いた。そりゃそうか。ちなみにLaravelの場合、Vendor以下まで持ってこようとすると5千ファイル以上あるからそれだけで大変です。外しておきましょう。
  • remote-syncのDiffコマンドって、コマンドプロンプトから呼び出せるコマンドの様です。うーん。なんかダサい気がする。ちゃんと使ってません。
  • remote-syncは、セーブ後自動UploadオプションをOnにしておけば速攻でUpしてくれるです。(最初のサーバーとのセッション確立時は時間かかりますが。)
  • Vim-modeは、デフォルトでは:wが使えません。なので、人によっては:でコマンドパレット呼び出しにして、wでSaveをキーバインドに仕込んでおくという方法をやるひとも居るようです。ただ、折角ex-modeなるパッケージがあったのでそれを使おうとしたんですが、なんでか:が普通に動かない。色々試してたらShift+:で動いた。でも、それだと普通のVim使うときに変な癖がついちゃうので避けたい。色々調べてたら、USキーボードじゃない人で起きる話のようです。(普通にテキスト入力するときは全く問題ないんですが、コマンド入力待ちの時はどうもUSキーボード状態のようです。Ctrl+.で確認してるとよくわかります。)なので、さっきのGithubに書いてあったKeyboard-localizationを入れるわけです。デフォルト選択肢で日本語キーボードが無かったので、ジェネレータで日本語用をサクサク作って反映して、無事に:が動きましたとさ。開発者にも投げたのでその内デフォルトに組み込まれるかも。初Githubナリ。(ちなみに、今今自分で作る人は「.」の箇所は含めないほうが良さそう。なんかDeleteになってしまったので抜いても問題なかったです。)
  • ex-modeでも、:q!はちゃんと効かない。あと置換(s/hoge/fuga/g)みたいなのは動かなそう。エラーが出る。
  • 一般的なタブブラウザ系で使えるショートカット(タブ変更やタブ閉じ)は使えるので楽。

 
4,その内やりたい事

  • 開発サーバー->検証サーバー->本番サーバーでの連携にGitを使ってみたい。まだそこまで回ってない。
  • 背景が黒すぎて非選択タブとかの文字が見づらいから変えたい。
  • Tree viewにおいて、キー入力でファイルをカンタンに辿れものか。WindowsのExplorerでも出来るんだから、ありそうだけどまだ知らない。
  • (期待)エクリプスでJava書く時みたいに、クラスとかメソッドとか色々保管してくれればいいのになー。そしたら重くなっちゃうのかなー。

 
というわけで、今のところまぁまぁ素敵かもです。
みなさんのお役に立ちますように。。
 
 
 
 

1