Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LATEXBuilderでMETACHARS_REとMETACHARS_INVERTが定数になっていて上書きしようとすると警告される #240

Closed
kmuto opened this issue Mar 19, 2014 · 4 comments
Milestone

Comments

@kmuto
Copy link
Owner

kmuto commented Mar 19, 2014

LATEXBuilderにおいて追加のUTF変換化が必要な場面があった。review-extにてLaTeXUtilsのオーバライドとしてMETACHARS[XXX]を定義し、METACHARS_REとMETACHARS_INVERTを再設定したが、当然ながらこれは定数名になっているので警告が表示された。

不可欠なエスケープとオプショナルなUTF置換(uplatexなどでは不要)が混在しているのも気になる。

@kmuto
Copy link
Owner Author

kmuto commented Mar 19, 2014

ちなみに必要になったのは25B6と25C0の両矢印ですが、マッピングがひたすら続くようだと何か自動生成させたほうがいいのかもしれないです。いずれにしてもエスケープとUTF命令を一緒くたにするのは後々都合が悪そう。

@takahashim
Copy link
Collaborator

定数の再定義で警告が出るのは(あまりここをいじるのはおすすめではないので)積極的に治したいところはないのですが、エスケープとUTF命令変換の分割はあった方がよいかもですね…

@takahashim
Copy link
Collaborator

最近開発された(?)バッドノウハウでは、METACHARSを変更したあと、

    remove_const(:METACHARS_INVERT)
    remove_const(:METACHARS_RE)
    METACHARS_INVERT = METACHARS.invert
    METACHARS_RE = /[#{Regexp.escape(METACHARS.keys.join(''))}]/u

とすると警告が出ずに再定義ができるのでした……。

@kmuto
Copy link
Owner Author

kmuto commented Apr 17, 2016

グローバル定数をやめたのでcloseします。

@kmuto kmuto closed this as completed Apr 17, 2016
@kdmsnr kdmsnr added this to the 2.0.0 milestone Apr 24, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants