Kevin Sawicki & Nathan Sobo
98614592af
Store line endings on a per-line basis in Buffer
...
The line ending for each line is recorded and reused
when lines are modified or inserted.
Closes #166
2013-01-27 16:01:22 -08:00
Kevin Sawicki
7425f58f26
Only change end position if selection is mult-line
2013-01-23 16:46:43 -08:00
Kevin Sawicki
6324a60d72
Wrap selection in brackets
...
Enclose the selection in brackets when an opening
bracket is typed and the selection is non-empty
Closes #41
2013-01-23 16:24:40 -08:00
Kevin Sawicki
bc3646f180
💄
2013-01-23 16:24:40 -08:00
Kevin Sawicki
17f12c42d3
Delete end pair when begin pair is backspaced
2013-01-23 16:24:40 -08:00
Corey Johnson
5eb16d8304
Add window.removeStylesheet
2012-12-26 17:41:49 -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
Nathan Sobo
8a3f932bfa
Merge branch 'hide-selection-cursor'
2012-10-29 16:54:34 -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
40673549cb
Quotes only automatically close if they are opened after a non-word character.
2012-10-29 13:12:28 -07:00
Corey Johnson
82e0a458fa
Do not automatically close quotes when inserted inside a string.
2012-10-29 11:54:13 -07:00
Corey Johnson & Nathan Sobo
0aa9f8de57
Indent works with hard tabs
2012-10-26 11:15:55 -06:00
Nathan Sobo
b1e8e2391f
Merge branch 'paste-indentation'
2012-10-25 10:50:05 -06:00
Corey Johnson
e02b8f8eec
Add support for brackets with the same begin/end character
2012-10-24 14:24:19 -07:00
Corey Johnson
ebbb39f50e
Improve brackets auto closing.
...
When an open bracket is inserted, an anchorRange is created. When a closing bracket is inserted, and its position matches the end of one of the anchorRanges, the closing bracket is not inserted and the cursor moves right.
2012-10-24 14:24:19 -07:00
Nathan Sobo
4d9b777350
Fix LanguageMode.proto.suggestedIndentationForBufferRow
exception for row 0
2012-10-23 16:50:00 -06:00
Corey Johnson
4734c8cdc4
If the file name has no '.' use the file name as the extension.
2012-09-04 10:53:28 -07:00
Corey Johnson & Nathan Sobo
12b06ddf0c
Get spec suite running (lots of failures)
2012-08-27 17:36:36 -05:00
Nathan Sobo
c2c8724ad0
Initial commit
2012-08-10 13:32:19 -06:00
Nathan Sobo
847b514164
Merge branch 'textmate'
...
Conflicts:
benchmark/benchmark-helper.coffee
benchmark/benchmark-suite.coffee
src/app/language-mode.coffee
2012-08-09 18:57:59 -06:00
Corey Johnson
c95ca04340
Use TextMate to toggle comments
2012-08-09 10:33:46 -07:00
Corey Johnson & Nathan Sobo
7fe6a05594
Folding no longer relies on Ace.
...
Indentation is used to determine foldable regions, if the last line matches TextMate's foldEndRegex it is included in the foldable region.
2012-08-08 17:42:11 -07:00
Corey Johnson & Nathan Sobo
ed12f66b13
Do not insert matching bracket unless the following character is whitespace
2012-08-01 13:20:34 -07:00
Corey Johnson & Nathan Sobo
a589557aaa
Ignore bracket matching when there are multiple cursors
2012-08-01 09:47:12 -07:00
Corey Johnson & Nathan Sobo
97b492edfc
When an identical closing bracket is inserted, don't insert a new character and move cursor to the right.
2012-08-01 09:33:42 -07:00
Nathan Sobo
dc662ed071
When ( [ { ' or " is inserted, insert the matching character after the cursor
2012-07-27 13:08:43 -06:00
Nathan Sobo
87f4d8c6e9
Upon inserting '(', insert matching ')' character after cursor
2012-07-27 13:02:26 -06:00
Nathan Sobo
3516dea210
Introduce LanguageMode wrapper for Ace modes as a foundation of our own modes
...
LanguageMode is the central point for all language-specific behavior associated with an EditSession. There is one LanguageMode instance per EditSession. LanguageMode has access to the EditSession and its TokenizedBuffer, and in reverse the EditSession, DisplayBuffer, and TokenizedBuffer also make use of LanguageMode. This is a bit incestuous, but I think it's okay because you can think of LanguageMode as a swappable strategy object that governs language-specific aspects of that constellation of objects.
2012-07-27 12:30:06 -06:00
Corey Johnson & Nathan Sobo
291886b4b3
Rename LanguageMode to TokenizedBuffer
2012-06-14 11:02:52 -06:00
Nathan Sobo
e444ba193c
Merge all ace adaptors into a single AceAdaptor class
2012-06-13 18:31:03 -06:00
Nathan Sobo
591a294e2e
Absorb FoldSuggester into LanguageMode
2012-06-13 15:44:40 -06:00
Nathan Sobo
49e0e2095a
Absorb line commenting into LanguageMode
2012-06-13 15:36:35 -06:00
Nathan Sobo
f1397db60b
Rename Highlighter -> LanguageMode
2012-06-13 15:21:44 -06:00