Commit Graph

97 Commits

Author SHA1 Message Date
subtlegradient be9de4befd Internet Explorer Conditional Comment snippets
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10114 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:58 +00:00
subtlegradient 5692efe8c1 Removed redundant group scope
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10113 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:52 +00:00
subtlegradient 535a98f1f7 More syntax tests
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10112 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:46 +00:00
subtlegradient 743c785083 Scientific notation => Ex, 1e5 and 2.5E5
from Joseph Pecoraro

git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10111 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:42 +00:00
subtlegradient 87f90e9d19 Don't require a space after the function keyword
Merging in a modified version of Joseph Pecoraro's fix here: http://pastie.textmate.org/private/hxkpy8qkahofrxwyvp4coq

git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10110 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:36 +00:00
subtlegradient 60c8151e9b Merging in the regex fixes from Joseph Pecoraro as seen here: http://lists.macromates.com/textmate/2008-June/025973.html
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10109 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:31 +00:00
subtlegradient 65981d95f2 Some syntax tests
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10108 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:25 +00:00
subtlegradient a09b74f571 Impriving regexp literals
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10107 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:20 +00:00
subtlegradient b5363c34e5 Undefined -> undefined
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10106 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:15 +00:00
subtlegradient efa328fc93 Improved meta.function.json.js with punctuation and proper storage.type
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10105 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:10 +00:00
subtlegradient a8f3f40b77 Added a tests folder with some starter files
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10104 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:01:05 +00:00
subtlegradient 7ca0d476cf Unifying the "for" snippets
diff --git "a/Snippets/for (in) {\342\200\246}.tmSnippet" "b/Snippets/for (in) {\342\200\246}.tmSnippet"
index d7e0848..b64dede 100644
--- "a/Snippets/for (in) {\342\200\246}.tmSnippet"
+++ "b/Snippets/for (in) {\342\200\246}.tmSnippet"
@@ -3,8 +3,8 @@
 <plist version="1.0">
 <dict>
 	<key>content</key>
-	<string>for (var ${1:x} in ${2:Things}) {
-	${0:${1:x}}
+	<string>for (var ${1:thing} in ${2:Things}) {
+	$0${1:thing}
 };</string>
 	<key>name</key>
 	<string>for (in) {…}</string>
diff --git "a/Snippets/for (\342\200\246) {\342\200\246} (PPK).tmSnippet" "b/Snippets/for (\342\200\246) {\342\200\246} (PPK).tmSnippet"
index b34c0f5..9408455 100644
--- "a/Snippets/for (\342\200\246) {\342\200\246} (PPK).tmSnippet"
+++ "b/Snippets/for (\342\200\246) {\342\200\246} (PPK).tmSnippet"
@@ -4,7 +4,7 @@
 <dict>
 	<key>content</key>
 	<string>for (var ${20:i}=0,${2:thing}; ${2:thing}=${1:Things}[${20:i}]; ${20:i}++){
-	${2:thing}$0
+	$0${2:thing}
 };
 </string>
 	<key>name</key>
diff --git "a/Snippets/for (\342\200\246) {\342\200\246} (faster).tmSnippet" "b/Snippets/for (\342\200\246) {\342\200\246} (faster).tmSnippet"
index 34e6b71..2853eb2 100644
--- "a/Snippets/for (\342\200\246) {\342\200\246} (faster).tmSnippet"
+++ "b/Snippets/for (\342\200\246) {\342\200\246} (faster).tmSnippet"
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
 	<key>content</key>
 	<string>for (var ${20:i} = ${1:Things}.length - 1; ${20:i} &gt;= 0; ${20:i}--){
-	${100:${1:Things}[${20:i}]}$0
+	$0${100:${1:Things}[${20:i}]}
 };</string>
 	<key>name</key>
 	<string>for (…) {…} (Improved Native For-Loop)</string>
diff --git "a/Snippets/for (\342\200\246) {\342\200\246}.tmSnippet" "b/Snippets/for (\342\200\246) {\342\200\246}.tmSnippet"
index 6208a16..852d3f5 100644
--- "a/Snippets/for (\342\200\246) {\342\200\246}.tmSnippet"
+++ "b/Snippets/for (\342\200\246) {\342\200\246}.tmSnippet"
@@ -4,7 +4,7 @@
 <dict>
 	<key>content</key>
 	<string>for (var ${20:i}=0; ${20:i} &lt; ${1:Things}.length; ${20:i}++) {
-	${100:${1:Things}[${20:i}]}$0
+	$0${100:${1:Things}[${20:i}]}
 };</string>
 	<key>name</key>
 	<string>for (…) {…}</string>

git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@10103 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-07-02 17:00:59 +00:00
subtlegradient b84367b126 Fixed regression with nested groups and functions
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@9131 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-03-16 06:35:43 +00:00
subtlegradient bb8deef61d Tweaking regex for optimization and performance. disabling "punctuation.section.scope.round" seems to have helped.
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@9130 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-03-16 06:16:45 +00:00
subtlegradient 7a80c6d2ab Fixed snippet. I'd accidentally sent a half-finished version :'(
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@9129 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-03-16 06:14:13 +00:00
subtlegradient 151f7a83eb Don't match a single slash (/) as a regex literal unless there's another one on the same line. Force Regex literals to end at the end of the line. This helps solve some performance issues while coding. Thanks Daniel Stockman
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@9128 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-03-16 03:24:13 +00:00
subtlegradient d72e54c64d Fixed the parsing of object values that are regular expression literal. Thanks Daniel Stockman
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@9126 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-03-16 02:38:15 +00:00
subtlegradient bc39c3bdca Cleaned up "for in" snippets and added a new ultra-fast one from quirksmode.
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@9114 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2008-03-14 18:31:48 +00:00
subtlegradient b6f84d2641 New "for (in){…}" snippet
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@8634 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-12-09 08:20:27 +00:00
subtlegradient 1f347c3df7 Cleaned up snippets
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@8633 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-12-09 08:19:31 +00:00
subtlegradient f6ff90bedc Split out object-properties into the repository to keep things clean
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@8632 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-12-09 08:19:12 +00:00
subtlegradient f577ae87e4 Renamed "Javascript Basic" to "Javascript Embedded" Thanks Infin.
New scope: meta.complete.method for the first character of white space after a dot.

git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@8631 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-12-09 08:18:54 +00:00
subtlegradient 581d5ad997 Changes scopes. source.js => source.js.base, source.js.basic => source.js
Include source.js.basic if you want embedded javascript in your language.
Include source.js.base if you want to extend javascript, EG: MooTools

git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@8614 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-12-05 21:22:56 +00:00
subtlegradient 97c40c67f1 Merged changes from stable
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@8601 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-12-05 19:41:09 +00:00
subtlegradient 5335a0d676 Copying JavaScript to review
git-svn-id: http://macromates.com/svn/Bundles/trunk/Review/Bundles/JavaScript.tmbundle@8600 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-12-05 18:44:38 +00:00
duff 093215cd0b • match regexps that follow a ‘return’ keyword, example:
return /^[a-zA-Z]([a-zA-Z0-9+-.])*:/.test(s);



git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@7067 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-04-26 23:15:46 +00:00
duff c9ca65bb80 • add jsx as a recognized file type, apparently what Photoshop CS2 and CS3 uses for JavaScript
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@7017 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-04-19 22:02:41 +00:00
duff 29989a44d7 • change several patterns of the form: [A-Za-z…]+\w* into [A-Za-z…][\w…]* — I am thinking though, that ‘…’ should not be allowed for anything but the first character
• change a pattern of the fork: \w+ \.? \w* into \w+ (\. \w*)?

Both of the above would previously result in potential really bad performance, because two greedy repeats basically matching the same thing, was after each other, and that leads to exponential time complexity in input size.


git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6859 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-03-20 11:51:44 +00:00
duff d01c07ff38 • handle com.some.namespace.Function = test() { } — ticket 2629590E
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6787 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-03-12 14:44:56 +00:00
duff f405e6a31e • make /* … */ work again (for uncommenting) — ticket A2F2DDD2
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6761 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-03-09 20:03:31 +00:00
duff 596c674019 Add the following keys to the bundle’s info.plist:
contactName:
   The full name of the contact for this bundle.
contactEmailRot13:
   A ROT13 encoded email address for the bundle contact (we obfuscate it to avoid spammers from picking up the files, seeing how bundles will often be available via anonymous svn over http).
description:
   A short description for this bundle. Do link to more info about the language (or whatever) the bundle is about. I decided on using HTML for this (but leave out the initial paragraph tag) since it seemed like overkill to run a single line of text through Markdown.pl, just to convert [foo](link) into <a href="link">foo</a>

Many of the current descriptions could use some improvements, I just wanted to get the ball rolling :)


git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6718 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-03-04 20:11:31 +00:00
subtlegradient 0539e44989 Removed old bas scope
Set ⌥⇧: as the shortcut for object keys
Set the trigger for "for faster" to "for" to get the menu

git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6595 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-02-15 04:34:38 +00:00
duff 9ec26daccc • recognize documentation comments (/** … */) — patch from Dave Grijalva
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6575 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-02-13 04:48:32 +00:00
subtlegradient dcb51d605c Fixed bad copy/paste. It was an em-dash not a -- :/
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6542 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-02-09 15:37:15 +00:00
subtlegradient 8918fc0380 Added the "Improved Native For-Loop" snippet from http://solutoire.com/2007/02/02/efficient-looping-in-javascript/
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6518 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2007-02-03 07:52:40 +00:00
subtlegradient 494487abe6 Fix for javascript "fred = (whatever)" being considered a function
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6341 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-12-12 21:11:31 +00:00
subtlegradient f7e26af2b9 http://pastie.textmate.org/24618
Javascript commenting should use // method like with PHP, not /* ... */
Now it does. Yay comments!

git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6258 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-11-28 05:53:13 +00:00
subtlegradient 1d19d9c169 Remove the rule that incorrectly turns anything with a dot before an = into a class. this grammar still needs some serious work imho.
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@6257 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-11-28 03:07:25 +00:00
msheets 82f10d6ae3 Include the delimiters in the string.quoted.single scope rather than just the content.
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5998 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-11-07 22:05:57 +00:00
msheets bb4b016f32 • Change entity.name.object.js.firebug to entity.name.type.object.js.firebug
• Change entity.name.instance to entity.name.type.instance


git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5728 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-10-29 20:27:04 +00:00
cskiadas 5fdf24b4fa First attempt at rearranging.
Added getElement snippet.

git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5720 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-10-29 19:52:42 +00:00
msheets 6fef2d6b80 Add more specific scopes for true|false|null:
constant.language.boolean.true.js, constant.language.boolean.false.js, constant.language.null.js

From james on the mailing list.


git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5650 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-10-26 20:39:09 +00:00
msheets d60113b0ba • Added puctuation scopes.
• Change meta.delimiter.statement to punctuation.terminator.statement
• Better scope strings in meta.function.json
• Optimize a few of the larger regex matches.


git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5373 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-10-05 02:56:50 +00:00
haraldmartin 704e02f030 • Added a really handy snippet for all iteration methods. Instead of typing 'each' and then ⇥ (tab) to get the each snippet, you now press ⇧⌃⌘( and you'll get the iterator function. Therefore this works for all iterator functions (inject, reject, each, map etc)
• Moved more of the genreric JavaScript snippets (subtleGradient's?) from Prototype → JS bundle

• Added whitespace around '=' and ':' in the Create Class alt snippet (we aren't afraid of whitespace, are we?)

git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5310 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-09-26 15:50:54 +00:00
haraldmartin 7c8a8d1c75 • ⇧↩ (shift + enter) will turn the current word as a function (like the ruby one does). ⇧⌃↩ (shift + control + enter) will make it into a method instead (blah: function() { ... })
• Cleaned up some snippets like setTimeout and the if/if else/function and others

git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5308 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-09-26 15:20:02 +00:00
haraldmartin 9fff45d36d • Moved a lot of the generic JS stuff from the Prototype bundle to the JS bundle and removed duplicated rules.
• Improved some rules to catch more functions (like Object.myfunc = ...)

Some of the rules can be simplified but I'm not a regexp guru so if somebody want to make them shorter/easier/faster, go ahead :)

git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5307 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-09-26 14:07:21 +00:00
duff 4a0e3a094f • forgot octal numbers (in strings) with the first digit higher than 3 (e.g. \57 or \7)
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5203 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-09-13 18:35:54 +00:00
duff b766a2309c • markup hex (\xHH) and octal (\377) sequences in strings
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@5202 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-09-13 18:33:01 +00:00
duff 269f63f493 • allow whitespace before colon when declaring functions as ‘foo: function () { … }’
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@4874 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-08-21 12:10:57 +00:00
msheets d526582b54 Move this & super to a new variable.language rule, though oddly best I can tell super doesn't exist in javascript outside some kind of extension?
git-svn-id: http://macromates.com/svn/Bundles/trunk/Bundles/JavaScript.tmbundle@4734 dfb7d73b-c2ec-0310-8fea-fb051d288c6d
2006-08-14 08:14:15 +00:00