在CDF可以插入特殊字符编码

 

01 插入特殊字符


下面是从 特殊符号大全 网页拷贝下来的字符:

1.原有字符

❤❥웃유♋☮✌☏☢☠✔☑♚▲♪✈✞÷↑↓◆◇⊙■□△▽¿─│♥❣♂♀☿Ⓐ✍✉☣☤✘☒♛▼♫⌘☪≈←→◈◎☉★☆⊿※¡━┃♡ღツ☼☁❅♒✎©®™Σ✪✯☭➳卐√↖↗●◐Θ◤◥︻〖〗┄┆℃℉°✿ϟ☃☂✄¢€£∞✫★½✡×↙↘○◑⊕◣◢︼【】┅┇☽☾✚〓▂▃▄▅▆▇█▉▊▋▌▍▎▏↔↕☽☾の•▸◂▴▾┈┊①②③④⑤⑥⑦⑧⑨⑩ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ㍿▓♨♛❖♓☪✙┉┋☹☺☻تヅツッシÜϡﭢ™℠℗©®♥❤❥❣❦❧♡۵웃유ღ♋♂♀☿☼☀☁☂☄☾☽❄☃☈⊙☉℃℉❅✺ϟ☇♤♧♡♢♠♣♥♦☜☞☝✍☚☛☟✌✽✾✿❁❃❋❀⚘☑✓✔√☐☒✗✘ㄨ✕✖✖⋆✢✣✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴✵✶✷✸✹✺✻✼❄❅❆❇❈❉❊†☨✞✝☥☦☓☩☯☧☬☸✡♁✙♆。,、':∶;?‘’“”〝〞ˆˇ﹕︰﹔﹖﹑•¨….¸;!´?!~—ˉ|‖"〃`@﹫¡¿﹏﹋﹌︴々﹟#﹩$﹠&﹪%*﹡﹢﹦﹤‐ ̄¯―﹨ˆ˜﹍﹎+=<_-\ˇ~﹉﹊()〈〉‹›﹛﹜『』〖〗[]《》〔〕{}「」【】︵︷︿︹︽﹁﹃︻︶︸﹀︺︾ˉ﹂﹄︼☩☨☦✞✛✜✝✙✠✚†‡◉○◌◍◎●◐◑◒◓◔◕◖◗❂☢⊗⊙◘◙◍⅟½⅓⅕⅙⅛⅔⅖⅚⅜¾⅗⅝⅞⅘≂≃≄≅≆≇≈≉≊≋≌≍≎≏≐≑≒≓≔≕≖≗≘≙≚≛≜≝≞≟≠≡≢≣≤≥≦≧≨≩⊰⊱⋛⋚∫∬∭∮∯∰∱∲∳%℅‰‱㊣㊎㊍㊌㊋㊏㊐㊊㊚㊛㊤㊥㊦㊧㊨㊒㊞㊑㊒㊓㊔㊕㊖㊗㊘㊜㊝㊟㊠㊡㊢㊩㊪㊫㊬㊭㊮㊯㊰㊙㉿囍♔♕♖♗♘♙♚♛♜♝♞♟ℂℍℕℙℚℝℤℬℰℯℱℊℋℎℐℒℓℳℴ℘ℛℭ℮ℌℑℜℨ♪♫♩♬♭♮♯°øⒶ☮✌☪✡☭✯卐✐✎✏✑✒✍✉✁✂✃✄✆✉☎☏➟➡➢➣➤➥➦➧➨➚➘➙➛➜➝➞➸♐➲➳⏎➴➵➶➷➸➹➺➻➼➽←↑→↓↔↕↖↗↘↙↚↛↜↝↞↟↠↡↢↣↤↥↦↧↨➫➬➩➪➭➮➯➱↩↪↫↬↭↮↯↰↱↲↳↴↵↶↷↸↹↺↻↼↽↾↿⇀⇁⇂⇃⇄⇅⇆⇇⇈⇉⇊⇋⇌⇍⇎⇏⇐⇑⇒⇓⇔⇕⇖⇗⇘⇙⇚⇛⇜⇝⇞⇟⇠⇡⇢⇣⇤⇥⇦⇧⇨⇩⇪➀➁➂➃➄➅➆➇➈➉➊➋➌➍➎➏➐➑➒➓㊀㊁㊂㊃㊄㊅㊆㊇㊈㊉ⒶⒷⒸⒹⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃⓄⓅⓆⓇⓈⓉⓊⓋⓌⓍⓎⓏⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙⓚⓛⓜⓝⓞⓟⓠⓡⓢⓣⓤⓥⓦⓧⓨⓩ⒜⒝⒞⒟⒠⒡⒢⒣⒤⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫⅬⅭⅮⅯⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅺⅻⅼⅽⅾⅿ┌┍┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋╌╍╎╏═║╒╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡╢╣╤╥╦╧╨╩╪╫╬◤◥◄►▶◀◣◢▲▼◥▸◂▴▾△▽▷◁⊿▻◅▵▿▹◃❏❐❑❒▀▁▂▃▄▅▆▇▉▊▋█▌▍▎▏▐░▒▓▔▕■□▢▣▤▥▦▧▨▩▪▫▬▭▮▯㋀㋁㋂㋃㋄㋅㋆㋇㋈㋉㋊㋋㏠㏡㏢㏣㏤㏥㏦㏧㏨㏩㏪㏫㏬㏭㏮㏯㏰㏱㏲㏳㏴㏵㏶㏷㏸㏹㏺㏻㏼㏽㏾㍙㍚㍛㍜㍝㍞㍟㍠㍡㍢㍣㍤㍥㍦㍧㍨㍩㍪㍫㍬㍭㍮㍯㍰㍘☰☲☱☴☵☶☳☷☯

