0

就像我可以使用$TM_SELECTED_TEXT将当前选择的文本拉入一个片段一样,有什么方法可以从我的代码中检索文本,例如包含当前插入符号位置的方法名称或类名称?

这对于快速创建有用的日志消息非常有用。

所以,如果我有一些 JavaScript 代码(用 | 表示光标/插入符号的位置):

function doSomething() {
   somethingElse();
   |
}

我希望能够通过片段吐出doSomething 。

就像是,

 console.log($TM_CURRENT_METHOD_NAME + "() $1");

这样的事情可能吗?

4

1 回答 1

0

Ember 包的分支中,我将此脚本放入Support/bin/camelize_filename

#!/usr/bin/env ruby
c=%w{config helpers mixins controllers models routes templates views}.join('|')
r = %r{.*/(?:#{c})/(.*)\.js}
puts ENV['TM_FILEPATH'].sub(%r{.*/(?:#{c})/(.*)\.js},'\1').
  gsub(/(?:_|(\/)|^)([a-z\d]*)/){|s| "#{$1}#{$2.capitalize}" }.gsub('/','')

然后我在片段中使用它:

console.groupCollapsed("`camelize_filename`#model");

您可以通过调整正则表达式以匹配哪些目录段属于类的名称空间而哪些不属于其他框架,并更改 gsub('/','') 如果您感兴趣的语言使用名称空间分隔符,例如 ': :'。

于 2013-11-25T03:01:00.313 回答