Commit Graph

53 Commits

Author SHA1 Message Date
Corey Johnson & Nathan Sobo
3b213e2960 Use single quotes when shelling out to ag.
This prevents `sh` from interpreting $ and \ as special characters.
2012-11-05 12:18:28 -08:00
Corey Johnson
89ac3f1c82 Project.scan works with escaped regex literals 2012-10-29 16:04:01 -07:00
Corey Johnson & Nathan Sobo
a72d0399f7 Add Editor.setShowInvisibles and remove showInvisibles from EditSession 2012-10-18 14:10:36 -07:00
Corey Johnson
e2a917fcf3 Change tabText to tabLength 2012-10-18 11:31:39 -07:00
Kevin Sawicki
19aa192c47 Return paths instead of deferred from project.getFilePaths
It was already being performed synchronously
2012-10-12 14:45:18 -07:00
Kevin Sawicki
7fd06c8e66 Remove logging of traversal times 2012-10-09 17:41:33 -07:00
Kevin Sawicki
d8ea07468b Include FTS_PHYSICAL when calling fts_open 2012-10-09 17:41:33 -07:00
Kevin Sawicki
8b61e6a9df Split out file and directory callbacks 2012-10-09 17:41:32 -07:00
Kevin Sawicki
71c161d527 Remove unneeded regex matching for built-in ignores 2012-10-09 17:41:32 -07:00
Kevin Sawicki
51a41a9a72 Add native traverseTree 2012-10-09 17:41:32 -07:00
Kevin Sawicki
7fc362c801 Prune paths that are files
This avoids an extra call to isDirectory for each path
that has already been determined to be a file and
therefore not a directory.
2012-10-08 12:10:49 -07:00
Nathan Sobo
7937380eed Projects w/ EditSessions for now-deleted files can now be reloaded w/out error 2012-09-18 13:30:16 -06:00
Nathan Sobo
c3e748a17c WIP: Use rake to start compiling resources (like require.coffee) 2012-08-26 16:29:46 -05:00
Nathan Sobo
c2c8724ad0 Initial commit 2012-08-10 13:32:19 -06:00
Corey Johnson
cd8e6a7f20 Don't auto-indent ff a grammar doesn't have an indent/outdent regex 2012-08-09 16:04:23 -07:00
Corey Johnson & Nathan Sobo
1a243adfcf All specs pass w/ TextMateGrammar for tokenization (auto-indent disabled) 2012-08-03 12:00:05 -06:00
Corey Johnson & Nathan Sobo
b27a793b92 Fix bug in Project.scan that was getting the state machine into a bad state
Chunks of stdout data are being buffered by lines. But then we were splitting these chunks on \n and the last fragment was therefore always "". This caused problems. Still need to test this.
2012-07-19 19:17:31 -06:00
Nathan Sobo
239cba25e4 Use the silver searcher to implement global search
Parsing uses a simple state machine in `Project.scan`.
2012-07-19 17:28:46 -06:00
Corey Johnson & Nathan Sobo
9e4f401485 WIP: trying to make preview faster 2012-07-19 11:28:41 -06:00
Corey Johnson & Nathan Sobo
12f765cc47 💄 2012-07-19 11:14:38 -06:00
Corey Johnson & Nathan Sobo
7a85e07cf1 Project.scan handles paths with newlines 2012-07-19 10:27:42 -06:00
Nathan Sobo
f5e46e57fc Use bundled ack instead of grep
Our ack is slightly modified to use `'\0'` characters instead of `':'` in the --nogroup listing. This makes it easier to handle both `':'` characters and newlines in filenames, but we aren't really doing that yet.
2012-07-19 09:17:44 -06:00
Corey Johnson & Nathan Sobo
8534df28d5 Another attempt with find/grep/perl/xargs that doesn't work 2012-07-18 18:04:39 -06:00
Corey Johnson & Nathan Sobo
4b1403724b Ensure that evil filenames do not hose Project.scan 2012-07-18 17:53:53 -06:00
Corey Johnson & Nathan Sobo
b959d5aa37 Buffers are memoized on project by path 2012-07-18 12:56:09 -07:00
Corey Johnson & Nathan Sobo
d36873f702 Rename Project.open to Project.buildEditSessionForPath 2012-07-18 11:20:13 -07:00
Corey Johnson & Nathan Sobo
522149c84d Project.scan excludes ignored directories 2012-07-18 11:06:13 -07:00
Corey Johnson & Nathan Sobo
34e96fb8d7 WIP: Adding find all matches in project command 2012-07-17 14:26:12 -06:00
Corey Johnson & Nathan Sobo
c3fe9aa0b3 Implement refcounting scheme on Buffer 2012-07-17 14:24:33 -06:00
Corey Johnson & Nathan Sobo
64a9c245e7 Quote regex passed to grep 2012-07-12 12:11:00 -07:00
Corey Johnson & Nathan Sobo
d2d6efdcb5 Project.scan invokes the callback with matches 2012-07-12 11:12:31 -06:00
Nathan Sobo
3854f73c84 WIP: Start on Project.prototype.scan
Right now it calls out to grep and parses the output, but doesn't do anything with it just yet.
2012-07-11 18:50:38 -06:00
Corey Johnson & Nathan Sobo
6177b46cf9 Restore selection on active edit session when undoing/redoing
The `do`, `undo`, and `redo` methods on operations take an optional editSession argument, which can be used to determine the context in which they are being run. We restore selections on that edit session instead of the session where the operations originally occurred.
2012-07-06 11:42:07 -06:00
Corey Johnson
801a91ec9b Specs cleanup buffers 2012-06-29 15:38:12 -07:00
Corey Johnson
98393a653e Destroy editSession by calling a method on the project instead of triggering a destroy event that the project listens to. 2012-06-29 15:09:31 -07:00
Corey Johnson
c3d7d3566f Buffer listens for changes to file and triggers 'contents-change' event 2012-06-29 15:09:31 -07:00
Nathan Sobo
d50b7f7a37 Trigger a 'new-edit-session' event when Project.prototype.open creates an EditSession 2012-06-20 17:40:45 -06:00
Corey Johnson & Nathan Sobo
af9aec7cbc SoftWrap state is stored in EditSessions, but it is set and toggled via Editor. 2012-06-20 09:28:23 -07:00
Corey Johnson & Nathan Sobo
d1c1f3cfce Move autoIndent, tabText, softTabs and softWrap to project 2012-06-20 09:28:23 -07:00
Corey Johnson & Nathan Sobo
4659fd7dc3 Project.open returns an editSession instead of a buffer.
First step in removing the coupling of Editor and Buffer. Editor should get all information about the active buffer from the activeEditSession.
2012-06-20 09:28:22 -07:00
Corey Johnson & Nathan Sobo
4665321b37 Project.getFilePaths does not traverse into ignored directories 2012-05-08 17:59:38 -07:00
Corey Johnson
cb45675f14 Remove @path var from project 2012-05-08 13:02:14 -07:00
Corey Johnson
f4c5536391 Add path-change event to Project 2012-05-08 09:45:39 -07:00
Nathan Sobo
31163f1d8c Convert FileFinder to a proper extension and remove references from RootView code 2012-05-07 19:30:07 -06:00
Corey Johnson
d04be05e95 Root view sets project's path using project.setPath(path) 2012-05-01 10:00:53 -07:00
Corey Johnson
28f39cbdab When project's constructor is given a file as its path, it sets its path to the parent directory of the given file 2012-05-01 09:18:22 -07:00
Corey Johnson
acae9d63ca fs.directory does not append a trailing '/' to directories 2012-05-01 08:41:35 -07:00
Corey Johnson & Nathan Sobo
3f97d98ef9 Start on directory change events 2012-04-25 11:33:44 -06:00
Nathan Sobo
55c78e9550 Start on TreeView. It renders the entries in the current project's root directory. 2012-04-23 14:20:17 -06:00
Corey Johnson & Nathan Sobo
5e1d7c774c Serialized Editor state no longer contains Buffer objects 2012-04-18 15:57:58 -07:00