Nathan Sobo
0d6d16a438
Move TextMateGrammar.buildCaptureTree to .getCaptureTree method on OnigRegExp
2012-08-06 11:43:44 -06:00
Nathan Sobo
32fc042929
Add TextMateGrammar.buildCaptureTree, which organizes nested captures in a tree
...
This will be a weapon in dealing with capture groups that nest within other capture groups, and also helps deal with trailing lookahead groups that don't belong in the main match. I made it a class method because it's stateless and that made it easier to test.
2012-08-03 23:52:58 -06:00
Corey Johnson & Nathan Sobo
0e1d3fe3a9
wip: fixing capture group problems
2012-08-03 11:38:45 -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
08a55dfcac
wip: IndentationForRow almost works TextMate preferences
2012-08-02 17:02:17 -07:00
Corey Johnson
2d3e2b53a3
Passes TextMateBundle spec
2012-08-02 13:23:15 -07:00
Corey Johnson & Nathan Sobo
9ca4c2c347
WIP: Loading TextMate Bundle preferences globally
2012-08-02 13:04:43 -06:00
Corey Johnson
b378620c54
Add TextMateBundle which handles all bundle loading
2012-08-02 11:38:14 -07:00
Corey Johnson
81f83482b0
Rename File.getName and Directory.getName to .getBaseName
2012-08-02 11:37:49 -07:00
Corey Johnson & Nathan Sobo
0a97cb0590
Tokenized buffer uses TextMate grammar
2012-08-02 10:05:09 -07:00
Corey Johnson & Nathan Sobo
b50b8eacca
wip: hooking up tokenized buffer to textmate grammars
2012-08-01 17:54:08 -07:00
Corey Johnson & Nathan Sobo
0cdc042e71
Use text as the default grammar
2012-08-01 17:24:28 -07:00
Corey Johnson & Nathan Sobo
058f63c01f
load all bundle grammars in window.startup
2012-08-01 17:09:29 -07:00
Corey Johnson & Nathan Sobo
370e0b896e
Add TextMateGrammar.loadFromBundles()
2012-08-01 16:58:31 -07:00
Corey Johnson & Nathan Sobo
98ef3e4243
Start on TextMateTheme object
2012-08-01 16:27:32 -06:00
Nathan Sobo
13c95aae31
Add 'themes' directory with the default TextMate themes
2012-08-01 14:07:18 -06:00
Nathan Sobo
cdf20c7a15
Rename Parser to TextMateTokenizer
2012-08-01 13:58:38 -06:00
Corey Johnson & Nathan Sobo
487c4ed439
$self includes work
2012-08-01 11:45:30 -07:00
Corey Johnson & Nathan Sobo
bccd525084
Handle includes
2012-08-01 11:05:37 -07:00
Corey Johnson & Nathan Sobo
fceb9e16f9
remove log statement
2012-08-01 10:52:51 -07:00
Corey Johnson & Nathan Sobo
594e27b057
Parser maintains a stack of rules, which begin/end patterns mutate
2012-08-01 10:47:40 -07:00
Corey Johnson & Nathan Sobo
fbdebd644d
Revert "Handle patterns that include other patterns from the grammar repository"
...
This reverts commit 64795c032306200f05ce3b262fe58adc86e06b34.
2012-08-01 09:48:40 -07:00
Corey Johnson & Nathan Sobo
62dc3a1e8f
Revert "Replace includes with the patterns to which they refer "
...
This reverts commit e7add6472bda071734348dcdd48a6435d685209d.
2012-08-01 09:48:40 -07:00
Corey Johnson & Nathan Sobo
b56c4dda43
Replace includes with the patterns to which they refer
2012-08-01 09:48:40 -07:00
Corey Johnson & Nathan Sobo
62c5da760c
Handle patterns that include other patterns from the grammar repository
2012-08-01 09:48:40 -07:00
Corey Johnson & Nathan Sobo
289b15d032
Create an object-model of the TextMate grammar with methods for the parser
2012-08-01 09:48:39 -07:00
Corey Johnson & Nathan Sobo
0b9d6d4d9b
💄
2012-08-01 09:48:39 -07:00
Corey Johnson & Nathan Sobo
aa02785d67
Parser handles patterns w/ begin/end regexes (if begin/end are on the same line)
2012-08-01 09:48:38 -07:00
Nathan Sobo
7682f586be
Parser can tokenize lines containing simple tokens (no nested scopes yet)
2012-08-01 09:48:37 -07:00
Corey Johnson & Nathan Sobo
a2a58a3506
TextMate parser can parse single plain tokens / tokens with captures
2012-08-01 09:48:37 -07:00
Corey Johnson & Nathan Sobo
7067c35dc0
Add CocoaOniguruma
2012-08-01 09:48:36 -07:00
Corey Johnson & Nathan Sobo
15d27dca44
Start on OnigRegexp javascript extension
2012-08-01 09:48:36 -07:00
Corey Johnson & Nathan Sobo
c6bae093c1
Starting on TextMate bundle support
2012-08-01 09:48:35 -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
Corey Johnson & Nathan Sobo
dc50959af1
Coerce Point.add and Point.plus's argument from array to point object
2012-08-01 09:32:02 -07:00
Corey Johnson & Nathan Sobo
3a5e73aa77
Merge branch 'making-folding-better'
2012-07-30 13:43:47 -07:00
Corey Johnson & Nathan Sobo
f7614c210a
Add unfold-all and bind it to ctrl-}
2012-07-30 12:11:54 -07:00
Corey Johnson & Nathan Sobo
a7db67e68d
When DisplayBuffer.foldBufferRow is called with a buffer row that is within a fold, it folds the scope that incloses the buffer row's fold
2012-07-30 11:46:43 -07:00
Corey Johnson & Nathan Sobo
9622d6f9b3
Rename un/foldScopeContainingBufferRow to un/foldBufferRow.
...
Scope containing buffer row was a misnomer. Waiting until I implement the repeat folding feature before considering a better name.
2012-07-30 10:25:53 -07:00
Corey Johnson & Nathan Sobo
75f0438f6a
Rename fold/unfold to foldCurrentRow/unfoldCurrentRow
2012-07-30 09:58:15 -07:00
Corey Johnson & Nathan Sobo
69d059d24c
Make TreeView.moveDown work for nested/empty directories
...
If the selected entry is the last entry in a directory that *itself* is the last entry of its parent, we need to search upward through our ancestors for the first directory that has a following sibling entry. Also, if the directory is empty, the attempt to select its first element will fail, so we need to search for a next sibling as well.
2012-07-27 21:27:55 -06:00
Corey Johnson
7ff31d1ad7
Remove toggleFold and replace with fold
2012-07-27 13:46:50 -07:00
Corey Johnson
76ffa5a2c5
change toggle-fold to fold
2012-07-27 13:45:13 -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
d0d5cb534f
Merge branch 'master' of github.com:github/atom
2012-07-27 12:30:17 -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
960bd1ea70
Show "buffer in conflict" alert after edit session is visible
2012-07-26 13:32:26 -07:00
Nathan Sobo
79893d96b6
Merge commit '0384f025dd6915d2d9771e37983dc839e49b28f7'
2012-07-26 14:11:29 -06:00