2.编码字符

???▲???÷↑↓◆◇⊙■□△▽?─│??♂♀???▼???≈←→?◎☉★
☆⊿※?━┃??ツ???Σ???卐√↖↗
●?Θ◤◥︻〖〗┄┆℃℉°???¢€£∞?★??×↙↘○?⊕◣◢︼【】┅┇???〓▂▃
▄▅▆▇█▉▊▋▌▍▎▏???の???┈┊①②③④⑤⑥⑦⑧⑨⑩ⅠⅡⅢⅣⅤⅥⅦⅧ
ⅨⅩ?▓???┉┋???ヅツッシü???♂♀???⊙☉℃℉???
???√???ㄨ? ???★???
???。,、':∶; ?‘’“”〝〞?ˇ﹕︰﹔﹖﹑?¨….?;!′?
!~—ˉ|‖"〃`@﹫??﹏﹋﹌︴々﹟#﹩$﹠&﹪%*﹡﹢﹦﹤‐ ̄ˉ―﹨??﹍﹎+=<_
_-\ˇ~﹉﹊()〈〉??﹛﹜『』〖〗[]《》〔〕{}「」【】︵︷︿︹︽ _﹁﹃︻︶
︸﹀︺︾ˉ﹂﹄︼???○??◎●???⊙??? ?
?≈???≌???≒???≠≡??≤≥≦≧???∫??∮???%℅‰?㊣金木水火
土日月男女???有?株有
社名特财祝劳适优注项休写医宗学监企资协夜秘?囍???
???°???卐??? ???
?←↑→↓??↖↗↘↙??? ???
???一二三四五六七八
九十??? ??? ???
???ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ???ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ???┌┍┎┏┐

┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶
┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋???═║╒╓╔╕╖╗╘╙╚╛╜╝
╞╟╠╡╢╣╤╥╦╧╨╩╪╫╬◤◥???◣◢▲▼◥???△▽??⊿??? ???▁
▂▃▄▅▆▇▉▊▋█▌▍▎▏???▓▔▕■□??? ???
??? ???

 

02 CDF


#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# CDF.PY                       -- by Dr. ZhuoQing 2020-05-05
#
# Note:
#============================================================

from head import *

csdn_title = '写文章-CSDN博客'

#------------------------------------------------------------
clipboardstr = clipboard.paste()

#------------------------------------------------------------
face = ''
color = ''
sizestr = ''
boldflag = 0
centerflag = 0
nbspflag = 0
endnbspflag = 0
sharpnum = 0
retflag = 0
lineflag = 0
headlineflag = 0
noteflag = 0
markflag = 0
deleteflag = 0
underlineflag = 0
headmarkflag = ''
codeflag = 0
blockflag = 0
greatflag = 0
circlenum = 0
italicflag = 0
notestr = ''
anchorstr = ''
urlflag = 0
fontflag = 0
rightflag = 0
headboldflag = 0
headlargeflag = 0
questionmark = 0
headnumlineflag = 1
rnflag = 0
onelineflag = 0
redarrowflag = 0
supsubflag = 0

#------------------------------------------------------------
def str2headnumline(str, colorstr=''):
    for i in range(len(str)):
        if str[0:i+1].isdigit() == False: break

    if i == 0:
        return str

    if redarrowflag == 0:
#        if len(colorstr) == 0:
#            return '<font color=red>\u27a4</font><u>' + str[0:i] + '</u> ' + str[i:]
#        else: return '<font color=%s>'%colorstr + '\u27a4' + '</font><u>' + str[0:i] + '</u> ' + str[i:]

        if len(colorstr) == 0:
            return '<u>' + str[0:i] + '</u> ' + str[i:]
        else: return '<font color=%s>'%colorstr + '<u>' + str[0:i] + '</u></font> ' + str[i:]
    else:
        if len(colorstr) == 0:
            return '<u>' + str[0:i] + '</u> ' + str[i:]
        else: return '<font color=%s>'%colorstr + '<u>' + str[0:i] + '</u></font> ' + str[i:]

#------------------------------------------------------------
if len(sys.argv) > 1:
    argv1 = sys.argv[1]

    #--------------------------------------------------------
    if argv1 == 'rn':
        allstr = clipboard.paste()
        if len(allstr) == 0: exit()

        allstr = allstr.replace('\r', '\r\n')
        clipboard.copy(allstr)

        printf(allstr)

        tspbeep(1200, 100)
        exit()

    #--------------------------------------------------------
    argv1 = argv1.replace('2#', '##')
    argv1 = argv1.replace('3#', '###')
    argv1 = argv1.replace('4#', '####')
    argv1 = argv1.replace('5#', '#####')
    argv1 = argv1.replace('6#', '######')
    argv1 = argv1.replace('@#', '###')
    argv1 = argv1.replace('$#', '####')
    argv1 = argv1.replace('%#', '#####')
    argv1 = argv1.replace('!#', '######')
    argv1 = argv1.replace('@#', '##')
    argv1 = argv1.replace('¥#', '####')
    argv1 = argv1.replace('!#', '######')

    if argv1.count('#') > 0:
        if argv1.find('#') > 0:
            headnumlineflag = 0

        sharpnum = argv1.count('#')
        retflag = 1
        argv1 = argv1.strip('#')

    #--------------------------------------------------------
    if argv1.count('b') == 1: color = 'blue'
    if argv1.count('b') == 2: color = 'darkslateblue'
    if argv1.count('v') == 2: color = 'silver'
    if argv1.count('v') == 1: color = 'blueviolet'
    if argv1.count('r') == 1: color = 'red'
    if argv1.count('r') == 2: color = 'c000'
    if argv1.count('g') == 1: color = 'darkgreen'
    if argv1.count('g') == 2: color = 'green'
    if argv1.count('a') == 1: color = 'gray'
    if argv1.count('a') == 2: color = 'cyand'
    if argv1.count('A') == 1: color = 'olive'
    if argv1.count('A') == 2: color = 'grayd'
    if argv1.count('q') == 1: color = 'cyan'
    if argv1.count('Q') == 1: color = 'darkcyan'
    if argv1.count('q') == 2: color = 'cyana'
    if argv1.count('w') == 1: color = 'white'
    if argv1.count('w') == 2: color = 'whited'
    if argv1.count('m') == 1: color = 'brown'
    if argv1.count('y') == 1: color = 'yellow'
    if argv1.count('y') == 2: color = 'yelloww'
    if argv1.count('K') == 1: color = 'black'
    if argv1.count('p') == 1: color = 'purpled'
    if argv1.count('B') == 1: color = 'slateblue'
    if argv1.count('z') == 1: color = 'purple'
    if argv1.count('t') == 1: color = 'teal'

    if argv1.count('s') == 1: face= '宋体'
    if argv1.count('k') == 1: face= '楷体'
    if argv1.count('f') == 1: face= '仿宋'
    if argv1.count('s') == 2: face= '华文宋体'
    if argv1.count('k') == 2: face= '华文楷体'
    if argv1.count('f') == 2: face= '华文仿宋'
    if argv1.count('l') == 1: face= '隶书'
    if argv1.count('h') == 1: face= '黑体'
    if argv1.count('l') == 2: face= '华文隶书'
    if argv1.count('h') == 2: face= '华文细黑'
    if argv1.count('K') == 1: face= '华文行楷'
    if argv1.count('F') == 1: face=''

    if argv1.count('1') == 1: sizestr = '1'
    if argv1.count('2') == 1: sizestr = '2'
    if argv1.count('3') == 1: sizestr = '3'
    if argv1.count('4') == 1: sizestr = '4'
    if argv1.count('5') == 1: sizestr = '5'
    if argv1.count('6') == 1: sizestr = '6'
    if argv1.count('7') == 1: sizestr = '7'
    if argv1.count('8') == 1: sizestr = '8'
    if argv1.count('9') == 1: sizestr = '9'
    if argv1.count('0') == 1: sizestr = '10'

    if argv1.count('(') == 1: supsubflag = 1
    if argv1.count(')') == 1: supsubflag = 2

    rnflag = argv1.count('\'')

    if len(color) > 0 or len(face) > 0 or len(sizestr) > 0:
        fontflag = 1

    #--------------------------------------------------------

    if argv1.count('c') == 1:
        centerflag = 1

    if argv1.count('x') == 1:
        lineflag = 1
    if argv1.count('X') == 1:
        headlineflag = 1

    if argv1.count('e'):
        boldflag = 1
    if argv1.count('!'):
        boldflag = 1

    if argv1.count('R'):
        retflag = 1

    nbspflag = argv1.count('n')
    endnbspflag = argv1.count('N')
    noteflag = argv1.count('*')
    markflag = argv1.count('=')
    deleteflag = argv1.count('~')

    if argv1.count('`') > 0: noteflag = 3

    if argv1.count('u') == 1: underlineflag = 1
    questionmark = argv1.count('?')

    if argv1.count('o') == 1: headmarkflag = '● '
    if argv1.count('o') == 2: headmarkflag = '○ '
    if argv1.count('.') == 1: headmarkflag = '■ '
    if argv1.count('.') == 2: headmarkflag = '□ '
    if argv1.count('.') == 3: headmarkflag = ''
    if argv1.count('+') == 1: headmarkflag = '★ '
    if argv1.count('+') == 2: headmarkflag = '☆ '
    if argv1.count(';') == 1: headmarkflag = '\u2735 '
    if argv1.count(';') == 2: headmarkflag = '\u2739 '
    if argv1.count('-') == 1: headmarkflag = '▲ '
    if argv1.count('-') == 2: headmarkflag = '△ '
    if argv1.count('_') == 1: headmarkflag = '→ '
    if argv1.count(':') == 1: headmarkflag = '※ '
    if argv1.count(':') == 2: headmarkflag = '▓ '
    if argv1.count('%') == 1: headmarkflag = '# '
    if argv1.count('$') == 1: headmarkflag = '§ '
    if argv1.count('O') == 1: headmarkflag = '◎ '
    if argv1.count('O') == 2: headmarkflag = '⊙ '
    if argv1.count('^') == 1: headmarkflag = '√ '
    if argv1.count('j') == 1: redarrowflag = 1
    if argv1.count('J') == 1: headmarkflag = '\u25ba'
    if argv1.count('|') == 3: headmarkflag = '┇'
    if argv1.count('|') == 1: headmarkflag = '▌'
    if argv1.count('|') == 2: headmarkflag = '▍'
    if argv1.count('|') == 4: headmarkflag = '▊'

    codeflag = argv1.count('C')

    italicflag = argv1.count('/')
    onelineflag = argv1.count('\\')
    if onelineflag == 0:
        onelineflag = argv1.count('、')

    if argv1.find('[]') >= 0: blockflag = 1
    if argv1.find('][') >= 0: blockflag = 2
    if argv1.find(']]') >= 0: rightflag = 1
    if argv1.find('<') >= 0:  urlflag = 1
    headboldflag = argv1.count('H')
    headlargeflag = argv1.count('L')

    greatflag = argv1.count('>')
    if argv1.count('@') > 0:
        if len(sys.argv) > 3:
            anchorstr = sys.argv[3]
        elif len(sys.argv) > 2:
            anchorstr = sys.argv[2]

    if nbspflag > 0:
        if headlineflag == 1:
            headlineflag = 0
            lineflag = 1

