TweetDeck廃止でVivaldiブラウザに移行した話

ソフトウェア
スポンサーリンク

すでに1ヶ月前から予告されていたTweetDeck廃止だけれども、再起動を控えるなど最大限抵抗したけど本日再起動が必要となってしまい、結果的にTweetDeckにはどうやっても戻れなくなったらしい。

※一部で公開されているものなどを使えば、引き続きTweetDeckが使えるらしいが、アカウントを凍結されたりすると更に困るので、今回はできるだけブラウザでの閲覧でTweetDeckに近い環境を模索する。

※旧称Twitterは公式には「X」に名称変更されたが、面倒くさいので以下では旧称Twitter(tweet)のままとする。

そこでTweetDeck環境を、以前より噂を聞いていたVivaldiブラウザでの「タブタイリング」環境に移行したメモを残しておこうかと思う。

  • 2023年8月25日:「コマンドチェインで複数タブを開く」を追記、「マウスホバーでアクティブタブを切り替える」を修正
  • 2023年8月25日:「マウスホバーでアクティブタブを切り替える」を追記
  • 2023年8月24日:「オートリロード設定の省力化」を追記
  • 2023年8月23日:「TweetDeckに近づけるための運用・設定など」、「起動時にロードを繰り返してタブが真っ黒」を追記。CSS指定の対象URLがミスっていたため修正。
  • 2023年8月22日:「毎回ログインを要求される」「CSSでの表示調整」を追記
  • 2023年8月21日:初稿

目次

 

注意点など
・あくまでブラウザ(TWA)でTwitterのListを複数並べて見た目のみをTweetDeckっぽく閲覧しているだけですので、TweetDeck使用時と比較すると何らかの支障は当然出ます。例えば自動更新は当然されないため、手動でリロードを発生させるか、あるいはオートリロードでタブ全部を強制的にリロードする必要があります。
・TweetDeckでもホーム画面やユーザー名で閲覧してたような方は合わない可能性があります。
・単純にタイリングしてるだけなので、TweetDeckのように横にスクロールができるわけではなく、タイルが増えるほどどんどん1つのタブの表示面積は小さくなっていきます。実効画素数などによるでしょうが恐らく4~5タブあたりが実用上の限界じゃないかと思います。

 

 

ダウンロードなど

基本的にVivaldiのページに行ってダウンロードを押せば64ビット版がダウンロードされるはず。ファイル名を一応確認しておく。※Windows版の場合

 

初回起動

Vivaldiの初回起動を行うと、最低限の設定を行うチュートリアル的なものが出る。

ここで注意なのは「トラッカー・広告ブロック」の設定で、これを一番右(トラッカーと広告をブロック)してしまうとTwitterのログインすらできなくなる。中央の「トラッカーをブロック」にとどめておく。

設定してしまった場合などは起動後に、Vivaldiのウィンドウ左下にあるギアアイコンから設定を起動し、中央やや下にある「プライバシーとセキュリティ」に移動して「トラッカー・広告ブロック」で設定し直す。

 

行った設定など

Vivaldiに移行する最大のメリットである「タブのタイリング」の設定などをしていく。

「タブのタイリング」とは、本来複数のタブに分かれているものを無理やり一枚のタブ上に短冊のように並べて表示する機能を呼ぶ。これによりタブ切り替え操作をすることなく関係するタブをひと目で閲覧可能となり、まさに今回のTweetDeck的に使う用途では抜群の相性を発揮する。※昔のiframeタグで複数ソースを表示するようなイメージ

後はピン留めなどした上で、タブごとにオートリロード(自動更新)設定をタブの重要度ごとに設定すれば良い。確かまだ1日のtweet取得件数上限は解除されていないはずなので、もし手動で良いタブ(比較的更新頻度が遅いList)などがあるのならオートリロード設定は最低限にしておいたほうが良いと思われる。

その他:

  • 表示サイズ変更:Vivaldiウィンドウの右下に%表示があるので、これですべてのタブを90%表示くらいに落としてやる。「100%」のところをクリックすれば数値入力可能

 

タブのタイリング方法

タブのタイリング」は、基本的にタイリングしたいページのタブをShift+でクリックして選択していった後で、点線で選択されたタブ部分で右クリックしてコントロールメニューを開き、やや下辺りにある「x個のタブをタイリングする」で指定する。

今回私の場合はTwitterでは基本的に非公開Listで管理していた(TweetDeckでListを複数並べて表示していた)ため、そのリストを開いておいてタブタイリングすれば完了した。

※なお一度指定したタブタイリングにタブを追加したり削除したり、タブスタック/解除などをするとまた指定し直しになるようなので注意。

 

