poner - Renombrar archivo en PHPStorm sin refactorizar
poner comentarios en phpstorm (4)
¿Cómo puedo cambiar rápidamente el nombre de un archivo sin refactorizar en PHPStorm? Incluso después de que acabo de crear el archivo, PHPStorm tarda mucho tiempo en buscar en mis archivos para su uso.
El valor predeterminado es Shift-F6 . Para no refactorizar, desactive las casillas de verificación en la ventana emergente.
Quería usar F2 para cambiar el nombre de archivo como Windows predeterminado.
Puedes hacer un atajo para F2 . Ir:
- Expediente
- Ajustes
- Mapa de teclas
- Buscar "renombrar"
- Haga doble clic en "Refactor -> Renombrar"
- Haga clic en "Atajo de teclado"
- Presiona F2
- De acuerdo
EDITAR
Si no funciona inmediatamente, reinicie PHPStorm.
Esto funcionará para usuarios de linux.
Depende de zenity
, así que primero compruebe si está instalado en su sistema,
ejecutar en consola: zenity --version
Si 3.18.1.1
algo así como 3.18.1.1
- entonces está bien.
Cree el archivo idea-rename.sh
con el contenido a continuación:
#!/usr/bin/env bash
FileDir="$1"
FileName="$2"
NewFileName="$(zenity --entry --title "Rename ${FileName}" --text "Please enter new name" --entry-text "${FileName}" --ok-label="Rename" 2>/dev/null)"
if [[ "${NewFileName}" != "" ]]; then
if [[ -f "${FileDir}/${FileName}" ]]; then
path="${FileDir}"
name="${NewFileName}"
if [[ "${NewFileName}" == *"/"* ]]; then
IFS=''/'' read -ra newDirs <<< "$NewFileName"
IFS=''/'' read -ra dirs <<< "$FileDir"
last=$((${#newDirs[@]} - 1))
path=""
name="${newDirs[$last]}"
unset ''newDirs[last]''
if [[ "${NewFileName}" == *"./"* ]]; then
for i in "${!newDirs[@]}"; do
dir="${newDirs[i]}"
if [[ "$dir" == ".." ]]; then
unset ''newDirs[i]''
j=$i
while [ $j -ge 0 ]; do
j=$(($j-1))
if [ $j -lt 0 ]; then
for (( k=${#dirs[@]}-1 ; k>=0 ; k-- )); do
if [[ "${dirs[k]}" ]]; then
echo ''dirs[k]''
unset ''dirs[k]''
break
fi
done
elif [[ "${newDirs[j]}" ]]; then
echo ''newDirs[j]''
unset ''newDirs[j]''
break
fi
done
elif [[ "$dir" == "." ]]; then
unset ''newDirs[i]''
fi
done
fi
for dir in "${dirs[@]}"; do
if [[ "$dir" ]]; then
path="${path}/${dir}"
if [[ ! -d "$path" ]]; then
mkdir -m 0777 "$path"
fi
fi
done
for dir in "${newDirs[@]}"; do
if [[ "$dir" ]]; then
path="${path}/${dir}"
if [[ ! -d "$path" ]]; then
mkdir -m 0777 "$path"
fi
fi
done
fi
if [[ ! -f "${FileDir}/${NewFileName}" ]]; then
mv "${FileDir}/${FileName}" "${path}/${name}"
fi
fi
fi
Abra su Settings
> Tools
> External Tools
, haga clic en
y rellene el formulario de la siguiente manera
Nombre: Rename
Grupo: File
Programa: /bin/bash
Parámetros: /path/to/idea-rename.sh $FileDir$ $FileName$
Directorio de trabajo: $ProjectFileDir$
Haga clic en Ok
, Apply
Después de eso puedes ver un nuevo elemento en tu menú de archivo
Al hacer clic en rename
se abrirá el diálogo.
Después de cambiar el nombre, en algunos casos, phpstorm no sincroniza archivos, por lo que en la ruta donde se encuentra su archivo debe hacer clic en el menú de archivo "Sincronizar ''ruta''"
Mi técnica para renombrar archivos rápidamente es hacer un solo clic en el nombre del archivo y presionar Shift-F6 . Se abre un cuadro de diálogo y puede escribir inmediatamente el nuevo nombre del archivo y presionar regresar / ingresar para completar el cambio de nombre.
Encuentro esta técnica intuitiva porque no tiene que mover el mouse a la ventana de diálogo, escribir el nuevo nombre o hacer clic en cualquier cosa para confirmar. Mientras todo lo que esté haciendo sea un cambio de nombre que sepa que es seguro, simplemente escríbalo y listo.
También me gusta esta función porque todavía tiene la opción de previsualizar rápidamente los cambios antes de que se realicen. Y en aquellas ocasiones en que está refactorizando algo con posibles implicaciones para el resto de su aplicación, aún puede habilitar "Buscar referencias" y / o "Buscar en comentarios y cadenas" para obtener toda la enchilada. (Tengo esas opciones deshabilitadas por defecto.)
Estoy de acuerdo con usted en que hacer clic con el botón derecho en el nombre del archivo, desplazarse hacia abajo hasta Refactor, seleccionar Cambiar nombre y luego ingresar el nuevo nombre es engorroso, especialmente si las comprobaciones de seguridad están habilitadas. Encuentro que los desarrolladores de PhpStorm parecen entender este tipo de problemas y generalmente han pensado en una "manera más rápida" para hacer las cosas también.
No puedes hacerlo sin refactorizar, aunque Refactor
| Rename
suele ser muy rápido y puede desactivar las opciones para buscar referencias.