mirror of
https://github.com/chenasraf/nextcloud-app-template.git
synced 2026-05-18 01:29:09 +00:00
chore: update rename instructions
This commit is contained in:
@@ -1,28 +1,28 @@
|
||||
#!/usr/bin/env bash
|
||||
# Replace template names in all text files under the current directory.
|
||||
# Prompts for target names and replaces these sources:
|
||||
# $SOURCE_KEBAB -> <kebab-case input>
|
||||
# $SOURCE_PACKAGE -> <kebab-case input>
|
||||
# $SOURCE_PASCAL -> <PascalCase input>
|
||||
# $SOURCE_USER -> <username input> (default: your-user)
|
||||
# $SOURCE_FULL -> <full-name input> (default: Your Name)
|
||||
#
|
||||
# Defaults (override via env before running):
|
||||
# SOURCE_KEBAB=nextcloudapptemplate
|
||||
# SOURCE_PACKAGE=nextcloudapptemplate
|
||||
# SOURCE_PASCAL=NextcloudAppTemplate
|
||||
# SOURCE_USER=your-user
|
||||
# SOURCE_FULL=Your Name
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
SOURCE_KEBAB="${SOURCE_KEBAB:-nextcloudapptemplate}"
|
||||
SOURCE_PACKAGE="${SOURCE_PACKAGE:-nextcloudapptemplate}"
|
||||
SOURCE_PASCAL="${SOURCE_PASCAL:-NextcloudAppTemplate}"
|
||||
SOURCE_USER="${SOURCE_USER:-your-user}"
|
||||
SOURCE_FULL="${SOURCE_FULL:-Your Name}"
|
||||
SOURCE_EMAIL="${SOURCE_EMAIL:-your@email.com}"
|
||||
SOURCE_WEBSITE="${SOURCE_WEBSITE:-https://your.website}"
|
||||
|
||||
printf "Enter kebab-case name (e.g., my-nextcloud-app): "
|
||||
IFS= read KEBAB
|
||||
printf "Enter package name (e.g., mynextcloudapp): "
|
||||
IFS= read PACKAGE
|
||||
printf "Enter PascalCase name (e.g., MyNextcloudApp): "
|
||||
IFS= read PASCAL
|
||||
printf "Enter username (e.g., myUsername): "
|
||||
@@ -34,13 +34,13 @@ IFS= read DEST_EMAIL
|
||||
printf "Enter website (e.g., https://mywebsite.com): "
|
||||
IFS= read DEST_WEBSITE
|
||||
|
||||
if [[ -z "${KEBAB}" || -z "${PASCAL}" || -z "${DEST_USER}" || -z "${DEST_FULL}" ]]; then
|
||||
if [[ -z "${PACKAGE}" || -z "${PASCAL}" || -z "${DEST_USER}" || -z "${DEST_FULL}" || -z "${DEST_EMAIL}" || -z "${DEST_WEBSITE}" ]]; then
|
||||
echo "All values are required." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Replacing:"
|
||||
echo " ${SOURCE_KEBAB} -> ${KEBAB}"
|
||||
echo " ${SOURCE_PACKAGE} -> ${PACKAGE}"
|
||||
echo " ${SOURCE_PASCAL} -> ${PASCAL}"
|
||||
echo " ${SOURCE_USER} -> ${DEST_USER}"
|
||||
echo " ${SOURCE_FULL} -> ${DEST_FULL}"
|
||||
@@ -71,7 +71,7 @@ done
|
||||
unset 'PRUNE_EXPR[${#PRUNE_EXPR[@]}-1]'
|
||||
|
||||
# Export for Perl
|
||||
export KEBAB PASCAL DEST_USER DEST_FULL SOURCE_KEBAB SOURCE_PASCAL SOURCE_USER SOURCE_FULL SOURCE_EMAIL DEST_EMAIL SOURCE_WEBSITE DEST_WEBSITE
|
||||
export PACKAGE PASCAL DEST_USER DEST_FULL SOURCE_PACKAGE SOURCE_PASCAL SOURCE_USER SOURCE_FULL SOURCE_EMAIL DEST_EMAIL SOURCE_WEBSITE DEST_WEBSITE
|
||||
|
||||
# Iterate files safely (null-delimited), skip binaries, replace in place with perl
|
||||
while IFS= read -r -d '' file; do
|
||||
@@ -86,14 +86,14 @@ while IFS= read -r -d '' file; do
|
||||
|
||||
perl -0777 -i.bak -pe '
|
||||
BEGIN {
|
||||
$src_k = $ENV{SOURCE_KEBAB};
|
||||
$src_k = $ENV{SOURCE_PACKAGE};
|
||||
$src_p = $ENV{SOURCE_PASCAL};
|
||||
$src_u = $ENV{SOURCE_USER};
|
||||
$src_f = $ENV{SOURCE_FULL};
|
||||
$src_e = $ENV{SOURCE_EMAIL};
|
||||
$src_w = $ENV{SOURCE_WEBSITE};
|
||||
|
||||
$dst_k = $ENV{KEBAB};
|
||||
$dst_k = $ENV{PACKAGE};
|
||||
$dst_p = $ENV{PASCAL};
|
||||
$dst_u = $ENV{DEST_USER};
|
||||
$dst_f = $ENV{DEST_FULL};
|
||||
|
||||
Reference in New Issue
Block a user