else:
    exit()

#------------------------------------------------------------
def IsNotTermChar(c):
    if c == '.': return 0
    if c == '?': return 0
    if c == '!': return 0
    if c == ':': return 0
    if c == ',': return 0
    if c == '|': return 0
    if c == '?': return 0
    if c == '。': return 0
    if c == ',': return 0
    if c == '、': return 0
    if c == ':': return 0
    return 1

#------------------------------------------------------------
circlestr = ''
if circlenum > 0:
    orderstr = '①②③④⑤⑥⑦⑧⑨⑩⑾⑿⒀⒁⒂⒃⒄⒅'
    if circlenum > 18: circlenum = 18
    circlestr = orderstr[circlenum-1:circlenum] + ' '

#------------------------------------------------------------
if len(clipboardstr) > 3:
    clipboardstr = clipboardstr.rstrip('\n').rstrip('\r')

    if clipboardstr[0] == '[' and \
       clipboardstr[1] == '^' and \
       clipboardstr[-1] == ']':
        notestr = clipboardstr
        clipboardstr = ''
        printf(notestr)

#------------------------------------------------------------

allstr = '  '

if codeflag > 0 and len(sys.argv) > 2:
    if len(sys.argv) > 2:
        allstr = ' '.join(sys.argv[2:])

    allstr = allstr.replace('\\', '\r\n')

    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    allstr = allstr.rstrip('\n')
    allstr = allstr.rstrip('\r')
    allstr = allstr.rstrip('\n')
    allstr = allstr.rstrip('\r')
    allstr = allstr.rstrip('\n')
    allstr = allstr.rstrip('\r')
    allstr = allstr.rstrip('\n')
    allstr = allstr.rstrip('\r')
    insertstr = '```\n%s\n```\n'%allstr

    if rnflag > 0:
        insertstr = insertstr + '\r\n'*rnflag

    clipboard.copy(insertstr)
    tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)
    clipboard.copy('')
    tspfocuswindow(csdn_title)

    exit()

#------------------------------------------------------------
if codeflag > 0:
    tspsendwindowkey(csdn_title, 'c', control=1, noreturn=1)
    pastestr = clipboard.paste()

    if len(pastestr) == 0:
        pastestr = clipboardstr;

    allstr = pastestr
    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if len(circlestr) > 0: allstr = circlestr + allstr

    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    allstr = allstr.rstrip('\n')
    allstr = allstr.rstrip('\r')
    allstr = allstr.rstrip('\n')
    allstr = allstr.rstrip('\r')
    allstr = allstr.rstrip('\n')
    allstr = allstr.rstrip('\r')
    allstr = allstr.rstrip('\n')
    allstr = allstr.rstrip('\r')
    insertstr = '```\n%s\n```\n'%allstr

    if rnflag > 0:
        insertstr = insertstr + '\r\n'*rnflag

    clipboard.copy(insertstr)
    tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)
    clipboard.copy('')
    tspfocuswindow(csdn_title)

    exit()

#------------------------------------------------------------
if noteflag > 0 and len(sys.argv) > 2:

    if len(sys.argv) > 2:
        allstr = ' '.join(sys.argv[2:])

    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if len(circlestr) > 0: allstr = circlestr + allstr
    if questionmark > 0 and IsNotTermChar(allstr[-1]):
        allstr = allstr+'?'

    if urlflag == 1:
        allstr = '<%s>'%allstr

    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    if noteflag == 1:
        insertstr = ' **``%s``** '%allstr
    elif noteflag == 2:
        insertstr = ' **%s** '%allstr
    else: insertstr = '``%s``'%allstr

    if blockflag == 1: insertstr = '- [ ] ' + insertstr + '\r\n'
    if blockflag == 2: insertstr = '- [x] ' + insertstr + '\r\n'
    if centerflag: insertstr = '<center>%s</center>'%insertstr

    if rnflag > 0:
        insertstr = insertstr + '\r\n'*rnflag

    if redarrowflag:
        insertstr = '<font color=red>\u27a4</font>' +insertstr

    if supsubflag == 1:
        insertstr = '<sup>%s</sup>'%insertstr
    elif supsubflag == 2:
        insertstr = '<sub>%s</sub>'%insertstr

