Skip to content

Commit ba8a6bf

Browse files
committed
修复音乐名称和歌手信息格式化(#2733
1 parent 2cf84a7 commit ba8a6bf

8 files changed

Lines changed: 17 additions & 10 deletions

File tree

publish/changeLog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
- 修复桌面歌词的 鼠标移入歌词区域时提高透明度 设置不稳定的问题(#2679, @Little100
1111
- 修复某些情况下可能播放没有声音的问题(#2693
1212
- 修复 tx 搜索结果显示异常的问题(#2753
13+
- 修复音乐名称和歌手信息格式化问题(#2733
1314

1415
### 其他
1516

src/common/utils/tools.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,3 +148,7 @@ export const clipFileNameLength = (name: string) => {
148148
return name.length > MAX_FILE_NAME_LENGTH ? name.substring(0, MAX_FILE_NAME_LENGTH) : name
149149
}
150150

151+
export const formatMusicName = (format: string, name: string, singer: string) => {
152+
// return format.replace(/歌名|歌手/g, match => match === '歌名' ? name : singer)
153+
return format.replace('歌手', singer).replace('歌名', name)
154+
}

src/renderer/components/layout/PlayBar/FullWidthProgress.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ import {
6666
import { appSetting } from '@renderer/store/setting'
6767
import { togglePlay, playNext, playPrev } from '@renderer/core/player'
6868
import { LIST_IDS } from '@common/constants'
69+
import { formatMusicName } from '@renderer/utils'
6970
7071
export default {
7172
name: 'CorePlayBar',
@@ -112,7 +113,7 @@ export default {
112113
113114
const title = computed(() => {
114115
return musicInfo.name
115-
? appSetting['download.fileName'].replace('歌名', musicInfo.name).replace('歌手', musicInfo.singer)
116+
? formatMusicName(appSetting['download.fileName'], musicInfo.name, musicInfo.singer)
116117
: ''
117118
})
118119

src/renderer/components/layout/PlayBar/MiddleWidthProgress.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ import {
6666
import { appSetting } from '@renderer/store/setting'
6767
import { togglePlay, playNext, playPrev } from '@renderer/core/player'
6868
import { LIST_IDS } from '@common/constants'
69+
import { formatMusicName } from '@renderer/utils'
6970
7071
export default {
7172
name: 'CorePlayBar',
@@ -112,7 +113,7 @@ export default {
112113
113114
const title = computed(() => {
114115
return musicInfo.name
115-
? appSetting['download.fileName'].replace('歌名', musicInfo.name).replace('歌手', musicInfo.singer)
116+
? formatMusicName(appSetting['download.fileName'], musicInfo.name, musicInfo.singer)
116117
: ''
117118
})
118119

src/renderer/components/layout/PlayBar/MiniWidthProgress.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ import {
6868
import { appSetting } from '@renderer/store/setting'
6969
import { togglePlay, playNext, playPrev } from '@renderer/core/player'
7070
import { LIST_IDS } from '@common/constants'
71+
import { formatMusicName } from '@renderer/utils'
7172
7273
export default {
7374
name: 'CorePlayBar',
@@ -114,7 +115,7 @@ export default {
114115
115116
const title = computed(() => {
116117
return musicInfo.name
117-
? appSetting['download.fileName'].replace('歌名', musicInfo.name).replace('歌手', musicInfo.singer)
118+
? formatMusicName(appSetting['download.fileName'], musicInfo.name, musicInfo.singer)
118119
: ''
119120
})
120121

src/renderer/views/Download/index.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ import useTaskActions from './useTaskActions'
8080
import useMusicAdd from './useMusicAdd'
8181
import { downloadStatus } from '@renderer/store/download/state'
8282
import { appSetting } from '@renderer/store/setting'
83+
import { formatMusicName } from '@renderer/utils'
8384
8485
export default {
8586
name: 'Download',
@@ -203,7 +204,7 @@ export default {
203204
}
204205
205206
const getName = (downloadInfo) => {
206-
return appSetting['download.fileName'].replace('歌名', downloadInfo.metadata.musicInfo.name).replace('歌手', downloadInfo.metadata.musicInfo.singer)
207+
return formatMusicName(appSetting['download.fileName'], downloadInfo.metadata.musicInfo.name, downloadInfo.metadata.musicInfo.singer)
207208
}
208209
const getTypeName = (quality) => {
209210
return quality == 'flac24bit' ? 'FLAC Hires' : quality?.toUpperCase()

src/renderer/views/List/MusicList/useMusicActions.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { dialog } from '@renderer/plugins/Dialog'
55
import { useI18n } from '@renderer/plugins/i18n'
66
import { removeListMusics } from '@renderer/store/list/action'
77
import { appSetting } from '@renderer/store/setting'
8-
import { toOldMusicInfo } from '@renderer/utils/index'
8+
import { formatMusicName, toOldMusicInfo } from '@renderer/utils/index'
99
import { addDislikeInfo, hasDislike } from '@renderer/core/dislikeList'
1010
import { playNext } from '@renderer/core/player'
1111
import { playMusicInfo } from '@renderer/store/player/state'
@@ -34,7 +34,7 @@ export default ({ props, list, selectedList, removeAllSelect }) => {
3434

3535
const handleCopyName = index => {
3636
const minfo = list.value[index]
37-
clipboardWriteText(appSetting['download.fileName'].replace('歌名', minfo.name).replace('歌手', minfo.singer))
37+
clipboardWriteText(formatMusicName(appSetting['download.fileName'], minfo.name, minfo.singer))
3838
}
3939

4040
const handleDislikeMusic = async(index) => {

src/renderer/worker/download/utils.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { DOWNLOAD_STATUS, QUALITYS } from '@common/constants'
22
import { filterFileName } from '@common/utils/common'
33
import { buildLyrics } from './lrcTool'
44
import fs from 'fs'
5-
import { clipFileNameLength, clipNameLength } from '@common/utils/tools'
5+
import { clipFileNameLength, clipNameLength, formatMusicName } from '@common/utils/tools'
66

77
/**
88
* 保存歌词文件
@@ -91,9 +91,7 @@ export const createDownloadInfo = (musicInfo: LX.Music.MusicInfoOnline, type: LX
9191
ext,
9292
filePath: '',
9393
listId,
94-
fileName: filterFileName(`${clipFileNameLength(fileName
95-
.replace('歌名', musicInfo.name)
96-
.replace('歌手', clipNameLength(musicInfo.singer)))}.${ext}`),
94+
fileName: filterFileName(`${clipFileNameLength(formatMusicName(fileName, musicInfo.name, clipNameLength(musicInfo.singer)))}.${ext}`),
9795
},
9896
}
9997
// downloadInfo.metadata.filePath = joinPath(savePath, downloadInfo.metadata.fileName)

0 commit comments

Comments
 (0)