最近までは、レポートを制作する際にMicrosoft Wordとかのワープロソフトウェアを利用していました。というのも、去年か一昨年辺りにTeXを利用しようとして途中で挫折したことがあったためです。
最近までは周りがTeXやnpm、herokuとかを使いこなしている中、私だけ*1なかなか理解できず追いついていけない状態でしたが、だいぶ分かってきたので記事に残しておきます。なお、TeXとnpmの間で関係とかは無いのでそれぞれ別に説明します。ちなみに、下記の説明は間違いが残っているかもしれません。
TeX
TeXは簡単に言うと、記号と文字列を組み合わせて紙の文章に印刷できるPDFファイル*2を生成するプログラムです。TeXと一口に言ってますが、実際は派生*3が数多く存在していて、現在は機能的にもその派生を利用することが多いです。HTMLがWebサイトを作るためにテキストで書いているならば、TeXは文章を作るためにテキストで書いている事になります。多分。
TeXの環境構築で挫折した
そんなTeXですが、最近までは環境構築で挫折していました。環境構築をし始めた時はTeX Live(詳細は後述)をインストールしていましたが、そのままインストールして容量を大きく取っていたことで後に手放してしまいました。
その後、Linuxを使い始めて、TeXのエディタも使い始めたのですが、実行の際にエラーが表示されてうまくいきませんでした。この後、検索で資料を得るなりした所、自己解決しました。
- 前述の通り、TeXのプログラムは派生が数多く存在していること。そしてその上にプラグインを活用して、出力する文章のバラエティ(?)を広げている。
- また、TeXのエディタはTeXのプログラムと別であること。
- エディタはどうしようかとそれぞれインストールして試しましたが、TeXWorksで落ち着きました。
- インストール後はTeX Wikiの記事に従ってタイプセットを追加しました。
- TeX Liveは確かに容量を大きく取るが、インストーラーの際は「スキーム」を選ぶことで容量は削減できる。
- これもTeX Wikiの記事が参考になりました。
- Linuxのようなコマンドラインからインストールする場合はパッケージを選定すればなんとかなるはず。
TeXはHTMLやmarkdownのような手軽さには及びませんが、学べる環境が構築できただけでも大きな進歩だと思いました。
npm
npmはパッケージマネージャです。パッケージマネージャについてはLinuxを学ぶ際に理解しているものの、今までの感覚で試すとエラーばかり出力されてしまい、困っていました。
Webでは npm install (パッケージ名)
とかの箇所がよく目立っていて、「(パッケージ名)をパソコンにインストール...ただの実行ファイルをインストールして何に活用するんだ?」と思っていました。
Angularを学習し始める時からnpmについてだいぶわかってきました。Angularを入れる際も、npm install angular@1.6.4
*4 と記載されていて、疑問を持ちながらnpmでインストールした所、ちょっとした便利さを感じました。
- npmはJavaScriptやCSSのファイルを取り扱う際でも、バージョンアップのためにWebからダウンロードする手間が省ける。
- 「パソコンにインストールする」のではなく、「プロジェクトにインストールする」感覚で扱う。
- ただし、コマンドラインから実行するプログラムも存在する。パソコンにインストールする感覚で扱いたい場合はインストールの際に
-g
を添える。
以前は bower を、最近は yarn を扱うことが多いみたいですが、まだ初心者なので npm で慣らすことにします。
その他
現在、Dockerやherokuとかのインフラ系の知識が疎い*5ので、色々構築して学んで見ましょうかね。