Add cbs non-underline variant

This commit is contained in:
kwaroran
2025-05-19 17:34:25 +09:00
parent efab44e4c1
commit 57568ed7bc

View File

@@ -842,6 +842,7 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
const chara = matcherArg.chara const chara = matcherArg.chara
switch(lowerCased){ switch(lowerCased){
case 'previous_char_chat': case 'previous_char_chat':
case 'previouscharchat':
case 'lastcharmessage':{ case 'lastcharmessage':{
const selchar = db.characters[get(selectedCharID)] const selchar = db.characters[get(selectedCharID)]
const chat = selchar.chats[selchar.chatPage] const chat = selchar.chats[selchar.chatPage]
@@ -855,6 +856,7 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
return chat.fmIndex === -1 ? selchar.firstMessage : selchar.alternateGreetings[chat.fmIndex] return chat.fmIndex === -1 ? selchar.firstMessage : selchar.alternateGreetings[chat.fmIndex]
} }
case 'previous_user_chat': case 'previous_user_chat':
case 'previoususerchat':
case 'lastusermessage':{ case 'lastusermessage':{
if(chatID !== -1){ if(chatID !== -1){
const selchar = db.characters[get(selectedCharID)] const selchar = db.characters[get(selectedCharID)]
@@ -897,7 +899,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
return getUserName() return getUserName()
} }
case 'personality': case 'personality':
case 'char_persona':{ case 'char_persona':
case 'charpersona': {
const argChara = chara const argChara = chara
const achara = (argChara && typeof(argChara) !== 'string') ? argChara : (db.characters[get(selectedCharID)]) const achara = (argChara && typeof(argChara) !== 'string') ? argChara : (db.characters[get(selectedCharID)])
if(achara.type === 'group'){ if(achara.type === 'group'){
@@ -906,7 +909,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
return risuChatParser(achara.personality, matcherArg) return risuChatParser(achara.personality, matcherArg)
} }
case 'description': case 'description':
case 'char_desc':{ case 'char_desc':
case 'chardesc':{
const argChara = chara const argChara = chara
const achara = (argChara && typeof(argChara) !== 'string') ? argChara : (db.characters[get(selectedCharID)]) const achara = (argChara && typeof(argChara) !== 'string') ? argChara : (db.characters[get(selectedCharID)])
if(achara.type === 'group'){ if(achara.type === 'group'){
@@ -923,7 +927,9 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
return risuChatParser(achara.scenario, matcherArg) return risuChatParser(achara.scenario, matcherArg)
} }
case 'example_dialogue': case 'example_dialogue':
case 'example_message':{ case 'example_message':
case 'exampledialogue':
case 'examplemessage':{
const argChara = chara const argChara = chara
const achara = (argChara && typeof(argChara) !== 'string') ? argChara : (db.characters[get(selectedCharID)]) const achara = (argChara && typeof(argChara) !== 'string') ? argChara : (db.characters[get(selectedCharID)])
if(achara.type === 'group'){ if(achara.type === 'group'){
@@ -932,15 +938,19 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
return risuChatParser(achara.exampleMessage, matcherArg) return risuChatParser(achara.exampleMessage, matcherArg)
} }
case 'persona': case 'persona':
case 'user_persona':{ case 'user_persona':
case 'userpersona':{
return risuChatParser(getPersonaPrompt(), matcherArg) return risuChatParser(getPersonaPrompt(), matcherArg)
} }
case 'main_prompt': case 'main_prompt':
case 'system_prompt':{ case 'system_prompt':
case 'systemprompt':
case 'mainprompt':{
return risuChatParser(db.mainPrompt, matcherArg) return risuChatParser(db.mainPrompt, matcherArg)
} }
case 'lorebook': case 'lorebook':
case 'world_info':{ case 'world_info':
case 'worldinfo':{
const argChara = chara const argChara = chara
const achara = (argChara && typeof(argChara) !== 'string') ? argChara : (db.characters[get(selectedCharID)]) const achara = (argChara && typeof(argChara) !== 'string') ? argChara : (db.characters[get(selectedCharID)])
const selchar = db.characters[get(selectedCharID)] const selchar = db.characters[get(selectedCharID)]
@@ -967,7 +977,9 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
} }
case 'user_history': case 'user_history':
case 'user_messages':{ case 'user_messages':
case 'userhistory':
case 'usermessages':{
const selchar = db.characters[get(selectedCharID)] const selchar = db.characters[get(selectedCharID)]
const chat = selchar.chats[selchar.chatPage] const chat = selchar.chats[selchar.chatPage]
return makeArray(chat.message.filter((v) => { return makeArray(chat.message.filter((v) => {
@@ -979,7 +991,9 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
})) }))
} }
case 'char_history': case 'char_history':
case 'char_messages':{ case 'char_messages':
case 'charhistory':
case 'charmessages':{
const selchar = db.characters[get(selectedCharID)] const selchar = db.characters[get(selectedCharID)]
const chat = selchar.chats[selchar.chatPage] const chat = selchar.chats[selchar.chatPage]
return makeArray(chat.message.filter((v) => { return makeArray(chat.message.filter((v) => {
@@ -996,13 +1010,18 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
} }
case 'ujb': case 'ujb':
case 'global_note': case 'global_note':
case 'system_note':{ case 'system_note':
case 'globalnote':
case 'systemnote':{
return risuChatParser(db.globalNote, matcherArg) return risuChatParser(db.globalNote, matcherArg)
} }
case 'chat_index':{ case 'chat_index':
case 'chatindex':{
return chatID.toString() return chatID.toString()
} }
case 'first_msg_index':{ case 'first_msg_index':
case 'firstmessageindex':
case 'firstmsgindex':{
const selchar = db.characters[get(selectedCharID)] const selchar = db.characters[get(selectedCharID)]
const chat = selchar.chats[selchar.chatPage] const chat = selchar.chats[selchar.chatPage]
return chat.fmIndex.toString() return chat.fmIndex.toString()
@@ -1011,7 +1030,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
case 'none':{ case 'none':{
return '' return ''
} }
case 'message_time':{ case 'message_time':
case 'messagetime':{
if(matcherArg.tokenizeAccurate){ if(matcherArg.tokenizeAccurate){
return `00:00:00` return `00:00:00`
} }
@@ -1029,7 +1049,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
//output time in format like 10:30 AM //output time in format like 10:30 AM
return date.toLocaleTimeString() return date.toLocaleTimeString()
} }
case 'message_date':{ case 'message_date':
case 'messagedate':{
if(matcherArg.tokenizeAccurate){ if(matcherArg.tokenizeAccurate){
return `00:00:00` return `00:00:00`
} }
@@ -1046,7 +1067,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
//output date in format like Aug 23, 2021 //output date in format like Aug 23, 2021
return date.toLocaleDateString() return date.toLocaleDateString()
} }
case 'message_unixtime_array':{ case 'message_unixtime_array':
case 'messageunixtimearray':{
const selchar = db.characters[get(selectedCharID)] const selchar = db.characters[get(selectedCharID)]
const chat = selchar.chats[selchar.chatPage] const chat = selchar.chats[selchar.chatPage]
return makeArray(chat.message.map((f) => { return makeArray(chat.message.map((f) => {
@@ -1073,7 +1095,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
const now = new Date() const now = new Date()
return `${now.getUTCFullYear()}-${now.getUTCMonth() + 1}-${now.getUTCDate()}` return `${now.getUTCFullYear()}-${now.getUTCMonth() + 1}-${now.getUTCDate()}`
} }
case 'message_idle_duration':{ case 'message_idle_duration':
case 'messageidleduration':{
if(matcherArg.tokenizeAccurate){ if(matcherArg.tokenizeAccurate){
return `00:00:00` return `00:00:00`
} }
@@ -1126,7 +1149,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
//output, like 1:30:00 //output, like 1:30:00
return hours.toString() + ':' + minutes.toString().padStart(2,'0') + ':' + seconds.toString().padStart(2,'0') return hours.toString() + ':' + minutes.toString().padStart(2,'0') + ':' + seconds.toString().padStart(2,'0')
} }
case 'idle_duration':{ case 'idle_duration':
case 'idleduration':{
if(matcherArg.tokenizeAccurate){ if(matcherArg.tokenizeAccurate){
return `00:00:00` return `00:00:00`
} }
@@ -1232,13 +1256,17 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
return f[0] return f[0]
})) }))
} }
case 'prefill_supported':{ case 'prefill_supported':
case 'prefillsupported':
case 'prefill':{
return db.aiModel.startsWith('claude') ? '1' : '0' return db.aiModel.startsWith('claude') ? '1' : '0'
} }
case 'screen_width':{ case 'screen_width':
case 'screenwidth':{
return get(SizeStore).w.toString() return get(SizeStore).w.toString()
} }
case 'screen_height':{ case 'screen_height':
case 'screenheight':{
return get(SizeStore).h.toString() return get(SizeStore).h.toString()
} }
case 'cbr': case 'cbr':
@@ -1589,7 +1617,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
} }
return dateTimeFormat(arra[1],t) return dateTimeFormat(arra[1],t)
} }
case 'module_enabled':{ case 'module_enabled':
case 'moduleenabled':{
const modules = getModules() const modules = getModules()
for(const module of modules){ for(const module of modules){
if(module.namespace === arra[1]){ if(module.namespace === arra[1]){
@@ -1598,7 +1627,8 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
} }
return '0' return '0'
} }
case 'module_assetlist':{ case 'module_assetlist':
case 'moduleassetlist':{
const module = getModules()?.find((f) => { const module = getModules()?.find((f) => {
return f.namespace === arra[1] return f.namespace === arra[1]
}) })
@@ -1700,6 +1730,14 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string
case 'unicodedecode':{ case 'unicodedecode':{
return String.fromCharCode(Number(arra[1])) return String.fromCharCode(Number(arra[1]))
} }
case 'u':
case 'unicodedecodefromhex':{
return String.fromCharCode(parseInt(arra[1], 16))
}
case 'ue':
case 'unicodeencodefromhex':{
return String.fromCharCode(parseInt(arra[1], 16))
}
case 'hash':{ case 'hash':{
return ((pickHashRand(0, arra[1]) * 10000000) + 1).toFixed(0).padStart(7, '0') return ((pickHashRand(0, arra[1]) * 10000000) + 1).toFixed(0).padStart(7, '0')
} }