ConsoleWindow中的雙擊日誌定位

2022-06-30 07:09:15 字數 2235 閱讀 2884

很多專案都有自己重寫debug.log的習慣,難免會遇到在unity的console視窗中雙擊日誌, 但是沒法直接跳轉到想要看到的**那一行的時候,解決辦法有以下2種:

將自己封裝的日誌類製作成dll再匯入到unity使用,但是有時候想修改日誌類的**卻比較麻煩了~~

使用本文提供的logeditor類來自動定位!。!下面來詳細說明下該類吧~~

將logeditor類的指令碼放到名字為editor的目錄下(如果沒有editor目錄就新建乙個吧)

在這裡修改和新增自己封裝過的日誌類(路徑+型別),支援新增多個封裝的日誌類 

1

using

system;

2using

system.reflection;

3using

unityeditor;

4using

unityengine;56

namespace

shaco721

}2223//

add your custom log class here

24private

static logeditorconfig _logeditorconfig = new

logeditorconfig25;

2930 [unityeditor.callbacks.onopenassetattribute(-1

)]31

private

static

bool onopenasset(int instanceid, int

line)

3250

break;51

}52}53

54return

false;55

}5657private

static

string

getstacktrace()

5882}83

return"";

84}8586

private

static

void

updateloginstanceid(logeditorconfig config)

8792

93var assetloadtmp = assetdatabase.loadassetatpath(config.logscriptpath);

94if (null ==assetloadtmp)

9598 config.instanceid =assetloadtmp.getinstanceid();99}

100101

private

static

string getcurrentfullfilename(string

filenames)

102116

}117

if(iscustomlog)

118122

}123

124if (findindex >= 0 && findindex < filenames.length - 1

)125

128129

return

retvalue;

130}

131132

private

static

string getrealfilename(string

filename)

133140

141private

static

int logfilenametofileline(string

filename)

142152

else

153156

}157

158return

int.parse(stringparseline);

159}

160161

private

static

int parsefilelinestartindex(string

filename)

162172

else

173178

}179

}180

return

retvalue;

181}

182183

private

static

bool isnumber(char

c)184

187}

188 }

Python中的descriptor中的一點疑問

在我的印象中,類中的函式是可以有兩種呼叫方式的,如下 class b def func self return 10 b b b.func b.func b 於是,在之前研究descriptor的時候,我就有了幾點困惑 我將 更換成了如下兩個版本 版本1 import time class lazy...

python中的dict Python中的dict

dict python內建了字典 dict的支援,dict全稱dictionary,在其他語言中也稱為map,使用鍵 值 key value 儲存,具有極快的查詢速度。d print dict get michael d michael add a element d adam 67 print d...

zset中的score Redis中的事務

watch 監控某個或幾個key的變化 multi 接下來的命令不會立馬執行,會先放入乙個事務的佇列中 exec 執行事務佇列中的命令 unwatch 可以在watch執行之後 multi命令執行之前執行,效果是解除對某個key的監控 discard 可以在multi命令執行之後exec命令執行之前...