IT技術にまつわる実験ノート

「長編を書くより、短編を数多く完成させてください。それが上達への近道です」 by 手塚治虫

自作Webアプリ「IT勉強会用 名刺ジェネレーター」を公開しました!ぜひご活用ください😀

https://it-benkyoukai-meishi.herokuapp.com/

Macのターミナルの色をUbuntuっぽくしてみる

はじめに

Macのターミナルの色をUbuntuのターミナルの色に変更することができた。設定の手順が面倒だったのでメモっておくことにする。

f:id:matt-note:20190920162921p:plain

 

設定する

まずはターミナルを起動して、左上のメニューから「環境設定」をクリックする。

f:id:matt-note:20190920163001p:plain

 

タブの「プロファイル」をクリックして、左下の「+」ボタンをクリックすると、新しいプロファイルを追加できる。ここではubuntuという名前をつけてプロファイルを追加した。左下の「デフォルト」ボタンを押すとデフォルトのプロファイルを設定できる。背景色は「カラーとエフェクト」から設定できる。テキストの色は「テキスト」をクリックすると設定できるようになる。

f:id:matt-note:20190920165003p:plain

 

背景色の設定は以下の通り。

f:id:matt-note:20190920163728p:plain

 

文字色の設定は以下のようにして白にできる。

f:id:matt-note:20190920163823p:plain

 

最後にタブの「一般」から、起動時に開くプロファイルを設定する。

f:id:matt-note:20190920164145p:plain

 

これでMacのターミナルをUbuntuっぽくカスタマイズすることができた。

f:id:matt-note:20190920165307g:plain


参考

 

MacでGifCaptureを使ってPC画面をGIF録画をしてみる

はじめに

Googleで「mac gif record github」で検索したところ、GifCaptureというアプリを見つけることができた。使ってみると、サクッとGIFを録画することができた。

 

使ってみる

以下のコマンドでアプリをインストールできる。

  • brew cask install gifcapture

 

ただ、普通に使おうとすると「開発元が未確認のため開けません」と表示されて、使うことができない。

 

面倒だけど、Finderから「アプリケーション」をクリックして、controlキーを押しながらGifCaptureをクリックして「開く」をクリックする必要がある。

f:id:matt-note:20190920154806p:plain

 

アプリを起動すると、「Record」ボタンでGIF録画を開始して、「Stop」ボタンで録画を終えることができる。シンプルにPC画面をGIF録画できるので、アプリ自体はとても便利だった。

f:id:matt-note:20190920154854p:plain

 

 

Macでgitのブランチをtab補完できるようにする

はじめに

どうやらMacではデフォルトでgitのブランチをtab補完できないらしく、手作業で設定を追加する必要がある。

 

設定してみる

以下の記事を参考にすると、Macのターミナルでgitのブランチをtab補完できるようになる。

 

git-completion.bashの存在を確認する。

  • ls /usr/local/etc/bash_completion.d/ | grep git

f:id:matt-note:20190920151507p:plain

-> git-completion.bashの存在を確認できた。

 

~/.bashrc に設定を追加する。~/.bashrc ファイルがない場合は作成する。(touch ~/.bashrc)

  • echo "#gitのtab補完" >> ~/.bashrc
  • echo "source /usr/local/etc/bash_completion.d/git-prompt.sh" >> ~/.bashrc
  • echo "source /usr/local/etc/bash_completion.d/git-completion.bash" >> ~/.bashrc

 

設定を反映させる。

  • source ~/.bashrc

 

これでブランチ名をtab補完できるようになる。

f:id:matt-note:20190920153213g:plain

 

デフォルトでは、ブランチ名を一字一句間違えずに入力する必要があったため、tab補完ができるとブランチ名の入力が楽になる。

 

HerokuにデプロイしたRailsアプリではgemのwheneverを使うことができない

wheneverのREADME.mdには、次のように書かれている。

Heroku?

No. Heroku does not support cron, instead providing Heroku Scheduler. If you deploy to Heroku, you should use that rather than Whenever. 

 

Herokuではcronをサポートしていないため、wheneverを使うことができないとのこと。

Railsアプリでcronを使って定期的にバッチ処理を行う場合は、wheneverを使う」といった記事をネット上で見ることができるが、HerokuにデプロイしたRailsアプリではwheneverを使うことができないので注意。

 

ENV.fetch メソッドは第二引数でデフォルト値を設定できる

Ruby は ENV で、環境変数を参照することができる。

f:id:matt-note:20190909165719p:plain

 

上記のファイルを実行すると、以下のように出力する。

f:id:matt-note:20190909165841p:plain

 

ENV["HOME"] と ENV.fetch("HOME") は同じ意味で、HOME環境変数を参照する。そのため両方とも同じ値("/Users/matt")を出力する。 

ENV.fetch は、第二引数にデフォルト値を設定することができる。ここでは最初に第一引数で指定した環境変数HOGEを参照するが、この値は設定していないので、第二引数でデフォルト値として指定した "hoge_hoge" を出力する。

 

参考: https://ruby-doc.org/core-2.6.3/ENV.html#method-c-fetch

rubocopを使ってRailsアプリでダブルクォーテーションを使うように統一する方法

設定方法

.rubocop.yml ファイルに以下のように記述すると、Railsアプリでダブルクォーテーションを使うように統一することができる。また、日本語コメントを許可する設定を書いておくと、気軽に日本語でコメントを書くことができるようになる。

f:id:matt-note:20190909145227p:plain

 

設定を書いたら、rubocop --auto-correct コマンドで、アプリ内のすべてのシングルクォーテーションをダブルクォーテーションに自動修正することができる(Excludeで除外しているものは対象外)。このコマンドは rubocop -a と省略しても実行できる。

  • rubocop -a

f:id:matt-note:20190909150112p:plain
 

なお、公式のRailsリポジトリではダブルクォーテーションを使うように統一している。

f:id:matt-note:20190909145551p:plain

 

YAMLのアスタリスクは何なのか

説明

YAMLの参照は、ポインタのように、値を指し示すときに使うとのこと。

YAML references are similar to pointers in programming languages

 

YAMLでは、&(アンパサンド)とアスタリスクを使って、変数定義と変数参照をすることができる。 

 

使ってみる

ここでは yamachan.yml を作成してキャラクターと声優を管理してみる。

f:id:matt-note:20190907120348p:plain

 

yamachan.rb を作成して yamlファイルを読み込んで値を出力してみる。

f:id:matt-note:20190907121410p:plain

 

yamachan.rb を実行してみる。

f:id:matt-note:20190907121446p:plain
 

&で変数と値を定義して、*yamachan のようにして、変数の値を参照することができた。

アンパンマンで、また山ちゃんが声優を務めるキャラクターが増えたら、*yamachan で声優名を参照すれば良いという使い方ができる。また、山ちゃんが芸名を変更することになったら、yamachan の値を変更するだけでよくなる。

 

参考