示例#1
0
文件: webview.py 项目: oglops/scope
    def load2(self,url):
        # Custom load for handling markdown urls and external
        lnk = str(url.toString())
            # Markdown
        if lnk.startswith('file:') and lnk.endswith('.md'):
            filename = str(url.toLocalFile())
            import site_pkg.commonmark as commonmark
            html = commonmark.generate(filename,custom=1)
            
            burl = url
##            if burl != None:
##                if os.name =='nt':
##                    pfx="file:///"
##                else:
##                    pfx="file://"
##                burl = QtCore.QUrl(pfx+os.path.abspath(os.path.dirname(burl)).replace('\\','/')+'/')

            self.setText(html,burl)
            
        elif lnk.startswith('http') or lnk.startswith('www'):
            # External links
            import webbrowser
            webbrowser.open(lnk)
        else:
            self.load(url)
示例#2
0
    def previewRun(self, wdg, justset=0):
        if wdg not in self.wdgD:
            self.addPreview(wdg)
        else:
            pwdg = self.wdgD[wdg]
            pwdg.webview.lastScrollValue = pwdg.webview.page().currentFrame(
            ).scrollBarValue(QtCore.Qt.Vertical)

        pwdg = self.wdgD[wdg]

        burl = wdg.filename
        if wdg.filename == None: burl = ''
        if burl != None:
            if os.name == 'nt':
                pfx = "file:///"
            else:
                pfx = "file://"
            burl = QtCore.QUrl(
                pfx +
                os.path.abspath(os.path.dirname(burl)).replace('\\', '/') +
                '/')

        html = wdg.getText()

        cmd = None
        ##        if 'preview_cmd' in self.ide.settings['prog_lang'][wdg.lang]:
        if 'run' in self.ide.settings['prog_lang'][wdg.lang]:
            pcmd = self.ide.settings['prog_lang'][wdg.lang]['run'].split(
                'preview ')
            if len(pcmd) > 1:
                cmd = pcmd[1]

        if cmd == 'markdown':
            # If markdown generate preview tab
            import site_pkg.commonmark as commonmark
            html = commonmark.generate(text=html, style='', custom=0)
##                self.ide.webview_preview(html,filename)

        elif cmd != None:
            if '{{filename}}' in cmd:
                fcmd = cmd.replace('{{filename}}', wdg.filename)
            else:
                fcmd = cmd + ' ' + wdg.filename

            html = subprocess.check_output(fcmd, shell=True)

        pwdg.webview.setText(html, burl)
        if html != '':
            self.ide.pluginD['output'].widget.runProcess('preview',
                                                         wdg,
                                                         text=html,
                                                         justset=justset)
            self.ide.prevPlugin = self.ide.ui.sw_bottom.indexOf(
                self.ide.pluginD['output'].widget)
示例#3
0
文件: preview.py 项目: rkyleg/scope
    def previewRun(self,wdg,justset=0):
        if wdg not in self.wdgD:
            self.addPreview(wdg)
        else:
            pwdg = self.wdgD[wdg]
            pwdg.webview.lastScrollValue = pwdg.webview.page().currentFrame().scrollBarValue(QtCore.Qt.Vertical)

        pwdg = self.wdgD[wdg]

        burl = wdg.filename
        if wdg.filename == None: burl=''
        if burl != None:
            if os.name =='nt':
                pfx="file:///"
            else:
                pfx="file://"
##            burl = QtCore.QUrl(pfx+os.path.abspath(os.path.dirname(burl)).replace('\\','/')+'/')
            burl = QtCore.QUrl(pfx+os.path.abspath(burl).replace('\\','/'))

        html = wdg.getText()

        cmd=None
##        if 'preview_cmd' in self.ide.settings['prog_lang'][wdg.lang]:
        if 'run' in self.ide.settings['prog_lang'][wdg.lang]:
            pcmd=self.ide.settings['prog_lang'][wdg.lang]['run'].split('preview ')
            if len(pcmd)>1:
                cmd = pcmd[1]

        if cmd == 'markdown':
            # If markdown generate preview tab
            import site_pkg.commonmark as commonmark
            html = commonmark.generate(text=html,style='',custom=0)
##                self.ide.webview_preview(html,filename)

        elif cmd != None:
            if '{{filename}}' in cmd:
                fcmd = cmd.replace('{{filename}}',wdg.filename)
            else:
                fcmd = cmd+' '+wdg.filename
            
            html = subprocess.check_output(fcmd,shell=True)
            
        pwdg.webview.setText(html,burl)
        if html != '':
            self.ide.pluginD['output'].widget.runProcess('preview',wdg,text=html,justset=justset)
            self.ide.prevPlugin=self.ide.ui.sw_bottom.indexOf(self.ide.pluginD['output'].widget)
示例#4
0
文件: preview.py 项目: rkyleg/scope
    def urlClicked(self, url):
        lnk = str(url.toString())
        pwdg = self.ui.sw_prev.currentWidget()
        # Markdown
        if lnk.startswith('file:') and lnk.endswith('.md'):
            filename = str(url.toLocalFile())
            import site_pkg.commonmark as commonmark
            html = commonmark.generate(filename, custom=1)

            burl = url
            pwdg.webview.setText(html, burl)

        elif lnk.startswith('http') or lnk.startswith('www'):
            # External links
            import webbrowser
            webbrowser.open(lnk)
        else:
            pwdg.webview.load_link(url)
示例#5
0
文件: preview.py 项目: rkyleg/scope
 def urlClicked(self,url):
     lnk = str(url.toString())
     pwdg = self.ui.sw_prev.currentWidget()
         # Markdown
     if lnk.startswith('file:') and lnk.endswith('.md'):
         filename = str(url.toLocalFile())
         import site_pkg.commonmark as commonmark
         html = commonmark.generate(filename,custom=1)
         
         burl = url
         pwdg.webview.setText(html,burl)
         
     elif lnk.startswith('http') or lnk.startswith('www'):
         # External links
         import webbrowser
         webbrowser.open(lnk)
     else:
         pwdg.webview.load_link(url)
示例#6
0
 def load_link(self,url):
     # Custom load for handling markdown urls and external
     lnk = str(url.toString())
         # Markdown
     if lnk.startswith('file:') and lnk.endswith('.md'):
         filename = str(url.toLocalFile())
         import site_pkg.commonmark as commonmark
         
         html = commonmark.generate(filename,custom=1)
         burl = url
         self.setText(html,burl)
         
     elif lnk.startswith('http') or lnk.startswith('www'):
         # External links
         import webbrowser
         webbrowser.open(lnk)
     else:
         self.load(url)