Commit Graph

1948 Commits

Author SHA1 Message Date
Nathan Sobo
2416ff19a4 Add NullGrammar to obviate synchronous load of text grammar on start
It's also an extremely simple grammar, so we'll do less work to
initially tokenize open buffers before loading their real grammars.
2013-03-22 17:35:34 -06:00
Nathan Sobo
a2f72882d7 Rename grammarForFilePath to selectGrammar
The old name was misleading because it the decision is based on the
file contents in some circumstances.
2013-03-22 17:35:27 -06:00
Nathan Sobo
ab934cfbfb Replace LoadTextMatePackagesTask with async grammar loading 2013-03-22 15:29:07 -06:00
Nathan Sobo
8e57ee2776 Import Node's fs in text-mate-package; rename existing fs to fsUtils 2013-03-22 15:29:07 -06:00
Nathan Sobo
d3ead2a0d1 Update fs.list to use readdirSync and filterExtensions helper 2013-03-22 15:29:07 -06:00
Kevin Sawicki & Nathan Sobo
e23edd02fd Use flexbox to position editor's gutter and scroll view
This removes the need to compute the width of the gutter based
on the line count in the editor and also removes the need to
set the scroll view's left position manually.
2013-03-22 12:47:56 -07:00
Corey Johnson & Nathan Sobo
84fe0a384d Pop grammar rules that result in infinite loops 2013-03-22 11:42:47 -07:00
Kevin Sawicki
3d6dbf6d59 Include path instead of file in thrown error 2013-03-22 09:50:11 -07:00
Kevin Sawicki
49d1801742 Remove dead code 2013-03-22 09:33:18 -07:00
Corey Johnson & Nathan Sobo
1ad5327c99 Ensure we never load saved window in specs 2013-03-21 18:51:32 -06:00
Corey Johnson & Nathan Sobo
f4d339ccac Unify root view state with window state 2013-03-21 18:24:21 -06:00
Corey Johnson & Nathan Sobo
84244a4c22 🙊 2013-03-21 18:24:21 -06:00
Kevin Sawicki
f8ffe1c408 Only delete to end row when greater than start row
Closes #442
2013-03-21 17:07:36 -07:00
Corey Johnson & Nathan Sobo
2f3b4b9e5f Move scoped properties out of the grammar file and into a directory
Closes #435
2013-03-21 14:07:32 -07:00
Corey Johnson & Nathan Sobo
0b719bfecf Atom packages can load cson grammars and TextMate packages can't 2013-03-21 13:26:56 -07:00
Kevin Sawicki
661ef175d5 Remove $native.getPlatform()
process.platform should now be used instead.
2013-03-20 17:51:51 -07:00
Kevin Sawicki
529b3ac583 💄 2013-03-20 14:56:27 -07:00
Corey Johnson & Kevin Sawicki
6c357aaca7 Make paths absolute before calling $native.watchPath
Also return a subscription that can be unwatched instead
of returning an id that is later passed to $native.unwatchPath
along with the watched path.

This allows specs to pass when run from a symlink'ed folder.
2013-03-20 13:27:49 -07:00
Kevin Sawicki & Nathan Sobo
2f190025a9 Use new parseFileSync method of plist npm 2013-03-20 10:59:54 -06:00
Kevin Sawicki & Nathan Sobo
46f0bfb991 Kill dead code 2013-03-20 10:55:00 -06:00
Kevin Sawicki & Nathan Sobo
501dc9b76c Merge remote-tracking branch 'origin/master' into cefode
Conflicts:
	native/v8_extensions/native.mm
	spec/app/config-spec.coffee
	spec/app/window-spec.coffee
	spec/spec-helper.coffee
	spec/stdlib/fs-utils-spec.coffee
	src/app/atom-package.coffee
	src/app/config.coffee
	src/app/window.coffee
	src/packages/fuzzy-finder/lib/load-paths-handler.coffee
	src/packages/markdown-preview/lib/markdown-preview-view.coffee
	src/packages/tree-view/spec/tree-view-spec.coffee
	src/stdlib/require.coffee
2013-03-20 10:46:50 -06:00
Nathan Sobo
4a203a9eb6 Use plist NPM instead of vendor/plist.js. Use new synch parsing api.
This also adds a `readObject` method to `fs-utils`, which loads the
file as cson if it ends with json/cson, and otherwise tries to load
it as a plist.

