2012-01-09 11 views
6

Se me ha encomendado la tarea de realizar algunas modificaciones significativas en una base de código heredada que no se haya escrito utilizando nuestras convenciones de estilo de código actuales. Los cambios son lo suficientemente extensos como para hacer algo de limpieza y refactorización (había un poco de código muerto) antes de comenzar. Una de las cosas que me molesta es que los campos están siguiendo la convención de nomenclatura m_FieldName, mientras que ahora usamos _fieldName.Resharper Rename Fields

¿Hay alguna manera con Resharper de cambiar automáticamente el nombre de todos los campos del proyecto para seguir la nueva convención? ¿Hay otras herramientas que pueden hacer esto fácilmente? No es demasiado difícil eliminar la prefijación 'm' incluso con una simple búsqueda/reemplazo, pero no he encontrado una manera automática de cambiar el caso de la letra inicial.

+0

Yo uso ReSharper, y se puede decir que no es capaz de esto (no automatizado de todos modos). Ver pregunta similar: http://stackoverflow.com/questions/6433654/how-to-reformat-naming-styles-with-resharper –

Respuesta

11

Podría ser mejor simplemente buscar/reemplazar <m_ por _ usando Visual Studio (búsqueda/reemplazo de expresión regular).

El < significa "principio de la palabra".

Editar: Parece que no hay forma, utilizando Buscar/Reemplazar, para modificar la carcasa de esa primera letra después del guión bajo.

Por lo que tendría que hacer esta operación 26 veces en una fila, así:

Replace <m_A by _a 
Replace <m_B by _b 

y luego ya está todo listo. Diversión, también :-) Pero solo debería tomar unos minutos.

+0

Muy bonito; 26 reemplazos manuales es mucho más fácil que varios cientos. –

+0

Funcionó maravillosamente; reemplazó alrededor de 4000 fósforos y todo sigue construyendo –

+0

¡Gran resultado, Dan! –

0

Esto parece estar disponible ahora en ReSharper (tengo v10):

enter image description here