Skip to content

Commit

Permalink
Merge branch 'master' of github:dirac6582/dirac6582.github.io
Browse files Browse the repository at this point in the history
  • Loading branch information
ToAmano committed Nov 15, 2023
2 parents 13a05e1 + 0a6e618 commit 226389e
Show file tree
Hide file tree
Showing 8 changed files with 405 additions and 4 deletions.
10 changes: 7 additions & 3 deletions docs/_posts/2023/2023-06-12-desk-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,15 +116,19 @@ USBメモリなどを頻繁に使うのでUSB-Aポートを増やす必要があ

音楽や写真などは外部SSDに保存するため,ケースとしてHDD/SSDを4台まで接続できるlogitechのHDDケースを利用している.USB-Cで繋げるのと2.5インチSSDをマウントできるアダプターが入っていてSSDでも問題なく使えるということで選択した.接続時はLEDインジケーターがひかるようになっているのも便利.かれこれ3年使っているが今の所トラブルもなく満足しているが,唯一不満なのは電源ケーブルと付属USB-Cケーブルの長さが少し短いところ.結局付属USB-Cはより長いものを買い足して利用している.

### ポータブルSSD:Samsung 970 EVO Plus 2TB(MZ-V7S2T0B/EC) + 玄人志向 M.2 NVMe SSD ケース(GWM.2NVST-U3G2CCA)
### ポータブルSSD (M2):Samsung 970 EVO Plus 2TB(MZ-V7S2T0B/EC) + 玄人志向 M.2 NVMe SSD ケース(GWM.2NVST-U3G2CCA)

{% include figure image_path="https://lh3.googleusercontent.com/-hW7ufe5piYvc-qDrz7oQQLXtjjB4hfXPdfsB2Vm5Rrz02xwtIv4K5Hb7JfOGS6WwU00Whx-Au5uQUN7ReteDJsZZkJ2XJjb6epIfelQa2OuXXyvystXP_Z9GFZBsbB6gAAKfbEuNw" alt="this is a placeholder image" caption="" %}

据え置きのSSDとは別に,外出用のポータブルSSDも利用している.ポータブルSSDは完成品もたくさん売っていてそれでも問題ないが,安く済ませたかったのでケースとSSDをそれぞれ別で購入した.用途的に高速転送がしたかったのでM.2 SSDを選択している.品質はさすがSamsungで文句なし.一方ケースの方はamazonなんかで調べると大量にヒットするのでどれでも良いだろう.私は用途上実績のあるものが使いたかったので玄人志向のものを利用している.これは放熱のことを考えて作られているようで,熱伝導シートが付属してきた.実際に使っていて今まで問題もなくタフに使いたい場合におすすめだ.
据え置きのSSDとは別に,外出用のポータブルSSDも利用している.ポータブルSSDは完成品もたくさん売っていてそれでも問題ないが,安く済ませたかったのでケースとSSDをそれぞれ別で購入した.用途的に高速転送がしたかったのでM.2 SSDを選択している.品質はさすがSamsungで文句なし.一方ケースの方はamazonなんかで調べると大量にヒットするのでどれでも良いだろう.私は用途上実績のあるものが使いたかったので玄人志向のものを利用している.これは放熱のことを考えて作られているようで,熱伝導シートが付属してきた.M2 SSDはかなり発熱するので,排熱に気を使っている製品の方が安心だと思う.実際に使っていて今まで問題もなくタフに使いたい場合におすすめだ.

{% include figure image_path="https://lh3.googleusercontent.com/CApGd_PzIkHDVSj4K9MM8Me3JINKHSacIH0P9jmy8PABp3zSTpP-9COOuQ1JRshBcQMpfE0iLI8xprUDN7OtUzcF7yhj7TLbghpNP0SmgO0Yi1yQPGlmugrDX9xrX0u9B0bY5Hkytg=w2400" alt="this is a placeholder image" caption="付属のサーマルシートをSSDにはったところ.このシートがSSDケースと密着する設計になっている." %}

