Talk:LNNBot:修订间差异
外观
ColorfulGalaxy在话题“Shidinn telegraphic cipher”中的最新留言:2025年9月25日 (星期四)
Translated Batch(留言 | 贡献) |
撤销Translated Batch(讨论)的修订版本41991 标签:撤销 |
||
| 第220行: | 第220行: | ||
diffn=[0,4,7,10,14] | diffn=[0,4,7,10,14] | ||
ejn()</syntaxhighlight> | ejn()</syntaxhighlight> | ||
2025年9月26日 (五) 07:31的版本
Shidinn telegraphic cipher
Raymond's Shidinn telegraphic cipher is celebrating its fifth anniversary this year.
This Python program converts Shidinn alphabet text to LNNBot musicjs sequence.
It may still need to be corrected. ColorfulGalaxy(留言) 2025年9月25日 (四) 18:17 (CST)
import sys
c=' '
rootn=-12
diffn=[]
letters="bpmwjqxynzDsrHNldtgkh45vF7BcfuaoeEAYL62T83V1i"
def printn(n,length=1):
print("note(",n,",",length,");")
def restn(length=1):
print("rest(",length,");")
def ejn():
global diffn,rootn
while len(diffn)>0:
printn(rootn+diffn[0],1)
diffn.pop(0)
if len(diffn)>0:
restn(-1)
rootn=-12
diffn=[]
def h14():
print("note(-999,1);") # To be fixed
def b27():
global diffn,rootn
rootn=-12
diffn=[0,2,3,5,7,8,10,12,14,15,17,19,20,22]
ejn()
def h21():
global diffn,rootn
rootn=-12
diffn=[1,4,6,9,11,13,16,18,21,23,25,28,30]
ejn()
def t18():
global diffn,rootn
rootn=-12
diffn=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]
ejn()
rootn=-12
diffn=[0]
ejn()
rootn=-12
diffn=[0]
ejn()
rootn=-12
diffn=[0]
ejn()
h14()
while(c!=''):
c=sys.stdin.read(1)
if(c==''):
ejn();
b27();
b27();
h21();
h21();
t18();
t18();
h14();
elif(c in (' ',chr(10),chr(13))): # Space bar
ejn()
restn(1)
elif(c=='b'): # Light
ejn()
rootn=2
diffn=[0,4,7]
elif(c=='p'): # House
ejn()
rootn=1
diffn=[0,4,7]
elif(c=='m'): # Door
diffn=[0,3,7]
ejn()
elif(c=='w'): # Mountain
diffn=[0,4,7,10,15]
ejn()
elif(c=='j'): # Hair
diffn=[0,4,7,10,14,17]
ejn()
elif(c=='q'): # Carriage & Boat
diffn=[0,3,7,10,14,17]
ejn()
elif(c=='x'): # Fire & Leather
diffn=[0,4,7,10,13]
ejn()
elif(c=='y'): # Flower
diffn=[0,4,7,10,14,18]
ejn()
elif(c=='n'):
diffn=[0,3,7,10]
ejn()
elif(c=='z'):
diffn=[0,4,7,10,20]
ejn()
elif(c=='D'):
diffn=[0,4,8,10]
ejn()
elif(c=='s'):
ejn()
rootn=4
diffn=[0,4,7]
elif(c=='r'):
diffn=[0,3,7,10,14,17,21]
ejn()
elif(c=='H'):
ejn()
h14() # This function is buggy.
elif(c=='N'):
diffn=[0,3,7,10,14]
ejn()
elif(c=='l'):
diffn=[0,2,7]
ejn()
elif(c=='d'):
ejn()
rootn=5
diffn=[0,4,7]
elif(c=='t'):
ejn()
t18()
elif(c=='g'):
ejn()
rootn=10
diffn=[0,4,7]
elif(c=='k'):
diffn=[0,4,7,10,14,17,21]
ejn()
elif(c=='h'):
ejn()
h21()
elif(c=='4'):
diffn=[0,5,7]
ejn()
elif(c=='5'):
diffn=[0,7]
ejn()
elif(c=='v'):
diffn=[0,4,6]
ejn()
elif(c=='F'):
ejn()
rootn=9
diffn=[0,4,7]
elif(c=='7'):
diffn=[0,4,7,10]
ejn()
elif(c=='B'):
ejn()
b27()
elif(c=='c'):
ejn()
rootn=3
diffn=[0,4,7]
elif(c=='f'):
ejn()
rootn=8
diffn=[0,4,7]
elif(c=='u'):
diffn=[0,4,8]
ejn()
elif(c=='a'):
ejn()
rootn=0
diffn=[0,4,7]
elif(c=='o'):
diffn=[0,3,6,9]
ejn()
elif(c=='e'):
ejn()
rootn=7
diffn=[0,4,7]
elif(c=='E'):
ejn()
rootn=6
diffn=[0,4,7]
elif(c=='A'):
ejn()
rootn=11
diffn=[0,4,7]
elif(c=='Y'):
diffn=[0,3,6,11]
ejn()
elif(c=='L'):
diffn=[0,7,10]
ejn()
elif(c=='6'):
diffn=[0,4,7,9]
ejn()
elif(c=='2'):
diffn=[0,4,7,14]
ejn()
elif(c=='8'):
diffn=[0,4,7,12] #C I could not find any reliable source about the C8 chord
ejn()
elif(c=='3'):
diffn=[0,4]
ejn()
elif(c=='V'):
diffn=[0,4,7,11]
ejn()
elif(c=='1'):
diffn=[0]
ejn()
elif(c=='i'):
diffn=[0,4,7,10,14]
ejn()