mirror of
https://github.com/atom/atom.git
synced 2026-04-28 03:01:47 -04:00
port over filefinder
This commit is contained in:
@@ -1,12 +0,0 @@
|
||||
Extension = require 'extension'
|
||||
FileFinderPane = require 'filefinder/filefinderpane'
|
||||
|
||||
module.exports =
|
||||
class Filefinder extends Extension
|
||||
keymap: ->
|
||||
'Command-T': => @pane.toggle()
|
||||
# really wish i could put up/down keyboad shortcuts here
|
||||
# and have them activated when the filefinder is open
|
||||
|
||||
load: ->
|
||||
@pane = new FileFinderPane @window, @
|
||||
@@ -12,7 +12,8 @@ module.exports =
|
||||
class FilefinderPane extends Pane
|
||||
html: require "filefinder/filefinder.html"
|
||||
|
||||
constructor: (@window, @filefinder) ->
|
||||
constructor: (@filefinder) ->
|
||||
@path = atomController.path
|
||||
$('#filefinder input').live 'keydown', @onKeydown
|
||||
|
||||
css = File.read require.resolve 'filefinder/facebox.css'
|
||||
@@ -44,7 +45,7 @@ class FilefinderPane extends Pane
|
||||
|
||||
paths: ->
|
||||
_paths = []
|
||||
for dir in File.list @window.path
|
||||
for dir in File.list @path
|
||||
continue if /\.git|Cocoa/.test dir
|
||||
_paths.push File.listDirectoryTree dir
|
||||
_.reject _.flatten(_paths), (dir) -> File.isDirectory dir
|
||||
@@ -53,7 +54,7 @@ class FilefinderPane extends Pane
|
||||
$.facebox @html
|
||||
@files = []
|
||||
for file in @paths()
|
||||
@files.push file.replace "#{@window.path}/", ''
|
||||
@files.push file.replace "#{@path}/", ''
|
||||
@filterFiles()
|
||||
|
||||
findMatchingFiles: (query) ->
|
||||
@@ -86,9 +87,9 @@ class FilefinderPane extends Pane
|
||||
$('#filefinder li:first').addClass 'selected'
|
||||
|
||||
openSelected: ->
|
||||
dir = @window.path
|
||||
dir = @path
|
||||
file = $('#filefinder .selected').text()
|
||||
@window.open "#{dir}/#{file}"
|
||||
window.open "#{dir}/#{file}"
|
||||
@toggle()
|
||||
|
||||
moveUp: ->
|
||||
15
extensions/filefinder/filefinder.coffee
Normal file
15
extensions/filefinder/filefinder.coffee
Normal file
@@ -0,0 +1,15 @@
|
||||
Extension = require 'extension'
|
||||
KeyBinder = require 'key-binder'
|
||||
Event = require 'event'
|
||||
FilefinderPane = require 'filefinder/filefinder-pane'
|
||||
|
||||
module.exports =
|
||||
class Filefinder extends Extension
|
||||
constructor: ->
|
||||
KeyBinder.register "filefinder", @
|
||||
KeyBinder.load require.resolve "filefinder/key-bindings.coffee"
|
||||
|
||||
@pane = new FilefinderPane @
|
||||
|
||||
toggle: ->
|
||||
@pane.toggle()
|
||||
2
extensions/filefinder/key-bindings.coffee
Normal file
2
extensions/filefinder/key-bindings.coffee
Normal file
@@ -0,0 +1,2 @@
|
||||
filefinder:
|
||||
'cmd-t': (filefinder) => filefinder.toggle()
|
||||
Reference in New Issue
Block a user