前書き
皆さんはレポートや資料を作るときにwordを使っていませんか?
皆さんの中に「表や数式の作成が面倒くさい」だとか、「キャプションの数字がずれる」、「大きさ、位置の設定がわかりづらい」のように、wordが使いづらいと感じている人はいませんか?
そんなみなさんの悩みを簡単に解決する方法があります!
それはそう、”tex”を使うことです!
この記事ではそんなtexの紹介とwindows10/11での環境構築の方法の紹介していきます。
texとは
texは文書整形システムの一種で様々な文書の作成に用いられます。
texの大きな特徴としてプログラミング言語のようにコードを記述して文書を作るというものがあります。
例えば下の図のような簡単な文書を書こうとすると、
下のようなコードになります。
\documentclass[11pt,a4paper]{ltjsarticle}
\usepackage{luatexja}
\usepackage{luatexja-fontspec}
\setmainjfont{IPAexMincho}[BoldFont={IPAexGothic}]
\setsansjfont{IPAexGothic}
\newcommand{\TITLE}{あいうえお}
\begin{document}
\centerline{\LARGE \TITLE}
\section{かきくけこ}
さしすせそ
\section{たちつてと}
なにぬねの
\subsection{はひふへほ}
まみむめも
\subsection{やゆよ}
らりるれろ
\end{document}
知らない人からすれば何が何だかわからないかもしれませんが、慣れればwordよりも正確に且つ高速に様々な文書を作れるようになります。
なによりも普通にwordを使うよりもなんかかっこいいというのが筆者がおすすめする理由です。
ぜひtexをマスターして友達に自慢しましょう!
texのインストール
この章ではtexのwindows10/11へのインストール方法について紹介します!
1.CTANからtexのisoイメージをダウンロード
こちらのサイトにアクセスして”texlive2024.<西暦>”というファイルをクリックしてダウンロードします。texliveが含まれたisoイメージがダウンロードされます。公式インストーラを使用する方法もありますが、そちらは時間がかかるためこちらを使用します。こちらのファイルは容量が5.6GBほどあるためご注意ください。
CTANとは?
texに関するファイルやソフトウェアを集めたウェブサイト、またはその集合体。
isoイメージとは?
CDやDVDといった光ディスクの内容を丸ごと含めたファイル形式で、windows上では仮想ドライブとして機能する。
2.ダウンロードしたisoイメージをマウントし、内部のbatファイルを起動
ダウンロードしたisoイメージをダブルクリックするとエクスプローラーの左下のPCやネットワークと書かれている場所に新たにusbドライブができるためそちらをクリックし、内部を開きます。これは仮想ドライブであり、端末に挿して使うUSBドライブとは異なります。
そうするとinstall-tl-windows.batというファイルがあるのでそちらを起動します。
下の画像のようなインストーラが起動します。
こちらは特に設定する必要はなくインストールを押して大丈夫です。すると下の画像のような画面になり、あとは30分ほど待ちます。画面が変化しなくなると閉じるボタンが押せるようになりインストールが完了します。
マウントとは?
仮想ドライブを含むドライブなどをOSに認識させ、利用可能な状態にすること。
.batファイルとは?
windows環境で実行できるコマンド列を記述したファイル。開くことで記述されているコマンドを順に実行することができる。
texの環境構築
texはアプリケーションではなく、あくまで機能であるため、wordのような分かりやすいUIが最初からあるわけではありません。そのため今回はMicrosoftが提供する無料のエディターのVSCodeでの環境構築の方法を紹介します。
1.VSCodeで拡張機能、「”latex workshop”」をインストールする。
VSCodeを開いて左側のウィジェットにある拡張機能を選択します。
検索窓から”latex workshop”と検索し、出てきた拡張機能をインストールします。
2.VSCodeのユーザー設定を変更
VSCodeの画面左下にある歯車マークをクリックし、出てきた選択肢から設定をクリックし、設定画面を開きます。
そしたら設定画面を開いたウィンドウの右上にあるファイルをくるっと回しているようなマークをクリックし、setting.jsonを開きます。VSCodeでは設定は.jsonファイルで管理されており、そのファイル自体をユーザーが変更することができます。
また、以下のコマンドをVSCodeのコマンド機能を使って入力しても開くことができます。
>preferences:open usersettings(json)
setting.json内に以下のコードを記述します。
{
"latex-workshop.latex.recipes": [
{
"name": "lualatex",
"tools": [
"lualatex",
]
}
],
"latex-workshop.latex.tools": [
{
"name": "lualatex",
"command": "lualatex",
"args": [
"--cmdx",
"-file-line-error",
"-synctex=1",
"-interaction=nonstopmode",
"-halt-on-error",
"-output-directory=%OUTDIR%",
"%DOC%"
],
"env": {}
},
],
"latex-workshop.latex.outDir": "OUT",
"latex-workshop.latex.autoBuild.run": "onSave"
}
既に何か記述してある場合は以下のコードように追記してください。
{
"example": [
{
"example": "example",
"example": [
"example",
]
}
],
ここから追記
"latex-workshop.latex.recipes": [
{
"name": "lualatex",
"tools": [
"lualatex",
]
}
],
"latex-workshop.latex.tools": [
{
"name": "lualatex",
"command": "lualatex",
"args": [
"--cmdx",
"-file-line-error",
"-synctex=1",
"-interaction=nonstopmode",
"-halt-on-error",
"-output-directory=%OUTDIR%",
"%DOC%"
],
"env": {}
},
],
"latex-workshop.latex.outDir": "OUT",
"latex-workshop.latex.autoBuild.run": "onSave"
}
最後の文以外はコンマで区切る必要があるため、追記の際はご注意ください。
コードの意味は詳しくは説明しないので気になる方はぜひ調べてみてください!
これにてVSCodeでの環境構築は完了です!
texの試用
続いて実際にtexファイルからpdfを作ってみましょう!
VSCode上でワークスペースに”test.tex”を作成し、以下のコードを記述します。
\documentclass[11pt,a4paper]{ltjsarticle}
% 数式
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{bm}
\usepackage{physics}
\usepackage{mathtools}
% 画像
\usepackage{graphicx}
\usepackage{float}
\usepackage{subcaption}
% 表
\usepackage{makecell}
% その他
\usepackage{url}
\usepackage{multirow}
\usepackage{ascmac}
\usepackage{cases}
\usepackage{upgreek}
\usepackage{xcolor}
\usepackage{listings,jvlisting}
% リストの設定
\renewcommand{\lstlistingname}{リスト}
\definecolor{commentgreen}{RGB}{0,200,0}
\definecolor{eminence}{RGB}{120,80,250}
\definecolor{weborange}{RGB}{255,165,0}
\definecolor{frenchplum}{RGB}{10,150,200}
\lstset{
language = {C},
basicstyle = \ttfamily\small,
keywordstyle=\color{eminence}\ttfamily\bfseries,
commentstyle=\color{commentgreen}\textit,
identifierstyle=\color{black}\ttfamily,
xleftmargin=.35in,
frame=lines,
showstringspaces=false,
numbers=left,
stepnumber = 1,
breaklines=true,
numberstyle = \ttfamily\normalsize,
tabsize=4,
emph={int, int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t, char, double, float, unsigned, void, bool},
emphstyle={\color{blue}},
morekeywords={>, <, ., ;, +, -, *, /, !, =, ~},
breakindent = 10pt,
framexleftmargin=10mm,
columns=fixed,
basewidth=0.5em,
}
% 特定のスタイル設定
\lstdefinestyle{customtxt}{
basicstyle=\ttfamily\footnotesize,
backgroundcolor=\color{lightgray},
frame=single,
breaklines=true,
columns=fullflexible,
showspaces=false,
showstringspaces=false,
showtabs=false,
tabsize=4,
}
% 日本語対応
\usepackage{luatexja}
\usepackage{luatexja-fontspec}
% フォント設定
\setmainjfont{IPAexMincho}[BoldFont={IPAexGothic}]
\setsansjfont{IPAexGothic}
% コマンド
\newcommand{\TITLE}{タイトルを入力}
\newcommand{\NAME}{名前を入力}
\newcommand{\NUMBER}{学籍番号を入力}
\begin{document}
\centerline{\LARGE \TITLE}
\begin{table}[b]
\centering
\begin{tabular}{|c|c|}
\hline
報告者 & \NUMBER \quad \NAME \\
\hline
提出日 & \today \\
\hline
\end{tabular}
\end{table}
\newpage
\tableofcontents
\newpage
\centerline{\LARGE \TITLE}
\begin{flushright}
報告者 : \NUMBER \quad \NAME \\
提出日 : \today
\end{flushright}
\section{目的}
\section{理論}
\section{実験方法}
\section{実験結果}
\section{考察}
\section{報告事項}
\begin{thebibliography}{99}
\bibitem{example}
著者名,"タイトル",雑誌名(発行元),巻数,発行年,ページ
\end{thebibliography}
\end{document}
こちらは簡単なレポートのテンプレートです。
前章ので保存時にビルドするように設定したため、保存することで.texファイルがビルドができます。ビルドされない場合は、「Ctrl+Alt+B」でもビルドが可能です。
ビルドの状況はVSCode画面左下にあるマークを見ると判断できます。
ビルドすると、texファイルと同じディレクトリにoutputフォルダが作成されます。
こちらの中からpdfを選択してみましょう!
このように表示されれば成功です!
あとがき
ここまでtexとそのインストール方法について紹介させていただきました!
texを使えるようになれば文書作成が非常に快適になるのでぜひやり方を勉強してください!
内容の改善に努めていますので何か間違った点やより良い方法があるといった意見があれば遠慮なくコメント欄に書いていただけると幸いです。
記事を最後までご覧いただきありがとうございました。他の記事ではtexの便利な設定や勉強方法などを更新していく予定ですので是非そちらもご覧ください!
コメント
いい記事ですね。とても見やすいです。
参考になりました!!
texの導入方法がわかりやすく書かれている素晴らしい記事です。
Wordをやめてからレポートを書くのにかかる時間が大幅に減少しました。
そのおかげてレポートを書くのが楽しくなりました。
これでようやくwordのゴミみたいなキャプションとオサラバできます‼️
うっひょ~~~