Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@hmcfletch
Created June 10, 2011 01:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save hmcfletch/1018085 to your computer and use it in GitHub Desktop.
Save hmcfletch/1018085 to your computer and use it in GitHub Desktop.
TextMate javascript syntax highlighting for content_for :inline_js
// To edit:
// Bundles -> Bundle Editor -> Edit Languages
// Open Ruby on Rails
// Edit HTML (Rails)
// add to the patterns
// works for <% content_for :inline_js do -%>
// can prefix :inline_js like :fb_inline_js
// the end tag must look like
// <!-- end :fb_inline_js--> works as well
{
name = 'inline_js.rails.embedded.html';
begin = '<%\s*(content_for)\s+(:.*inline_js)\s+(do)\s*-?%>';
end = '<%\s*(end)\s*(#\s*(end|END)\s*:.*inline_js)\s*-?%>';
beginCaptures = {
1 = { name = 'support.function.viewhelpers.rails'; };
2 = { name = 'constant.other.symbol.double-quoted.ruby'; };
3 = { name = 'keyword.control.def.ruby'; };
};
endCaptures = {
1 = { name = 'keyword.control.def.ruby'; };
2 = { name = 'comment.block.erb'; };
};
patterns = (
{ include = 'source.js'; }
);
}
// Snippet to make this easier (ijs + tab key)
// To create in textmate:
// Bundles -> Bundle Editor
// Edit Snippet
// Click '+' and add 'New Snippet'
// Activation -> choose "Tab Trigger"
// Choose a trigger, I used "ijs"
<% content_for :inline_js do %>
${1:\$(document).ready(function(){
${0:$TM_SELECTED_TEXT}
\});}
<% end # end :inline_js %>
@joshheartsy
Copy link

winning!

@hmcfletch
Copy link
Author

Need to figure out how to not have a hack for the beginCaptures... But this works for now.

@jaygooby
Copy link

jaygooby commented Oct 7, 2012

Great stuff

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment