Commit Graph

181 Commits

Author SHA1 Message Date
Andy Delcambre
759fe2dd5b Bind meta-= to autoindent currently selected rows
Closes #142
2013-01-18 11:33:20 -08:00
Kevin Sawicki
62f1155706 Don't prompt to save on close if buffer is opened elsewhere
Only prompt to save when the buffer is dirty and the last
open session on it is being destroyed.
2013-01-17 17:25:52 -08:00
Nathan Sobo
b0fe034c9a Add autoflow package w/ autoflow:reflow-paragraph command 2013-01-10 17:29:41 -07:00
Corey Johnson
ca41bf0709 Set auto-indent config defaults 2013-01-10 10:38:44 -08:00
Corey Johnson
d53572d54d Rename editor.autoIndentPastedText to editor.autoIndentOnPaste 2013-01-10 09:42:20 -08:00
Corey Johnson
4f0e2c1e9b Add editor.autoIndentPastedText config option 2013-01-10 09:31:57 -08:00
Corey Johnson
d55dfc8a6f AutoIndent is a config property instead of a syntax property 2013-01-10 09:31:23 -08:00
Corey Johnson
21fa3e5a0f autoIndent is stored as a syntax property 2013-01-09 16:26:57 -08:00
Corey Johnson
f5ee676e5e Pass autoIndent as an option flag
Instead of querying EditSession for autoIndenting
2013-01-09 15:24:04 -08:00
Corey Johnson
261a8aae2d Remove @autoIndent from Project and EditSession 2013-01-09 15:22:37 -08:00
Corey Johnson
95dcf275e4 Remove *.getLastCursor() 2013-01-08 18:27:29 -08:00
Corey Johnson
f9e9b4203c *.getCursor() always returns last cursor (does not use index)
We weren't using the index functionality anywhere.
2013-01-08 18:27:29 -08:00
Kevin Sawicki
d9385888c8 Only update display when grammar changes 2013-01-08 16:54:51 -08:00
Kevin Sawicki
3b47c26b4d Change an edit session's grammar on meta-l 2013-01-08 13:17:12 -08:00
Corey Johnson & Nathan Sobo
28c457f564 Add Cursor.getScopes and EditSession.getCursorScopes 2013-01-07 13:32:12 -07:00
Kevin Sawicki
bbdff31faf Lowercase current word/selection with meta-U 2013-01-07 09:37:51 -08:00
Kevin Sawicki
2a0ee62685 Uppercase current word/selection with meta-u 2013-01-07 09:37:51 -08:00
Nathan Sobo
4ef4c79f30 Use Subscriber mixin in EditSession to subscribe/unsubscribe
This replaces the need to track subscription on `EditSession`'s 
`Buffer` and `DisplayBuffer` using an incrementing id on `EditSession`
2013-01-04 14:11:25 -07:00
Nathan Sobo
b6b8f235fd Move and rename Buffer's 'anchors-updated' event 2013-01-04 14:03:37 -07:00
Kevin Sawicki & Nathan Sobo
c5e6a7428d 💩 Kill stray print statement 2013-01-04 13:19:56 -07:00
Kevin Sawicki & Nathan Sobo
ec13c38c7d Add EditSession.transact and friends
`EditSession.transact` adds more semantics on top of `UndoManager`'s
version pertaining to restoring selections on undo/redo of the
transaction.
2013-01-04 12:42:09 -07:00
Nathan Sobo
73b38b6b59 Passivize names remaining events triggered by EditSession 2013-01-03 18:16:19 -07:00
Nathan Sobo
fb6fe04023 Passivize more event names: 'change(d)' & 'screen-lines-change(d)' 2013-01-03 18:16:19 -07:00
Nathan Sobo
6d9402b5c9 Rename Anchor and Buffer events to passive-voice scheme 2013-01-02 13:48:10 -07:00
Jon Rohan
006a6d958d Adding meta-backspace which will backspace from cursor to the beginning of line 2012-12-28 16:58:22 -08:00
Nathan Sobo
acc0503684 Merge remote-tracking branch 'origin/master' into config
Conflicts:
	src/app/keymap.coffee
	src/extensions/outline-view/src/keymap.coffee
	src/extensions/outline-view/src/tag-reader.coffee
	src/packages/fuzzy-finder/spec/fuzzy-finder-spec.coffee
	src/packages/fuzzy-finder/src/fuzzy-finder.coffee
