问一个怪问题..
例如:一个方法叫做 meth, 接受一个参数。
meth (2*2-10).abs
# 我希望将方法调用时手动输入的内容, 转化为字符串原样输出
# => "(2*2-10).abs"
我也不知道该如何形容,其实就是传入的表达式不去求值,原样传进来,然后在方法内部,我自己通过 eval 求值。其实我的需求是对经典的 p 包装一下,让输出结果是彩色的,而且有分割线,当然,也要传入原来 初始的表达式, 用来区分。
当然,这个需求可以直接使用 snippet 自动生成一大坨代码。看起来太乱了...
反正就这个需求,是不是用方法之外其他方式可以实现?
已经通过字符串的方式实现了,非常 Cool.
在文件内,我如果想 debug 任意一段代码,我只要用选区选择这段代码,然后按下快捷键,会补全我写的那个方法,然后执行,可以漂亮的输出需要 debug 的变量。
美中不足的是:方法需要额外提供一个 binding 参数,挺累赘...
这个想法也不错呀。
不过不太好匹配呀。容易出错,毕竟不仅仅是一个变量,有时候会混杂在实现代码当中。而且,有时候用 p 的写法也不一致,同时 p 多个参数也是问题。