TweetDeckに近づけるための運用・設定など

できればTweetDeckでの使用感に近づけるために、指定のグループのブックマークをタブタイリングで縦並びに開きたいが、どうも1クリックでTweetDeckのような外見を実現する手段は(現時点で軽く調べた限りでは)なさそうに思える。→ 後述「コマンドチェインで一気に開いてタイリングする」を参照

・検索するとQ&Aなどが引っかかるが、「ウィンドウからスタック化しましょう」などの回答しかない。結局は1.一度タブを全部開き、2.タブスタックにして、3.タイリング指定するという3手順が必要になるようだ。※表示上だけなら2は必須ではないが運用上は行ったほうが便利
・Vivaldiは非常に多機能なため使い込めば出来なくもなさそうに思えるが、ツールに依存してしまうのは危険なため、できるだけ簡単な手順で代替手段の実現を優先する。

ということで、現時点では「一度開いたものは開きっぱなし」という運用が楽だと思われる。幸い、Vivaldiは終了時に開いていたタブの記憶と再開も(デフォルトで)やってくれる。

一応オプション関係の設定などのメモ。

  • タイリング対象のタブは「タブスタック」としておく(TweetDeck風に1枚のタブ扱いできる)
    • その上で該当タブスタックの(親)タブを「ピン留め」しておく ※下記設定のため
  • Vivaldiオプションの「タブ」:
    • タブスタッキング:「アコーディオン型」にする
      ※アコーディオン型だと、他のタブを見ている間は折りたたまれ、対象タブを見ているときだけ元の幅に展開される。 あるいはコンパクト型でもいいが、リロード再設定の時がめんどくさい。コンパクト型だとタブスタック内の個別(子)タブ名称は非表示になる。タブを切り替えれば子タブのURLは表示される
    • タブスタックオプション:「新しいタブをタブスタック内で開く」をオフ
      ※スタック内で開いてしまうとタブタイリングが壊れるため、(_blank属性のAタグを)必ず新しい「タブスタック外の親タブ」に開くようにする
    • ピン留めしたタブ:「ピン留めしたタブを閉じない」をオン
      ※誤動作で既存のタイリングしたタブを閉じてしまう事故を防ぐ
  • Vivaldiオプションの「ウェブページ」:
    • ウェブページの既定の拡大率「タブ単位でズーム率を維持する」をオフにする
      ※デフォルトはオンで、このままだと(ドメイン関係なく)タブ単位に記憶するだけであり、(サブ)ドメインごとには記憶しない。Chromeなどと同じサブドメインごとのズーム設定の保存をするにはオフにする。

その他の操作

  • 画像を見る:そのツイートを別タブに開き確認する ※相当不便だがデフォルトだと狭くなった列の中でしか表示できないため致し方ない
  • リプライ(返信のポスト)/リツイ(リポスト)/引用:そのツイートを別タブに開き作業する ※例えば引用などをしている最中に再描画が入ると、元ツイ情報や書いている途中の文章などが消えてしまうため致し方ない
  • リプライを見る/いいね:これだけは単純に左クリックで現在のタブで閲覧できる
  • そのツイートのリプライなどを確認する:そのツイートを別タブに開き確認する

要するになにかするときは、元ツイートを別タブに開くしかない状態になっている。なお元ツイートを開くには、そのツイートの”つぶやいた時間”をCtrl+左クリックが良い(あるいは”つぶやいた時間”を右クリックして「新しいタブでリンクを開く」)。

通常の左クリックでも現在のタブに開くが、結局リロードなどの影響を受けるので操作の邪魔をされるケースが多い。

ここまでしてメリットはあるのかという話もあるが、私の場合は「複数リストの閲覧」がどうしても外せない要件であるため現時点では我慢するほか無い。

 

タイリングを「縦ならび」に変える

普通にタイリング指定すると、ブラウザの幅にもよるが3列~4列表示すると「田」のような縦横タイリングされてしまう。できればTweetDeckの様に縦列の並びで表示したいのでこれは困る。

この設定は、タイリングしているタブで画面右下あたりに並んでいるアイコンの1つに「ページのタイリング(ページを並べて表示する)」アイコンがあるのでそれをクリックし、「左右に並べて表示」すれば良い。

 

不要な表示部分のトリミング作業

左右のツイートボタンなどが気になるが、これは拡張管理「Stylus」でCSS設定をすれば消すことができる。

※当然他のCSS管理拡張機能でも良いが、ただし下記が動作するかは試していないので各自でご自由にどうぞ。

