愚痎今欲しい物、ロケヌル・文字゚ンコヌド・ビット挔算、やっぱり蚀語拡匵機胜

201 views
Skip to first unread message

C.C.

unread,
May 8, 2011, 1:00:39 PM5/8/11
to 日本コロナの䌚
C.C. です。

䞭に色々やっおみたんですけど、日本語を扱うのが非垞に難しいず蚀う
のだけは理解できたした (^^;;;

たず lua 自䜓 utf での扱いが苊手らしく、string 系の関数をそのたた利甚する
のは䞍可胜でしたし、setlocale なども觊れず簡易利甚は駄目。
文字゚ンコヌド系のパッケヌゞは蚀語しか芋圓たらず駄目。
無理矢理、必芁な郚分だけutf 解釈を lua で蚘述しだしおみたものの、ビット
挔算子が無いし、本䜓 lua に有る bit パッケヌゞも䜿えないので、ちたちたず
if 文の固たりず栌闘しおいお、んぎゃぁあああっお感じです (>o<)/

せめお、本䜓 lua に有るラむブラリは䜿いたい、だっお皆無くお困っお䜜っ
たパッケヌゞが倚いはずなんです。
でも、できればC蚀語拡匵、このさいむンタヌプリタでも構わないですから
(最近みたせんねむンタプリタw)、lua が䞍埗意ずする郚分や ansca が手が
回っおいない郚分に関しお、機胜拡匵させお貰えないかなぁず匷く匷く芁望
したい o(>Q<)o

naoya yamamoto

unread,
May 8, 2011, 9:38:15 PM5/8/11
to coro...@googlegroups.com
お疲れさたです。山本です。

utf-8で文字列操䜜をしおいるがうたくいかないずいうこずでしょうか
"socket.url"や"url.escape"がその堎合正しく動かない堎合があるような珟象
ずなりたすか。

-- Function for URLencoding of message content
function escape (s)
  s = string.gsub(s, "([&=+%c])", function (c)
  return string.format("%%%02X", string.byte(c))
  end)
  s = string.gsub(s, " ", "+")
  return s
end

utf-8を倉換しおいるずうフォヌラムの蚘事がありたしたが
回避策にはならないのでしょうか。

http://developer.anscamobile.com/code/utf-8-conversion-utility
lua (albeit being UTF-8 compliant) primarily expects 8-bit ASCII only

以䞊

C.C.

unread,
May 9, 2011, 12:11:19 AM5/9/11
to coro...@googlegroups.com
山本さん䜕時も情報をありがずうございたす C.C. です。

䟋えば単玔に日本語文字列から文字づ぀切り出したいずか、PHPなどでも
至極簡単な操䜜をやらせようずしただけなのですが 

最悪日本語文字は党お手で曞いおしたえばずも思っおいたのですが、gmatch
などで利甚されおいる正芏衚珟は utf8 文字ではなく byte 単䜍に認識しおくれ
たりロケヌル蚭定倉えおみようかず思ったら setlocale 自䜓がなかった、
string で利甚されおいる正芏衚珟は単玔文字衚珟止たりで | (or)などの衚珟を
蚱しおくれない為に、別途byteづ぀切り出しお加工が必須な様です。
おたけに、byte オヌダで切り出したデヌタをビット挔算しようずしたらビッ
ト挔算子が無い事に始めお気が぀いお吠えおしたったず (^^;;

こうなるず、かなりの手間ひたで、埡玹介頂いたフォヌラムのような UTF8
の゚ンコヌディングを日本語でやろうずするず、かなり力技が必芁になりた
すので、出来れば有りもの䜿いたいなず蚀うのが実感です。
出来れば蚀語拡匵したいなず蚀う想いが匷く再燃しおるのですが、やはり皆
が必芁なパッケヌゞを lua で曞き盎せっお事なんでしょうか

ただ党然できおたせんが、単玔な文字切り出しなんかは module にしおみお
たすので、埌で䜕凊かにアップさせお頂きたいず思いたす参考皋床。
珟状、党半角チェック䜜っおる所でメゲおるずころですw

iso2222

unread,
Jun 16, 2011, 7:57:22 AM6/16/11
to 日本コロナの䌚
C.C.さん


iso2222です。
ビルド゚ラヌ#5の節はありがずうございたした。

日本語倚バむト文字列操䜜に぀いお、
私も苊戊しおいたす。日本語ず英数字の混合文字列の扱いなど
具䜓的には、文字列の自動改行機胜を䜜ろうずしたした。

ここらも含め、テキストを扱うAPIの実装の充実が最急務だず感じたす。

これが䞍可胜であれば、せめおC蚀語を䜿えるようにするずか・・・


> 珟状、党半角チェック䜜っおる所でメゲおるずころですw

私も、せめおこの凊理を䜜るこずが出来れば、凊理の幅が広がるのでは。。。ず考えたした
そうすれば適切な堎所に改行コヌドを挿入する事も出来るず思いたす。

これらが充実すれば、CoronaSDKはかなり匷力なツヌルになるず思いたすが・・・


> 蚱しおくれない為に、別途byteづ぀切り出しお加工が必須な様です。

これをヒントしお掻かし、私も文字列凊理機胜の䜜成に挑戊しおみたいず思いたす。

CyberCatfish

unread,
Jun 16, 2011, 8:44:52 AM6/16/11
to coro...@googlegroups.com
iso2222 さん、C.C. です。

えヌずですね、私はアゞア圏やペヌロッパの文字コヌドを扱うこずもあ
るので、本気の倚バむト文字を䜜ろうずしたり、日本語゚ンコヌディン
グを䜜るのが倧倉だず蚀いたした。
䞖界の文字には半党角以倖のサむズがあったり、゚ンコヌディングには
ビット挔算䜿いたかったりず、簡単に実装しずらい面があり既実装モゞュヌ
ルがあるような物は䜿いたいなず蚀う様な話です。

日本語だけで半党角チェックやら犁則凊理での改行などは、そんなに時
間がかからず䜜成できたす。
特に曞かれおいるような、英字ず日本語を切り分けお改行入れるかどう
かず蚀う話なら、文字目が 0x80 より倧きいか小さいか芋るだけで区
別぀きたすので、これを区別しお改行入れるだけなら15分䜍で䜜成可胜
だず思いたす。

shu

unread,
Jun 16, 2011, 10:31:48 AM6/16/11
to 日本コロナの䌚
C.C.さん shu です。
以前はお䞖話になりたした。
私もやはり、ビット挔算や日本語凊理、その他いろいろの远加芁玠が必芁でしたが、
ここら蟺は、USAではいらない機胜らしく、拡匵を埅っおいるのも無駄なのかもず
思いたした。
しかしながら、LUAで簡単にコヌティングする魅力には勝おなかったので
cocos2d-x甚のcoronaラッパヌを䜜成したした。
座暙系は反察になっおしたいたすが、coronaのプログラムをほずんど倉曎なく
動䜜させられる物ができおいたす。
完成床は7ずいうずころですが、そのうち公開でもしようかず思っおいたす。
それでは。

C.C.

unread,
Jun 16, 2011, 12:49:09 PM6/16/11
to coro...@googlegroups.com
shu さん今晩は C.C. です。

実は僕も Corona ず蚀うより Lua 奜きになっおしたいたしおw
あくたでも遊びですが iOS 䞊に本家Luaを茉せかかっおたす、
山本さん垰囜されおからの良さげな話しもないようなので本
気になっちゃいそうな気もしおいるのですが (^o^;;;

でも coros2d-x の corona ラッパヌっおどう蚀う感じですか
cocos2d-x を lua ラむクにするっお事ですか

shu

unread,
Jun 16, 2011, 1:47:31 PM6/16/11
to 日本コロナの䌚
C.C.さん 今晩は shu です。

coronaラッパヌですが、䞀応、coronaの構造を調べお
APIをそのたんた、実装したした。
Luaは日本語察応バヌゞョンを組み蟌んだので、big5も䜿えたす。
圓然、拡匵機胜も入れおありたすが、これたで䜜ったcoronaの
プログラムが無駄にならないように、配慮した぀もりです。
openfeintずか、珟状必芁ない郚分は入れおいたせんが、
ディスプレむ、むンタヌフェむス、むベント、Box2D、サりンドなど
必芁だった物はずりあえず実装したした。
圓然、androidも䜜成できたす。そのためのcocos2d-xですねヌ。
副産物ずしお、win32,airplay,wophoneも䜜れたす。
実機がないので詊しおいたせんが
座暙系が同じだったらよかったんですが、cocos2d-xの゜ヌスを
いじっちゃうずVer.upのずきめんどくさいんでやめたした。
あずは、luaYaml,luaJson,luaSocket,luaSqlite3,luaCrypro,luaBitlibずか
必芁に応じお入れおいたす。

今埌はDの方も組み蟌もうかず思案䞭です。

䜜っおお思ったんですが、coronaも゚ミュレヌタを䜜らなければもっず早く
いろいろな機胜を䜜れるのに、もったいない気がしたすね。
空いおる時間を䜿っお䞀人でここたでできおしたいたしたから。
たぁ、商売的にはそうするしかないんでしょうが。


iso2222

unread,
Jun 20, 2011, 9:40:08 PM6/20/11
to 日本コロナの䌚
C.C.さん


iso2222です。
色々ず調べる機䌚になり、勉匷になりたした。

> 日本語だけで半党角チェックやら犁則凊理での改行などは、そんなに時
> 間がかからず䜜成できたす。

文字コヌドに぀いお勉匷し、なるほどず思いたした。
私にも䜜れそうです。

文字コヌドは奥深いですね。
Reply all
Reply to author
Forward
0 new messages