2008-09-25 16 views
19

ठीक है, यह सिर्फ मेरे पास एक पागल विचार है। स्टैक ओवरफ़्लो विकास अनुप्रयोगों में बहुत संरचित और अभिन्न दिखता है। तो क्या यह संभव है, यहां तक ​​कि उपयोगी, एक स्टैक ओवरफ़्लो प्लगइन के लिए, कहें, ग्रहण?आईडीई में स्टैक ओवरफ़्लो एकीकृत करें?

स्टैक ओवरफ़्लो की कौन सी विशेषताएं आप सीधे अपने आईडीई में एकीकृत करना चाहते हैं ताकि आप इसे ब्राउज़र में बदलने के बिना "मूल रूप से" उपयोग कर सकें?

संपादित करें: मैं आईडीई के अंदर वेब पेज का उपयोग करने के बजाय गहन एकीकरण के तरीकों के बारे में सोच रहा हूं। जब आप किसी निश्चित जावा क्लास का उपयोग करते हैं और कोई समस्या है, तो SO से उत्तर भड़क सकते हैं। शायद ऐसे मामले होंगे जहां ऐसा कुछ परेशान है, लेकिन अन्य बहुत उपयोगी हो सकते हैं।

+0

मुझे पता है कि यह एक पुरानी पोस्ट है, लेकिन यह फिर से प्रासंगिक है मुझे लगता है! एसओ प्रलेखन एक अच्छी नई परियोजना है जो समुदाय को संदर्भ कोड बनाने और हर किसी के लिए लाभ उठाने के लिए विभिन्न ढांचे के स्पष्टीकरण को प्रोत्साहित करती है। कल्पना करें कि यह आपके आईडीई में एकीकृत है, जैसे कि आप सीधे अपने आईडीई में एपीआई से पुनर्प्राप्त संदर्भ कोड को संकलित और निष्पादित भी कर सकते हैं। रेड लगता है, और मैं उस पर सब कुछ होगा। –

उत्तर

20

जोश के उत्तर पर बाद में। यह वीएस मैक्रो विजुअल स्टूडियो आईडीई में हाइलाइट किए गए टेक्स्ट के लिए स्टैक ओवरफ्लो खोजेगा।बस पर प्रकाश डाला और Alt + F1

Public Sub SearchStackOverflowForSelectedText() 
    Dim s As String = ActiveWindowSelection().Trim() 
    If s.Length > 0 Then 
     DTE.ItemOperations.Navigate("http://www.stackoverflow.com/search?q=" & _ 
      Web.HttpUtility.UrlEncode(s)) 
    End If 
End Sub 

Private Function ActiveWindowSelection() As String 
    If DTE.ActiveWindow.ObjectKind = EnvDTE.Constants.vsWindowKindOutput Then 
     Return OutputWindowSelection() 
    End If 
    If DTE.ActiveWindow.ObjectKind = "{57312C73-6202-49E9-B1E1-40EA1A6DC1F6}" Then 
     Return HTMLEditorSelection() 
    End If 
    Return SelectionText(DTE.ActiveWindow.Selection) 
End Function 

Private Function HTMLEditorSelection() As String 
    Dim hw As HTMLWindow = ActiveDocument.ActiveWindow.Object 
    Dim tw As TextWindow = hw.CurrentTabObject 
    Return SelectionText(tw.Selection) 
End Function 

Private Function OutputWindowSelection() As String 
    Dim w As Window = DTE.Windows.Item(EnvDTE.Constants.vsWindowKindOutput) 
    Dim ow As OutputWindow = w.Object 
    Dim owp As OutputWindowPane = ow.OutputWindowPanes.Item(ow.ActivePane.Name) 
    Return SelectionText(owp.TextDocument.Selection) 
End Function 

Private Function SelectionText(ByVal sel As EnvDTE.TextSelection) As String 
    If sel Is Nothing Then 
     Return "" 
    End If 
    If sel.Text.Length = 0 Then 
     SelectWord(sel) 
    End If 
    If sel.Text.Length <= 2 Then 
     Return "" 
    End If 
    Return sel.Text 
End Function 

Private Sub SelectWord(ByVal sel As EnvDTE.TextSelection) 
    Dim leftPos As Integer 
    Dim line As Integer 
    Dim pt As EnvDTE.EditPoint = sel.ActivePoint.CreateEditPoint() 

    sel.WordLeft(True, 1) 
    line = sel.TextRanges.Item(1).StartPoint.Line 
    leftPos = sel.TextRanges.Item(1).StartPoint.LineCharOffset 
    pt.MoveToLineAndOffset(line, leftPos) 
    sel.MoveToPoint(pt) 
    sel.WordRight(True, 1) 
End Sub 

