Commit Graph

1497 Commits

Author SHA1 Message Date
Nathan Sobo
0851bedbe8 Forgot to delete text-mate-bundle.coffee 2013-01-01 13:28:39 -07: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
4f50133fd8 💩 remove print statements 2012-12-31 17:49:39 -06:00
Nathan Sobo
7af5067152 Move Theme loading to instance methods on TextMate & Atom subclasses 2012-12-31 17:48:46 -06:00
Nathan Sobo
2d73aa292d Make theme loading more similar to package loading
These changes are mostly aesthetic in nature. I just thought it would 
be a good idea to have theme loading be parallel to package loading as
much as possible. So I localized more logic on the `atom` global.
2012-12-31 14:18:45 -06:00
Nathan Sobo
bb913ef9e8 Merge branch 'config' 2012-12-31 12:43:25 -06:00
Nathan Sobo
fa7bcfe51b Bundle a themes directory so we don't depend on ~/.atom/themes
We'll look first in the user themes directory, then in the built-in
themes directory. This allows us to default to 'IR_Black' and not crash
if the user doesn't setup their `~/.atom/themes` directory.
2012-12-31 12:08:36 -06:00
Kevin Sawicki
e1db5432dd Support toggling dev tools from event palette 2012-12-29 10:31:38 -08:00
Jon Rohan
0d76ff2ac9 Adding meta-index key commands to editor to access a buffer directly 2012-12-28 20:30:20 -08:00
Jon Rohan
92a9831201 writing spec for .backspaceToBeginningOfLine() 2012-12-28 17:24:57 -08: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
Kevin Sawicki
296138b558 Don't show eol invisible in mini editors 2012-12-28 13:56:44 -08:00
Kevin Sawicki
acf5aeb884 Cancel select list when an empty selection is confirmed 2012-12-28 13:49:13 -08:00
Nathan Sobo
736bd1156b 💄 2012-12-28 15:46:23 -06:00
Kevin Sawicki
0ac47f8ec0 Use select list in autocomplete package 2012-12-28 13:24:31 -08: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
Nathan Sobo
f4d53a017c Merge branch 'master' into config 2012-12-28 11:32:24 -06:00
Kevin Sawicki
575e34d5e4 Forward window focus when active element is body
This problem was when the focus element is detached
when navigating away from the window and when
the window is then given focus again nothing has
focus.

The solution is to use RootView's focus handler
on the window to bring focus to the editor or
other view when the document's active element
is the body meaning nothing inside the RootView
currently has focus.
2012-12-27 21:56:43 -08:00
Nathan Sobo
16c248dbe6 Deal w/ the fact that TextMate settings aren't *always* scoped 2012-12-27 20:13:02 -06:00
Corey Johnson
4a6d336763 Theme.load can take multiple theme names 2012-12-27 16:13:53 -08:00
Corey Johnson
4244e673af Load themes from Config.load 2012-12-27 15:52:09 -08:00
Corey Johnson
71267fd7fe Make required path lowercase 2012-12-27 15:51:43 -08:00
Corey Johnson
82abbaa71c Break AtomTheme out into its own file. 2012-12-27 15:25:16 -08:00
Corey Johnson
0d946078c9 Atom Themes can be loaded 2012-12-27 14:31:13 -08:00
Corey Johnson
d509507b0c TextMateTheme extend Theme 2012-12-27 12:12:58 -08:00
Kevin Sawicki
219aaca0f5 Show diff stat in status bar
Include the number of lines added and removed for
new and modified files
2012-12-27 10:41:29 -08:00
Corey Johnson
d77fc88ff4 Merge remote-tracking branch 'origin/master' into config 2012-12-27 10:38:24 -08:00
Kevin Sawicki
e941459ca7 Register click past last line handler on underlayer 2012-12-27 08:26:32 -08:00
Jon Rohan
20eba7438b making the underlayer min-height instead of height, to see the wrap guide go full screen 2012-12-26 22:16:18 -08:00
Corey Johnson
5eb16d8304 Add window.removeStylesheet 2012-12-26 17:41:49 -08:00
Corey Johnson
b08422bc6b TextMateTheme@load will load absolute paths 2012-12-26 17:41:49 -08:00
Corey Johnson
e5e5c497e1 Load themes from ~/.atom/themes 2012-12-26 17:41:48 -08:00
Jon Rohan
b7e6bfcbdc Merge pull request #113 from github/tree-massage
Cleaning up the tree view style
2012-12-26 17:13:46 -08:00
Kevin Sawicki
110ccc9b7a Match firstLineRegex against entire file 2012-12-26 15:22:41 -08:00
Kevin Sawicki
7cce042f03 Change case of prefix and suffix to matched word
Previously an inserted automcomplete match would not
update the case of the prefix or suffix of the match
and instead only insert the text from the matched word
between the prefix and suffix.

Now the entire matched word is inserted as-is replacing
the existing prefix and suffix.
2012-12-26 15:09:07 -08:00
Jon Rohan
10866223d3 Merge branch 'master' into tree-massage 2012-12-26 13:13:08 -08:00
Kevin Sawicki
a9b9c09a86 Only show wrap guide when enough space
Previously the wrap guide would cause the
editor to scroll if the editor was narrower
than the wrap guide column without taking into
account whether any lines actually reach the guide.

Now the wrap guide only displays when either the wrap
guide column is less than the minimum width of the
editor layer or if the wrap guide column is less than
the entire width of the editor.
2012-12-26 12:48:49 -08:00
Kevin Sawicki
f592242737 Terminate when no more tokens and at end of line
This corrects a regression when pattern matching
to the newline was added.

If the newline is never matched the loop still needs to
terminated so now when the position is before the newline
and the last match had no tokens the loop is broken out of.
2012-12-26 11:44:15 -08:00
Jon Rohan
fe72776a7b Merge branch 'master' into tree-massage 2012-12-26 11:18:52 -08:00
Kevin Sawicki
518a71910d Support clicking past last editor line
Clicking below the last line of an editor
now either moves the cursor to the end of
the file or selects to the end of the file
if shift is pressed.
2012-12-26 11:08:28 -08:00
Jon Rohan
fbbe59714e Having the trailing / in the directory treeview is cruft
I wanted to remove the trailing / in the tree view. However, I have no
idea if this breaks other stuff?
@nathansobo @probablycorey
2012-12-24 17:15:50 -08:00
Nathan Sobo
a1d28a9f74 WIP: Start on Package class w/ TextMate- & Atom-specific subclasses
The `load` method on the superclass will provide a general template for
loading the package's resource. Each subclass will be responsible for
loading resources in a manner appropriate for the package type. There's
some initial progress on loading TextMate settings as scoped properties,
translating the TextMate scope selectors to CSS-style atom selectors.
2012-12-23 15:36:06 -06:00
Nathan Sobo
f76bab512f Most recently added scoped properties win in case of a specificity tie
This makes the scoped property system mimic the behavior of CSS. When 
there is a tie, the scoped properties loaded later in the cascade win.
I also optimize the scanning of all the properties, checking only those
sets of properties that have a value for the desired key path, to reduce
the need to match a ton of scope selectors.
2012-12-23 13:19:20 -07:00
Nathan Sobo
bbd2e384c5 Merge branch 'master' into config 2012-12-23 12:52:02 -07:00
Nathan Sobo
886995364f Start on syntax global. Use it to replace scoped config settings.
We'll store all syntax-related global state in the `syntax` global. For
now, this means that all scoped properties will be stored here, as well
as all grammars.
2012-12-23 12:50:58 -07:00
Kevin Sawicki
ff3b04e01e Support clicking line numbers in gutter
Clicking moves the cursor to the start of the
row and shift-clicking selects to the start of
the row
2012-12-22 23:40:23 -08:00
Kevin Sawicki
b59bd7a099 Check selection being empty before comparing highlighted rows 2012-12-22 22:16:38 -08:00