[英]How to change default error search in Visual Studio 2015
當我在Visual Studio 2015CTP 中編寫代碼時,在 ErrorList 窗口中出現如下錯誤:
錯誤 CS0117“控制台”不包含“ReadKey”的定義
通過單擊CS0117
它會將我重定向到默認瀏覽器並使用 Bing 進行搜索。 由於大多數時候我們使用谷歌作為搜索引擎,有沒有辦法讓谷歌作為默認搜索而不是必應。
簡單地重定向搜索提供程序可能不起作用。 我們生成一個搜索字符串,該字符串專為與 Bing 端的專門搜索引擎一起使用而量身定制。 將相同的搜索字符串傳遞給另一個搜索引擎可能會得到很差的結果。
相反,您需要做的是為幫助事件定義您自己的處理程序。 這將從錯誤本身中提取相關信息(例如錯誤代碼、語言等)以創建可與您選擇的提供者一起使用的通用搜索。 如果此處理程序出現在默認處理程序之前,則您可以處理該事件並阻止執行默認 (bing) 搜索。
您需要實現的接口是:
ITableControlEventProcessorProvider
這是一個 MEF 導出,應具有以下屬性:
[Export(typeof(ITableControlEventProcessorProvider))]
[DataSourceType(StandardTableDataSources.ErrorTableDataSourceString)]
[DataSource(StandardTableDataSources.AnyDataSourceString)]
[ManagerIdentifier(StandardTables.ErrorsTableString)]
[Name("my custom event processor name")]
[Order(Before=Priority.Default)]
最好定義一個派生自TableControlEventProcessorBase
的類(它為所有事件提供默認/無操作實現),然后通過以下方式顯式處理PreprocessNavigateToHelp(ITableEntryHandle entry, TableEntryEventArgs e)
事件:
e.Handled
設置為 true(以防止其他幫助處理程序執行)。沒有內置支持切換所使用的搜索引擎。 但是,可以創建一個擴展來讓 Google(和其他)搜索引擎鏈接到,就像之前 Visual Studio 版本中的 Bing 開發人員助手擴展所做的那樣。
我會向您指出有關如何創建此類擴展的信息的文檔,但它們尚未發布。 它們位於將在 Visual Studio 2015 正式發布時發布的文檔列表中。
我剛剛制作的另一個快速技巧是瀏覽器腳本。 我通常使用 Greasemonkey 將搜索從 Bing 重定向到 Google。 因為誰他媽的選擇了前者而不是后者......
如果您安裝了 Greasemonkey 或其他地方使用用戶腳本,您可以使用
// @include http://www.bing.com/search?q=*
var rex = /\?q=(.+)/;
window.location.href = ("http://www.google.com/#safe=off&q="+window.location.href.match(rex)[1]);
總是從 Bing 重定向到 Google。
不是真正的 VS 答案,而是一種解決方法。 就我而言,這似乎很好,因為我更喜歡谷歌。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.