2019年9月17日火曜日

FirefoxでJavaScriptをデバッグ出来ない

あまプロではJavascritの開発を行う事が有ります。

ジャバスクの開発にはブラウザが要りまして、Ubuntuの標準ブラウザはファイヤーフォックスです。

以前の記事でも書きましたが、最近Firefoxの調子が悪いです。
前回のJavaScriptの整形表示は最新版(69.0 Ubuntu 64bit)で改修されておりました。アリガトウゴザイマス
だがしかし!、今度はブレークポイントで処理を止めるデバッグが出来なくなっております…。ザンネンスギル

こんな簡単なJavaScriptですらデバック出来へん
<html>
    <head>
        <script type="text/javascript"><!--
            (function ( )
            {
                alert( "JS"); //ここでブレークしたい
            })();
      </script>
    </head>
    <body>
</html>

次のバージョン(70.0)迄待たなあかんのでしょうか?
ちょっとお仕事では使えない品質ですねぇ。
それまでは取り敢えずChromiumを使ときます…。

ーーーーーーーーーーーー追伸ーーーーーーーーーーーー
Windows版は正常にデバッグ出来たので、Linux版のみの不具合みたいです。

2019年9月11日水曜日

シェルスクリプトで時間を測る方法について

あまプロではプレゼンの時間計測をする事が有ります。
ストップウォッチアプリをインストールしても良いですが、シェルで簡単に作成も出来ますのであメログ。

例えば経過秒を延々と表示し続けたいなら
ワンライナーで
since=`date +%s`; while :; do clear; echo $(( `date +%s` - $since )); sleep 1; done
こんな感じ。
止めたい時はCtrl + cで割り込みます。

応用すれば
since=`date +%s`; while [ $(( `date +%s` - $since )) -lt 10 ]; do clear; echo $(( `date +%s` - $since )); sleep 1; done; echo "時間やで〜"
こんな感じで10秒後にお知らせしてくれるタイマーも出来ます。
十秒前に止めたい場合も同じくCtrl + cで割り込みな。

結構簡単に時間を測れるのでお試し下さい。

2019年9月1日日曜日

外出時のサングラスについて

あまプロでは市内の立花、塚口、園田、武庫と伊丹昆陽でプログラミング教室を開催しています。

定期開催している教室は上述の通りで、リモートの授業も行うんですが、基本的にはその教室へチャリで通ってます。
日中の移動中は日差しが強いのでサングラスが欠かせません👓
強い紫外線から目を守る為にも。

私の扱いが雑なのも有るんですが、サングラスは大体1〜2年で壊れたり傷付いて交換になります。
先日はサマセミの二日間でフレームをバッキリ割ってしまいました…。

とは言え、安物では効果が薄いので、自分に有った少々お値段張っても良いサングラスを買うてます。

私がいつも付けてるサングラスは偏光レンズでスポーツタイプのサングラスです。
偏光レンズは簡単に言うと光のちらつきを抑えて目を疲れ難くしてくれるレンズです。
余計なちらつきを抑えるので、川なんかを除くと水中の魚が良く見えます。
外出時に目が疲れ易い方は是非一度お試し下さい。