#    printf(insertstr)
    clipboard.copy(insertstr)
    tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)
    clipboard.copy('')
    tspfocuswindow(csdn_title)

    exit()

#------------------------------------------------------------
if noteflag > 0:
    tspsendwindowkey(csdn_title, 'c', control=1, noreturn=1)
    pastestr = clipboard.paste()

    if len(pastestr) == 0:
        pastestr = clipboardstr;

    allstr = pastestr
    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if len(circlestr) > 0: allstr = circlestr + allstr
    if questionmark > 0 and IsNotTermChar(allstr[-1]):
        allstr = allstr+'?'

    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    if urlflag == 1:
        allstr = '<%s>'%allstr

    if noteflag == 1:
        insertstr = ' **``%s``** '%allstr
    elif noteflag == 2:
        insertstr = ' **%s** '%allstr
    else: insertstr = '``%s``'%allstr

    if len(sizestr) > 0:
        insertstr = '<font size=%s>'%sizestr + insertstr + '</font>'

    if blockflag == 1: insertstr = '- [ ] ' + insertstr
    if blockflag == 2: insertstr = '- [x] ' + insertstr

    if centerflag: insertstr = '<center>%s</center>'%insertstr
    if supsubflag == 1:
        insertstr = '<sup>%s</sup>'%insertstr
    elif supsubflag == 2:
        insertstr = '<sub>%s</sub>'%insertstr

    if rnflag > 0:
        insertstr = insertstr + '\r\n'*rnflag

#    printf(insertstr)
    clipboard.copy(insertstr)
    tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)
    clipboard.copy('')
    tspfocuswindow(csdn_title)

    exit()

#------------------------------------------------------------
if markflag > 0 and len(sys.argv) > 2:
    if len(sys.argv) > 2:
        allstr = ' '.join(sys.argv[2:])

    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if len(circlestr) > 0: allstr = circlestr + allstr
    if questionmark > 0 and IsNotTermChar(allstr[-1]):
        allstr = allstr+'?'

    if urlflag == 1:
        allstr = '<%s>'%allstr

    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    insertstr = '==%s=='%allstr

    if len(sizestr) > 0:
        insertstr = '<font size=%s>'%sizestr + insertstr + '</font>'

    if blockflag == 1: insertstr = '- [ ] ' + insertstr
    if blockflag == 2: insertstr = '- [x] ' + insertstr
    if centerflag: insertstr = '<center>%s</center>'%insertstr
    if redarrowflag:
        insertstr = '<font color=red>\u27a4</font>' +insertstr

    if rnflag > 0:
        insertstr = insertstr + '\r\n'*rnflag
    if supsubflag == 1:
        insertstr = '<sup>%s</sup>'%insertstr
    elif supsubflag == 2:
        insertstr = '<sub>%s</sub>'%insertstr

#    printf(insertstr)
    clipboard.copy(insertstr)
    tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)
    clipboard.copy('')
    tspfocuswindow(csdn_title)

    exit()

if markflag > 0:
    tspsendwindowkey(csdn_title, 'c', control=1, noreturn=1)
    pastestr = clipboard.paste()
    if len(pastestr) == 0:
        pastestr = clipboardstr;

    allstr = pastestr

    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if len(circlestr) > 0: allstr = circlestr + allstr
    if questionmark > 0 and IsNotTermChar(allstr[-1]):
        allstr = allstr+'?'

    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    insertstr = '==%s=='%allstr
    if urlflag == 1:
        allstr = '<%s>'%allstr

    if centerflag: insertstr = '<center>%s</center>'%insertstr

    if len(sizestr) > 0:
        insertstr = '<font size=%s>'%sizestr + insertstr + '</font>'

    if blockflag == 1: insertstr = '- [ ] ' + insertstr
    if blockflag == 2: insertstr = '- [x] ' + insertstr

    if rnflag > 0:
        insertstr = insertstr + '\r\n'*rnflag
    if supsubflag == 1:
        insertstr = '<sup>%s</sup>'%insertstr
    elif supsubflag == 2:
        insertstr = '<sub>%s</sub>'%insertstr

#    printf(insertstr)
    clipboard.copy(insertstr)
    tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)
    clipboard.copy('')
    tspfocuswindow(csdn_title)

    exit()

#------------------------------------------------------------
if deleteflag > 0 and len(sys.argv) > 2:
    if len(sys.argv) > 2:
        allstr = ' '.join(sys.argv[2:])

    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if len(circlestr) > 0: allstr = circlestr + allstr
    if questionmark > 0 and IsNotTermChar(allstr[-1]):
        allstr = allstr+'?'

    if urlflag == 1:
        allstr = '<%s>'%allstr

    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    insertstr = '~~%s~~'%allstr

#    printf(insertstr)
    if len(sizestr) > 0:
        insertstr = '<font size=%s>'%sizestr + insertstr + '</font>'

    if blockflag == 1: insertstr = '- [ ] ' + insertstr
    if blockflag == 2: insertstr = '- [x] ' + insertstr
    if centerflag: insertstr = '<center>%s</center>'%insertstr

    if rnflag > 0:
        insertstr = insertstr + '\r\n'*rnflag

    if supsubflag == 1:
        insertstr = '<sup>%s</sup>'%insertstr
    elif supsubflag == 2:
        insertstr = '<sub>%s</sub>'%insertstr

    clipboard.copy(insertstr)
    tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)
    clipboard.copy('')
    tspfocuswindow(csdn_title)

    exit()