For now, we're using my fork which is tolerant to a node environment
with a `window` global and suppresses some logging of non-fatal
errors. If the upstream author accepts my pull requests we can switch
back.
2013-03-19 11:32:23 -06:00
Kevin Sawicki
b01a3ff9cc Release repo when destroy is called 2013-03-17 21:46:26 -05:00
Kevin Sawicki
cdb7f14c03 Release repository when worker is done
Closes #414
2013-03-17 17:22:34 -05:00
Nathan Sobo
fc7eaf57fc Add window.profile, which is like measure but also records a profile 2013-03-14 17:47:07 -06:00
Kevin Sawicki
8dbcb44d06 Rename traverseTree to traverseTreeSync
Also rename traverseTreeAsync to traverseTree
2013-03-13 14:40:31 -07:00
Corey Johnson
c236325c1a Log errors (instead of crashing) when the config file cannot be parsed
Also, config won't overwrite changes to config.cson when the file can not be parsed. Closes #401
2013-03-12 16:47:26 -07:00
Corey Johnson
f7f034ad2a Remove core:close event from window 2013-03-12 15:55:30 -07:00
Corey Johnson
d916962a80 Defer window close events until all modified pane items are handled
If the user presses cancel, the close event is canceled
2013-03-12 15:55:30 -07:00
Corey Johnson
44d4dc7e60 Use URI in prompt message if pane item doesn't have a title 2013-03-12 15:55:30 -07:00
Corey Johnson
9860f32d4c Add cancel callback to promptToSaveItem 2013-03-12 15:55:30 -07:00
Kevin Sawicki & Nathan Sobo
051decc08c Use fs.resolveOnLoadPath() instead of require.resolve() 2013-03-12 14:42:24 -07:00
Kevin Sawicki & Nathan Sobo
1d1ba5f6d1 Use node's require instead of internal require 2013-03-12 10:38:05 -07:00
Kevin Sawicki
115b960ce7 Handle reading and writing in cson.coffee
Moves helpers from fs.coffee to cson.coffee
2013-03-11 22:40:00 -07:00
Kevin Sawicki
cc7ddc59ff Set input encoding to utf8 2013-03-11 19:15:49 -07:00
Kevin Sawicki
2a78183a15 Use node's crypto API for pasteboard md5s 2013-03-11 19:07:08 -07:00
Corey Johnson
06b63c24dc Merge remote-tracking branch 'origin/dev' into md-preview-redux
Conflicts:
	src/packages/markdown-preview/stylesheets/markdown-preview.css
	static/atom.css
	static/command-panel.css
2013-03-11 17:02:36 -07:00
Nathan Sobo
194ac13f43 💄 2013-03-11 16:05:20 -06:00
Nathan Sobo
bf7fc39434 Rename AtomPackage.packageMain to .mainModule 2013-03-11 16:04:38 -06:00
Nathan Sobo
10d0fdf2d7 Require a deferred package early if needed when deserializing panes
The requiring of a package's main module is now decoupled from package
activation. Non-deferred packages will always be required before the
panes are deserialized. This allows the package to register any
deserializers for objects displayed in the panes.

Deferred packages can contain a 'deferredDeserializers' array in their
package.cson. If we attempt to deserialize an object with a deserializer
in the list, the package's main module will be required first so it has
a chance to register the deserializer. But the package still won't be
activated until an activation event occurs.

We may want to add an additional optional hook called 'load' which is
called at require time. We would not guarantee that the rootView
global would exist, but we could give the package a chance to register
deserializers etc. For now, registering deserializers is a side-effect
of requiring the package.
2013-03-11 15:08:19 -06:00
Kevin Sawicki
2ecb2d9ba1 Remove unneeded _.clone call
This is no longer needed after upgrading underscore which
fixed a bug with object equality across objects created in
different contexts.
2013-03-11 13:39:54 -07:00
Kevin Sawicki
2212222c47 Use underscore node module 2013-03-11 11:22:36 -07:00
Corey Johnson & Nathan Sobo
478a376c97 Less files work in atom themes 2013-03-11 10:02:19 -07:00
Justin Palmer
0624ba6d3f rename remaining static css files to less 2013-03-11 10:02:19 -07:00
Justin Palmer
392b9cfeab command-panel.css -> command-panel.less 2013-03-11 10:02:19 -07:00
Justin Palmer
a448a79ae6 atom.css -> atom.less 2013-03-11 10:02:19 -07:00
Justin Palmer
b9604d1baa reset.css -> reset.less 2013-03-11 10:02:18 -07:00
Justin Palmer
b33494eada -console.log 2013-03-11 10:02:18 -07:00
Justin Palmer
b502c811cb move less parsing to requireStylesheet 2013-03-11 10:02:18 -07:00
Kevin Sawicki
28f89672d0 Use status helpers from git-utils module 2013-03-09 14:38:04 -08:00