スポーツタイプは軽くて運動してもずれ難くなってます。
それとサングラス自体の形が顔の形に沿って曲がっているので、サングラスと顔の隙間から光が入って来るのも少なくなってます。
例えるなら (○ こんな感じ。○が上から見た顔っていうか頭ね。
普通のメガネは平らな形で、顔は丸いので |○ こんな感じ。

で、この偏光レンズのサングラスなんですが、眼鏡屋さんに行っても数が少なく、選ぶ程置いてません。
しゃーないんで眼鏡屋さんをハシゴするしかないんですが…眼鏡屋さんってコンビニ程多くないんで、尼でもハシゴは大変です。
まぁ駅前とか商店街毎に一軒程度でしょうか。

そんな時に私がいつも活用してるのがあまがさきキューズモール
メガネショップアイJ!NSパリミキZoffが階は違えど同じ建物内に有るのは助かります。
眼鏡屋さん四軒も有れば、まぁまぁ自分に有ったお気に入りのスポーツタイプ偏光レンズサングラスが見付かる筈。
それでも見付からへんかったら…その時に考えます。

Eclipseのショートカットについて

あまプロではシステム開発を請ける事が有ります。

先日、Javaでのウェブシステム開発で不便を感じましたのであメログ。

その案件ではデータベースの命名規則はスネークケースで、Javaの命名規則はキャメルケースでした。
変数名等でHyogoAmagasakiにするのがキャメルケース(駱駝っぽいやつ)、hyogo_amagasakiにするのがスネークケース(蛇っぽいやつ)ね。

で毎回ソースに選って切り替えるのが面倒で工数掛かってしゃーないんで、ショートカットで楽したいと考えました。
Eclipseでキャメルケースとスネークケースを切り替える機能が有ります。Ctrl + Alt + kで切り替えられます。
なんですが、その案件ではEclipseに色々なプラグインを追加した独自の開発環境で、勝手に設定が変えられませんでした。

そして残念な事にその案件の開発環境ではCtrl + Alt + kのショートカットは使えないんです。
何やねん、その非効率なローカルルール。
面倒くさいわぁ…。

2019年8月24日土曜日

FirefoxでJavascriptを整形表示できない

あまプロではウェブサイトを作成する事が有ります。

ウェブサイトを作成する際にJavascriptのライブラリを使う事が有ります。
地図を表示するOpenLayersとか、最近はオープンソースで色々と便利なライブラリが有りますね。

ライブラリは動作に不要な空白や改行やコメント等を削除して軽量化(ミニファイ)されて配布されている場合が多いです。
*.min.jsとかね。
配布や実行する場合には軽量化されたJavascriptファイルが良いのですが、解析(人間が読む)する場合には改行や空白等が有った方が読み易いです。
なので、ファイルを解析する場合には軽量化されたファイルを整形表示する必要が有ります。

ブラウザはいつもFirefoxを使ってまして、Firefoxには軽量化されたJavascriptを見易く整形表示する機能が標準で備わってます。
なんですが、現在は備わってないです。
Firefoxは最新版の68を使ってます。以前のバージョンでは確かに整形表示出来てましたし、モジラのサイトにも出来ると載っているんですが…最新版では整形表示は出来なくなってるい様です。

しゃーないんで、現在はChromiumを使って整形表示してます…。

2019年8月18日日曜日

UbuntuにRMecabをインストールする

あまプロではRを使ってテキストマイニングの授業を行う事が有ります。

先日、生徒さんへRの環境構築を教えた際にハマりポイントが有りましたのであメログ。

Ubuntu19.04では以下のコマンドでR言語とmecabをインストール出来ます。
sudo apt install r-base mecab
確認
R --version
R version 3.5.2 (2018-12-20) -- "Eggshell Igloo"
Copyright (C) 2018 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under the terms of the
GNU General Public License versions 2 or 3.
For more information about these matters see
http://www.gnu.org/licenses/.
現時点の最新版(3.6.1)やないけどまぁ良ぇわ
続いて確認
mecab --version
mecab of 0.996
これでRとMecabをインスール出来ます。
最後にRからMecabを利用する為に、RMecabをインストールします。
Rを起動して
R
R上でRMecabをインストールします。
install.packages("RMeCab", repos = "http://rmecab.jp/R", type = "source")
なんですが、私の環境では下記のエラーが出ました。
/usr/bin/ld: -lmecab が見つかりません
collect2: error: ld returned 1 exit status
make: *** [/usr/share/R/share/make/shlib.mk:6: RMeCab.so] エラー 1
ERROR: compilation failed for package ‘RMeCab’
* removing ‘/home/masayuki/R/x86_64-pc-linux-gnu-library/3.5/RMeCab’

 ダウンロードされたパッケージは、以下にあります
     ‘/tmp/RtmpZVhDFY/downloaded_packages’
 警告メッセージ:
 install.packages("RMeCab", repos = "http://rmecab.jp/R", type = "source") で:
   パッケージ ‘RMeCab’ のインストールは、ゼロでない終了値をもちました
mecabをインストールしたのにmecabが見付からへんと言うております。
どうやらRからmecabを参照出来てへん様です。
探してみます。
locate mecab
/usr/lib/x86_64-linux-gnu/libmecab.so.2
/usr/lib/x86_64-linux-gnu/libmecab.so.2.0.0
有るやんけ
なもんで、リンボリックリンクを作って参照を追加したります。
sudo ln -s /usr/lib/x86_64-linux-gnu/libmecab.so.2 /usr/lib/x86_64-linux-gnu/libmecab.so
こんだけ
再度、R上からRMecabをインストール。
install.packages( "RMeCab", repos = "http://rmecab.jp/R", type = "source")

installing to /home/masayuki/R/x86_64-pc-linux-gnu-library/3.5/RMeCab/libs
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
* DONE (RMeCab)

 ダウンロードされたパッケージは、以下にあります
     ‘/tmp/RtmpH1Viwj/downloaded_packages’
今度は上手いこと行けました。
library( RMeCab)
ライブラリを追加して、
unlist( RMeCabC( "すもももももももものうち"))
    名詞     助詞     名詞     助詞     名詞     助詞     名詞
"すもも"     "も"   "もも"     "も"   "もも"     "の"   "うち"
正しく品詞を解析出来てます。

RとMecabを用いると日本語アンケートの解析とかが出来る様になるんで便利です。

2019年8月17日土曜日

Scratch3.0のバグについて

あまプロではScratchを使ったプログラミングを教えています。

先日、生徒がScratch3.0でバグを見付けました。
スクラッチのコスチューム編集で、ある一定の操作をするとスクラッチがクラッシュするという物で、簡単に回避は出来るんですけど、毎回わざわざ回避せなあかんのは面倒なんで、改修してもらおうと考えてます。
なので、GitHubにバグ報告を挙げときましたオネガイエライヒト!

恐らく近々改修されると思うので、生徒にはこの際にエラーの種類について教えときました。
  1. シンタクスエラー 形式エラー
  2. ランタイムエラー 実行時エラー
  3. ロジックエラー  論理エラー
エラーにも色々有るんやでぇ〜という話で盛り上がりました。