普通にChrome拡張機能を探す手順で、まず「Stylus」を探して有効化する。次にStylusアイコンから「スタイルを検索」すると「OLD NEW TWITTER」というユーザー公開のCSS設定が見つかる。とりあえずこれを有効化すると左右の余計な部分は消える。※本来は(TweetDeckに関係なく)ブラウザでのTwitterデフォルト画面をなんとかしようというCSSのため、TweetDeck風画面では色々抜けてるがかなりTweetDeck風にできるので楽ちん。

ついでに各タブ最上部のヘッダー部分なども消したいが、面倒くさいし、そのうち誰かがスタイルを作るだろうからとりあえず今は我慢する。 仕方ないので↓に書きました。

 

スクロールバーを消す

現在私の環境ではVivaldiは、ほぼほぼ疑似TweetDeckブラウザなのでスクロールバーは要らない。

これはブラウザのオプション設定「vivaldi://flags(chrome://flags/)」で消すことができる。※拡張機能でも消せるがここではブラウザ本体のオプションで対応する

まず「vivaldi://flags」を開き、検索窓に「scroll」などと入れると一番上に「Overlay Scrollbars」というのが表示されるのでこれを「Enabled」に変えて指示通り再起動すれば、画面のスクロールバーが消えてスッキリする。

※要するにスクロール操作中など必要なときにだけスクロールバーが表示される仕様になる。

 

ヘッダー画像を地味なものに変える

※次の「CSSでの表示調整」を実行するのであればこの操作は不要です。

Listのヘッダーがデフォルトのままの場合、赤や緑の派手な画像が表示されてやや目障りに感じる。

そこで、適当に「twitterheader black」などで検索した”地味で目障りではない画像”を落としてきて(もちろん各自の好きな画像でも良い)、TwitterでListを表示し、ヘッダー部分にあるカメラアイコンからヘッダー画像を差し替えてやると変更できる。

 

CSSでの表示調整

CSSでできるだけ消していく。拡張管理「Stylus」などで指定します。

あくまで私が疑似TweetDeckに求める環境にするための一時的かつ簡易なCSSであり、各自が求める機能が正常に動作しない可能性があります。希望通りの動作をしない場合は、各自で工夫するなり、随時取り消すなりしてください。
折りたたみます
リスト上部の不要な情報をできるだけ消す

各リスト上部にある不要な情報群を消す。

次で始まるURL:https://twitter.com/i/lists/ ※対象をリスト画面だけにしないといろいろと支障が出ます。

/* リスト情報:編集ボタン */
.r-1x0uki6{
display:none;
}

/* リスト上部の空白削除 */
div[data-testid="cellInnerDiv"]:first-child {
display:none!important;
}

※他にも邪魔なものがありますが、これ以上消すと画面遷移したときに戻れなくなったりするので残してます。

※当初「.r-1f1sjgu」も非表示化していましたが、それを入れるとリポスト/引用リポストボタンまで消えてしまうため削除しました。

 

パディングを消す

左右のパディングを消して表示情報量を増やす。

次で始まるURL:https://twitter.com/i/lists/ ※対象をリスト画面だけにしないといろいろと支障が出ます。

/* 個別ツイートのパディング*/
.r-i023vh{
padding-left:0!important;
padding-right:0!important;
}
/* ツイート本文のパディング */
article[aria-labelledby]{
padding-right:0!important;
}

 

毎回ログインを要求される

私は普段Windows10のスリープ機能を使用しており、TweetDeckのタブも開いたままで運用していました。それと同様にVivaldiで使おうとすると、スリープ解除(復帰)時にセッションが切れているためか再ログインを要求される事になってしまいました。これでログインを繰り返していると、「不審なログインが阻止されました」というメッセージ表示をすることもあります。

これはどうもクッキー設定を弄ったためのようで、「設定」→「プライバシーとセキュリティ」→下の方にある「COOKIE」と進み、「受け入れるCookie」を「すべて」にしておくと要求されなくなる。

※これを「セッションのみ」にしてしまうと毎回要求されるようになるようだ。ホワイトリストでクッキーを保護する拡張機能を入れようかと思ったが、現時点ではTweetDeck専用なのでとりあえずこの設定で使おうと思う。なおサードパーティCookieは「全てブロック」でも問題ない。

 

起動時にロードを繰り返してタブが真っ黒

上記スリープ解除(復帰)時に、Vivaldiの画面がロードを繰り返してタブが真っ黒になるという事象も発生する。特にオートリロード間隔を1分や2分に設定したタブで起こる。

これはどうもオートリロード設定に原因があるようで、復帰時に一度オートリロードを全タブで無効化し、さらにオートリロードを再設定することで再び閲覧できるようになるということがわかった。どうもVivaldiのスリープ突入時のオートリロードの処理が若干おかしいのではないかと思われる。※オートリロードを設定していないタブでは通常通りTweetが表示されている

復帰時に画面が真っ黒でも、慌てずにオートリロード設定を一度無効化してみると良いかも知れない。

 

コマンドチェインで一気に開いてタイリングする

色々いじっていると、Vivaldiブラウザの「コマンドチェイン」という仕組みを使うと、一気に開いてタイリングまでできることがわかりました。コマンドチェインとは、Vivaldiのコマンドを並べて自動実行できるマクロのようなものです。

「設定」-「クイックコマンド」と開きコマンドチェインの箇所を見ると、そのものズバリの「リンクを開いてタイリングする」というコマンドチェインのサンプルが登録されています。一度これを試してみましょう。

まず新規タブが開いた状態で、「F2」を押してクイックコマンドメニューを起動し、一番下近くまで移動して「リンクを開いてタイリングする」を選択します。するとVivaldi関連のページが3つ開いて、すぐにタブ選択を行ってスタック化、左右に並べてタイリングまでしてくれます。便利ですね。

これをそのまま使えば、TweetDeckに非常に近いものが1コマンドで実現できることがわかるかと思います。私の場合、自動リロードも設定したかったため下記のような設定をしてみました。

これで、対象のURLを全部開き、さらに自動リロードの設定も行った上でスタック化、左右並べてタイリングまでを一気に行うようになりました。自動リロードは要らないやという場合はほぼサンプルのURL書き換えだけで大丈夫だと思います。

「チェインの名前」は呼び出し時に使います。今回は名前を英語でつけたため、起動手順は「F2」-「twe…」などと打ち込んで絞り込みした上で実行すると、後は勝手にTweetDeckと同様の見た目でタブを開いてくれるようになります。

わかってしまえばこんなにも簡単な手順でTweetDeck化することが出来ました。

 

オートリロード設定の省力化

オートリロード(自動リロード)設定をスリープ解除(復帰)時に繰り返す必要があり、いちいちタブのコンテキストメニューから設定するのはやや煩瑣です。これを省力化する手順を考えました。

コマンドチェインで指定できたため折りたたみます
コマンドチェイン

Vivaldiにはコマンドチェインという仕組みがあり、要するに簡単なマクロのようなものを組むことが出来ます。

  1. 「設定」-「クイックコマンド」-下の方の「コマンドチェイン」で、左側にある一覧の下の「+」を押すと新規作成開始。
  2. チェインの名前に「自動リロード1分」などと名前をつける
  3. Command1の遅延と書かれているテキストボックスに「自動」などと入力して「自動リロード」を選択
  4. コマンドパラメーターに、1分なら「60」と入力
    ※修正:既定の秒数(60/120/300/6000/1800)で指定しないと無効
  5. 一応「チェインのテスト」をしておく

次は実際にコンテキストメニューまたはショートカットキーに設定する手順です。どちらでもいずれでもお好みで。

※「コマンドチェイン」と書いているように、本来はいくつかのコマンドを組み合わせて一連の操作を自動化するようなものなので、ちゃんと使えばもっと高度なことができるかと思います。

 

1)コンテキストメニューの場合

次にコンテキストメニューを編集します。

  1. 「設定」-「外観」-「メニューのカスタマイズ」
  2. ”Vivaldi ボタンメニュー”と書かれている欄をクリックし、ウェブページの「ページ」を選択
  3. 2つ並んでる右側の一番下コマンドチェインを開くと、先程作成した「自動リロード1分」のコマンドがあるはずなので
  4. これをドラッグして2つ並んでる左側の”内容欄”(これがコンテキストメニューの実体)の使いやすい位置にドラッグ
  5. メニューの区切りなどを調整

以上で、(タブでは無く)ツイッター画面の適当な場所でコンテキストメニューを呼び出すと、「自動リロード1分」があるので、それを選択すれば自動リロード設定が行われる。

※[自動リロード]自体を入れても良いのですが、サブメニューを掘る一手順がイライラするイラチなんです。

2)ショートカットキーの場合

コンテキストメニューじゃなくショートカットキーの方がいいやという場合はこちら。

  1. 「設定」-「キーボード」で下の方には「ウィンドウ」メニューのコマンドが並んでるがとりあえず右端の「-」をクリックしてこれを閉じる
  2. 一番下に「チェイン」というのがあるので「+」をクリックしてこれを開く
  3. 開いたコマンドのリストに、先程設定した「自動リロード1分」があるはずなので、これに新たなキーバインドを設定する

以上

 

マウスホバーでアクティブタブを切り替える(VivaldiでのMod導入手順)

元々Centブラウザを使っていたため、Vivaldiブラウザがマウスホバーによるアクティブタブ切り替えに対応していないことが苦痛でしたが、どうもModという仕組みを使うことで実現できることがわかりました。

※バージョン6.2以降、どうもこのマウスホバーによるアクティブタブ切り替えが上手く動作しない状況(無反応)になっているようです。情報を収集していますが、私は現時点で解決できていません。

調べた所、どうもその追加手順などの日本語リソースがあまり無いようでしたので、改めて手順をまとめました。

・VivaldiでのModとは、jsファイルやcssファイルなどを追加することでブラウザの動作を少し変更することを言うようです。ただしブラウザに専用の管理画面などがあるわけではなく、手作業でそれらの関連ファイルを設置した上で、管理ファイルを編集する必要があります。
・その意味においては、Firefoxでjsやcssを弄ることでカスタマイズするのとあまり変わりはなく、その1つ1つを「Mod」と呼んでいるようなものだと思います。
・またこれもFirefoxでjsファイルを編集するのと同様に、仕組み敵には導入者の意図しない動作を行わせることも可能だろうと思われるため、あまり出所の怪しい(あるいは導入者の少なそうな)Modを導入することは避ける必要があると思います。それは利用者各自の責任になるかと思います。

今回の場合は、「activate-tab-on-hover.js」というファイルを追加する作業となります。

  1. 対象のファイルをダウンロードする
    ※今回の場合は「activate-tab-on-hover.js」をvivaldi_modding/activate-tab-on-hover.js at master · luetage/vivaldi_modding · GitHubから手動でダウンロードしてくる
  2. ファイルを所定の位置に格納する
    ※Vivaldiのフォルダ構造はなぜかバージョン含むようになっているため、各自でバラバラとなるようです。最近Vivaldiに移行した方の場合は、「%USERPROFILE%\AppData\Local\Vivaldi\Application\6.1.3035.302\resources\vivaldi」になるようです。「6.1.3035.302」の部分が導入バージョンにより変化すると思われます。
    ※2023年8月30日にバージョンアップがあり、フォルダが「6.2.3105.43」に変更され、さらにModファイル自体が消されていました。どうやらVivaldiのバージョンアップではそういう挙動をするようです。
  3. 念のために同じフォルダのbrowser.htmlをコピーしてバックアップを取っておく
    ※結局これが管理するファイルなので、いじって何が問題がでた場合は、すぐさまこれを戻せば問題自体は消える。
  4. browser.htmlをエディタで開き、 <body>の下に「<script src=”activate-tab-on-hover.js”></script>」の1行を追加する
    ※Windows標準の「メモ帳」アプリなどではファイル管理の都合上、支障が出る可能性があります。あくまでテキストエディタを使うようにしましょう。
  5. ファイルを閉じてVivaldiブラウザを再起動する

Vivaldiブラウザのタブ部分にマウスカーソルをホバーさせると、それだけでアクティブタブが切り替わっていれば完了です。思うように動作しない場合は、フォルダの位置や記述内容を確認してみてください。

※蛇足ですが、今回はjsファイルだけだったので簡単でしたが、例えばModにcssを含む場合には同フォルダの「style」フォルダに格納する必要があるようです。つまり複雑なModを導入したり削除したりするときには、各自でファイルを管理する必要があるということです。これはこれで問題があるように思いますが…

しかし、これでTweetDeck化がもう一弾進むかと思ったのですが、どうもブラウザのタブ部分だけが判定対象となっているため、これだけでは(タブではない)コンテンツ表示部分にホバーするだけではアクティブタブの切り替えは不可能でした。これはこれで便利なのですが、今後さらに調査したいと思います。

 

 

参考情報

複数アカウントの切り替え

ができるというChrome拡張機能もある。売り文句は「ワンクリックでTwitterアカウントを切り替える」というもの。試してないので使い勝手はわからない。

複数のTwitterアカウントスイッチャー – Chrome ウェブストア

 

コメント

  1. Makoshi より:

    自動更新はこんなのありますよ
    http://coltpythonkingcobra.g1.xrea.com/pseudoTweetdeck/

    • 管理人 より:

      コメントありがとうございます。
      はい、存じております。実際に私も(一部改変したりして)使ってます。
      ただブログで紹介するとなると迷うところもあるため、紹介していません。

タイトルとURLをコピーしました