refactor_fcn_name

Change the name of a function called in your m-files and optionally move it too.

Vous suivez désormais cette soumission

refactor the name of a function, changing all references to the function name in the path and moving the function file to the new named file

Syntax

refactor_fcn_name(fcnname, newfcnname)
refactor_fcn_name(fcnname, newfcnname, topdir)
refactor_fcn_name(fcnname, newfcnname, topdir, domove)

Description

refactor_fcn_name(fcnname, newfcnname) finds all uses of the function name in fcnname and replaces it with the string in newfcnname in the entire matlab path. The function must be function in an m-file on the Matlab path. By default the mfile containing the fuction is also then renamed to the new name.

refactor_fcn_name(fcnname, newfcnname, topdir) performs the same action but searching the folder provided in 'topdir' and all it's subdirectories rather than the entire Matlab path.

refactor_fcn_name(fcnname, newfcnname, topdir, domove) performs the same action but the 'domove' flag determines whether the function file is actually moved or not. If this evaluates to true the file is moved to the mfile with the new name, if false nothing is moved.

This function requires my other file exchange contributions 'regexprepfile' and 'samesize':

https://www.mathworks.co.uk/matlabcentral/fileexchange/43396-regexprepfile

https://www.mathworks.co.uk/matlabcentral/fileexchange/36636-samesize

Details:

The refactoring is done by performing a regexprep in the files using the simple regex:

\<fcnname\>

Citation pour cette source

Richard Crozier (2026). refactor_fcn_name (https://fr.mathworks.com/matlabcentral/fileexchange/43441-refactor_fcn_name), MATLAB Central File Exchange. Extrait(e) le .

Remerciements

Inspiré par : samesize, regexprepfile

Informations générales

Compatibilité avec les versions de MATLAB

  • Compatible avec toutes les versions

Plateformes compatibles

  • Windows
  • macOS
  • Linux
Version Publié le Notes de version Action
1.1.0.0

Added missing path2cell subfunction

1.0.0.0