示例#1
0
文件: tbtools.py 项目: bjornua/dna
    def render_source(self):
        """Render the sourcecode."""
        lines = [Line(idx + 1, x) for idx, x in enumerate(self.sourcelines)]

        # find function definition and mark lines
        if hasattr(self.code, 'co_firstlineno'):
            lineno = self.code.co_firstlineno - 1
            while lineno > 0:
                if _funcdef_re.match(lines[lineno].code):
                    break
                lineno -= 1
            try:
                offset = len(
                    inspect.getblock([x.code + '\n' for x in lines[lineno:]]))
            except TokenError:
                offset = 0
            for line in lines[lineno:lineno + offset]:
                line.in_frame = True

        # mark current line
        try:
            lines[self.lineno - 1].current = True
        except IndexError:
            pass

        return render_template('source.html', frame=self, lines=lines)
示例#2
0
    def dump_object(self, obj):
        repr = items = None
        if isinstance(obj, dict):
            title = 'Contents of'
            items = []
            for key, value in obj.iteritems():
                if not isinstance(key, basestring):
                    items = None
                    break
                items.append((key, self.repr(value)))

        if items is None:
            items = []
            repr = self.repr(obj)
            for key in dir(obj):
                try:
                    items.append((key, self.repr(getattr(obj, key))))
                except:
                    pass

            title = 'Details for'
        title += ' ' + object.__repr__(obj)[1:-1]
        return render_template('dump_object.html',
                               items=items,
                               title=title,
                               repr=repr)
示例#3
0
    def render_source(self):
        """Render the sourcecode."""
        lines = [Line(idx + 1, x) for idx, x in enumerate(self.sourcelines)]

        # find function definition and mark lines
        if hasattr(self.code, 'co_firstlineno'):
            lineno = self.code.co_firstlineno - 1
            while lineno > 0:
                if _funcdef_re.match(lines[lineno].code):
                    break
                lineno -= 1
            try:
                offset = len(inspect.getblock([x.code + '\n' for x
                                               in lines[lineno:]]))
            except TokenError:
                offset = 0
            for line in lines[lineno:lineno + offset]:
                line.in_frame = True

        # mark current line
        try:
            lines[self.lineno - 1].current = True
        except IndexError:
            pass

        return render_template('source.html', frame=self, lines=lines)
示例#4
0
 def get_help(self, topic):
     title = text = None
     if topic is not None:
         import pydoc
         pydoc.help(topic)
         rv = sys.stdout.reset().decode('utf-8', 'ignore')
         paragraphs = _paragraph_re.split(rv)
         if len(paragraphs) > 1:
             title = paragraphs[0]
             text = '\n\n'.join(paragraphs[1:])
         else:
             title = 'Help'
             text = paragraphs[0]
     return render_template('help_command.html', title=title, text=text)
示例#5
0
 def get_help(self, topic):
     title = text = None
     if topic is not None:
         import pydoc
         pydoc.help(topic)
         rv = sys.stdout.reset().decode('utf-8', 'ignore')
         paragraphs = _paragraph_re.split(rv)
         if len(paragraphs) > 1:
             title = paragraphs[0]
             text = '\n\n'.join(paragraphs[1:])
         else:
             title = 'Help'
             text = paragraphs[0]
     return render_template('help_command.html', title=title, text=text)
示例#6
0
文件: repr.py 项目: EnTeQuAk/werkzeug
 def __call__(self, topic=None):
     title = text = None
     if topic is not None:
         import pydoc
         pydoc.help(topic)
         rv = sys.stdout.reset().decode('utf-8', 'ignore')
         paragraphs = _paragraph_re.split(rv)
         if len(paragraphs) > 1:
             title = paragraphs[0]
             text = '\n\n'.join(paragraphs[1:])
         else: # pragma: no cover
             title = 'Help'
             text = paragraphs[0]
     rv = render_template('help_command.html', title=title, text=text)
     sys.stdout._write(rv)
示例#7
0
 def __call__(self, topic=None):
     title = text = None
     if topic is not None:
         import pydoc
         pydoc.help(topic)
         rv = sys.stdout.reset().decode('utf-8', 'ignore')
         paragraphs = _paragraph_re.split(rv)
         if len(paragraphs) > 1:
             title = paragraphs[0]
             text = '\n\n'.join(paragraphs[1:])
         else:  # pragma: no cover
             title = 'Help'
             text = paragraphs[0]
     rv = render_template('help_command.html', title=title, text=text)
     sys.stdout._write(rv)
示例#8
0
 def dump_object(self, obj):
     repr = items = None
     if isinstance(obj, dict):
         title = 'Contents of'
         items = []
         for key, value in obj.iteritems():
             if not isinstance(key, basestring):
                 items = None
                 break
             items.append((key, self.repr(value)))
     if items is None:
         items = []
         repr = self.repr(obj)
         for key in dir(obj):
             try:
                 items.append((key, self.repr(getattr(obj, key))))
             except:
                 pass
         title = 'Details for'
     title += ' ' + object.__repr__(obj)[1:-1]
     return render_template('dump_object.html', items=items,
                            title=title, repr=repr)
