從昨天開始直通了MonoDevelop 2.6.0.1源代碼之後,我終於找到了必要的代碼更改。我想我會把這個爲了參考起見,以防有人感興趣。
事實證明,MonoDevelop中的「歡迎頁面」由WelcomePage
插件代表。反過來,插件的視覺方面由類MonoDevelop.WelcomePage.WelcomePageView
表示。在這裏是一個方法GetRecentProjects()
,它實際上檢索要顯示的項目列表。
通過這種方法,控制權下降到RecentFileStorage
類中的DefaultPath
屬性,該屬性給出默認情況下最近存儲項目xml的位置。它定義爲
public static string DefaultPath {
get {
return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), ".recently-used");
}
}
的Environment.SpecialFolder.Personal
枚舉值代表當前用戶的個人文件夾中;在我的情況下,它是/home/ken
請注意,這裏沒有版本信息。這意味着最近的文件列表將始終引用文件/home/ken/.recently-used
,而不管您正在運行哪個版本的MonoDevelop。此外,文件的佈局不適用於多個版本,因此唯一的方法是重定向此文件的位置。這很容易完成,通過將上述屬性更改爲像
public static string DefaultPath {
get {
return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), "MonoDevelop2_6", ".recently-used");
}
}
之前建設。
我個人認爲,這些事情應該分開,因爲這是一個很容易改變我可能會推動一些版本信息被添加到.recently-used
文件的路徑,或以其他方式將其添加到該文件的內容。