Commit Graph

3728 Commits

Author SHA1 Message Date
Nathan Sobo
ee09c20214 Merge branch 'master' into paste-indentation 2012-10-24 12:37:50 -06:00
Nathan Sobo
ca2527f4b8 Meta-w closes spec windows again.
This adds a 'core:close' event to meta-w in the default bindings, and modifies window to listen for it.
2012-10-24 12:35:31 -06:00
Nathan Sobo
b71fa308a3 Always run window.startup when window.coffee is required
When we actually want to attach the root view in window-bootstrap.coffee, we call `window.attachRootView(path)` instead of calling `window.startup(path)`. Having `startup` called automatically means we can be sure any code we add there runs in every environment (including benchmark and specs). This is where we do things like setup the global keymap, parse text mate bundles and themes, and establish the window close handler. Any globals other than the root view that we want to be available in all environments should be established here. Right now that's just the keymap, but soon I want to add a global pasteboard.
2012-10-24 12:34:45 -06:00
Kevin Sawicki
906f816fc6 💄 2012-10-23 21:43:43 -07:00
Kevin Sawicki
48bdc75359 Send remaining stdout/stderr output to callbacks
Previously this data was only sent to the done
handlers and so commands such as SelectAllMatchesInProject
were not displaying all the results when the result size
was large.
2012-10-23 21:27:17 -07:00
Nathan Sobo
937caf8400 Un-F 2012-10-23 17:17:28 -06:00
Nathan Sobo
4d9b777350 Fix LanguageMode.proto.suggestedIndentationForBufferRow exception for row 0 2012-10-23 16:50:00 -06:00
Nathan Sobo
b5b552737d Enable indent normalization on paste 2012-10-23 16:30:49 -06:00
Nathan Sobo
d1999b91ff Base first line delta on the cursor column, not the existing line's indent 2012-10-23 16:30:38 -06:00
Nathan Sobo
839d57d819 Use existing line's indentation level if inserting normalized lines within it
If we're pasting multiple lines starting inside an already existing line, we never want to auto indent. We should just take its existing indentation level. Also, we strip the leading whitespace off the first line we're inserting, assuming it's already being represented by the indentation of the line we're onto which we're appending it.
2012-10-23 16:17:26 -06:00
Kevin Sawicki
4eff8b657f 💄 2012-10-23 13:57:17 -07:00
Kevin Sawicki
7ea905a906 Remove unneeded requires 2012-10-23 13:57:17 -07:00
Nathan Sobo
3b18c6a42d With autoIndent disabled, don't use suggested first line indent when normalizing
Also, when some lines are *less* indented than the first line, it might not be possible to outdent them as far as they originally were relative to the first line, so we do as much as possible.
2012-10-23 14:27:26 -06:00
Corey Johnson
8f4ec3c45e Fix command panel specs 2012-10-23 13:21:35 -07:00
Corey Johnson
ae7264ad12 Fix autocomplete specs 2012-10-23 13:21:35 -07:00
Corey Johnson
e20832aa50 Tree View uses core:close core:confirm core:cancel and adds tool-pane:unfocus 2012-10-23 13:21:34 -07:00
Corey Johnson
f0e7242dca override default 'enter' binding on autocomplete mini-editor 2012-10-23 13:21:34 -07:00
Corey Johnson
b4e3e11deb Listen for core:cancel event directly on AutoComplete view 2012-10-23 13:21:34 -07:00
Corey Johnson
8e417631e3 Markdown Preview uses core:cancel and markdown-preview:toggle 2012-10-23 13:21:34 -07:00
Corey Johnson
421731c6a0 Command Panel uses core:close, core:cancel and core:confirm 2012-10-23 13:21:34 -07:00
Corey Johnson
d0e1ee255c Autocomplete extension uses core:confirm and core:cancel 2012-10-23 13:21:33 -07:00
Corey Johnson
72a64b8e8b Add core:cancel and core:confirm to atom keymap
Also 💄
2012-10-23 13:21:33 -07:00
Nathan Sobo
7bd4e8801f If inserting on a line that is longer than the suggested indent, preserve indent 2012-10-23 14:13:51 -06:00
Nathan Sobo
0e5c76b474 Start adding the normalizeIndent option to EditSession.proto.insertText
This will be used by the paste command to ensure that indentation is normalized.
2012-10-23 14:07:00 -06:00
Nathan Sobo
7be3c55765 Only auto-indent when typing, not when pasting or programmatically inserting
This paves the way for using a different strategy to normalize indentation when pasting, without it getting tangled in auto-indent.
2012-10-23 11:59:54 -06:00
Kevin Sawicki
ab8c22825c Support outdenting when indent is < 1 tab length 2012-10-23 09:57:39 -07:00
Nathan Sobo
518d88a4ab Fix spec breakage caused by a styling change 2012-10-23 10:46:38 -06:00
Corey Johnson & Nathan Sobo
fcbbe0a29b Do not use cached results for regexes that contain \G. 2012-10-22 11:04:20 -07:00
Corey Johnson
2635631d81 Always retain _resoucePath 2012-10-19 14:24:00 -07:00
Nathan Sobo
41679e40af Load event-palette extension in defaultConfig 2012-10-19 14:12:43 -06:00
Nathan Sobo
61e769390a Better styling 2012-10-19 14:07:47 -06:00
Nathan Sobo
57ab2d3013 Merge branch 'master' into event-palette 2012-10-19 13:37:39 -06:00
Nathan Sobo
e60bd609d4 Fix 'rake nof' 2012-10-19 12:59:22 -06:00
Corey Johnson & Nathan Sobo
9bf16063fc Un-F 2012-10-19 12:58:42 -06:00
Corey Johnson & Nathan Sobo
9303aaa8fd Rename root-view: event prefix to window: 2012-10-19 12:51:36 -06:00
Corey Johnson & Nathan Sobo
e6d541438d Editor uses @command to register command handlers 2012-10-19 12:48:19 -06:00
Corey Johnson & Nathan Sobo
eff289de37 Use @command in TreeView 2012-10-19 12:45:05 -06:00
Corey Johnson & Nathan Sobo
7248e2dfb5 Use @command in Snippets extension 2012-10-19 12:42:38 -06:00
Corey Johnson & Nathan Sobo
84b2cabeb3 Calling .abortKeyBinding on an event that wasn't triggered by the keymap is ok
Certain events call `abortKeyBinding` to opt out of handling certain keybindings. Snippets does this with tab for example. If it's not a situation where it's appropriate to go to the next tab stop, we let the next binding be triggered, which could insert a tab, for example. But when we trigger events from the event palette, there *is* no next binding. Having a no-op function helps in this situation.
2012-10-19 12:42:27 -06:00
Corey Johnson & Nathan Sobo
503d25dff0 Use @command in MarkdownPreview extension 2012-10-19 12:27:45 -06:00
Corey Johnson & Nathan Sobo
70616aa78f Use @command in FuzzyFinder extension 2012-10-19 12:26:31 -06:00
Corey Johnson & Nathan Sobo
67d6d86855 Use @command to register EventPalette commands
This is at the moment a bit redundant, since you're already in the EventPalette when you see this. But we intend `@command` to communicate intent in the codebase, and its may also end up being used in other ways later.
2012-10-19 12:24:40 -06:00
Corey Johnson & Nathan Sobo
909d1594bc Use @command to handle CommandPanel commands 2012-10-19 12:21:22 -06:00
Corey Johnson & Nathan Sobo
38548df61a Use @command to register autocomplete extension commands 2012-10-19 12:16:57 -06:00
Corey Johnson & Nathan Sobo
191164ed4c Add $.fn.command method which ensures event is documented
For now, we auto-generate the documentation string by humanizing the event name. In the future, we may provide the option to provide more documentation, such as info about any arguments to the event, extended documentation, etc.
2012-10-19 12:14:02 -06:00
Corey Johnson & Nathan Sobo
d420585b11 Display keybindings in EventPalette. Style a bit. 2012-10-19 12:02:00 -06:00
Corey Johnson & Nathan Sobo
de3bbce29f Only show events w/ descriptions in EventPalette
Also, auto-generate human readable event name in editor. This is a good example of how we could do this automatically for some kind of `onCommand`, `command`, `onInteractiveEvent` method that combines the event name, documentation string, and handler in one shot.
2012-10-19 11:24:40 -06:00
Kevin Sawicki
d58954145b Remove brew check
This was added for the gyp formula install
which has been removed
2012-10-18 16:04:43 -07:00
Will Farrington
fcc6795e83 no more custom gyp 2012-10-18 16:00:14 -07:00
Nathan Sobo
2b8c946a65 Merge branch 'master' into event-palette
Conflicts:
	spec/extensions/fuzzy-finder-spec.coffee
	src/extensions/fuzzy-finder/fuzzy-finder.coffee
2012-10-18 16:33:44 -06:00