fin*_*bob 6 maxscript sublimetext2
我有一个非常甜蜜的设置,用于编辑和运行来自sublime文本2内的maxscript.
我最近想要的一件事是用正常的圆括号来模拟或复制花括号的行为
编辑: 对不起 - 当我不在时,Chrome决定我在那里完成编辑:(
如果我键入,if (x) then {
那么enter
我将得到一个格式良好的块,现在在箭头处的插入符号
if(x) then {
<-
}
Run Code Online (Sandbox Code Playgroud)
但我无法找到崇高文本藏在哪里.
我想将此行为复制到正常的圆括号()
而不是获取
if (x) then (
<-)
Run Code Online (Sandbox Code Playgroud)
我已经在大括号中找到它的位置,它只是在默认的键绑定中.我复制了该部分"keys": ["enter"]
并用"("而不是"{"替换了正则表达式.
我还必须复制内置AddLineInBraces.sublime-macro
并添加{"command": "left_delete" },
到它:
[
{"command": "insert", "args": {"characters": "\n\n"} },
{"command": "left_delete" },
{"command": "move", "args": {"by": "lines", "forward": false} },
{"command": "move_to", "args": {"to": "hardeol", "extend": false} },
{"command": "reindent", "args": {"single_line": true} }
]
Run Code Online (Sandbox Code Playgroud)
如果正则表达式匹配,则使输入击键调用该宏.这给出了完美的结果!
事实上,我最后一直在减少MXS,所以还没有真正玩过它.
感谢Ghoul Fool提出的建议,但看了之后我想要一个更简单的解决方案.
在回答FrozenKiwi的过程中,我将来自不同地方的几个插件混合在一起,这样我就可以从ST2向Max发送maxscript了.这是重物的链接.它确实涉及一些工作以使其运行但确实非常方便.
其余的只是各种ST2优点的点滴和单调:shift + enter来评估选择,ctrl + e来评估所有,很多(和很多)的宏,例如"for"+ tab会写 format "var: %\n" (var as string)
我不知道我是否可以将它作为一个包发布,因为它来自不同的来源.我想,我可以检查每件事的许可证.
我唯一剩下的障碍是无法将输出从maxscript监听器重定向到ST2,我已经在互联网上搜索过,似乎还没有人做过,我并不热衷于自己尝试.我甚至不知道Maxscript本身是否可以使用 - 它可能必须是使用SDK的C++插件 - 但我迄今为止使用C++插件的经验很少.我不怀疑它可以做到.
归档时间: |
|
查看次数: |
1350 次 |
最近记录: |