Pergunta

Ok, esta é apenas uma ideia louca que eu tenho. Stack Overflow parece muito estruturado e integrável em aplicações de desenvolvimento. Assim, seria possível, mesmo útil, para ter um plugin Stack Overflow para, digamos, Eclipse?

Quais recursos de estouro de pilha que gostaria de ter integrado diretamente em seu IDE para que você possa usá-lo "nativamente" sem mudar para um navegador?

EDIT: Estou pensando em formas de integração mais profunda do que apenas usando a página web dentro do IDE. Como quando você usa uma certa classe Java e tem um problema, respostas de SO pode incendiar-se. Provavelmente haveria casos em que algo como isso é irritante, mas outros podem ser muito útil.

Foi útil?

Solução

No seguimento resposta de Josh. Este Macro VS irá procurar StackOverflow para o texto destacado no Visual Studio IDE. destaque apenas e pressione 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

Para instalar:

  1. vá em Ferramentas - Macros - IDE
  2. Crie um novo módulo com um nome de sua escolha em "MyMacros". Ou usar um módulo existente.
  3. cole o código acima para o módulo
  4. adicionar uma referência ao espaço de nomes System.Web (para HttpUtility) para o módulo
  5. Feche a janela do IDE macro
  6. vá em Ferramentas - Opções - Ambiente - Teclado
  7. Tipo de "google" na caixa de texto que contém comandos show. A macro SearchGoogleForSelectedText deve aparecer
  8. clique na caixa de texto Pressione as teclas de atalho, em seguida, pressione ALT + F1
  9. clique no botão Atribuir
  10. clique em OK

Isso tudo é tirado Google Search VS Macro pós de Jeff Atwood , apenas modificado para procurar StackOverflow vez.

Outras dicas

Eu não acho que vou ser capaz de obter qualquer trabalho feito com SO integrados em um IDE. É quase tão ruim, se não pior do que integrar Digg / Reddit em um IDE.

No Visual Studio, você pode adicionar um atalho para procurar um termo em destaque na StackOverflow. Jeff Atwood escreveu sobre fazer algo semelhante com o Google em seu Google busca VS.NET macro entrada de blog.

Usando essa abordagem permitirá que você para destacar um termo ou mensagem de erro (ou qualquer outro texto selecionável no IDE), pressione as teclas de atalho, e depois ver todos os resultados correspondentes em StackOverflow.

Eu tenho certeza que há uma maneira de fazer isso em outro IDE do bem.

Se StackOverflow pode começar a identificar a linguagem que cada trecho de código contém, então eu podia ver um código-conclusão / trecho de código plugin para um IDE que responde a uma sintaxe especial para a realização de pesquisas sobre SO e inserindo a parte do código de aceite respostas.

Por exemplo: na minha fonte que eu poderia digitar:

//# read an XML file

O // # sintaxe solicita que o plug-in para iniciar uma busca e exibir uma lista de títulos de interrogação. Quando eu escolher um, ele insere a parte do código da resposta aceita.

Eu não sei sobre Eclipse, mas para Visual Studio, se alguém realmente queria isso, eles poderiam facilmente adicionar o feed RSS SO para o "Start Página News Channel" para a lista de perguntas SO apareceu na página inicial, ou mesmo melhor, reduzi-lo com uma tag ( como para C # ). Não é exatamente "integração", mas que iria fornecer um rápido olhar para as coisas recentes com muito pouco esforço. No entanto, não sei como "útil" que seria.

Você tem a RSS plug-in para Eclipse para ler a StackOverflow feed.

Mas eu estou com você, um plugin SO Eclipse seria muito legal.

Você poderia simplesmente defini-lo como a sua página inicial no Visual Studio.

Não sei o que beneficiará isso daria ... mas cada um na sua.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top