示例#9
0
文件: tbtools.py 项目: Reve/eve
    def render_source(self):
        lines = [Line(idx + 1, x) for idx, x in enumerate(self.sourcelines)]
        if hasattr(self.code, "co_firstlineno"):
            lineno = self.code.co_firstlineno - 1
            while lineno > 0:
                if _funcdef_re.match(lines[lineno].code):
                    break
                lineno -= 1

            try:
                offset = len(inspect.getblock([x.code + "\n" for x in lines[lineno:]]))
            except TokenError:
                offset = 0

            for line in lines[lineno : lineno + offset]:
                line.in_frame = True

        try:
            lines[self.lineno - 1].current = True
        except IndexError:
            pass

        return render_template("source.html", frame=self, lines=lines)
示例#10
0
 def dump_locals(self, d):
     items = [(key, self.repr(value)) for key, value in d.items()]
     return render_template('dump_object.html', items=items,
                            title='Local variables in frame', repr=None)
示例#11
0
文件: tbtools.py 项目: Reve/eve
 def render_summary(self, include_title=True):
     return render_template("traceback_summary.html", traceback=self, include_title=include_title)
示例#12
0
文件: tbtools.py 项目: Reve/eve
 def render_full(self, evalex=False):
     return render_template("traceback_full.html", traceback=self, evalex=evalex)
示例#13
0
 def render(self):
     """Render a single frame in a traceback."""
     return render_template('frame.html', frame=self)
示例#14
0
 def render(self):
     return render_template('frame.html', frame=self)
示例#15
0
文件: tbtools.py 项目: bjornua/dna
 def render(self):
     """Render a single frame in a traceback."""
     return render_template('frame.html', frame=self)
示例#16
0
文件: tbtools.py 项目: bjornua/dna
 def render_full(self, evalex=False):
     """Render the Full HTML page with the traceback info."""
     return render_template('traceback_full.html',
                            traceback=self,
                            evalex=evalex)
示例#17
0
 def display_console(self, request):
     if 0 not in self.frames:
         self.frames[0] = _ConsoleFrame(self.console_init_func())
     return Response(render_template('console.html'), mimetype='text/html')
示例#18
0
 def render_full(self, evalex=False):
     """Render the Full HTML page with the traceback info."""
     return render_template("traceback_full.html", traceback=self, evalex=evalex)
示例#19
0
文件: tbtools.py 项目: R4M80MrX/eve-1
 def render(self):
     return render_template('frame.html', frame=self)
示例#20
0
文件: tbtools.py 项目: R4M80MrX/eve-1
 def render_full(self, evalex=False):
     return render_template('traceback_full.html',
                            traceback=self,
                            evalex=evalex)
示例#21
0
文件: tbtools.py 项目: R4M80MrX/eve-1
 def render_summary(self, include_title=True):
     return render_template('traceback_summary.html',
                            traceback=self,
                            include_title=include_title)
示例#22
0
文件: tbtools.py 项目: Reve/eve
 def render(self):
     return render_template("frame.html", frame=self)
示例#23
0
文件: tbtools.py 项目: bjornua/dna
 def render_summary(self, include_title=True):
     """Render the traceback for the interactive console."""
     return render_template('traceback_summary.html',
                            traceback=self,
                            include_title=include_title)
示例#24
0
 def render_summary(self, include_title=True):
     """Render the traceback for the interactive console."""
     return render_template('traceback_summary.html', traceback=self,
                            include_title=include_title)
示例#25
0
文件: tbtools.py 项目: bjornua/dna
 def plaintext(self):
     return render_template('traceback_plaintext.html', traceback=self)
示例#26
0
 def display_console(self, request):
     if 0 not in self.frames:
         self.frames[0] = _ConsoleFrame(self.console_init_func())
     return Response(render_template('console.html'), mimetype='text/html')
示例#27
0
 def render_full(self, evalex=False, lodgeit_url=None):
     """Render the Full HTML page with the traceback info."""
     return render_template('traceback_full.html', traceback=self,
                            evalex=evalex)
示例#28
0
 def display_console(self, request):
     """Display a standalone shell."""
     if 0 not in self.frames:
         self.frames[0] = _ConsoleFrame(self.console_init_func())
     return Response(render_template("console.html"), mimetype="text/html")
示例#29
0
文件: repr.py 项目: connoryang/1v1dec
 def dump_locals(self, d):
     items = [ (key, self.repr(value)) for key, value in d.items() ]
     return render_template('dump_object.html', items=items, title='Local variables in frame', repr=None)
示例#30
0
 def plaintext(self):
     return render_template('traceback_plaintext.html', traceback=self)