if deleteflag > 0:
    tspsendwindowkey(csdn_title, 'c', control=1, noreturn=1)
    pastestr = clipboard.paste()
    if len(pastestr) == 0:
        pastestr = clipboardstr;

    allstr = pastestr
    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if len(circlestr) > 0: allstr = circlestr + allstr
    if questionmark > 0 and IsNotTermChar(allstr[-1]):
        allstr = allstr+'?'

    if centerflag: insertstr = '<center>%s</center>'%insertstr

    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    if urlflag == 1:
        allstr = '<%s>'%allstr

    insertstr = '~~%s~~'%allstr

    if supsubflag == 1:
        insertstr = '<sup>%s</sup>'%insertstr
    elif supsubflag == 2:
        insertstr = '<sub>%s</sub>'%insertstr

    if len(sizestr) > 0:
        insertstr = '<font size=%s>'%sizestr + insertstr + '</font>'
    if blockflag == 1: insertstr = '- [ ] ' + insertstr
    if blockflag == 2: insertstr = '- [x] ' + insertstr
#    printf(insertstr)

    if rnflag > 0:
        insertstr = insertstr + '\r\n'*rnflag

    clipboard.copy(insertstr)
    tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)
    clipboard.copy('')
    tspfocuswindow(csdn_title)

    exit()

#------------------------------------------------------------
fontstr = ''
if len(face) > 0 or len(color) > 0 or len(sizestr) > 0:
    fontstr = '<font '
    if len(face) > 0:   fontstr = fontstr + ' face=%s'%face
    if len(color) > 0:  fontstr = fontstr + ' color=%s'%color
    if len(sizestr) > 0: fontstr = fontstr + ' size=%s'%sizestr

    fontstr = fontstr + '>'

#------------------------------------------------------------
key = tspread()
if key[8] != 0:
    retflag = 1
    nbspflag = 1

#------------------------------------------------------------
insertstr = fontstr