2012-12-18 20:32:05 -07:00
Corey Johnson & Nathan Sobo
1dde562c6b Don't explode when pasting on fractionally-indented lines w/ hard tabs 2012-12-06 12:01:59 -07:00
Corey Johnson & Nathan Sobo
de5bd91055 Paste indent normalization works with on lines w/ mixed indentation
Normalizing the indent no longer explodes when pasting on a line that has mixed tabs and spaces when the edit session is using hard tabs.
2012-12-06 11:59:23 -07:00
Nathan Sobo
5b143d4b93 Add 'autosave' option, which saves when unfocusing or switching tabs 2012-11-30 14:11:27 -07:00
Nathan Sobo
4b88a9f5ea Expanded snippets are destroyed when the cursor leaves a tab stop
For this to work, I needed to make the updating of anchors transactional. Now, all anchors are updated and *then* they emit their events. That way when the cursor moves based on the user typing, the tab stop they're in has a chance to expand before we handle the move event. This prevents spurious cancellation of the snippet when typing on a tab stop.
2012-11-29 13:39:00 -07:00
Corey Johnson & Nathan Sobo
eb0414f4e7 Emit a contents-conflicted` event instead of contents-change-on-disk 2012-11-28 15:21:12 -07:00
Nathan Sobo
a1ae819908 Only tokenize in background if when a buffer is visible in an editor
This will prevent running a bunch of background tokenization when Atom is reloaded. We only perform tokenization to support content that is actually on screen.
2012-11-23 12:41:08 -07:00
Nathan Sobo
5aba8596a9 Make tokenization synchronous in all specs
Disabled some specs that need to make it asynchronous again… will deal with those soon.
2012-11-21 08:22:13 -07:00
Corey Johnson & Nathan Sobo
e52dbb682e WIP: Perform tokenization in chunks when edit session is shown 2012-11-19 16:50:49 -07:00
Corey Johnson & Nathan Sobo
bfb1742285 ctrl-a on an empty line stays on that same line.
Fixes #95
2012-11-19 10:02:31 -08:00
Nathan Sobo
f7b1f0521a Emit row-oriented events from DisplayBuffer 2012-11-16 07:36:36 -07:00
Nathan Sobo
cf4e87103e Emit row-oriented screen lien change events from EditSession 2012-11-16 07:36:35 -07:00
Nathan Sobo
6a5b66a687 💄 2012-11-14 20:51:59 -07:00
Nathan Sobo
c68d5fac7d Attach precipitating bufferChange to DisplayBuffer change events
The gutter can use this to determine if the change might have altered line numbers, for example if it's inside a fold.
2012-11-14 13:07:42 -07:00
Corey Johnson
e9f69ee203 EditSession.isFoldedAtScreenRow returns false for screen rows that do not exist. 2012-11-12 09:12:47 -08:00
Corey Johnson & Nathan Sobo
8184c0248b Don't store tabLength on EditSession 2012-11-06 11:56:18 -08:00
Corey Johnson & Nathan Sobo
139f5d0b50 EditSession.setTabLength assigns tabLength on the TokenizedBuffer. 2012-11-06 11:35:13 -08:00
Corey Johnson & Nathan Sobo
dacb5f063f Remove unused references to stateForScreenRow 2012-11-06 11:13:42 -08:00
Corey Johnson & Nathan Sobo
874af0f2bc Eliminate reference to TokenizedBuffer on EditSession 2012-11-06 11:09:38 -08:00
Nathan Sobo
2efc91aad1 Optimize highlightCursorLine by using cached element references 2012-11-01 13:51:22 -06:00
Nathan Sobo
085adb72ce Pass translation options through when setting buffer position 2012-11-01 07:15:51 -06:00
Corey Johnson & Nathan Sobo
c55332a3a4 WIP: Make selections remember if they are wordwise/linewise
Also always expand from the initial selection after a double/triple click in either direction until directionality of the selection is established.
2012-10-30 13:56:35 -06:00
Corey Johnson & Nathan Sobo
8c7152a59b Eliminate 'move-cursor-to-next-word' command
We have move-to-end-of-word and move-to-beginning-of-word, which is what we use for the current keybindings.
2012-10-30 11:56:05 -06:00
Nathan Sobo
db3d788664 Toggle line comments ignores last row of selection if it ends at col 0
Now that the cursor is hidden at the end of a selection, it's counter-intuitive for the commenting to extend to the next line since there's no visual indicator that the cursor extends to that location.
2012-10-29 16:04:09 -06:00
Corey Johnson & Nathan Sobo
adf00b60f3 Detect softTabs/hardTabs when an EditSession is created 2012-10-26 12:20:14 -06:00