mud_sanc 板


LINE

  小小修正之前不能复制背景色的缺点。注意:如果有用一些函数去修改 输出内容的(如:ColourNote、ColourTell),请不要使用ANSI所定义以外 的颜色(如:字色用pink、底色用cyan...等),会认不出来而判错。   至於转换表内容为何和 chat cap 的不一样,因为,PcMan 的编辑器看 不懂重置码,看不懂[m,也看不懂移位码,它很阳春。   增加几个不属於ANSI定义的颜色,它们是 MUSHclient 的自定义色,你 可以在 Configuration > Apperance > Custom Colour 看见并修改它们, 这里是尽量将这些颜色换成相近的 ANSI 颜色,当然不可能尽如人意。或者 ,你可以在 Configuration > Appearance > ANSI Colour 页面点选右上方 的 ANSI Colours... 按钮,将自定义色套上 ANSI 色码;想改回来,在 Configuration > Apperance > Custom Colour 页面右上同样有 Defaults ...可以调回来。   另外,还有两个颜色,都是脚本错误回报时的颜色,这些请看注释。 并修改转换判断,当颜色还是出现转换表外的色码时,这些颜色会先用 Silver 递补。 ---------------------------------------- <!-- Script --> <script> <![CDATA[ -- Thank you, Shaun Biggs, for taking your time to write the CopyScript -- (formerly Copy2) function below. It was slightly altered by me to suit -- my usage (wordwrapped lines and no \r\n at start of selection). local BLACK = 1 local RED = 2 local GREEN = 3 local YELLOW = 4 local BLUE = 5 local MAGENTA = 6 local CYAN = 7 local WHITE = 8 -- 颜色表 local conversion= { ['black'] = ANSI(0)..ANSI (30), ['maroon'] = ANSI(0)..ANSI (31), ['#804040'] = ANSI(0)..ANSI (31), --custom10 ['green'] = ANSI(0)..ANSI (32), --custom15 ['olive'] = ANSI(0)..ANSI (33), ['#FF8040'] = ANSI(0)..ANSI (33), --custom11 ['burlywood'] = ANSI(0)..ANSI (33), --硬木色,脚本错误明细:位置。 ['navy'] = ANSI(0)..ANSI (34), ['#004080'] = ANSI(0)..ANSI (34), --custom13 ['purple'] = ANSI(0)..ANSI (35), ['#FF80C0'] = ANSI(0)..ANSI (35), --custom6 ['teal'] = ANSI(0)..ANSI (36), --custom12 ['silver'] = ANSI(0)..ANSI (37), --以下高亮 ['gray'] = ANSI (30,1), ['red'] = ANSI (31,1), --custom7 ['orangered'] = ANSI (31,1), --橙红,脚本错误明细:说明。 ['#FF8080'] = ANSI (31,1), --custom1 ['lime'] = ANSI (32,1), ['#80FF80'] = ANSI (32,1), --custom3 ['yellow'] = ANSI (33,1), ['#FFFF80'] = ANSI (33,1), --custom2 ['blue'] = ANSI (34,1), --custom16 ['#0080FF'] = ANSI (34,1), --custom5 ['#0080C0'] = ANSI (34,1), --custom8 ['magenta'] = ANSI (35,1), --custom9 ['#FF0080'] = ANSI (35,1), --custom14 ['cyan'] = ANSI (36,1), ['#80FFFF'] = ANSI (36,1), --custom4 ['white'] = ANSI (37,1), } -- 前景 local BACKconversion= { ['black'] = ANSI (40), --黑色。 ['gray'] = ANSI (40), --如果出现底色灰 ['maroon'] = ANSI (41), --栗色。 ['red'] = ANSI (41), --如果出现底色红,Script 档未挂上时的报错。 ['green'] = ANSI (42), --绿色。 ['lime'] = ANSI (42), --如果出现底色鲜绿。 ['olive'] = ANSI (43), --橄榄色。 ['yellow'] = ANSI (43), --如果出现底色黄。 ['navy'] = ANSI (44), --海军蓝。 ['blue'] = ANSI (44), --如果出现底色蓝。 ['purple'] = ANSI (45), --紫色。 ['magenta'] = ANSI (45), --如果出现底色洋红。 ['teal'] = ANSI (46), --鸭绿色,技能进步讯息的颜色。 ['cyan'] = ANSI (46), --如果出现底色青。 ['silver'] = ANSI (47), --银色,正常字色。 ['white'] = ANSI (47), --如果出现底色白。 } --背景 --转换色码 function DoOneLine (styles, startcol, endcol) while next (styles) and startcol > styles [1].length do startcol = startcol - styles [1].length endcol = endcol - styles [1].length table.remove (styles, 1) end -- do if not next (styles) then return end -- discard unwanted part of first good style if startcol > 1 then styles [1].length = styles [1].length - startcol endcol = endcol - startcol + 1 styles [1].text = styles [1].text:sub (startcol) startcol = 1 end -- if -- copy appropriate styles and codes into the output while next (styles) do local len = endcol - startcol + 1 if len < 0 or endcol < 1 then return end -- done -- last style? if len < styles [1].length then styles [1].length = len styles [1].text = styles [1].text:sub (1, len) end -- if last style -- put code in front, if we can find one if conversion [RGBColourToName (styles[1].textcolour)] ~= nil then code = conversion [RGBColourToName (styles[1].textcolour)].. BACKconversion[RGBColourToName (styles[1].backcolour)] else code = conversion ['silver'].. BACKconversion[RGBColourToName (styles[1].backcolour)] end if code then copystring = copystring .. code end -- if code found -- now the text copystring = copystring .. styles [1].text -- less to go now endcol = endcol - styles [1].length -- done this style table.remove (styles, 1) end -- while end -- 函数:DoOneLine 结尾 --函数:复制内容 function CopyScript(name, line, wildcs) -- find selection in output window, if any local first_line = GetSelectionStartLine() local last_line = math.min (GetSelectionEndLine(), GetLinesInBufferCount ()) local first_column = GetSelectionStartColumn() local last_column = GetSelectionEndColumn() -- nothing selected, do normal copy if first_line <= 0 then DoCommand("copy") return end -- if nothing to copy from output window copystring = "" -- iterate to build up copy text for line = first_line, last_line do if line < last_line then DoOneLine (GetStyleInfo(line), first_column, GetLineInfo(line).length) first_column = 1 -- Is this a new line or merely the continuation of a paragraph? if GetLineInfo (line, 3) then copystring = copystring .. "\r\n" end -- new line else DoOneLine (GetStyleInfo(line), first_column, last_column) end -- if end -- for loop -- Get rid of a spurious extra new line at the start. if copystring:sub (1, 2) == "\r\n" then copystring = copystring:sub (3) end -- if newline at start if copystring:sub (-2) ~= ANSI (0) then copystring = copystring .. ANSI (0) end -- if newline at start -- finally can set clipboard contents SetClipboard(copystring) end -- function CopyScript AcceleratorTo ("Ctrl+D", "CallPlugin ('04d9e64f835452b045b427a7', 'CopyScript', '')", sendto.script) ]]> </script> ---------------------------------------- --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.132.196.45 ※ 编辑: hmml 来自: 220.132.196.45 (10/06 08:27)







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP