いちツイートの文字上限を確認してみた

最近、他人の英字ツイートが長くなってる気がするのに、自分の所には文字上限増加が一向に適用されないので、検証してみた。
2

疑問・経緯

(なんか最近の英字ツイートが長くなってる気がするんだけど、自分の所には文字上限増加が一向に適用されないな……?)
 ↓

検証結果まとめ

北宮(多忙中) @kitamiya

twitterの文字上限、一向に140文字から増えないな…?とか思ってたら、半角英字数(≒バイト数)基準で280文字まで増えてたのか… ……って事は、半角カタカナでも文字数稼げるようになったのか……?

2017-11-27 11:19:28
北宮(多忙中) @kitamiya

■結果:twitter文字数上限: 半角数字:280文字まで 半角英字:280文字まで 半角カタカナ:140文字まで 全角文字:140文字まで …えー……?

2017-11-27 11:31:19

(2017/11/28 8:30追記)

北宮(多忙中) @kitamiya

半角英数字日本語の混在の場合は、例えば「重なり合うTrinity Field」だと、 「重なり合う」で5/140文字換算=10/280文字換算) 「Trinity Field」で13/280文字換算 の合計で、23/280文字換算となる。 (因みに改行も1/280文字換算。)

2017-11-28 08:32:45

(2017/11/27 23:30追記)
コメントから引用:

前にちょっち調べたら、 U+10FFまでが1文字、 U+1100以降が2文字、 でカウントして、280文字まで書けるみたいよ。
(夢乃 @iamdreamers さん)

とあったので、気になって調べたら、コード込みのツイートを見つけた:

Fake “Unicode.” 🩵🆓 @FakeUnicode

@umbrellanaut 1/280: [U+0000..10FF] [U+2000..200D] [U+2010..201F] [U+2032..2037] 2/280: everything else (by codepoint) pic.twitter.com/LNZuy4OBc0

2017-11-09 00:12:34
拡大

U+1100以降にも微妙に1バイト計算な文字が混じってるけど、概ねコメント通りで、あー、なるほどねー、ってなった。(情報ありがとうございます)

絵文字について追加検証結果

(2017/11/27 23:30追記)

北宮(多忙中) @kitamiya

参考: emojipedia.org/female-police-… 「👮‍♀️」は内部的に以下の四文字の組み合わせなので、ハンカク7バイト相当になるっぽい 「👮」 U+1F46E:全角1文字相当 「‍」   U+200D:ハンカク1モジソウトウ 「♀」 U+2640:全角1文字相当 「️」 U+FE0F:全角1文字相当

2017-11-27 22:55:40
北宮(多忙中) @kitamiya

同様な理由で、 「👩‍🚒」は内部的に「👩」(U+1F469)+「‍」(U+200D)+「🚒」(U+1F692)なので2+1+2=5バト 「👮」は普通に一文字の「👮」(U+1F46E)で2バイト

2017-11-27 23:10:21
北宮(多忙中) @kitamiya

「✂️」がなんで4バイト換算になるかわからなかったけど、以下サイト参照で、普通の「✂」(U+2702)に、余計な「️」(U+FE0F)がくっついて4バイトになってるのがわかった: apps.timwhitlock.info/unicode/inspec… …絵文字ややこしいね…

2017-11-27 23:14:59

.

以下、検証データ
北宮(多忙中) @kitamiya

letters-count-test-003045678900404567890050456789006045678900704567890080456789009045678901004567890110456789012045678901304567890140456789015045678901604567890170456789018045678901904567890200456789021045678902204567890230456789024045678902504567890260456789027045678902804567890

2017-11-27 11:14:44

  (↑280文字)

北宮(多忙中) @kitamiya

abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij

2017-11-27 11:26:39

  (↑280文字)

北宮(多忙中) @kitamiya

ハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテスハンカクカタカナテス

2017-11-27 11:22:38

  (↑140文字)

北宮(多忙中) @kitamiya

文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:文字数テスト十文字:

2017-11-27 11:09:03

  (↑140文字)


(ここから2017/11/27 23:30追記)

北宮(多忙中) @kitamiya

このほっけはUnicode. だとサロゲートペアな ので更に上限半減か? 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽𩸽 あれー?

2017-11-27 18:36:00

  (↑サロゲートペア(4バイト文字みたいなもの)でも通常の全角文字と同じく2バイト扱い)