Ferramenta para reformatar VB.Net código - especificamente quebras de linha

StackOverflow https://stackoverflow.com/questions/2011119

  •  18-09-2019
  •  | 
  •  

Pergunta

Existem algumas ferramentas disponíveis para formatar automaticamente o código vb.net - especificamente para adicionar quebras de linha em um comprimento de linha pré-definida? Eu estou trabalhando com um monte de código com longas filas (milhares de linhas), e reformatar manualmente é muito demorado. Eu vi um número de ferramentas para reorganizar código em regiões etc., mas não encontrei nenhum que reformatar com quebras de linha. Livre seria ótimo.

Foi útil?

Solução

Tente ter VS auto-wrap suas linhas. A opção deve estar nas Ferramentas | opções | Básico | configurações | Quebra de linha.

Outra coisa a fazer é ir para o Editar | avançada | opção de menu Document Format, que ajuda a limpar o ar com documentos não bem formados.

A 3ª opção é instalar DevExpress' Código do Rush Xpress add-on, que add é linhas verticais muito útil para quando blocos de código começam e terminam, e também ajuda na refatoração de código. Você pode obtê-lo aqui: http://devexpress.com/Products/Visual_Studio_Add-in/ CodeRushX / . É gratuito, mas não suporta as edições Express do Visual Studio.

Outras dicas

Use Visual Studio 2008 você tem que usar Ctrl + A + K + F para formatar sua c #, código vb

Eu sei que este foi publicado há muito tempo. Mas se alguma vez alguém teve o mesmo problema, tente esta sub eu fiz. O sub terá duas saídas (textBox1 = código com quebras, TextBox3 = um código de um liner).

Crie duas caixas de texto (chamado Textbox1 e TextBox3) e um botão (Button1)

Criar uma sub (nome que você quiser) e digite este código:

Try
            Dim x As String = TextBox1.Text

            x = x.Replace("& """, "")
            x = x.Replace(""" _", "")
            x = x.Replace("""", "")
            x = x.Replace(vbNewLine, "")
            x = x.Replace(vbTab, "")

            While x.Contains("  ")                     '2 spaces.
                x = x.Replace("  ", " ")      'Replace with 1 space.
            End While

            TextBox3.Text = x

            Dim l As Integer = Len(x)
            Dim xlim As Integer = InputBox("Specify the maximum number of characters for each line:", "Line Max", 66)
            Dim ylim As Double = 0

            TextBox1.Text = ""

            ylim = l / xlim

            If Int(ylim) <> ylim Then
                ylim = Int(ylim) + 1
            Else
                ylim = Int(ylim)
            End If

            Dim una As String = "", huli As String = ""
            Dim mynewstring As String = ""
            Dim startin As Integer = 1
            For i = 1 To ylim
                If i = 1 Then
                    una = """"
                Else
                    una = vbTab & "& """
                End If
                If i = ylim Then
                    huli = """"
                Else
                    huli = """ _"
                End If
                mynewstring = mynewstring & una & Strings.Mid(x, startin, xlim) & huli & vbNewLine
                startin += xlim
            Next

            TextBox1.Text = mynewstring

        Catch ex As Exception
            MsgBox(ex.Message)
        End Try

P.S. Eu não adicionar o código para restaurar a sua entrada original.

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