WIP 화면 캡처에서 찾은 것: 85 멈춤 표시는 경고 아이콘 · 78 이름 일괄 창의 칸 이름을 짧게 (폭 412 일본어 잘림) (검토 대기)
- 85: 멈춘 (실패한) 작은 표시가 꽉 찬 진행 고리라 "끝났다" 로 보였다 → 빨간 경고 아이콘. - 78: 폭 412 · 일본어에서 "名前の形式 (拡張子は…" · "置き換える文字 (空なら…" 로 칸 이름이 잘렸다 → 이름은 "이름 틀" · "바꿀 글" 로 짧게, "확장자는 그대로" 는 아래 설명 줄 (2줄까지), "비우면 지움" 은 칸 안 안내로. - 내 판단 (화면 캡처를 보고 고침, 동작은 같음). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>묶음6
parent
3b6d50f409
commit
dc8a5f0b56
|
|
@ -374,6 +374,7 @@
|
|||
"ZIP 이 있는 폴더로": "To the ZIP's folder",
|
||||
"ZIP 이름": "ZIP name",
|
||||
"[N] 원래 이름 · [C] 번호 예: Show S01E[C]": "[N] original name · [C] counter e.g. Show S01E[C]",
|
||||
"[N] 원래 이름 · [C] 번호 · 확장자는 그대로 예: Show S01E[C]": "[N] original name · [C] counter · extension kept e.g. Show S01E[C]",
|
||||
"[서버 설정 고치기] 에서 비밀번호를 넣으면 이 기기의 안전 저장소에 남아 다음부터는 다시 넣지 않아도 됩니다.": "Enter the password in [Edit server settings]. It is kept in this device's secure storage, so you won't need to enter it again.",
|
||||
"[서버 설정 고치기] 에서 아이디 · 비밀번호를 확인하세요.": "Check the user name and password in [Edit server settings].",
|
||||
"[허용] 을 누르면 Android 설정이 열립니다. JJ_MKVMaker 를 허용하고 돌아오면, 읽지 못했던 동영상을 저절로 다시 분석합니다.": "Tap [Allow] to open Android settings. After you allow JJ_MKVMaker and come back, videos that couldn't be read are analyzed again automatically.",
|
||||
|
|
@ -1131,6 +1132,7 @@
|
|||
"바꾸는 정도 {0}%": "Change amount {0}%",
|
||||
"바꾸면 바로 저장됩니다": "Saved automatically",
|
||||
"바꾼 것이 없습니다 (원본 그대로)": "Nothing changed (original as is)",
|
||||
"바꿀 글": "Replace with",
|
||||
"바꿀 글 (비우면 지움)": "Replace with (empty = remove)",
|
||||
"바뀌는 것 {0}개": "{0} will change",
|
||||
"바뀌는 것 없음 (양쪽이 같습니다)": "Nothing to change (both sides are the same)",
|
||||
|
|
@ -1304,6 +1306,7 @@
|
|||
"비어 있는 폴더": "Empty folder",
|
||||
"비어 있는 폴더입니다.\n위의 [즐겨찾기 추가] · [새 폴더] 를 누르거나, 즐겨찾기를 왼쪽 폴더로 끌어다 놓으세요.": "This folder is empty.\nPress [Add bookmark] · [New folder] above, or drag bookmarks onto a folder on the left.",
|
||||
"비어 있음": "Empty",
|
||||
"비우면 지움": "Empty = remove",
|
||||
"빈 이름": "Empty name",
|
||||
"빈 폴더 {0}개 지움": "Deleted {0} empty folders",
|
||||
"빈 폴더 그대로": "Leave empty folders",
|
||||
|
|
@ -1855,6 +1858,7 @@
|
|||
"이름 바꾸기 · 이동": "Rename · move",
|
||||
"이름 변경": "Rename",
|
||||
"이름 일괄 바꾸기 · {0}개": "Batch rename · {0} items",
|
||||
"이름 틀": "Name pattern",
|
||||
"이름 틀 (확장자는 그대로)": "Name pattern (extension kept)",
|
||||
"이름을 바꿀 수 없습니다: {0}": "Cannot rename: {0}",
|
||||
"이름을 바꿀 항목 하나를 고르세요.": "Choose one item to rename.",
|
||||
|
|
|
|||
|
|
@ -374,6 +374,7 @@
|
|||
"ZIP 이 있는 폴더로": "ZIP のあるフォルダーへ",
|
||||
"ZIP 이름": "ZIP の名前",
|
||||
"[N] 원래 이름 · [C] 번호 예: Show S01E[C]": "[N] 元の名前 · [C] 番号 例: Show S01E[C]",
|
||||
"[N] 원래 이름 · [C] 번호 · 확장자는 그대로 예: Show S01E[C]": "[N] 元の名前 · [C] 番号 · 拡張子はそのまま 例: Show S01E[C]",
|
||||
"[서버 설정 고치기] 에서 비밀번호를 넣으면 이 기기의 안전 저장소에 남아 다음부터는 다시 넣지 않아도 됩니다.": "[サーバー設定を修正] でパスワードを入力すると、この端末の安全な保存領域に残り、次回からは入力不要です。",
|
||||
"[서버 설정 고치기] 에서 아이디 · 비밀번호를 확인하세요.": "[サーバー設定を修正] でユーザー名・パスワードを確認してください。",
|
||||
"[허용] 을 누르면 Android 설정이 열립니다. JJ_MKVMaker 를 허용하고 돌아오면, 읽지 못했던 동영상을 저절로 다시 분석합니다.": "[許可] を押すと Android の設定が開きます。JJ_MKVMaker を許可して戻ると、読み取れなかった動画を自動的に再分析します。",
|
||||
|
|
@ -1131,6 +1132,7 @@
|
|||
"바꾸는 정도 {0}%": "変える度合い {0}%",
|
||||
"바꾸면 바로 저장됩니다": "変更するとすぐ保存されます",
|
||||
"바꾼 것이 없습니다 (원본 그대로)": "変更なし(元のまま)",
|
||||
"바꿀 글": "置き換える文字",
|
||||
"바꿀 글 (비우면 지움)": "置き換える文字 (空なら削除)",
|
||||
"바뀌는 것 {0}개": "変更されるもの {0} 件",
|
||||
"바뀌는 것 없음 (양쪽이 같습니다)": "変更なし (両方同じです)",
|
||||
|
|
@ -1304,6 +1306,7 @@
|
|||
"비어 있는 폴더": "空のフォルダー",
|
||||
"비어 있는 폴더입니다.\n위의 [즐겨찾기 추가] · [새 폴더] 를 누르거나, 즐겨찾기를 왼쪽 폴더로 끌어다 놓으세요.": "空のフォルダーです。\n上の[ブックマーク追加]・[新しいフォルダー]を押すか、ブックマークを左のフォルダーにドラッグしてください。",
|
||||
"비어 있음": "空",
|
||||
"비우면 지움": "空なら削除",
|
||||
"빈 이름": "空の名前",
|
||||
"빈 폴더 {0}개 지움": "空フォルダー {0} 個を削除",
|
||||
"빈 폴더 그대로": "空フォルダーはそのまま",
|
||||
|
|
@ -1855,6 +1858,7 @@
|
|||
"이름 바꾸기 · 이동": "名前の変更・移動",
|
||||
"이름 변경": "名前の変更",
|
||||
"이름 일괄 바꾸기 · {0}개": "名前の一括変更 · {0} 件",
|
||||
"이름 틀": "名前の形式",
|
||||
"이름 틀 (확장자는 그대로)": "名前の形式 (拡張子はそのまま)",
|
||||
"이름을 바꿀 수 없습니다: {0}": "名前を変更できません: {0}",
|
||||
"이름을 바꿀 항목 하나를 고르세요.": "名前を変更する項目を 1 つ選んでください。",
|
||||
|
|
|
|||
|
|
@ -374,6 +374,7 @@
|
|||
"ZIP 이 있는 폴더로": "到 ZIP 所在文件夹",
|
||||
"ZIP 이름": "ZIP 名称",
|
||||
"[N] 원래 이름 · [C] 번호 예: Show S01E[C]": "[N] 原名称 · [C] 序号 例如: Show S01E[C]",
|
||||
"[N] 원래 이름 · [C] 번호 · 확장자는 그대로 예: Show S01E[C]": "[N] 原名称 · [C] 序号 · 保留扩展名 例如: Show S01E[C]",
|
||||
"[서버 설정 고치기] 에서 비밀번호를 넣으면 이 기기의 안전 저장소에 남아 다음부터는 다시 넣지 않아도 됩니다.": "在 [修改服务器设置] 中输入密码后会保存在本设备的安全存储中,以后无需再次输入。",
|
||||
"[서버 설정 고치기] 에서 아이디 · 비밀번호를 확인하세요.": "请在 [修改服务器设置] 中检查用户名和密码。",
|
||||
"[허용] 을 누르면 Android 설정이 열립니다. JJ_MKVMaker 를 허용하고 돌아오면, 읽지 못했던 동영상을 저절로 다시 분석합니다.": "点按 [允许] 将打开 Android 设置。允许 JJ_MKVMaker 后返回,无法读取的视频会自动重新分析。",
|
||||
|
|
@ -1131,6 +1132,7 @@
|
|||
"바꾸는 정도 {0}%": "改变程度 {0}%",
|
||||
"바꾸면 바로 저장됩니다": "更改后立即保存",
|
||||
"바꾼 것이 없습니다 (원본 그대로)": "未做更改(保持原样)",
|
||||
"바꿀 글": "替换为",
|
||||
"바꿀 글 (비우면 지움)": "替换为 (留空则删除)",
|
||||
"바뀌는 것 {0}개": "将更改 {0} 个",
|
||||
"바뀌는 것 없음 (양쪽이 같습니다)": "没有更改 (两边相同)",
|
||||
|
|
@ -1304,6 +1306,7 @@
|
|||
"비어 있는 폴더": "空文件夹",
|
||||
"비어 있는 폴더입니다.\n위의 [즐겨찾기 추가] · [새 폴더] 를 누르거나, 즐겨찾기를 왼쪽 폴더로 끌어다 놓으세요.": "这是空文件夹。\n请点击上方的[添加书签] · [新建文件夹],或将书签拖到左侧文件夹。",
|
||||
"비어 있음": "空",
|
||||
"비우면 지움": "留空则删除",
|
||||
"빈 이름": "空名称",
|
||||
"빈 폴더 {0}개 지움": "已删除 {0} 个空文件夹",
|
||||
"빈 폴더 그대로": "保留空文件夹",
|
||||
|
|
@ -1855,6 +1858,7 @@
|
|||
"이름 바꾸기 · 이동": "重命名 · 移动",
|
||||
"이름 변경": "重命名",
|
||||
"이름 일괄 바꾸기 · {0}개": "批量重命名 · {0} 项",
|
||||
"이름 틀": "名称模式",
|
||||
"이름 틀 (확장자는 그대로)": "名称模式 (保留扩展名)",
|
||||
"이름을 바꿀 수 없습니다: {0}": "无法重命名: {0}",
|
||||
"이름을 바꿀 항목 하나를 고르세요.": "请选择一个要重命名的项目。",
|
||||
|
|
|
|||
|
|
@ -143,8 +143,10 @@ class _BatchRenameDialogState extends State<_BatchRenameDialog> {
|
|||
controller: _template,
|
||||
enabled: !_running,
|
||||
decoration: InputDecoration(
|
||||
labelText: tr('이름 틀 (확장자는 그대로)'),
|
||||
helperText: tr('[N] 원래 이름 · [C] 번호 예: Show S01E[C]'),
|
||||
// 폭 412 에서 긴 이름이 잘려 (일본어) 이름은 짧게, 설명은 아래 줄에
|
||||
labelText: tr('이름 틀'),
|
||||
helperText: tr('[N] 원래 이름 · [C] 번호 · 확장자는 그대로 예: Show S01E[C]'),
|
||||
helperMaxLines: 2,
|
||||
isDense: true,
|
||||
),
|
||||
onChanged: (_) => setState(() {}),
|
||||
|
|
@ -187,7 +189,7 @@ class _BatchRenameDialogState extends State<_BatchRenameDialog> {
|
|||
child: TextField(
|
||||
controller: _replace,
|
||||
enabled: !_running,
|
||||
decoration: InputDecoration(labelText: tr('바꿀 글 (비우면 지움)'), isDense: true),
|
||||
decoration: InputDecoration(labelText: tr('바꿀 글'), hintText: tr('비우면 지움'), isDense: true),
|
||||
onChanged: (_) => setState(() {}),
|
||||
),
|
||||
),
|
||||
|
|
|
|||
|
|
@ -4739,11 +4739,15 @@ class TransferProgressChip extends StatelessWidget {
|
|||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8),
|
||||
child: Row(mainAxisSize: MainAxisSize.min, children: [
|
||||
SizedBox(
|
||||
width: 14,
|
||||
height: 14,
|
||||
child: CircularProgressIndicator(strokeWidth: 2, value: running == 0 ? 1 : (percent == null ? null : percent! / 100)),
|
||||
),
|
||||
// 멈춤은 진행 고리 대신 경고 표시 (꽉 찬 고리는 "끝났다" 로 보였다)
|
||||
if (failed)
|
||||
const Icon(Icons.error_outline, size: 16, color: JjColors.danger)
|
||||
else
|
||||
SizedBox(
|
||||
width: 14,
|
||||
height: 14,
|
||||
child: CircularProgressIndicator(strokeWidth: 2, value: running == 0 ? 1 : (percent == null ? null : percent! / 100)),
|
||||
),
|
||||
const SizedBox(width: 8),
|
||||
Text(
|
||||
failed
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ void main() {
|
|||
expect(find.text('이름 일괄 바꾸기 · 2개'), findsOneWidget);
|
||||
expect(find.text('바뀌는 것 0개'), findsOneWidget);
|
||||
|
||||
await tester.enterText(find.widgetWithText(TextField, '이름 틀 (확장자는 그대로)'), 'Show [C]');
|
||||
await tester.enterText(find.widgetWithText(TextField, '이름 틀'), 'Show [C]');
|
||||
await tester.pump();
|
||||
// 첫 번째가 Show 01.mkv - 고르지 않은 파일과 겹친다
|
||||
expect(find.textContaining('같은 이름이 이미 있음'), findsOneWidget);
|
||||
|
|
|
|||
|
|
@ -887,7 +887,7 @@ void main() {
|
|||
await act(tester, () => tester.tap(markOf('b.txt')));
|
||||
await act(tester, () => tester.tap(find.text('이름 변경').first));
|
||||
await settle(tester, () => find.text('바뀌는 것 0개').evaluate().isNotEmpty);
|
||||
await tester.enterText(find.widgetWithText(TextField, '이름 틀 (확장자는 그대로)'), 'Ep[C]');
|
||||
await tester.enterText(find.widgetWithText(TextField, '이름 틀'), 'Ep[C]');
|
||||
await tester.pump();
|
||||
await act(tester, () => tester.tap(find.widgetWithText(FilledButton, '바꾸기 (2개)')));
|
||||
// 알림은 목록을 다시 읽은 뒤에 뜬다 - 알림까지 기다린다 (PC 가 바쁠 때 한 번 흔들림)
|
||||
|
|
|
|||
Loading…
Reference in New Issue