(10)
{翻訳語}{エスケープ}=}(2)

エスケープ

K#9-D657 氏の案。

2020-03-31 21:53
2020-03-31 21:52
{越掲}{逸化}{〈escape〉}{翻訳語}{越化}{エスケープ}=}(6)

escape” の翻訳として「越化」と「逸化」が挙げられているが,

個人的には「越化」(か,「越掲」)が好ましい。

理由は二つあって,一つは音写性の面から,「越(エツ)」の方が「逸(イツ)」より元の語に近いと思うから。

もう一つは意味の面。

「散逸」とか「道を逸れる」とかに使われる「逸」は,〝一度しか起こらず,もう二度と元の筋道に帰ることはない〟印象を受ける。

一方の「越」は,「越境」や「山を越える」に使われて,〝何度も起こ(る可能性があ)り,さらに特殊な動作をするのは一時的で,その後また元に戻る〟という印象を受ける。

特に論組の分野で用いられる “escape” は,〝出与え列の通常解釈を一時的に脱却し,特別な処理を受けた後に元の出与え列解釈を続行する〟という意味で用いられることが多いから,「越」の字の方が良いと思う。

2020-03-31 21:24
2020-03-31 21:23
=}
{エスケープ}{文字列}=}(2)
{理腑}{fnd()}{希哲13年12月12日の開発}{希哲13年12月12日の進捗時限}{希哲13年12月12日の進捗}{希哲13年12月12日}{SQL 類型群}{出場}{新知番実装}{COALESCE()}=}(24)

出場周辺の理腑新知番実装換装続き。

SQL 類型群の導入により文字列列名函数名などが区別出来るようになったため, 上で明らかに文字列と分かる部分は q() を使わなくても良いようにすることにした。ただ,エスケープをどうするかが課題。

類型化により判別出来るようになったとは言え,全ての引数パターンを網羅するわけにもいかないため,引数順は原則として SQL語順に合わせることにした。

現在,全知検索前後景輪の取得が上手くいかない問題があるため,その修正から入る。

これは fnd_oln()n_fgn_bg の値を得る時に COALESCE() を記述し忘れている部分があることだとすぐに分かったが,この情報をどう保存しておくべきか少し悩む。

途中で終了。

2019-12-13 03:02
2019-12-13 01:27
=}
{希哲13年8月18日の開発}{NodeList}{the_rgx_kno_pfx}{希哲13年8月18日の進捗時限}{希哲13年8月18日の進捗}{希哲13年8月18日}{the_rgx_kno}{進捗記録}{進捗時限記録}{進捗時限}=}(14)

NodeList が検索出来なかった問題は,やはり the_rgx_kno の部分正規表現 the_rgx_kno_pfx で No. のピリオドエスケープしていないことが原因だった。とりあえずここだけ修正したが,更なる厳密化が必要。

イベント整理に戻る。

途中で終了。

2019-08-18 23:27
=}
{希哲13年7月24日の開発}{希哲13年7月23日の開発}{Cμ マクロ}{E}{エスケープ}{}{文字列リテラル}=}(7)

希哲13年7月23日深夜(日付24日)から, において文字列リテラルエスケープを回避するマクロとして考案。下処理系文字列化を利用する。

正規表現のために考え始めたが,汎用的に使えるものにした。C++生文字列リテラルに合わせ R() というマクロ名にすることも考えたが,別の用途に使う可能性があるのと直感性に欠けることから没にした。

単括点二重括点を使い分けられることにした。

最初,括点は省略出来るかと思ったが,括点を付けずにエスケープ シーケンスを記述すると換配違了が発生したため,これは諦めた。マクロの引数として不正なのか。いずれにせよ,通常の文字列に付けたり外したりすることを考えると,かえって作業が多くなるのと,一目で文字列であることが分かりにくいので括点の省略はさほど魅力的ではない。

試行錯誤しているうちに,単括点が文字列の表現に使えることに気付いた。処理系依存だが,単括点で複数の文字を指定することは許容されている。この仕様は有効活用できそうだ。

現状,余計な括点は正規表現で削除しているが,そのうち最適化する。

2019-07-24 18:51
2019-07-24 02:16
{read -r}{ナレッジブックマーク}{エスケープ}{read}{描点}{ウェブページ}=}(6)
{エスケープ}=}(1)
{PE で終わる英単語}{ES で始まる英単語}{E で始まる英単語}{逃げる}{脱走}{エスケープ}{esc}{英単語}=}(8)
{0x1B}{エスケープ}{特殊文字}{素描}=}(4)