1

grep(或vim)有没有办法打印出命名的函数/类?

即来自:

    class InternalTimer(Sim.Process):
        def __init__(self, fsm):
            Sim.Process.__init__(self, name="Timer")
            random.seed()
            self.fsm = fsm

        def Lifecycle(self, Request):
            while True:
                yield Sim.waitevent, self, Request
                yield Sim.hold, self, Request.signalparam[0]
                if(self.interrupted()):
                    self.interruptReset()
                else:
                self.fsm.process(Request.signalparam[1])

调用$my-func-grep '__init__(self,fsm)' filename.py会产生

        def __init__(self, fsm):
            Sim.Process.__init__(self, name="Timer")
            random.seed()
            self.fsm = fsm
4

1 回答 1

3

您可以创建一个 vim 扩展来有效地执行以下操作:

import inspect
print inspect.getsource(name_of_function)

这将打印函数签名和函数体。如果 Vim 已在 Python 支持下编译,您可以在 Python 本身中编写扩展。

于 2012-06-18T12:07:37.330 回答