10524


[Atom](https://atom.io/)で、ツリービューにあるファイルをシングルクリックするとプレビューとしてタブが開きますが、これを
**ダブルクリックでのみ開く** ようにしたいのですが、設定方法やプラグインはありますでしょうか。  
（いわゆる[Smart Tabs](https://github.com/atom/tree-view/issues/3)ではありません）

大きなファイルやMinifyされたファイルを何気なくクリックするたびにフリーズするので・・・


CC BY-SA 3.0
2015-05-22T03:28:41.747
10485
2015-05-22T18:00:54.110
3876
question
atom-editor
Atomエディタのファイルプレビュー機能をオフにしたい


参考程度ですが[GitHub](https://github.com/atom/atom)からプロジェクトをダウンロードして、  
少し手を加えればそれっぽい動きにできそうです。

**手順**  
1.プロジェクトをダウンロードする  
2.プロジェクトに移動してモジュールをインストール（`cd atom && npm install`）  
3.とりあえず試しにビルドしてみる（`script/build`）  
成功するとアプリケーション配下にAtom.appができます  
※初回は時間がかかります  
4. **/node_modules/tree-view/lib/tree-view.coffee** を編集する  
L.85あたり（`handleEvents`）

[code]

    @on 'click', '.entry', (e) =>
      # This prevents accidental collapsing when a .entries element is the event target
      return if e.target.classList.contains('entries')
    
      @entryClicked(e) unless e.shiftKey or e.metaKey or e.ctrlKey
    
    # ダブルクリック用の処理を追加
    @on 'dblclick', '.entry', (e) =>
      # This prevents accidental collapsing when a .entries element is the event target
      return if e.target.classList.contains('entries')
    
      @entryDblClicked(e) unless e.shiftKey or e.metaKey or e.ctrlKey
    
[/code]

L.200あたり

[code]

    entryClicked: (e) ->
      entry = e.currentTarget
      isRecursive = e.altKey or false
      switch e.originalEvent?.detail ? 1
        when 1
          @selectEntry(entry)
          # 選択したファイルを開く処理をコメントアウト
          # @openSelectedEntry(false) if entry instanceof FileView
          entry.toggleExpansion(isRecursive) if entry instanceof DirectoryView
        when 2
          if entry instanceof FileView
            @unfocus()
          else if DirectoryView
            entry.toggleExpansion(isRecursive)
    
      false
    
    # ダブルクリック用の処理を追加
    entryDblClicked: (e) ->
      entry = e.currentTarget
      @openSelectedEntry(false) if entry instanceof FileView
    
    false
    
[/code]

5.もう一度ビルドする（`script/build`）  
※アプリケーション配下のAtom.appは上書きされるので消さなくても大丈夫です

**補足事項**  
sublime-tabsが入っていると上手くいかないかもしれません。  
※ダブルクリック用のfunction名がかぶっていなければ平気かも（sublime-
tabsは`entryDblClicked`という名前を使用しています）。  
差し支えなければ一度Atomを削除した方がやりやすいと思います（packageとか入れ直しになってしまいますが）。

・削除する場合は下記をご参照ください

[code]

    1.アプリケーションフォルダの Atom を削除
    2.rm -rf ~/.atom
    3.rm /usr/local/bin/atom
    4.rm /usr/local/bin/apm
    5.rm ~/Library/Preferences/com.github.atom.plist
    6.rm -rf ~/Library/Application Support/com.github.atom.ShipIt
    7.rm -rf ~/Library/Application Support/Atom
    
[/code]

~~  
[sublime-tabs](https://atom.io/packages/sublime-tabs)というのがあるみたいですね。

> **Features**
>
> Allows you to single click a file in the tree view to open it  
>  temporarily like Sublime Editing a temporary tab keeps it open  
>  Saving / Double clicking the tab keeps the tab permanent Browsing the tree  
>  view on the left using the :right_arrow: key allows you to open files

~~


CC BY-SA 3.0
2015-05-22T03:56:23.890
10487
2015-05-22T17:30:06.293
2015-05-22T17:30:06.293
3516
3516
10485
answer


即席で`chary-tree-view`というパッケージを書きました。  
インストールするだけでダブルクリックのみで開くようになると思います。  
（素の`tree-view`でしかチェックしてないので、もしかすると他のパッケージと競合するかもしれません）

`$ apm install chary-tree-view`

<https://atom.io/packages/chary-tree-view>


CC BY-SA 3.0
2015-05-22T17:48:30.543
10524
2015-05-22T18:00:54.110
2015-05-22T18:00:54.110
3639
3639
10485
answer