if len(sys.argv) > 2:
    allstr = ' '.join(sys.argv[2:])

    allstr = allstr.replace('-->', '→')
    allstr = allstr.replace('<--', '←')

    enddotflag = 0

    #--------------------------------------------------------
    if len(allstr) > 0:

        if allstr[-1] == '\\' or allstr[-1] == '.' or allstr[-1] == '|':
            tspsendwindowkey(csdn_title, 'c', control=1, noreturn=1)
            pastestr = clipboard.paste()
            if len(pastestr) == 0:
                pastestr = clipboardstr;

            if allstr[-1] == '\\': allstr = allstr[0:-1]

            if len(pastestr) > 0:
                allstr = allstr + pastestr

        if allstr[-1] == '.':
            nbspflag = 0
            allstr = allstr[:-1]

        if allstr[0] == 'o':
            if allstr[1] == 'o':
                headmarkflag = '○ '
                allstr = allstr[2:]
            else:
                headmarkflag = '● '
                allstr = allstr[1:]

        if allstr[0] == '.':
            if allstr[1] == '.':
                headmarkflag = '□ '
                allstr = allstr[2:]
            else:
                headmarkflag = '■ '
                allstr = allstr[1:]

        if allstr[0] == '+':
            if allstr[1] == '+':
                headmarkflag = '☆ '
                allstr = allstr[2:]
            else:
                headmarkflag = '★ '
                allstr = allstr[1:]

        if allstr[0] == '-':
            if allstr[1] == '-':
                headmarkflag = '△ '
                allstr = allstr[2:]
            else:
                headmarkflag = '▲ '
                allstr = allstr[1:]

        if allstr[0] == ';':
            if allstr[1] == ';':
                headmarkflag = '◇ '
                allstr = allstr[2:]
            else:
                headmarkflag = '◆ '
                allstr = allstr[1:]

        if allstr[0] == '_':
            headmarkflag = '→ '
            allstr = allstr[1:]

        if allstr[0] == ':':
            headmarkflag = '※ '
            allstr = allstr[1:]

        if allstr[0] == '%':
            headmarkflag = '# '
            allstr = allstr[1:]

        if allstr[0] == '$':
            headmarkflag = '§ '
            allstr = allstr[1:]

        if allstr[0] == '@':
            headmarkflag = '◎ '
            allstr = allstr[1:]

        if allstr[0] == '?':
            headmarkflag = '√ '
            allstr = allstr[1:]

        if allstr[0] == '/':
            circlenum = allstr.count('/')
            allstr = allstr[circlenum:]
            orderstr = '①②③④⑤⑥⑦⑧⑨⑩⑾⑿⒀⒁⒂⒃⒄⒅'
            if circlenum > 18: circlenum = 18
            circlestr = orderstr[circlenum-1:circlenum] + ' '

        if allstr[0] == '|':
            circlenum = allstr.count('|')
            allstr = allstr[circlenum:]
            orderstr = 'ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ'
            if circlenum > 12: circlenum = 12
            circlestr = orderstr[circlenum-1:circlenum] + '.'

        if allstr[0] == '\\':
            circlenum = allstr.count('\\')
            allstr = allstr[circlenum:]
            orderstr = 'ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ'
            if circlenum > 10: circlenum = 10
            circlestr = orderstr[circlenum-1:circlenum] + '.'

        if allstr[0] >= '0' and allstr[0] <= '9':
            if len(allstr) > 2:
                if allstr[1] == '|':
                    if allstr[2] == ':':
                        allstr = '(%s)'%allstr[0] + allstr[3:]
                    elif allstr[2] == '|':
                        allstr = '(%s)'%allstr[0] + allstr[3:]
                    else:
                        allstr = '(%s) '%allstr[0] + allstr[2:]
                elif allstr[1] == ':':
                    allstr = '(%s)'%allstr[0] + allstr[2:]

        if allstr[0] == '*':
            headboldflag = 1
            if allstr[1] == '*':
                headboldflag = 2
                if allstr[2] == '*':
                    headboldflag = 3
                    if allstr[3] == '*':
                        headboldflag = 4

            allstr = allstr[headboldflag:]

        if boldflag == 0:
            if headboldflag > 0 and headlargeflag == 0:
                allstr = '**%s**'%allstr[0:headboldflag] + allstr[headboldflag:]
            elif headboldflag > 0 and headlargeflag > 0:
                if len(sizestr) == 0: ss = '4'
                else: ss = '5'

                allstr = '<font size=%s>**%s**</font>'%(ss,allstr[0:headboldflag]) + allstr[headboldflag:]
            elif headboldflag == 0 and headlargeflag > 0:
                if len(sizestr) == 0: ss = '4'
                else: ss = '5'
                allstr = '<font size=%s>%s</font>'%(ss,allstr[0:headlargeflag]) + allstr[headlargeflag:]
        else:
            if headlargeflag > 0:
                if len(sizestr) == 0: ss = '4'
                else: ss = '5'
                allstr = '<font size=%s>%s</font>'%(ss,allstr[0:headlargeflag]) + allstr[headlargeflag:]

    #--------------------------------------------------------
    if sharpnum <= 1 and headnumlineflag > 0:
        if color == 'purple':
            if redarrowflag == 0:
                allstr = str2headnumline(allstr, 'red')
            else: allstr = str2headnumline(allstr)
        else: allstr = str2headnumline(allstr)

    #--------------------------------------------------------
    if questionmark > 0 and IsNotTermChar(allstr[-1]):
        allstr = allstr+'?'

    if sharpnum == 0:
        sharpnum = allstr.count('#')
        if sharpnum > 0:
            allstr = allstr.strip('#')

    if len(headmarkflag) > 0: allstr = headmarkflag + allstr

    if redarrowflag:
        allstr = '<font color=red>\u27a4</font>' + allstr

    if len(circlestr) > 0: allstr = circlestr + allstr
    if underlineflag:
        allstr = '<u>' +allstr + '</u>'

    if len(notestr) > 0:
        allstr = allstr + notestr
        notestr = ''

    if urlflag == 1:
        allstr = '<%s>'%allstr

    if boldflag:
        allstr = '**%s**'%allstr
    elif italicflag != 0:
        if italicflag == 1:
            allstr = '*' + allstr + '*'
        else:
            allstr = '*__' + allstr + '__*'

    if supsubflag == 1:
        allstr = '<sup>%s</sup>'%allstr
    elif supsubflag == 2:
        allstr = '<sub>%s</sub>'%allstr

    if len(fontstr) != 0:
        insertstr = '%s%s</font>'%(fontstr, allstr)
    else: insertstr = allstr

    if rightflag:
        if fontflag == 0:
            insertsect = insertstr.split('||')
            insertstr = ''
            for s in insertsect:
                insertstr = insertstr + '<div align="right"><font size=3>%s</font></div>\r\n'%s
        else:
            insertsect = insertstr.split('||')
            insertstr = ''
            for s in insertsect:
                insertstr = insertstr + '<div align="right">%s</div>\r\n'%s

else:
    tspsendwindowkey(csdn_title, 'c', control=1, noreturn=1)
    allstr = clipboard.paste()
    if len(allstr) == 0:
        allstr = clipboardstr

    if centerflag == 0:
        if onelineflag == 0:
            brstr = '<br><br>'

            if rightflag or centerflag: brstr = '<br>'

            if allstr.find('\r\n') >= 0:
                allstr = brstr.join([s for s in allstr.split('\r\n') if len(s.strip(' ')) > 0])
            elif allstr.find('\n') >= 0:
                allstr = brstr.join([s for s in allstr.split('\n') if len(s.strip(' ')) > 0])
        else:
            if allstr.find('\r\n') >= 0:
                allstr = ' '.join([s for s in allstr.split('\r\n') if len(s.strip(' ')) > 0])
            elif allstr.find('\n') >= 0:
                allstr = ' '.join([s for s in allstr.split('\n') if len(s.strip(' ')) > 0])

    allstr = allstr.replace('-->', '→')
    allstr = allstr.replace('<--', '←')

    if redarrowflag:
        allstr = '<font color=red>\u27a4</font>' + allstr

