예제 #1
0
파일: tks.py 프로젝트: mu2019/pyfly
 def loadStyle(self):
     """
     載入配色方案
     """
     for k,v in color_style.items():
         log('*'*8,'color style',k,v)
         self.tag_config(k,**v)
예제 #2
0
파일: tks.py 프로젝트: mu2019/pyfly
 def _WidgetCommand(self,*args):
     log('**_widget ** ',args)
     paras=args[1]
     cmd=[args[0]]
     self.tk.eval("set cmd_list  %s" % paras)
     result = [ self.tk.eval("lindex $cmd_list %d" % i)
                for i in range(int(self.tk.eval("llength $cmd_list")))]
     cmd.extend(result)
     self.widgetCommand(*cmd)
예제 #3
0
파일: tks.py 프로젝트: mu2019/pyfly
 def highlineCurrentLine(self):
     #self.tag_delete('CurrentLine')
     rng=self.tag_ranges("sel")
     hln=[]
     cline=self._CursorPos[0]        
     if len(rng)==2:
         log('sel range',rng) #sel_start,sel_end)
         sel_rng=rng
         
         sel_start=[int(p) for p in str(rng[0]).split('.')]
         sel_end=[int(p) for p in str(rng[1]).split('.')]
         lns=self.get(rng[0],rng[1]).split('\n')
         log('*'*8,sel_start,sel_end,lns)
         if sel_start[0]==cline and sel_start[1]>0:
             hln.append(("%s.0" % sel_start[0],"%s.%s" % tuple(sel_start)))
         #elif sel_start[0]==self._CursorPos[0]: # and sel_start[1]=0:
         if sel_end[0]==cline:
             ltext=self.get('%s.0' % cline ,'%s.end' % cline)
             log('line text',ltext)
             
             hln.append(("%s.%s" % tuple(sel_end),"%s.%s" % (sel_end[0],len(ltext)+1)))
         log(hln)
         for r in hln:
             self.tag_add("CurrentLine",r[0],r[1])
     else:
         self.tag_add("CurrentLine", "%s.0" % cline, "%s.0+1lines" % cline)
예제 #4
0
파일: tks.py 프로젝트: mu2019/pyfly
    def setColorTag(self,cmd):
        '''
        設置列表中每一個詞的tag
        15-11-18
        設置目前修改的詞的配色
        增加:
            一般文字namechar,
            分隔符,
        '''
        txt=self.get('%s.%s' % (self._CursorPos[0],0),'%s.end' % self._CursorPos[0])
        curword = ''
        
        
        if cmd[1] == 'insert':
            c = cmd[-1]
            if c in NEWLINECHR:
                #new line
                pass
            elif True in [r[0] <= c <= r[-1] for r in NAMECHR]:
                #name char
                log('name char',self._CursorPos)

                pass
            else:
                #symbol
                log('last word',self._LastWord)
                pass
            #isnamechr = (True in [r[0] <= c <= r[1] for r in namechr])
            
        elif cmd[0] == 'delete':
            pass
                
        log(txt)