2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

WTF the terminal dashboardでターミナル上にいろいろ表示する

Last updated at Posted at 2019-09-01

はじめに

WTFはターミナル上(iterm2など)で個人用のダッシュボードを表示するツールです。Googleカレンダー、天気、PCのバッテリー残量、ニュースフィード、Githubのリポジトリ情報など様々な情報をターミナル上に表示できます。
社内のTypetalk上にある技術情報を共有するトピックで紹介されていて、「これは便利そう」と思ったのでさっそく使ってみました。

前提条件

  • macOS上で操作すること。
    • バイナリでインストールすれば、LinuxやFreeBSD上でも動作するようです。

参考情報

WTFをインストール

INSTALLATION を参考にインストールします。

Homebrewの場合

brew tap wtfutil/wtfutil
brew install wtfutil

wtfutil

バイナリの場合

https://github.com/wtfutil/wtf/releases から自分の環境にあう最新版を取得し、展開。そのディレクトリに移動し、以下コマンドを実行。

./wtfutil

WTFを起動

すでにインストールの手順で書いてあるとおり、Homebrewでインストールした場合はwtfutil、バイナリでインストールした場合はバイナリがあるディレクトリで./wtfutilを実行するとWTFが起動します。

初回起動時に設定ファイル ~/.config/wtf/confg.yml が生成され、この内容に従ってダッシュボードが表示されます。(v0.21.0以前は手動での作成が必要です)
ダッシュボードにはWTFのモジュールを組み合わせることで様々な情報を表示することができます。
Screen_Shot_2019-09-01_at_18_49_48 2.png

左の縦長の列が~/.config/wtf/confg.ymlの内容。1 とキーボードフォーカスがついています。 1 を入力すると、このカラムにフォーカスが移動します。Enterでデフォルトのテキストエディタが開きconfg.ymlが編集できます。
Screen_Shot_2019-09-01_at_19_01_38.png

1行目に2つ並んだカラムは、各種都市・タイムゾーンの時計です。表示したい都市・タイムゾーンはconfg.ymlで定義可能です。

2行目のFeed Readerには、ニュースフィード(RSSやatom)から取得した情報が表示されます。ここには 2 とキーボードフォーカスがついています。
フォーカスを移動したあと、キーボードの↑↓で行の移動ができ、Enterでそのフィードをブラウザで開きます。
Screen_Shot_2019-09-01_at_19_04_39.png

3行目には左側にインターネット接続時のグローバルIPアドレス、プロバイダー名、都市名などの情報が表示されています。右側にはバッテリーの充電状況や残り稼働時間などが表示されています。

4行目には、uptimeコマンドの結果が表示されています。

config.ymlのカスタマイズ

上記のスクリーンショットではClocksのカラム内で行が途中で折り返しているため、幅の設定が合っていないようです。(wtf/grid/columnsの設定)
そのほか、自分に必要なモジュールを並べて全体的にカスタマイズしてみました。

TodoリストやPCのリソース情報、ニュースフィード、天気予報などを並べています。
Screen Shot 2019-09-01 at 20.05.51.png

~/.config/wtf/confg.yml は以下のように定義しています。

wtf:
  colors:
    border:
      focusable: darkslateblue
      focused: orange
      normal: gray
  grid:
    columns: [35, 35, 35]
    rows: [10, 10, 10, 10]
  refreshInterval: 1
  mods:
    clocks:
      colors:
        rows:
          even: "lightblue"
          odd: "white"
      enabled: true
      locations:
        UTC: "Etc/UTC"
        New York: "America/New_York"
        Amsterdam: "Europe/Amsterdam"
        Paris: "Europe/Paris"
        Tokyo: "Asia/Tokyo"
        Singapore: "Asia/Singapore"
      position:
        top: 0
        left: 1
        height: 1
        width: 1
      refreshInterval: 15
      sort: "alphabetical"
      title: "🕗 World Clocks"
      type: "clocks"
    feedreader:
      enabled: true
      feeds:
      - http://www.publickey1.jp/atom.xml
      feedLimit: 10
      position:
        top: 3
        left: 0
        height: 1
        width: 3
      title: "📰 News"
      updateInterval: 14400
    prettyweather:
      colors:
        name: "lightblue"
        value: "white"
      enabled: true
      position:
        top: 1
        left: 1
        height: 1
        width: 1
      title: "☀️ Weather"
      City: "Fukuoka" 
      refreshInterval: 150
    power:
      enabled: true
      position:
        top: 0
        left: 2
        height: 1
        width: 1
      refreshInterval: 15
      title: "⚡️"
    hackernews:
      enabled: true
      numberOfStories: 10
      storytype: top
      position:
        top: 2
        left: 0
        height: 1
        width: 3
      title: "🗞 HackerNews"
      refreshInterval: 300
    resourceusage:
      enabled: true
      position:
        top: 1
        left: 2
        height: 1
        width: 1
      title: "💻 Resouce"
      refreshInterval: 1
    todo:
      checkedIcon: "X"
      colors:
        checked: gray
        highlight:
          fore: "black"
          back: "orange"
      enabled: true
      filename: "todo.yml"
      position:
        top: 0
        left: 0
        height: 2
        width: 1
      title: "📋 ToDo"
      refreshInterval: 3600

モジュール

MODULESに様々なモジュールが公開されていたり、オリジナルのモジュールも開発できるようなのでカスタマイズの幅は広そうです。

Googleカレンダーを表示するサンプルは、WTF the terminal dashboard でターミナル上にGoogleカレンダーを表示する に記載しました。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?