秋葉原まで来てとんこつラーメンを食べて帰るだけの休日だった
This account is not set to public on notestock.
:woman_woman_girl_girl: :man_woman_girl_boy:
影響するのは表示だけだし、図柄がほぼ同じならどっちでもいいか…
emoji-dataのjsonをチェックするとあるshortnameやコードポイントに対して複数の絵文字画像が割り当てられていることがある。
コードポイントの方は例えばガラケー絵文字の「時計」が時刻の異なる複数の時計の図柄にマッチしているとかだった。どれを優先するべきとかは特になさそうなので気にしないことにする。
shortname の方は family, man_woman_boy の両方が 1f468_200d_1f469_200d_1f466, と 1f46a の二つの図柄にマッチするんだが… https://mastodon.juggler.jp/media/7Hnuv-O5aoSb3IBZfu8 https://mastodon.juggler.jp/media/otKFj-Xcqg5POc6GuE0
どちらもスキントーンのバリエーションがあるわけでもなく、どっちを表示するべきなのかさっぱり分からない。
1.6.1は簡単に落ちるバグがあった…1.6.2を出しました https://github.com/tateisu/SubwayTooter/releases/tag/v1.6.2
ふっじさーん: これかな? サーバ費用を賄うために寄付を募集しています。 https://enty.jp/3WtlzHG10wZv
v1.6.1
- 添付メディアつきのトゥートを同じタンスから見ると 🖼 という文字列が表示されてしまうバグを修正
- 絵文字とカスタム絵文字の入力補完
現時点だとmaster追従しているごく少数のインスタンスでのみカスタム絵文字の入力補完を使えます
>例えば女性の奇術師などを使えるようになりました。 🤹🏿♀️ 🤹🏾♀️ 🤹🏽♀️ 🤹🏼♀️ 🤹🏻♀️
って使えてないやん… ピッカーの中だけかよ。。。
This account is not set to public on notestock.
@sakko2005@mstdn.jp 置き換えてるんですよ。しかし絵文字にまでなってない中途半端な状態
@sakko2005@mstdn.jp frame_photoとかいう絵文字コードがみえてるしょ
@bigkumaneko APNGの作りによってはSTでも動くんですよねー。APNGがもっと普及してツールやライブラリがこなれたら改善するような気がします
Emojioneの時は文字数が少なかったのもあるし ttfフォントが提供されてたのとで3MBくらいで済んでた。
emoji-dataになってPNGファイルあわせて6.12MBになった。 PNG容量軽減ツールも試してみるかな
STのAPKは6.791MBから11.418MBに太った…。
VectorDrawableじゃSVGと完全互換ではないしOSSのSVG描画ライブラリも一部互換性がないっぽいので、仕方なくPNGを大量に抱えてる
japngライブラリのエラー 。うーむーhttps://gist.github.com/tateisu/9a11ddc2db8a141ec2b17cfbe15bb7a9
@cynthia_koko カスタム絵文字の一覧をタンスから取得する方法が標準化されてないのです。なのでカスタム絵文字をアプリから選んで入力とかは現時点ではできません
v1.6.0
- 絵文字のデコードと表示に使うデータを iamcal/emoji-data と twitter/twemoji 由来のものに置き換えた
https://github.com/tateisu/SubwayTooter/releases/tag/v1.6.0
Mastodonが使ってるEmojione 2.x だと絵文字の規格が古いので、スマホのIMEから絵文字を入力すると今までは化けることがありました。Mastodonの次リリースではこれが改善されるらしいので、アプリもそれに合わせて絵文字データを新しくします。
https://mastodon.juggler.jp/media/ggtCVAway3qxddemkfg はい、emoji-data 準拠の表示を行うようにしました。
サーバ側がまだ対応してなくてshortcodeになる場合でもアプリ側が絵文字化します。
また、以前は対応してなかったスキントーンつきのshortcodeにも対応しました
2392 img-google-136
2392 img-google-64
2388 img-apple-160
2386 img-twitter-64
2386 img-twitter-72
2385 img-apple-64
1960 img-facebook-64
1960 img-facebook-96
1832 img-emojione-64
1384 img-messenger-128
1382 img-messenger-64
$ ls -1 emoji-data/img-twitter-72/ |wc -l
2386
$ ls -1 twemoji/72x72 |wc -l
872
emoji-dataから画像ファイルを持ってきた方がよさそう。いやOSSライセンス情報には両方とも記載する必要があるんだけど
twemojiにはshortcodeが含まれてないから iamcal/emoji-data のjsonデータも必要になるのか
@unarist 時刻がないと、古いトゥートを受け取った時に新しい絵文字を古いのに上書きしちゃわない?
削除はともかく更新はできてほしい気がするな。オリジナルの更新時刻とURLを保持しておいて比較するだけだし別に不可能じゃない
ていうかこれ16x16を複数並べてポルノを仕込めば、海外の連中に嫌がらせができてしまうんじゃないのか
なおカスタム絵文字はマストドン開発版の機能であり、リリース後にそのまま使えるかどうかは分かりません
https://mastodon.juggler.jp/emoji_list.html にコードの一覧があるのでそれを入力するです。コロンの外側は半角スペースで区切らないと絵文字にならないことがあります。練習は公開範囲をダイレクトにすると他の人に見えません。
emojioneの絵文字でボンバーマンの代わりになりそうなのを探すと、どっちかというと敵キャラに見える件
宿屋マークとカウンター足して「ゆうべはおたのしみでしたね」というのを思いついたがただのセクハラなので自粛する
emojioneの 💣 と公式Webの背景色が極めて相性が悪い件(特に公開範囲がダイレクトの場合)
仕方ないので を別途用意しました
既存ゲームのSSから持ってくるの、やりすぎると怒られる奴だ。。ほどほどにしとこう
まあタンス毎の個性を出すって目的があるみたいだから、よその絵文字を使いたければそのタンスにアカウント作るか管理者が絵文字をコピーするってのはよい塩梅な気がする
https://gist.github.com/tateisu/7b9a1c3e120c419f1c56e0beb6114325 絵文字一覧スクリプトに一括ダウンロード/アップロード/同期削除機能をつけたよ
/admin/custom_emojis はページングがないんだな… カラーコード別に絵文字を作りたかったんだが。
@Robin0x0 だいたい10日~40日くらいまでは離脱症状が出るらしいですよ
Androidは逆にIntentに送るUriにfile:// が含まれてると例外が出るようになったんだよね(Android 7以降)
This account is not set to public on notestock.
This account is not set to public on notestock.
ストリーミングAPIのdeleteイベントのIDだけまだNumber型の件、Subway Tooterは別に問題なさそうだった https://mastodon.juggler.jp/media/csowOVHjeEqqglXxkcI
This account is not set to public on notestock.
かわりに飲んでるのがカゴメ野菜一日これ一杯(720ml)である。ビールと同じくらいのペースで消えていく
@poke_machi STのそれはアプリ設定で重複排除ヘッダを付与しないをつけるとかあります
https://gist.github.com/tateisu/7b9a1c3e120c419f1c56e0beb6114325 マストドンのカスタム絵文字を管理者画面から取得してHTMLとJSONを出力してscpでサーバにアップロードするスクリプト
絵文字を追加するたびにアナウンスするのが面倒になったので専用ページを作った。あと管理者画面からWebオートメーションで取得して一覧を更新するスクリプトを書いた。
ココナラの絵描きさんにだした注文は「認識性を上げるために牙だけとかにしてください」だったよ
loading
can_beer
subwaytooter
hohoemi
nicoru
gauge0
gauge25
gauge50
gauge75
gauge100
downstairs
tanuki
karepiyo
bonus_item
enemy_bullet
beam
player_ship
enemy_ship
gauge_charge
fang_black
fang_white
pin_black
pin_white
カスタム絵文字と連合について
他のタンスから見えるか?
→カスタム絵文字に対応したタンス同士ならフィード先でも見えます
他のタンスから投稿できるか?
→管理者が手動で絵文字を登録しなおさないと使えません。著作権などの問題もクリアしないとダメです
This account is not set to public on notestock.
100さん、カスタム絵文字が入ったんだけどお使いのアプリはまだ対応してないです。 後でPCでみてね
This account is not set to public on notestock.
This account is not set to public on notestock.
aellerton/japng は普通のPNGも一応読めるが、インターレースPNGには対応していない。フォールバック処理で普通にBitmapFactoryで読むようにする。
APNG対応は aellerton/japng_android
を元にAnimationDrawable を使わないようにまるっと書き換えた。ロード直後にデコードしてビットマップ+フレーム時刻のリストにしておく感じ。スパン側で再生開始からの時刻を計算できるようにして、ビットマップのリストから二分探索して適切なコマを探して、次のコマまでの時間を計算する。描画したらHandler#postDelayedで遅延させてTextViewをinvalidateさせる。
画像キャッシュは最後に使った時刻が一定より古い奴を解放するよくあるやつ。管理対象がBitmap直接ではなくAPNGロード後のフレームリストになってる。Bitmapのrecycleを忘れずに行う。
誰の役に立つのか不明だがメモ的に…
API出力からemojisをパースするとこから始まり、文字装飾スパンのカスタム版を書き起こしてステータス中のshortcode部分にセット。スパンが描画されるタイミングで画像キャッシュを探して、なければ裏でロード開始。ロード完了したらTextViewをinvalidateして再描画させる。
描画先がViewでもDrawableでもなくSpanだってのが面倒くさい。ロード完了時やアニメーション時に再描画させる必要があるが、Span単位ではなくView単位でinvalidateするしかない。うちの場合Spanの寿命とViewの寿命は連動してないので、View#setTextのタイミングでテキスト中のスパン全部にコールバックを登録してそれ経由でView#postInvalidate を呼び出してる。
非Webアプリでのカスタム絵文字対応はニコフレアンケ対応の13倍くらいめんどくさいよ
This account is not set to public on notestock.
自動CWしてると絵文字がアニメしてくれないことがある現象に遭遇してる。原因が分からない…
v1.5.9
- インターレースPNGのカスタム絵文字を表示できなくなっていた
@LoDelinate LINEスタンプだと登録制なので著作権の問題をクリアできたのが大きいと思います
@LoDelinate 日本にはフェアユースという概念がないので、映画の一部引用とか個人がやるとつらいでしょうね
@sakko2005 1.6.1 + 未リリースのいくつかのコミット、って感じです。なお次リリースは互換性のない変更が入る(アプリの動作がおかしくなったりする)ので大手タンスは軒並み躊躇するかと思います
あら、STで PNG decode failed. https://mastodon
.juggler.jp/system/custom_emojis/images/000/000/021/original/tama2.png?1505942847:PngFeatureExceptio
n Interlaced images are not yet supported とか出てる。フォールバック用意しなきゃ
@sakko2005 カスタム絵文字をサポートしてるタンス同士であれば、フィードされてきた絵文字も表示されますよ
loading
can_beer
subwaytooter
hohoemi
nicoru
gauge0
gauge25
gauge50
gauge75
gauge100
downstairs
tanuki
karepiyo
bonus_item
enemy_bullet
beam
player_ship
enemy_ship
64x64までの正方形で50KB以内のPNG画像とショートコードを #こんな絵文字ほしい タグに書くと登録するぞ
次の要望は…「かれぴよ」って何だよ、そんな画像素材ないし64x64で表現できねーよ
This account is not set to public on notestock.
カスタム絵文字欲しい! でもアプリの互換性が! ってなるひどいアップデートだな…
@unarist 「snowflake導入後の投稿には旧アプリではアクセスできない」はどっちでも真なのでは。
SQLiteはintegerの内部保存形式が1-64bitの可変長整数で本当に良かったと思う
「ActiveModel::Type::Integer with limit 4 bytes」って32bitやん
This account is not set to public on notestock.
割と単純なラッパを被せただけなんで、API出力が想像と違ってたら動かないはず… (求)master追従サーバのアカウント
文字列IDを読めてるかどうかのテストは誰かしらのタンスにお邪魔すればできるんだろうけど、53bit超えてるときのテストができるタンスが現状存在しない件
v1.5.8
- マストドンのAPIからIDを取得する部分を(#5019)に合わせて変更した
ストアには出してないけどAPKはこちら。 https://github.com/tateisu/SubwayTooter/releases/tag/v1.5.8
Android API の org.json だと数値データは "." がなければちゃんとLong精度で読んでくれるのに文字列データを後からLongに解釈する時はDoubleだって過程しちゃう奇妙な実装だった
@unarist Android API の org.json だと文字列データに対してoptLong() したら (long) Double.parseDouble((String) value); になるのでエラーはでないけど、精度には問題があるよ
アバターアイコンの場合はGIFアニメだとかなり大きくなるとかで制限かけてるんだと思う。しかしカスタム絵文字はもともとサイズ制限が厳しいのであまり影響はない
そしてサービス的には50KBでPNGとして読めるんなら別にええやろ、と思わんでもない
私の方はアルコール依存の気があったので断酒したらもう飲みたくて飲みたくてむりやり我慢してる
アニメーション制御情報が含まれるチャンクが存在しないことを確認する、とかそういうめんどくさいやつ
APNGはPNGとしても読めちゃうので、APNG排除したいなら特別なチェックが必要になっちゃう
v1.5.7
- APNG形式のアニメーションカスタム絵文字に対応
#SubwayTooter
https://github.com/tateisu/SubwayTooter/releases/tag/v1.5.7
丁度手元にあったAPNGでテストによさそうなのがアレ(loading)しかなくて…
50KBだしロクなアニメーションは用意できないだろうと思いますがさて。あ、さっきのはアプリ内部で画像URLを強制的に変えてました
@hota もしよければカスタム絵文字に https://www.dropbox.com/s/3qf9zrqp8v0626a/loading_16.png?dl=0 を登録していただけないでしょうか?
https://github.com/aellerton/japng_android をビルドしてみてAndroid上で動くのを確認したなど。しかしサンプルの割と単純なアニメーションでも50KBには収まってないので、カスタム絵文字のためにAPNG対応を求められることはあまりないと思った
タイトーは9月30日に、32bitアプリの(中略)の配信を終了する
http://www.itmedia.co.jp/mobile/articles/1709/19/news129.html
Apple方式だと更新に開発者が振り回されて、それに見合う収益を出せない娯楽アプリは滅びるしかない。
「ゲームは文化」という観点からすると残念だね
キーのタイプ音。自分はいいだろうけど、将来の家族とかが必ずしも許してくれるとは限らないから注意な。その点タッチパネルは音がしないのでとてもよい
静電容量式のキーボードは機械動作するスイッチがないから、バネとカップの感触しかしない。まあ底打ちはあるけど
RealForce使う前はキーボードの上に指をのせたまま待機する習慣があったんだけど、RealForceを使い始めたら指を置いてるだけでうっかり入力されてしまうのでその習慣は捨てた
東プレのキーボード RealForce がリニューアル http://japanese.engadget.com/2017/09/19/realforce/ おお、欲しい… 日本語配列のテンキーレスはあるんかいな
AndroidアプリでのAPNGアニメ表示はサポートしたくないというか利用可能なライブラリがない
うちはリリースノートみてからアプデかけるけど と
と
は入れる予定ある #こんな絵文字ほしい
ST1.5.6の絵文字対応、ディスクキャッシュしてないから毎回サーバに取りにいっちゃうけど別に致命的じゃないし次回リリースの時になんとかしよう(手元では直してある)
@sakko2005 マストドンの未リリースの機能ですから、普通のタンスにはまだ来てません
v1.5.6
- (試験実装)マストドンのカスタム絵文字の表示
1トゥートに含められるカスタム絵文字の最大数は63種類128個? アンダーバー1文字のshortcode が使えるとしてだけど。
This account is not set to public on notestock.
This account is not set to public on notestock.
@tacostea アカウント設定から「通称と色」で割となんとかなります。通称の方に 「1.たていす」とか数字をつけとくとその順に並びます。ただしアクション元となったユーザのタンスにあるものはそれより先頭に表示されます。
https://mastodon.juggler.jp/media/pG8EX7GZMTgoto6v1K0 https://mastodon.juggler.jp/media/YodrfCnDn72M1QHS1XE
パナソニックが数年前に出したGM1というカメラボディ。小さい軽い。相対的にレンズが大きく見えてしまう
対策としては、アプリ側でRelationshipを参照するときに一貫して詐称を行うことをお勧めします。
following==false,requested==true,Account.locked==false, なら following=true,requested=false であるように振る舞うのです。
これはマストドンの#4799 で行われているのと同じことを、より一貫させただけです。
もし詐称がイヤなら「Account.locked==false, following==false,requested==trueなRelationshipを見つけたら定期的に読み直す」くらいしか状態を正確に表示する方法はないと思います。
マストドン1.6のAPIではフォロー操作の後のRelationshipの見え方が変わっています。
- フォローAPIの応答ではフォロー成功したように詐称されます(#4799 )が、Relationshipを読み直すとfollowingではなくrequestedがtrueになります。
- リモートフォローAPIの応答にはRelationshipは含まれないため、 #4799 のような詐称は元から行えません。Relationshipを読むとfollowingではなくrequestedがtrueになります。これは思っているより長い時間続く可能性があります。
- サーバ側でのフォロー処理が非同期完了した(requested=false,following=trueになる)時、それをアプリに知らせる仕組みは存在しません。
続く
@sakko2005 STは色々検討したすえ、アプリ側で一貫してウソをつくことにしたよ。
他アプリは1.6対応まともに進んでないだろうから、リモートフォローした時やリロードした時にフォロー申請中状態が見えちゃう
@sakko2005 マストドン1.6からフォロー結果はすぐには分からなくなったよ。そしてフォローAPIとリモートフォローAPIでそのごまかし方が異なるというややこしいことになった。フォロー結果を通知する仕組みは存在しないので、アプリによるがフォロー結果を取得しなおすにはなんらか手動リロード操作が必要なはず
私が最初にみたTLは自分のタンスのカラのTLだったから、Subway Tooterは最初から明確に「タンス間スコップ」を補助するのが目標だった。
しかし1タンスで十分な人たちにそのあたりのことを説明しても、まず理解される訳がない。
無闇に機能過多に見えるんだろうけど、じゃあいちいち説明しなきゃいかんのかっていうね。
(ローカル向け)ていうか現実世界でもエージェントからは焼肉と呼ばれてるんですか…
トレンドンて管理者がサイレンスかけたユーザのトゥートもそのままぶっ込んじゃうやつだっけか
@tateisu 30分くらいで転送完了。バッテリーはガッツリ消費するけどまあ便利
FA Downloader でデジカメからスマホに2GBほど転送中。FlashAir W-04の性能や如何に
赤レンガ倉庫周辺の公園から大桟橋まで日光浴しながら主役のいない写真を撮るいつもの休日になったよ
Subway Tooter の機能説明は公式blogを見るのが手っ取り早いです。 http://subwaytooter.hatenadiary.jp/
なお作者はAppleアンチなのでiOS版を作る予定は全くありません #SubwayTooter
中国って勝手にWebサイト立てたらダメらしいので現地人が頑張ってマストドン企業作って欲しい
#SubwayTooter では接続タイムアウト30秒、読み応えタイムアウト60秒にしてるけどそれでもmstdn.jpや.cloudではタイムアウト結構でてますね
(ローカル向け)カスタム絵文字の標準化がくるらしいのですが、ジャグ鯖でこんな絵文字欲しい!とかあったら教えてください。とりあえずhohoemi https://github.com/tateisu/SubwayTooter/blob/master/_ArtWork/hohoemi.png は入れるかな…
v1.5.5
- インスタンス情報カラムにインスタンスのサムネイルを表示する(マストドン1.6.1以降)
/api/v1/instance API に thumbnail の項目ができてるのを確認した。 デカめの画像だしアプリ的にはどこに表示するといいんだろ
…正直いうとこれよりfavicon相当の画像をAPI化してほしい
シェアデバッガー
https://developers.facebook.com/tools/debug/ にインスタンスやユーザやトゥートのURLぶっこめば動作確認できるんかな >インスタンスのサムネイルの動作確認
施工時は多分こんな粘着テープも必要になります http://amzn.asia/9cseiOA
ばしさんはエアコンの排水ホース切って間にこれをつけるんや http://amzn.asia/4iJW9v1
@duck_shit_one リロードしてもダメならミュートしたアプリや単語を確認してください
楽天と講談社、楽天市場と連動したスマートフォン向けの女性ファッション雑誌「BeVivi」を創刊 http://juggly.cn/archives/229872.html ビビビ …のネズミ男?
アキヨドのカメラ売り場、パナのm4/3が分かりにくい位置に移動してて悲しみがある。
製品は悪くないと思うんだが、シリーズの組み方がデタラメだったり、レンズのメンテナンスの対応が家電屋臭い(すぐに交換にしたがる)、とかでいまひとつファンを掴めてない印象ある
パナの35-100F2.8の中古を調達したけどすぐに知り合いに貸してしまったなど。帰ってきたらクローズアップレンズつけて遊ぶことにする