### ポータブルSSD2:
### ポータブルSSD2 (SATA): Samsung 870 EVO 2TB (MZ-77E2T0B/EC) + ロジテック SSDケース LGB-PBSUC

{% include figure image_path="" alt="" caption="" %}

同じく外出用のポータブルSSDとして,SATAのSSDも利用している.SATAはM2ほど速度は出ないが発熱はないので,単純にデータ置き場として非常に便利だ.SSDとしてはSamsungのものを利用している.昔はとんでもない値段だったSamsumgのSATA SSDもだいぶ値段が落ちてきているので手軽に購入しやすい.ケースの方は安価なものだとUSB3.0 microB接続のものが多く,このケーブルを1本余計に持ち歩くのは非常に面倒臭いので多少高くてもUSB-Cでつなげるものを使いたくてロジテックのPBSUCというケースを購入した.より高級なやつだと複数端子がついているものもあるので,自分の用途と合わせて選択できるのが良い.接続時にはLEDランプが点灯するようになっているのも便利でおすすめできる商品だと思う.



Expand Down
2 changes: 1 addition & 1 deletion docs/_posts/2023/2023-09-28-tikzplotlib.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ matplotlibで作成したグラフを,tikzファイルに変換することが

```python
pip install tikzplotlib
conda install tikzplotlib
conda install -c conda-forge tikzplotlib
```

## 使い方
Expand Down
134 changes: 134 additions & 0 deletions docs/_posts/2023/2023-10-27-aspell.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
---
# Feel free to add content and custom Front Matter to this file.
# To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
title: aspellでTeX文書のスペルチェック
layout: single
date: 2023-10-27 21:00:00 +0900
categories:
- code
tags:
- bash
- emacs
description: aspellによるスペルチェック
---

TeX文書のスペルチェックにはいくつかの方法がある.ひとつが今日紹介するコマンドラインからispellやaspellを用いる方法,そしてもう一つがflyspellに代表されるようにエディターでオンザフライでやる方法だ.後者の方法もスペルチェックのエンジンとしてはispell/aspellを利用していることが多い.詳しいことは[aspellの公式ドキュメント](http://aspell.net/man-html/index.html)を参照.

## aspellのインストール

コマンドラインから使えるaspellはispellに機能を追加した新しい(といってもすでに結構古いが...)スペルチェッカーだ.macの場合はhomebrew/macportsから簡単にインストールできる.

```bash
brew install aspell
```

## 基本的な使い方

基本的な使い方は以下のように`-l`で言語を,`-c`でファイルを指定する.`-t`はファイルがTeXファイルであることを示すオプションである.

```bash
aspell -t -l en -c <file>
```

これでインタラクティブにスペルを修正できる.修正は複数の修正候補が画面上に表示されるので対応する番号を押すことでひとつづつ修正していく.まずはこれで使い勝手を見てみるのが良いだろう.


## 応用的な使い方

実際上はもう少し高等な使い方をしたいことが多い.以下にいくつか例をあげるが,これらはあくまでオプションである.

### aspellの設定ファイルをつくる

aspellの設定ファイルは`.aspell.conf`という名前で,通常ホームディレクトリに置かれる[^1].よく使うオプションはこちらに記述した方がよい.一例を示す.`personal`は個人辞書の指定である.(後述)

```bash
lang en_US
mode tex
personal ~/.aspell.en.pws
```

もしプロジェクトごとに設定ファイルを変更したい場合は,`aspell`実行時に`--conf`オプションで指定する.

```bash
aspell --conf=<path/to/aspell.conf> -c <file>
```

本格的に使いたい場合は設定ファイルを書くことを強くおすすめしたい.可能なオプションについては[公式のマニュアル](http://aspell.net/man-html/Customizing-Aspell.html#Customizing-Aspell)に詳しい説明がある.基本的には辞書に関する設定,エンコーディングに関する設定,チェッカーに関するオプション,フィルター(ファイル形式)に関するオプションの4つを色々と指定できる.それぞれのオプションで可能な値については`aspell dump <options>`コマンドで調べられる.例えばファイル形式について知りたい場合は`aspell dump modes`とすると以下のように可能な形式の一覧が表示される.

```bash
$ aspell dump modes
nroff mode for checking Nroff documents
perl mode for checking Perl comments and string literals
email mode for skipping quoted text in email messages
tex mode for checking TeX/LaTeX documents
markdown mode for checking Markdown/CommonMark documents
ccpp mode for checking C++ comments and string literals
sgml mode for checking generic SGML/XML documents
none mode to disable all filters
texinfo mode for checking Texinfo documents
html mode for checking HTML documents
comment mode to check any lines starting with a #
url mode to skip URL like constructs (default mode)
```
### 辞書に単語を追加する
専門用語や個人名などは予め辞書に登録しておくといちいち修正候補として表示されないので楽になる.デフォルトでは辞書はホームディレクトリ直下に`~/.aspell.en.pws`という名前で保存される.aspellで修正中も`a`でユーザー辞書に登録できる.辞書はただのテキストファイルなので各自で自由に編集できる.辞書のフォーマットは,まず一行目に
```
personal_ws-1.1 lang num [encoding]
```
という行が必要.`lang`は言語,`num`は辞書に含まれる単語の数なのだが数字はいくつでもよいらしい.例えば英語の場合は
```
personal_ws-1.1 en 0
```
でOK.二行目以降に一行一単語で追加していくだけ.たとえばファイルの一例は以下のような感じ.
```
personal_ws-1.1 en 0
Bach
Beethoven
Chopin
Mozart
```
### プロジェクトごとに辞書を使い分ける
もしプロジェクトごとに辞書を使いわけたい場合は追加で辞書ファイルを作成してaspell実行時に辞書を指定する.
```bash
aspell --personal <path/to/dictionary> -l en -c <file>
```
もしくは上にあげたように`aspell.conf``personal`オプションで個人辞書を指定する.また,複数の辞書を扱いたい場合は`extra-dicts`オプションで追加指定できる.
### emacs上から直接利用する
emacsで編集している場合は,コマンドラインからではなくemacs上から直接aspellを利用できるが,これは今回の趣旨と違うのでまた別の機会に紹介する.
## 実際の運用についてのコメント
実際の運用では,私はプロジェクトごとに辞書ファイル,設定ファイルを作るようにしている.全ての文書で同一の個人辞書を使ってしまうと辞書が大きくなって意図せずスペルミスを見逃す可能性がありそうだからだ.gitでの管理が楽になるというのもある.
emacsでのflyspellや,最近のIDEの優れた機能を利用すればエディターで編集中にオンザフライでスペルチェックはできるが,文書を書いている最中は内容を考える方に頭が行っていてスペルチェックまで完璧にできることは少ない.aspellは文書が出来上がったあとで一括で全体のスペルチェックができるので修正漏れが起こりにくいというメリットがあると思う.というわけでどんな場合でも文書完成後に一回aspellにかけておくと安心できる.
また,これはaspellに限らないがこの手のスペルチェッカーはあくまで単純なスペルミスを修正してくれるにすぎず,文法の誤りや表現の誤りは一切修正できないことにも留意すべきだ.それらの修正にはより高等なアプリで確認する必要がある.これらのアプリでは同時にスペルミスも直してくれるが,TeXファイルを直接確認できるものはおそらく存在しない(?)ため,一回pdfに起こしてから文書をコピーして... とする必要がある.そうするとどうしてもTeXファイルを直接チェックできるaspellに比べてミスを逃しすくなる印象がある.
まとめると(あくまで私の場合は)文書を書く,スペルチェックをする,文法/表現の修正をするの3ステップを別々にやることでより漏れのすくない自己校正ができると考えており,そのためのツールとしてaspellは必須である,ということだ.
## 参考
[aspellの公式ドキュメント](http://aspell.net/man-html/index.html)
[TeX Wiki Aspell](https://texwiki.texjp.org/?Aspell)
[英語の文章を aspell でスペルチェック #英語 - Qiita](https://qiita.com/YutakakINJO/items/2c891aff66ef45251893)
## 備考
[^1]: より具体的にはglobal configuration fileが`/usr/etc`または`/usr/local/etc`に存在し,ホームディレクトリにおかれたpersonal configuration fileがその設定を上書きする.
87 changes: 87 additions & 0 deletions docs/_posts/2023/2023-11-13-pgfplots_legend.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
---
# Feel free to add content and custom Front Matter to this file.
# To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
title: tex pgfplotsでの凡例の指定方法について簡単に紹介
layout: single
date: 2023-11-14 21:00:00 +0900
categories:
- code
tags:
- bash
- emacs
description: pgfplotsで凡例の設定を行う際に頻出の項目を簡単に紹介する.
---

pgfplotsで凡例の設定を行う際に個人的頻出の項目を簡単に紹介する.より詳しい説明は公式ドキュメントも参照のこと.


## pgfplotsにおける凡例の見た目の設定

pgfplotsにおける凡例の設定は代表的なところではlegendの場所を指定する`legend pos`,凡例文字の左寄せや右寄せを指定する`legend cell align`,凡例を何×何で表示するかを決定する`legend columns`などがある.詳細はpgfplotマニュアルの`4.8.5 Legend Appearance`に記載がある.

```tex
legend pos = north east,
legend columns=3,
legend cell align=left,
```

これらは`legend style`でまとめて指定することも可能.

```tex
legend style={legend pos = north east, legend columns=3, legend cell align=left}
```

## 凡例の場所指定について

一番単純にやるには`legend pos`で指定する.これは凡例を四隅のどこに配置するかの指定で,例えば右上なら`north east`,左下なら`south west`のように方角で指定する.グラフ外に凡例を指定する場合は追加で`outer`を指定して

```tex
legend pos = outer north east,
```

のようにする.

さらに細かく自分で座標を指定したい場合は`at`コマンドで指定できる.この時の座標はグラフの左下が`(0,0)`,右上が`(1,1)`となる相対座標で,したがって1より大きい値を指定すればグラフ外に凡例を設定できる.このとき`anchor`で「どこの点がatの座標に対応するか」を指定する.例えば`anchor=center`なら凡例の中心点が`at`で指定した座標に対応する.

```tex
legend style={at={(0.5,1.12)},anchor=north}
```

## 凡例の透明度の指定

透明度は`opacity`で指定可能で,特に下地の透明度を`fill opacity`で,描画の透明度を`draw opacity`で,文字の透明度を`text opacity`で指定できる.

```tex
legend style={fill=white, fill opacity=1, draw opacity=1, text opacity=1},
```

## 凡例ごとに指定を変更する

例えばグラフの線は太さ`2`で書いたけど,凡例では太さ`4`でより太く見せたい,というような場合,`\addlegendimage`コマンドで細かく指定できる.このとき,`addplot`の方の凡例を表示しないようにするためにはオプションで`[forgot plot]`を指定する.

```tex
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot+[forget plot] coordinates {(1,2) (2,1)};
\addlegendimage{line legend,green} % or mark=none?
\addlegendentry{Simulation}
\addlegendimage{line legend,blue}
\addlegendentry{Measurement}
\addlegendimage{green,mark=square}
\addlegendentry{Set 1}
\addlegendimage{blue,mark=o}
\addlegendentry{Set 2}
\end{axis}
\end{tikzpicture}
\end{document}
```


## 参考文献

[Opacity of a legend fill in pgfplots - TeX - LaTeX Stack Exchange](https://tex.stackexchange.com/questions/178732/opacity-of-a-legend-fill-in-pgfplots)
[pgfplots - How to modify the image of an legend entry - TeX - LaTeX Stack Exchange](https://tex.stackexchange.com/questions/113749/how-to-modify-the-image-of-an-legend-entry)
Loading

0 comments on commit 226389e

Please sign in to comment.