私のレポート環境

#はじめに
この記事は[長野高専 Advent Calendar 2021](https://qiita.com/advent-calendar/2021/nnct)の15日目の記事です。
アドベントカレンダーの他の方の記事も見たのですが、すごい記事ばかりで涙が止まらなくなりました。
基本的にコードがあって、ちゃんと技術的な文章で正直ヘコみました。
私はコーディングを個人でなかなかやらない人間なので、もしかしてアドベントカレンダーにエントリーする対象じゃなかった？とか思いましたが、まぁいっかと思って記事を書いています。Qiitaは初投稿です。MarkDownで書けるの勉強になっていいですね。

さて、本来だったら英語でggrksっていうタイトルで記事を書こうかなって思っていたのですが、ちょうどQiitaのトップページにそんなような記事があって萎えたので書きません。
ただ、英語で検索するのは大事なことなので、技術で困ったら英語で検索してみましょう。
理由としては英語の方が情報の量が多い(日本語使う人と英語使う人、どっちが世界で多いか考えれば当然ではある)ことやStack Overflowとかでいい感じのものが見つかったりするのです。(Stack Overflowって今の時代使ってると時代遅れって言われるときもらしいけど、割と有用なものは有用だとは思います)
検索方法としては

```
How to use 〇〇
```
とかで調べてみるといいかもです。


そんな感じの記事を書こうと思ってたんですけどね...


#本題
少しでも長野高専生に有益な情報を共有しようということで、私のレポート記述環境をお伝えします。
といっても、TeXの話になるので、情報科しか役に立たなさそうですが...

TeX環境、とりあえずTeX Liveは入れてそのあとはそこについてくるTeXworksとかで書いている人がわりと多い印象があります。実際それでもいいとは思うのですが、できればTeXStudioかVSCodeで書くといいかなぁと思います。

https://texstudio.org/

~~([VSCode](https://code.visualstudio.com/)はダウンロードページ出すまでもないよね？)~~

このふたつでTeXを書くと色々便利機能があります、例えばTeXStudioだと
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/537400/3c46ed57-84df-2348-8eb4-43216659251a.png)
手書きの数式をこんな感じでTeXで出力してくれたりとか

```latex
$y={\int }_{b}^{a}{x}^{2}$
```

VSCodeだと数式のスニペットがあって
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/537400/bdd0693b-0f3f-4dd9-3ddd-20251f47b49b.png)


```latex
\int_{}^{}  \,dx 
```

すっと数式が書けたりとかして便利です。
ちなみに、表を書きたいときは[このサイト](https://www.tablesgenerator.com/)使うといいです。


このふたつのTeX書くためのツールですが、設定が大変という問題があります~~(結局環境構築が一番難しい)~~
それでもって説明も大変なので、すでに素晴らしい解説記事がたくさんあるので、それを見てください！(丸投げ)
> 参考にした記事など
https://qiita.com/rainbartown/items/d7718f12d71e688f3573
https://lyncs.hateblo.jp/entry/2018/04/15/055543




#おまけ
私のVSCodeのTeXに関するjsonくんと秘伝のタレ的TeXファイルのプリアンブル置いとくので、参考にしてください...
TeXにもいろいろありますが、upLaTeXを使う想定で(たぶん最初のレポートでこれ使ったはず...upLaTeXは最新版だと日本語環境としては割と大変なことが起こっているらしいですが)
texファイルをコンパイルするときは、jlistingを同じディレクトリに入れてください。[こちらから](http://teacher.nagano-nct.ac.jp/fujita/LightNEasy.php?page=report)ダウンロードしてね


```json:settings.json
// ---------- Language ----------

    "[tex]": {
        // スニペット補完中にも補完を使えるようにする
        "editor.suggest.snippetsPreventQuickSuggestions": false,
        // インデント幅を4にする
        "editor.tabSize": 4
    },

    "[latex]": {
        // スニペット補完中にも補完を使えるようにする
        "editor.suggest.snippetsPreventQuickSuggestions": false,
        // インデント幅を4にする
        "editor.tabSize": 4
    },

    "[bibtex]": {
        // インデント幅を4にする
        "editor.tabSize": 4
    },


    // ---------- LaTeX Workshop ----------

    // 使用パッケージのコマンドや環境の補完を有効にする
    "latex-workshop.intellisense.package.enabled": true,

    // 生成ファイルを削除するときに対象とするファイル
    // デフォルト値に "*.synctex.gz" を追加
    "latex-workshop.latex.clean.fileTypes": [
        "*.aux",
        "*.bbl",
        "*.blg",
        "*.idx",
        "*.ind",
        "*.lof",
        "*.lot",
        "*.out",
        "*.toc",
        "*.acn",
        "*.acr",
        "*.alg",
        "*.glg",
        "*.glo",
        "*.gls",
        "*.ist",
        "*.fls",
        "*.log",
        "*.fdb_latexmk",
        "*.snm",
        "*.nav",
        "*.dvi",
        "*.synctex.gz"
    ],

    "extensions.autoUpdate": true, //今回の原因となった自動アプデをしない
    "latex-workshop.latex.recipes": [
        {
            "name": "ptex2pdf",
            "tools": [
                "ptex2pdf",//タイプセットに使うtoolの名前
            ]
        }
    ],
    "latex-workshop.latex.tools": [//タイプセットに使うtool一覧
        {
            "name": "latexmk",
            "command": "latexmk",
            "args": [
                "-synctex=1",
                "-interaction=nonstopmode",
                "-file-line-error",
                "-pdf",
                "%DOC%"
            ]
        },
        {
            "name": "ptex2pdf",//ptex2pdf自体の設定はこれまでと一緒
            "command": "ptex2pdf",
            "args": [
                "-interaction=nonstopmode", // エラー時停止
                "-u", // これでuplatexになる
                "-l",
                "-ot",
                "-kanji=utf8 -synctex=1",
                "%DOC%"
            ]
        },
        {
            "name": "bibtex",
            "command": "bibtex",
            "args": [
                "%DOCFILE%"
            ]
        }
    ], 
    "latex-workshop.view.pdf.viewer": "tab",
```

```tex:プリアンブル
\documentclass[a4j,dvipdfmx,uplatex]{ujarticle}

\usepackage{multirow}
\usepackage{array}
\usepackage{float}
\usepackage[top=30truemm,bottom=30truemm,left=30truemm,right=30truemm]{geometry} % 余白30mm
\usepackage{graphicx,xcolor}
\usepackage{times}
\usepackage[T1]{fontenc}
\usepackage{url}
\normalfont
\usepackage{amsmath,amssymb}
\usepackage{enumerate}
\usepackage{ascmac}
\usepackage[framemethod=tikz]{mdframed}
\usepackage{moreverb}
\usepackage{siunitx} % SI単位系を使うパッケージ
\usepackage{fancybox} % キーボードの枠\Ovalbox

\usepackage{listings,jlisting}
\renewcommand{\lstlistingname}{リスト}
\lstset{
language={C},				%言語設定
basicstyle={\ttfamily\small},		%ソースコードの文字を小さくする
numberstyle={\sf},
columns=[l]{fullflexible},
commentstyle={\small\itshape},	%コメントアウトの文字を小さくする
breaklines=true,				%行が長くなったときの改行．trueの場合は改行する．
showstringspaces=false,	%␣←これがなくなって空白のみになります.
keepspaces=true,	%連続した空白のスペースを残す.
numbers=left,					%行番号を左に書く．消す場合はnone．
%xrightmargin=3zw,				%左の空白の大きさ
%xleftmargin=3zw,				%右の空白の大きさ
stepnumber=1,					%行番号を1から始める場合こうする
%numbersep=1zw,				%行番号と本文の間隔．
frame={single}
}

\title{{\large 教科名} \\ {
		\huge  {\bf 単元}}}
\author{{\Large 学籍番号xxxxx　クラス番号xxx　高専太郎}}
\date{\vspace{10mm}
	提出日：20xx年x月xx日(金) \\
	提出期限：20xx年x月xx日(金) 17:00}

\begin{document}
	\maketitle	%これを実行することで表紙ができる
	\thispagestyle{empty}	%表紙にページ数を表示しない
	\newpage 	%ページを切り替え
	
	%セクション確認用目次
	%\tableofcontents
	%\newpage
	
	
	%1ページ目にする
	\setcounter{page}{1}

\section{実験環境}

以下略

\end{document}
```