स्थापित करने के लिए:

  1. टूल्स - मैक्रो - आईडीई
  2. "MyMacros 'के तहत अपनी पसंद का एक नाम के साथ एक नया मॉड्यूल पैदा करते हैं। या मौजूदा मॉड्यूल का उपयोग करें।
  3. मॉड्यूल में ऊपर कोड पेस्ट
  4. मॉड्यूल
  5. बंद मैक्रो आईडीई खिड़की
  6. उपकरण पर जाने के लिए (HttpUtility के लिए) System.Web नाम स्थान के लिए एक संदर्भ जोड़ने - विकल्प - पर्यावरण - कीबोर्ड
  7. टेक्स्टबॉक्स युक्त शो कमांड में "google" टाइप करें। SearchGoogleForSelectedText मैक्रो प्रेस शॉर्टकट कुंजी पाठ बॉक्स में
  8. क्लिक दिखाई देना चाहिए, तो ALT + F1
  9. प्रेस असाइन करें बटन क्लिक
  10. ठीक क्लिक करें

यह सब जेफ एटवुड के Google Search VS Macro पद से लिया जाता है, बस इसके बदले StackOverflow खोजने के लिए संशोधित किया गया।

+0

क्या ग्रहण में ऐसा करने का कोई ही तरीका है? – Thorsten79

+0

मैंने आपके मैक्रो में थोड़ा बदलाव किया है, "एस =" अब एक "q =" –

+0

प्रतीत होता है यहां ग्रहण के लिए एक [प्लगइन] (https://github.com/MarounMaroun/SO-Eclipse-Plugin) है। – Maroun

0

आप इसे विजुअल स्टूडियो में बस अपने स्टार्ट पेज के रूप में सेट कर सकते हैं।

यह सुनिश्चित नहीं है कि यह क्या लाभ प्रदान करेगा ... लेकिन प्रत्येक के लिए।

3

मुझे ग्रहण के बारे में पता नहीं है, लेकिन विजुअल स्टूडियो के लिए, अगर कोई वास्तव में यह चाहता था तो वे आसानी से "प्रारंभ पृष्ठ समाचार चैनल" के लिए एसओ आरएसएस फ़ीड जोड़ सकते हैं ताकि एसओ प्रश्न सूची प्रारंभ पृष्ठ में दिखाई दे, या इससे भी बेहतर, एक टैग के साथ इसे कम करें (like for C#)। यह बिल्कुल "एकीकरण" नहीं है, लेकिन यह हाल ही की चीजों को बहुत कम प्रयास के साथ त्वरित रूप से प्रदान करेगा। हालांकि, यह सुनिश्चित नहीं है कि यह "उपयोगी" कैसे होगा।

+0

हम ठीक वही करते हैं (आरएसएस)। यह विषयों को स्किम करने का एक तेज़ और आसान तरीका प्रदान करता है। – Gerard

5

विजुअल स्टूडियो में, आप StackOverflow में एक हाइलाइट किए गए शब्द की खोज के लिए शॉर्टकट जोड़ सकते हैं। जेफ एटवुड ने Google के साथ अपने Google search VS.NET macro ब्लॉग एंट्री में कुछ ऐसा करने के बारे में लिखा था।

इस दृष्टिकोण का उपयोग करने से आप एक शब्द या त्रुटि संदेश (या आईडीई में कोई अन्य चुनिंदा पाठ) को हाइलाइट करने की अनुमति देंगे, शॉर्टकट कुंजियों को दबाएं और फिर सभी मिलान परिणामों को स्टैक ओवरव्लो पर देखें।

मुझे यकीन है कि अन्य आईडीई में भी ऐसा करने का एक तरीका है।

1

आपके पास StackOverflow फ़ीड पढ़ने के लिए ग्रहण के लिए RSS plugin है।

लेकिन मैं आपके साथ हूं, एक एसओ ग्रहण प्लगइन वास्तव में अच्छा होगा।

3

यदि स्टैक ओवरफ्लो उस भाषा की पहचान करना शुरू कर सकता है जिसमें प्रत्येक कोड स्निपेट शामिल है, तो मैं एक आईडीई को कोड-समापन/कोड-स्निपेट प्लगइन देख सकता हूं जो SO पर खोज करने और कोड भाग को डालने के लिए एक विशेष वाक्यविन्यास का जवाब देता है स्वीकृत उत्तर

उदाहरण के लिए: मेरे स्रोत में मैं टाइप हो सकता है:

//# read an XML file 

// # वाक्य रचना प्लगइन एक खोज शुरू करने और प्रश्न शीर्षकों की सूची प्रदर्शित करने के लिए संकेत देता है। जब मैं एक चुनता हूं, तो यह स्वीकृत उत्तर के कोड भाग को सम्मिलित करता है।

+0

मेह - सामान्य रूप से प्रतिलिपि/पेस्ट कोड एक खतरे है - मैं इसे पहले से कहीं अधिक आसान बनाने से नफरत करता हूं। –

+3

यूनवेन ये पीएचडी थीसिस ने ऐसा कुछ किया। यह कोडब्राकर नामक एक इमाक्स प्लगइन था, और कुछ प्राकृतिक भाषा टिप्पणियों का विश्लेषण किया और प्रोग्रामर के इरादे का अनुमान लगाने और मौजूदा कोड के सुझाव देने का प्रयास किया जो कुछ ऐसा ही करता है। –

11

मुझे नहीं लगता कि मैं एक आईडीई में एकीकृत एसओ के साथ कोई भी काम करने में सक्षम हूं। यह लगभग खराब है, अगर आईडीई में डिग/रेडडिट को एकीकृत करने से सबसे बुरा नहीं है।

संबंधित मुद्दे