#    printff(allstr, rightflag)

    if boldflag == 0:
        if headboldflag > 0 and headlargeflag == 0:
            allstr = '**%s**'%allstr[0:headboldflag] + allstr[headboldflag:]
        elif headboldflag > 0 and headlargeflag > 0:
            if len(sizestr) == 0: ss = '4'
            else: ss = '5'
            allstr = '<font size=%s>**%s**</font>'%(ss,allstr[0:headboldflag]) + allstr[headboldflag:]
        elif headboldflag == 0 and headlargeflag > 0:
            if len(sizestr) == 0: ss = '4'
            else: ss = '5'
            allstr = '<font size=%s>%s</font>'%(ss,allstr[0:headlargeflag]) + allstr[headlargeflag:]
    else:
        if headlargeflag > 0:
            if len(sizestr) == 0: ss = '4'
            else: ss = '5'
            allstr = '<font size=%s>%s</font>'%(ss,allstr[0:headlargeflag]) + allstr[headlargeflag:]

    if sharpnum == 0:
        sharpnum = allstr.count('#')
        if sharpnum > 0:
            allstr = allstr.strip('#')

    if len(headmarkflag) > 0: allstr = headmarkflag + allstr
    if questionmark > 0 and IsNotTermChar(allstr[-1]):
        allstr = allstr+'?'

    if len(circlestr) > 0: allstr = circlestr + allstr
    if underlineflag:
        allstr = '<u>' + allstr + '</u>'

    if len(notestr) > 0:
        allstr = allstr + notestr
        notestr = ''

    if urlflag == 1:
        allstr = '<%s>'%allstr

    if boldflag:
        allstr = '**%s**'%allstr
    elif italicflag != 0:
        if italicflag == 1:
            allstr = '*' + allstr + '*'
        else:
            allstr = '*__' + allstr + '__*'

    if supsubflag == 1:
        allstr = '<sup>%s</sup>'%allstr
    elif supsubflag == 2:
        allstr = '<sub>%s</sub>'%allstr

    if rightflag:
        if allstr.find('||') >= 0:
            insertsect = allstr.split('||')
            insertstr = ''
            for s in insertsect:
                insertstr = insertstr + '<div align="right"><font size=3>%s</font></div>\r\n'%s
        elif allstr.find('\n') >= 0:
            insertsect = allstr.split('\n')
            insertstr = ''
            for s in insertsect:
                if len(s) == 0: continue
                insertstr = insertstr + '<div align="right"><font size=3>%s</font></div>\r\n'%s
        else: insertstr = '<div align="right"><font size=3>%s</font></div>\r\n'%allstr

        allstr = insertstr

    if len(fontstr) != 0:
        insertstr = '%s%s</font>'%(fontstr, allstr)
    else: insertstr = allstr

#------------------------------------------------------------
if centerflag != 0:
    insertstr = insertstr.replace('||', '\n')
    insertstr = "<center>" + insertstr + "</center>"

    if insertstr.find('\n') >= 0:
        leftbracket = insertstr.count('<')
        rightbracket = insertstr.count('>')

#        printf(insertstr, leftbracket, rightbracket)

        if leftbracket == rightbracket and leftbracket > 0:
            strsect = insertstr.split('\r\n')
            if len(strsect) == 1:
                strsect = insertstr.split('\n')

            printf(strsect)

            if len(strsect) > 1:
                id = strsect[0].rfind('>')
                headstr = ''
                if id >= 0:
                    headstr = strsect[0][0:id+1]
                    strsect[0] = strsect[0][id+1:]

                tailstr = ''
                id = strsect[-1].find('<')
                if id >= 0:
                    tailstr = strsect[-1][id:]
                    strsect[-1] = strsect[-1][0:id]

#                printff(headstr, tailstr)

                if len(headstr) > 0 and len(tailstr) > 0:
                    insertstr = ''
                    for s in strsect:
                        if len(s) == 0: continue
                        insertstr = insertstr + '%s%s%s\r\n'%(headstr, s, tailstr)

#------------------------------------------------------------
insertstr = insertstr.replace('-->', '→')
insertstr = insertstr.replace('<--', '←')

#------------------------------------------------------------
if retflag != 0 and sharpnum == 0:
    insertstr = insertstr + '\r\n'

if sharpnum > 0:
    insertstr = '#'*sharpnum + ' ' + insertstr + '\r\n'

if nbspflag != 0:
    insertstr = '&nbsp;\r\n'*nbspflag + insertstr

if endnbspflag != 0:
    insertstr = insertstr + '&nbsp;\r\n'*endnbspflag+'\r\n'

if headlineflag != 0:
    insertstr = '\r\n---\r\n' + insertstr

if lineflag != 0:
    insertstr = insertstr + '---\r\n'

#------------------------------------------------------------
if len(anchorstr) > 0:
    insertstr = '<span id="%s"></span>\r\n'%(anchorstr) + insertstr

if rnflag > 0:
    insertstr = insertstr + '\r\n'*rnflag

#------------------------------------------------------------

if blockflag == 1: insertstr = '- [ ] ' + insertstr
if blockflag == 2: insertstr = '- [x] ' + insertstr

if greatflag > 0:
    insertstr = '>' * greatflag + insertstr + '\r\n'

#printf(insertstr)
clipboard.copy(insertstr)
tspsendwindowkey(csdn_title, 'v', control=1, noreturn=1)

clipboard.copy(anchorstr)
tspfocuswindow(csdn_title)

#------------------------------------------------------------
#        END OF FILE : CDF.PY
#============================================================

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卓晴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值