7

He cambiado recientemente del desarrollo de Java y Eclipse IDE a C# .NET y VisualStudio 2010. Lo que realmente echo de menos es Alt + / Atajo de Eclipse para completar palabras. No estoy hablando de cosas de autocompletado IntelliSense. Quiero decir, me gustaría que el editor de texto termine de escribir las palabras que ya existen en algún lugar del documento, pero que no aparecerán en IntelliSense, p. Ej. literales de cadena.¿Hay un atajo de finalización WORD en Eclipse en VisualStudio 2010?

En Notepad ++ es el Ctrl +Introduzca acceso directo. En Eclipse es el ya mencionado Alt + /

Puede VS2010 hacer lo mismo? Si no de forma predeterminada, ¿alguien puede indicarme una macro VB decente que podría conectar a mi VS2010 para hacer esto?

Gracias.

EDITAR

agradar a la mente hay una diferencia entre CÓDIGO finalización (es decir, lo que en la mayoría de los IDE/editores inteligentes se realiza mediante Ctrl + Espacio) y simple PALABRA finalización (lo que busco) La finalización de la palabra no trata de analizar el contexto actual, o adivinar qué tipo/método podría tener. Todo lo que hace es intentar completar un trabajo que comenzó a escribir mirando alrededor de la ubicación de su cursor y buscando palabras similares que ya están en el documento actual.

Respuesta

2

¿Puede VS2010 hacer lo mismo?

No por defecto.

Si no es así, ¿alguien puede indicarme una macro VB decente que podría conectar a mi VS2010 para hacer esto?

No conoce ninguno que exista. Pero este podría ser un buen proyecto para hacer.

+3

Sí, definitivamente usaría ese complemento. Incluso mejor tener ese complemento para Word/Outlook también, siempre presiono Ctrl + Espacio al escribir en mis correos electrónicos y me enojo mucho cuando las palabras no se autocompletan :) –

+0

Realmente no puedo marcar esto como una respuesta aceptada . Realmente no ayudaste cuando lo pienso. –

-1

VS2010 tiene esa característica por defecto:

accesos directos: "ALT + flecha derecha" o "CTRL + barra espaciadora"

botón

Barra de herramientas: (como yo soy un nuevo usuario, por favor, abra la imagen de pantalla manualmente en http://i.stack.imgur.com/OyiHY.png)

relevante Nombre de objeto de comando: Edit.CompleteWord (ver: http://msdn.microsoft.com/en-us/library/xte2hh6a%28v=vs.71%29.aspx)

por cierto, estoy usando VS2010 profesional.

+2

por favor vea mi último EDIT. No estoy buscando la finalización del código, que es imprescindible en cualquier IDE. Estoy buscando una forma simple de tener palabras autocompletadas (con palabras me refiero a cualquier palabra, no solo a los nombres de método/campo/propiedad/tipo. Incluso palabras en la documentación o comentarios). –

3

He creado un simple VS macro:

Public Sub CompletePreviousWord()   

    Dim doc As EnvDTE.Document = DTE.ActiveDocument 
    Dim selection As TextSelection = doc.Selection   

    ' word to left is what we want to find   
    selection.WordLeft(True, 1) 
    Dim findWord As String = selection.Text 

    ' get search text from the beginning of the document 
    Dim ep As EditPoint = selection.ActivePoint.CreateEditPoint() 
    ep.StartOfDocument() 
    Dim searchText As String = ep.GetText(selection.ActivePoint) 

    Dim match = Regex.Match(searchText, "[^a-zA-Z0-9_]?(" + findWord + "[a-zA-Z0-9_]*)", _ 
     RegexOptions.IgnoreCase Or RegexOptions.RightToLeft)   

    If match.Success Then 
     ' replace the whole world - for case sensitive and to allow undo (by doing only one operation)    
     selection.Insert(match.Groups.Item(1).Value) 
    Else    
     selection.WordRight(False, 1) 
    End If 

End Sub 

Limitado a Alt-espacio y no el truco para mí.

Shlomi

0

En código de Visual Studio (VSC) hay una extensión, "Otro Completar palabra" por getogrand.Sé que su pregunta fue sobre Visual Studio, pero esto puede ser de interés para otros que buscan a este que termina aquí.

Sí, es difícil buscar esto porque el término "completar código" es más común.

Cuestiones relacionadas