Corey Johnson & Nathan Sobo
1b98bf706e
Setting value to null/undefined removes key from config
2013-04-26 15:36:58 -07:00
Corey Johnson & Nathan Sobo
c923b561e2
💄
2013-04-26 15:36:57 -07:00
probablycorey
ecad6bc2a8
Don't allow float or int Editor's to have NaN as a value
2013-04-26 15:36:57 -07:00
probablycorey
cedea831f7
Config panel handles binding for Editors
2013-04-26 15:36:57 -07:00
Nathan Sobo
232978ea9d
Themes can be disabled by clicking their 'x' icon in the enabled list
2013-04-26 15:36:14 -07:00
Nathan Sobo
ad0bcc3851
Update enabled themes list when config key is updated
2013-04-26 15:36:13 -07:00
Nathan Sobo
b110f430ee
Update 'config.themes' config key when enabled themes list is sorted
2013-04-26 15:36:13 -07:00
Nathan Sobo
0d520e9930
Add a package config panel with the list of enabled packages
2013-04-26 15:36:13 -07:00
Nathan Sobo
b70ff1b164
Don't assign window.jQuery in jasmine-jquery.js helper
...
I wrap it in a function wrapper to ensure that the assignment
`var jQuery` doesn't end up assigning a window global.
2013-04-26 15:36:13 -07:00
Nathan Sobo
5a291e8188
Use bootstrap stacked nav-pills for panels menu in config window
2013-04-26 15:36:12 -07:00
Nathan Sobo
c90579956f
Un-f
2013-04-26 15:36:11 -07:00
Nathan Sobo
495230435f
Allow packages to be enabled / disabled from general config panel
2013-04-26 15:36:11 -07:00
Nathan Sobo
f0cddf9f32
Serialize the state of the config window on refresh
2013-04-26 15:36:11 -07:00
Nathan Sobo
422d89a7ed
Handle checkbox fields in config panel
2013-04-26 15:34:48 -07:00
Nathan Sobo
5e0dd80366
Remove overkill assertions
2013-04-26 15:34:48 -07:00
Nathan Sobo
bb287cb465
Add ConfigPanel superclass that can bind fields to config values
...
When you give a config field a `name` attribute based on a config key
path, such as 'editor.fontSize', it is automatically kept in sync with
the config value. You can also specify a `type` attribute of 'int' or
'float' to automatically convert the field value to a numeric type.
Specifying a type of 'string' is optional to signal no conversion.
2013-04-26 15:32:47 -07:00
Nathan Sobo
252159afcf
Add super basic styling to config view and 2 non-functional panels
2013-04-26 15:32:47 -07:00
Nathan Sobo
6c43fd5c9d
Set up dev tools event handler when binding default keys
2013-04-26 15:32:47 -07:00
Nathan Sobo
2f60ffcfce
Add ability to add panels to the config view
2013-04-26 15:32:47 -07:00
Nathan Sobo
8980a97895
Add atom.activatePackageConfig, which is called in config windows
...
This calls an optional `activateConfig` method on the package's main
module, which allows it to add a configuration interface to the
`configView`.
2013-04-26 15:32:47 -07:00
Nathan Sobo
9d2d3d5c00
Rename window methods to distinguish editor window from config window
2013-04-26 15:32:46 -07:00
Nathan Sobo
f62e81bca8
Add config.observeUserConfig
2013-04-26 15:32:46 -07:00
Nathan Sobo
ab1b90804e
Add specs for successful calls to .loadUserConfig
2013-04-26 15:31:18 -07:00
Nathan Sobo
9fe264ded4
💄
2013-04-26 15:31:18 -07:00
Nathan Sobo
3a05731f2d
Eliminate EditSession references from tokenized-buffer-spec
2013-04-25 17:16:51 -06:00
Nathan Sobo
9c7ff78fc8
Move language-specific integration tests to text-mate-grammar-spec
2013-04-25 17:15:27 -06:00
Nathan Sobo
4fdc9fba63
Eliminate EditSession dependencies in DisplayBuffer spec
2013-04-25 16:18:39 -06:00
Nathan Sobo
0d78098dbf
Make TokenizedBuffer select its own grammar, not LanguageMode
...
This is part of an effort to disentangle LanguageMode, DisplayBuffer,
and TokenizedBuffer. It should be easy to create a DisplayBuffer
without creating an EditSession… let's get the dependencies flowing
in a single direction.
2013-04-25 15:13:00 -06:00
Nathan Sobo
0f623b3d08
Move structural folding logic to LanguageMode
...
DisplayBuffer should just focus on providing basic support for folding.
Scanning the structure of the code, looking at scopes, etc is more the
domain of the LanguageMode object.
2013-04-25 14:06:53 -06:00
Nathan Sobo
60f945aafd
Move structural folding specs to edit-session-spec
...
Structural folding should really be handled at the edit session level
so that the DisplayBuffer doesn't need access to the LanguageMode. It
should only be concerned with the raw ability to create folds.
2013-04-25 14:06:53 -06:00
Nathan Sobo
ca3b0c97da
💄 getter renames
2013-04-25 14:06:52 -06:00
Kevin Sawicki
875555d933
Rename invisible class to invisible-character
...
Bootstrap defines this class with visibility: hidden
which we don't want since invisible characters should
be visible.
2013-04-25 10:02:33 -07:00
Kevin Sawicki
2803da2f8b
Replace offsUtilscreen with offscreen
2013-04-24 17:59:50 -07:00
Kevin Sawicki
4e8c6e29ad
Use @ instead of this.
2013-04-24 17:57:59 -07:00
Corey Johnson & Nathan Sobo
24ce415283
Move event listener calls from resetDisplay to edit
...
Fixes #140
2013-04-24 11:41:56 -07:00
probablycorey
9cc4c2e5de
Allow off to be called before on without error
...
Previously calling `something.off 'event-name', handler` would throw
an error unless `on` was called first.
2013-04-24 11:41:56 -07:00
Kevin Sawicki
b65e1485a7
Copy folders to ~/.atom directory asynchronously
2013-04-24 10:12:30 -07:00
Kevin Sawicki
2f5a99fac2
Install atom command asynchronously
2013-04-24 10:12:29 -07:00
Corey Johnson & Nathan Sobo
9f235103f8
Add _.spliceWithArray to avoid stack overflows when splicing huge arrays
2013-04-23 11:16:55 -07:00
Kevin Sawicki & Nathan Sobo
125c41a2e2
Support space-separated event names in EventEmitter.on()/off()
2013-04-23 08:39:26 -07:00
Kevin Sawicki & Nathan Sobo
b9ad462c69
Retokenize when grammar with matching injection selector is updated
2013-04-23 08:39:26 -07:00
Kevin Sawicki & Nathan Sobo
0d35943386
Retokenize when grammar with matching injection selector is loaded
2013-04-23 08:39:26 -07:00
Kevin Sawicki
f0cf337857
Support grammars with an injectionSelector
...
These grammars can now contribute rules to other grammars when
their selector matches the current scope stack.
2013-04-23 08:39:26 -07:00
Kevin Sawicki
63d665e2cb
Replace capture groups in pattern names with match
2013-04-23 08:39:25 -07:00
Nathan Sobo
35f0b7b49e
Fix #505 . Update grammars if any included grammars are updated.
2013-04-22 11:34:03 -06:00
Nathan Sobo
444325893b
Allow subscribers to unsubscribe on a per-object basis
...
This makes use of the new ES6 WeakMap feature, which allows for a hash
map that's keyed by object.
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
Nathan Sobo
9204836d70
Update grammars when grammars they include are added/removed
...
If the Ruby on Rails grammar depends on HTML, but it isn't loaded, its
syntax highlighting won't include HTMl tokens. If we later load HTML,
we should update any buffer with the Rails grammar to reflect the
change. This commit changes grammars to memoize their initial rule and
repository. If an included grammar is added or removed, we clear the
memoized rules and emit a 'grammar-updated' event. Any tokenized
buffer that points to this grammar can then retokenize to reflect the
newly available/unavailable included grammar.
2013-04-22 11:33:59 -06:00
Kevin Sawicki
62c94959e1
Move injections spec to TextMateGrammar spec
...
This spec was previously in the TokenizeBuffer spec which
required having a PHP fixture and setting up an edit session
to verify a line could be tokenized which was unnecessary.
2013-04-19 10:58:35 -07:00
Kevin Sawicki & Nathan Sobo
1f4febcfaf
Ignore child captures of captures with patterns
2013-04-19 10:58:35 -07:00