On Jun 6, 2007, at 10:32 AM, James Perry wrote:
Hello all,
One thing I found useful in BBEdit was the ability to show the pinstripe column markers -- I find this invaluable as a guide when coding in python, where indentation is critical. Might this be a feature that you all would find useful?
Perl has it built in (meta.leading-tabs, meta.odd-tab, meta.even-tab).
I am also using it in Objective-C, using the syntax below which itself includes the Objective-C syntax. That recipe could probably be used for other languages as well. It works fine with hard tabs, for soft tabs it assumes 4-char wide tabs.
Gerd
{ scopeName = 'source.objc.gerd'; fileTypes = ( 'm', 'h' ); foldingStartMarker = '(?x) /**(?!*) |^(?![^{]*?//|[^{]*?/*(?!.*?*/.*?{)).*?{\s*($|//|/*(?!.*?*/.* \S)) '; foldingStopMarker = '(?<!*)**/|^\s*}|^@end\b'; patterns = ( { name = 'comment.line.double-slash.c++'; begin = '^(//)'; end = '$\n?'; beginCaptures = { 0 = { name = 'meta.comment.full-line.c++'; }; 1 = { name = 'punctuation.definition.comment.objc'; }; }; endCaptures = { 0 = { name = 'meta.comment.full-line.c++'; }; }; patterns = ( { name = 'punctuation.separator.continuation.c++'; match = '(?>\\s*\n)'; }, ); contentName = 'meta.comment.full-line.c++'; }, { name = 'meta.leading-tabs'; begin = '^(?=(\t| {4}))'; end = '(?=[^\t\s])'; patterns = ( { match = '(\t| {4})(\t| {4})?'; captures = { 1 = { name = 'meta.odd-tab'; }; 2 = { name = 'meta.even-tab'; }; }; }, ); }, { include = 'source.objc'; }, ); }