diff --git a/src/main/ipc/files.js b/src/main/ipc/files.js index 83ecd97..c249d03 100644 --- a/src/main/ipc/files.js +++ b/src/main/ipc/files.js @@ -95,7 +95,6 @@ function register() { ipcMain.handle('rename-files', async (_event, { folderPath, files, prefix, digits, postfix = '' }) => { const errors = []; const pad = (n) => String(n + 1).padStart(digits, '0'); - const suffix = postfix ? `_${postfix}` : ''; // 1단계: 임시 이름으로 이동 (충돌 방지) const tmpMap = []; @@ -114,7 +113,7 @@ function register() { // 2단계: 최종 이름으로 이동 const renamed = []; for (const { tmp, ext, idx } of tmpMap) { - const newName = `${prefix}_${pad(idx)}${suffix}${ext}`; + const newName = `${prefix}${pad(idx)}${postfix}${ext}`; const dest = path.join(folderPath, newName); try { fs.renameSync(tmp, dest); diff --git a/src/renderer/folder-controller.js b/src/renderer/folder-controller.js index 3ebe748..64a43d8 100644 --- a/src/renderer/folder-controller.js +++ b/src/renderer/folder-controller.js @@ -69,7 +69,7 @@ export function createFolderController({ setStatus(`${state.files.length}개 파일 로드됨`, true); const folderName = folder.replace(/\\/g, '/').split('/').pop(); - if (folderName) inputPrefix.value = folderName; + if (folderName) inputPrefix.value = `${folderName}_`; renderGrid(); updatePreview(); diff --git a/src/renderer/index.html b/src/renderer/index.html index 5fba393..6297e53 100644 --- a/src/renderer/index.html +++ b/src/renderer/index.html @@ -41,14 +41,12 @@
diff --git a/src/renderer/renderer.js b/src/renderer/renderer.js index aebf236..9df00a3 100644 --- a/src/renderer/renderer.js +++ b/src/renderer/renderer.js @@ -146,11 +146,10 @@ initKeyboardShortcuts({ // ── 포맷 미리보기 ───────────────────────────────── function updatePreview() { - const prefix = inputPrefix.value.trim() || 'photo'; + const prefix = inputPrefix.value.trim() || 'photo_'; const digits = clampDigits(inputDigits.value); const postfix = inputPostfix.value.trim(); const ext = state.files.length ? getExtension(state.files[0].name) : 'jpg'; - const suffix = postfix ? `_${postfix}` : ''; - previewName.textContent = `${prefix}_${'1'.padStart(digits, '0')}${suffix}.${ext}`; + previewName.textContent = `${prefix}${'1'.padStart(digits, '0')}${postfix}.${ext}`; updateNewNameLabels(); } diff --git a/src/renderer/utils/file-names.js b/src/renderer/utils/file-names.js index 95e7096..26dd6a5 100644 --- a/src/renderer/utils/file-names.js +++ b/src/renderer/utils/file-names.js @@ -9,14 +9,12 @@ export function clampDigits(value, fallback = 3) { export function buildSequentialName(fileName, index, { prefix, digits, postfix = '' }) { const ext = getExtension(fileName); - const sequence = `${prefix}_${String(index + 1).padStart(digits, '0')}`; - const suffix = postfix ? `_${postfix}` : ''; - return `${sequence}${suffix}.${ext}`; + return `${prefix}${String(index + 1).padStart(digits, '0')}${postfix}.${ext}`; } export function getNameFormat(prefixInput, digitsInput, digitsFallback = 3, postfixInput = null) { return { - prefix: prefixInput.value.trim() || 'photo', + prefix: prefixInput.value.trim() || 'photo_', digits: clampDigits(digitsInput.value, digitsFallback), postfix: postfixInput?.value.trim() || '', };