Nathan Sobo
9866e84c9f
In LanguageMode, unsubscribe from old grammar when switching grammars
2013-04-22 11:34:03 -06:00
Nathan Sobo
93910201b0
Re-tokenize buffer when its grammar is updated
...
This can happen if a grammar that the grammar includes is added or
removed from the syntax global.
2013-04-22 11:34:03 -06:00
Garen Torikian
5ee388cede
Get it to a proper 80%
2013-04-18 18:50:22 -07:00
Garen Torikian
8bd02358d2
Should I regret a lack of better commit messages?
2013-04-12 22:35:54 -05:00
Garen Torikian
7e5b6bf5c4
Massive updates
2013-04-11 21:11:12 -05:00
Garen Torikian
fad987c0f3
More updates--25%
2013-04-09 18:03:39 -05:00
Garen Torikian
a16428c5b6
Merge master
2013-04-09 01:37:46 -05:00
Garen Torikian
d042fadab1
More updates
2013-04-09 01:18:12 -05:00
Corey Johnson & Nathan Sobo
144984c726
Make LanguageMode unsubscribe from syntax global when destroyed
2013-04-03 18:34:54 -06:00
Corey Johnson & Nathan Sobo
1b56cfb270
LanguageMode switches to a better-matching grammar when it is added
2013-04-03 18:34:54 -06:00
Nathan Sobo
ed1c5d3417
Localize grammar reloading / setting to LanguageMode
...
Previously, logic associated with swapping grammars was a bit
scattered. Now grammar reloading / assignment methods delegate to
LanguageMode directly, and it emits a 'grammar-changed' event when
the grammar changes. Now EditSession and TokenizedBuffer listen for
this event and perform necessary actions for grammar change.
2013-04-03 18:34:53 -06:00
Corey Johnson & Nathan Sobo
db4420e068
Move grammar overrides to syntax (no serialization yet)
2013-03-22 17:35:35 -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
Kevin Sawicki & Nathan Sobo
1d1ba5f6d1
Use node's require instead of internal require
2013-03-12 10:38:05 -07:00
Kevin Sawicki
2212222c47
Use underscore node module
2013-03-11 11:22:36 -07:00
Kevin Sawicki
d34796a78b
Use oniguruma node module
...
This removes all internal native oniguruma
sources and starts using the node module
directly to create onig scanners and regexes.
2013-03-07 10:45:22 -08:00
Kevin Sawicki
745a3ef9f2
Use class methods to create native object shims
...
CoffeeScript 1.5 complains if a constructor has
a returns a value.
2013-02-27 13:25:10 -08:00
Kevin Sawicki
49c9536358
Guard against no fold end regex
...
Not all bundles specify this and an error will be
raised when trying to fold inside a grammar that does
not have this property defined if this check isn't done.
2013-02-25 09:31:00 -08:00
Kevin Sawicki
a52983928e
Remove unused code now in bracket-matcher package
2013-02-08 09:51:31 -07:00
Nathan Sobo
6e191aba5b
Move matching bracket insertion to bracket-matcher package
2013-02-08 09:51:31 -07:00
Nathan Sobo
6be72bac54
Guard against undefined marker ranges
2013-02-06 20:45:50 -07:00
Kevin Sawicki & Nathan Sobo
eee6903541
Use markers instead of anchors to track which close-brackets to skip
2013-02-05 17:21:24 -07:00
Corey Johnson & Nathan Sobo
d4b5c8beac
Don't make OnigScanner and OnigRegExp be window globals
2013-01-24 17:22:49 -08:00
Kevin Sawicki
3bd826fcb2
Inline selected text wrapped in brackets
2013-01-23 16:49:34 -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
17f12c42d3
Delete end pair when begin pair is backspaced
2013-01-23 16:24:40 -08:00
Kevin Sawicki
bdf60997ea
💄
2013-01-23 16:24:40 -08:00
Kevin Sawicki
7c7ca4a6c3
Don't auto outdent if already fully outdented
2013-01-22 17:39:03 -08:00
Kevin Sawicki
59f7b6650c
Don't auto outdent if preceding row is null
2013-01-22 17:38:23 -08:00
Kevin Sawicki
ba7449411e
Throw error if grammar cannot be resolved for path
2013-01-21 16:48:13 -08:00
Kevin Sawicki
d9385888c8
Only update display when grammar changes
2013-01-08 16:54:51 -08:00
Kevin Sawicki
2b51a2ce73
Test firstLineRegex first when finding grammar
...
This is required for the property-list bundle to highlight
.plist files that maybe in XML or non-XML formats.
Also specify the cached buffer disk contents to grammarForFilePath
so fs.read doesn't need to be called again if the contents are
already read.
2013-01-08 16:15:38 -08:00
Corey Johnson & Kevin Sawicki
131708ba37
Serialize grammar overrides for paths
2013-01-08 15:24:14 -08:00
Corey Johnson & Kevin Sawicki
c67fbef2b2
Store grammar overrides on project
2013-01-08 14:39:32 -08:00
Kevin Sawicki
3b47c26b4d
Change an edit session's grammar on meta-l
2013-01-08 13:17:12 -08:00
Nathan Sobo
08a27cf93d
Load grammars from TextMatePackage. Delete TextMateBundle.
...
TextMatePackage is only designed to load resources out of a TextMate
bundle. It's used only at load time, and from that point out we only
refer to our own global `syntax` data structure to access the data that
it loads.
2012-12-31 18:28:38 -06:00
Nathan Sobo
188d8f8604
Store grammars on the syntax global
2012-12-31 18:26:58 -06:00
Nathan Sobo
bb4f3c4efa
Store foldEndPattern in syntax global's scoped properties
...
There's a slight wrinkle in this commit… TextMate grammars sometimes store
the `foldStopMarker` directly in the grammar, rather than storing it
in a separate scoped preferences file like the other settings. So we
have to scan through grammars looking for those that have the fold end
marker and make a scoped property for that grammar's scope.
2012-12-28 14:46:39 -06:00
Nathan Sobo
5a075d515e
Retrieve indent/outdent patterns from scoped properties, not TM bundle
2012-12-28 13:47:50 -06:00
Nathan Sobo
9c7c2ab800
Store TM bundle start/end comment strings in scoped properties
...
Previously, we had a custom method on the `TextMateBundle` class for
retrieving these variables from the bundle. Now we're using Atom's
`syntax.getProperty` mechanism. The idea is to map TextMate concepts
to their Atom equivalent, rather than building everything directly
around TextMate.
2012-12-28 13:27:54 -06:00
Kevin Sawicki
9f6d1f987f
Add initial support for replacing anchors
2012-12-21 13:22:08 -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
874af0f2bc
Eliminate reference to TokenizedBuffer on EditSession
2012-11-06 11:09:38 -08:00
Corey Johnson & Nathan Sobo
89ef3f0f20
Build Token objects in TextMateGrammar. Tokenization-related renames.
2012-11-05 16:03:19 -07:00
Corey Johnson
41291021c4
Use entire filePath to determine its grammar
2012-11-01 17:47:31 -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
1924e92727
Create method getTokenizedBuffer() on language mode
...
Instead of assigning a tokenizedBuffer property on LanguageMode instances from the TokenizedBuffer constructor.
2012-10-29 11:54:14 -07:00