+Tue November 13 2012 Shyouzou Sugitani <shy@users.sourceforge.jp>
+ * SakuraScriptの\8(WAV再生)を実装した.
+ * SakuraScriptの\8および\_vをSSTPで実行出来ないタグ
+ (lib/ninix/sstp.py内のPROHIBITED_TAGS)に追加した.
+
+Mon November 12 2012 Shyouzou Sugitani <shy@users.sourceforge.jp>
+ * SakuraScriptEnvの%*を実装した.
+
Fri November 9 2012 Shyouzou Sugitani <shy@users.sourceforge.jp>
* マウスイベントのOnMouseDragStart(マウスドラッグ開始)および
OnMouseDragEnd(マウスドラッグ終了)を実装した.
'uri', 'file://' + urllib.parse.quote(path))
self.audio_player.set_state(Gst.State.PLAYING)
+ def __yen_8(self, args):
+ if self.audio_player is None:
+ return
+ filename = self.expand_meta(args[0])
+ filename = get_normalized_path(filename)
+ basename, ext = os.path.splitext(filename)
+ ext = ext.lower()
+ if ext != b'.wav':
+ return
+ path = os.path.join(self.get_prefix(), b'ghost/master', filename)
+ if os.path.isfile(path):
+ self.audio_player.set_state(Gst.State.NULL)
+ self.audio_player.set_property(
+ 'uri', 'file://' + urllib.parse.quote(path))
+ self.audio_player.set_state(Gst.State.PLAYING)
+
def __yen_exclamation(self, args): ## FIXME
if not args:
return
r'\_m': __yen__m,
r'\_u': __yen__u,
r'\_v': __yen__v,
+ r'\8': __yen_8,
r'\!': __yen_exclamation,
r'\__c': __yen___c,
r'\__t': __yen___t,
(TOKEN_META, re.compile(r'%month|%day|%hour|%minute|%second|%username|'
r'%selfname2?|%keroname|%friendname|%songname|'
r'%screen(width|height)|%exh|%et|%m[szlchtep?]|'
- r'%dms|%j|%c|%wronghour')),
+ r'%dms|%j|%c|%wronghour|%\*')),
(TOKEN_NUMBER, re.compile(r'[0-9]+')),
(TOKEN_OPENED_SBRA, re.compile(r'\[')),
(TOKEN_CLOSED_SBRA, re.compile(r'\]')),
if lexeme == '%j':
argument = self.read_sbra_id()
text.append((TEXT_META, lexeme, argument))
+ elif lexeme == '%*':
+ if text:
+ self.script.append((SCRIPT_TEXT, tuple(text)))
+ text = []
+ self.script.append((SCRIPT_TAG, '\\!',
+ ((TEXT_STRING, '*'),)))
else:
text.append((TEXT_META, lexeme))
continue
entry_db, self.server)
self.server.request_handler = self # keep alive
- PROHIBITED_TAGS = [r'\j', r'\-', r'\+', r'\_+', r'\!']
+ PROHIBITED_TAGS = [r'\j', r'\-', r'\+', r'\_+', r'\!', r'\8', r'\_v']
def check_script(self, script):
if not self.local_request():