Para hacerlo, necesitaría i) eliminar la capa del ToC, ii) cambiar el nombre de los archivos que conforman el Shapefile (es decir, shp, dbf, shx, prj y similares), y iii) cargar la capa renombrada en QGIS. ¡Pero necesitamos automatizar ese flujo de trabajo!
Si observa los pasos, son similares a lo que hace el complemento Table Manager. Entonces, adapté el código de dicho complemento para cambiar el nombre de Shapefiles, puede descargarlo desde aquí .
Puede usarlo de esta manera (primero intente con un pequeño proyecto de copia de seguridad para ver cómo funciona):
- Cambie el nombre de sus capas QGIS en la tabla de contenido, estos nuevos nombres se tomarán para sobrescribir sus nombres de Shapefiles correspondientes.
- Guarde su proyecto QGIS en la misma carpeta que el script rename_shapefiles.py
- Abra la consola QGIS Python.
Copie el siguiente fragmento de código allí:
from rename_shapes import RenameShapefiles
for lyr in iface.mapCanvas().layers():
rn = RenameShapefiles( iface, lyr )
rn.doSave()
¡Eso es! Lo probé en GNU / Linux, QGIS 2.6. El orden de las capas en el ToC varía después de ejecutar el código.
Avísame si tienes algún problema.
Si necesita preservar el orden de las capas, haga una nueva pregunta, tal vez pueda verla :).