TIL

Today I Learned. 知ったこと、学んだことを書いていく

tmuxで256色表示に対応させる - tmux

「ubuntu12.10+tmux+vim、できるだけ少ない手順で256色表示にする」 - StupidDog's blog

上の記事が参考というかそのまんま

aliasを追加する

# ~/.bash_profile
alias tmux='tmux -2'

tmux(1) - Linux manual page を確認すると、-2オプションがあった

-2 Force tmux to assume the terminal supports 256 colours.

tmuxに端末が256色をサポートしていることを強制します。

tmux -2で256色を強制的にサポートできるのか!!!

参照文献

ENVは1行づつ記述すること - Docker

1つのENV内で定義した変数はそのENV内では使えないことがわかった

以下のものはTMPに何も設定されない

# TMPはブランク
ENV USER="tamago324" \
    TMP="${USER}"

正しく設定される

# TMPにtamago324が設定される
ENV USER="tamago324"
ENV TMP="${USER}"

1行ずつ書くのが良い

Docker 1.10以降では、イメージのレイヤーが作成されるのは RUN、COPY、ADDの3つのみになっているとのことです

# この書き方が一番いい!!
ENV NAME tamago324
ENV OS mac

RUNとCOPYとADDしかレイヤーが作成されないのは気が楽でいいね


ENVをわけない

FROM ubuntu:18.04

ENV USER="tamago324" \
    TMP="${USER}"

RUN echo ${TMP}
$ docker build -t test .
Sending build context to Docker daemon  89.09kB
Step 1/3 : FROM ubuntu:18.04
 ---> cd6d8154f1e1
Step 2/3 : ENV USER="tamago324"     TMP="${USER}"
 ---> Running in eadaba3299d3
Removing intermediate container eadaba3299d3
 ---> ddb342c89ac5
Step 3/3 : RUN echo ${TMP}
 ---> Running in df55730ff6c8

Removing intermediate container df55730ff6c8
 ---> 7f3914e78455
Successfully built 7f3914e78455
Successfully tagged test:latest
Step 3/3 : RUN echo ${TMP}
 ---> Running in df55730ff6c8

何も表示されない...

ENVを分ける

FROM ubuntu:18.04

ENV USER="tamago324"
ENV TMP="${USER}"

RUN echo ${TMP}
$ docker build -t test .

Sending build context to Docker daemon  89.09kB
Step 1/4 : FROM ubuntu:18.04
 ---> cd6d8154f1e1
Step 2/4 : ENV USER="tamago324"
 ---> Running in 7869a22a685f
Removing intermediate container 7869a22a685f
 ---> 02b76c851c06
Step 3/4 : ENV TMP="${USER}"
 ---> Running in 770fcb7d6444
Removing intermediate container 770fcb7d6444
 ---> a91b0bf173e4
Step 4/4 : RUN echo ${TMP}
 ---> Running in f55ddbef02b3
tamago324
Removing intermediate container f55ddbef02b3
 ---> 2de05b682fb3
Successfully built 2de05b682fb3
Successfully tagged test:latest

表示されてる!!

Step 4/4 : RUN echo ${TMP}
 ---> Running in f55ddbef02b3
tamago324

参考文献

shiftコマンド - shellscript

引数を1つずらす

#!/bin/bash

echo $1;

# 1つずらす
shift;

echo $1;
$ ./shift.sh 1 2
1
2

シェルスクリプトの引数は、$1$2のように数値で指定する。そのため、shiftを使うことで、 引数を1つずつ処理したい場合に役に立つ!!

参考文献

pwdコマンド - Linuxコマンド

現在いるディレクトリのことをカレントディレクトリというが、 これを確認するときにpwdコマンドを使う。

カレントディレクトリの表示ができるコマンド

pwd
$ pwd
/Users/tamago324/src

また、pwdの意味は

print working directory 作業中ディレクトリ表示

https://qiita.com/tetsuya/items/46888bb4dfc8a6bfef02

だそうです。

参考文献

chshコマンド - Linuxコマンド

change shell の略かな?

ログインシェルを変更するためのコマンド

-lオプション

設定可能なログインシェルの一覧が表示される。たぶん/etc/shellsっていう設定ファイルに記述されているパスが表示されるんだと思う。

実際には/etc/shellsに記述されたファイルが表示されるだけです。

http://www.ksknet.net/linuxai/chsh.html

-sオプション

chsh -s {シェルのパス}

ログインシェルを指定したシェルに変更する

参考文献


(会社のパソコンで書いているため、実際に動くかどうかは家帰ってからやる)

https://tmg0525.hatenadiary.jp/entry/2017/10/22/154852 へのスターの通知が来たから、見てみたとき、chshってコマンド使ってたけど、意味わからないで使ってたから、改めて調べてみた。

インストールと設定

$ brew update && brew install bash

$ sudo bash -c 'echo /usr/local/bin/bash >> /etc/shells'

$ chsh -s /usr/local/bin/bash

テーブルの横幅がうまく設定できないときはtable-layout: fixedをする - CSS

テーブルにtable-layout: fixedをやると横幅がうまく設定できた

.sample-table {
  table-layout: fixed;
}

参考文献

Chart.jsでグラフの表示 - JavaScript

https://github.com/chartjs/Chart.js/releases Chart.js.zip をダウンロードする

解凍したら、 Chart.min.js をプロジェクトに置く

.
├js/
│ ├lib/Chart.min.js
│ └graph.js
└index.html

index.html

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
<script src="js/lib/Chart.min.js"></script>
<style>

  .graph-container {
    width: 50%;
  }

  #myChart {
    width: 450;
    height: 450;
  }

</style>
</head>
<body>
  <div class="graph-container">
    <canvas id="myChart"></canvas>
  </div>
  <script src="js/graph.js"></script>
</body>
</html>

canvasをdivに入れないと、サイズを固定にできない

graph.js

createGraph();

function createGraph() {
  
  let ctx = document.getElementById('myChart');
  let myChart = new Chart(ctx, {
    type: 'bar',
    data: {
      labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'],
      datasets: [{
        label: '# of Votes',
        data: [12, 19, 3, 5, 2, 3],
        backgroundColor: [
          'rgba(255, 99, 132, 0.2)',
          'rgba(54, 162, 235, 0.2)',
          'rgba(255, 206, 86, 0.2)',
          'rgba(75, 192, 192, 0.2)',
          'rgba(153, 102, 255, 0.2)',
          'rgba(255, 159, 64, 0.2)'
        ],
        borderColor: [
          'rgba(255,99,132,1)',
          'rgba(54, 162, 235, 1)',
          'rgba(255, 206, 86, 1)',
          'rgba(75, 192, 192, 1)',
          'rgba(153, 102, 255, 1)',
          'rgba(255, 159, 64, 1)'
        ],
        borderWidth: 1
      }]
    },
    options: {
      scales: {
        yAxes: [{
          ticks: {
            beginAtZero: true
          }
        }]
      }
    }
  });
}

こんな簡単に表示できるものなの!?

参考文献