【TeX】TeXで作成したPDFで目次等にアンカーを貼る

こんにちは、しきゆらです。

今回は、TeXで吐き出したPDFの目次などにアンカーを貼る方法を調べたので記録しておきます。

 

動機

ネット上からPDFをダウンロードしてくると、時々PDFないにアンカーが貼ってあるものがあります。

ページ数が多い場合はとても便利ですよね。

これを、自分の環境でも作るにはどうすればいいのか知りたくなったので調べてみました。

調べてみると、以下のページがヒット。

ハイパーリンク付きLaTeX文書 – 明治大学

ここを参考に見ていきます。

 

インストール方法

TeXは、便利なパッケージが豊富に用意されています。

ファイル内にアンカーを貼るためのものも存在するようです。

今回利用するのは「hyperref」というものです。

 

上記サイトから、hyperrefとPXjahyperをダウンロードしておきます。

TeXパッケージは、TeXがわかる場所であればどこにおいても問題ないようです。

今回は、「/usr/local/texlive/2018basic/texmf-dist/tex/latex/hyperref」に設置しました。

PXjahyperは「/usr/local/texlive/2018basic/texmf-dist/tex/platex/pxjahyper」に設置しました。

 

使い方

普通のTeXパッケージと同じように

を追加するだけ。

これだけで、目次や文献参照部分には勝手にアンカーがついてくれます。

 

なお、アンカーがある部分の色に赤線が追加されます。

これに関しては、設定で好みに指定することができます。

設定項目に関しては、こちらに項目やデフォルト値が書かれていますので、適宜設定してください。

 

あえて強調したくない場合は、以下のような設定にしておくと良いかと思います。

 

 

まとめ

今回は、TeXで作成したPDFにアンカーを設置する方法を調べてみました。

親切な人に感謝です。

 

 

おわり

【Ruby/Rails】Ruby2.6.0/Rails5.2.2でmysql2のインストールに失敗する

こんにちは、しきゆらです。

今回は、タイトル通りmysql2のインストールに失敗したのをなんとかする方法をメモしておきます。

 

環境としては、

  • Mac
  • Ruby2.6.0
  • Rails5.2.2
  • MySQL8.0.13

という状態。

 

普通にbundle installすると、エラーが。

mysql2のインストールに失敗したようです。

調べてみると、以下のような解決方法がいくつも提示されていました。

 

以下のコードを打ち込む。

RailsにMySQLを導入したらかなりハマった件について – 大学生Webエンジニアの記録

 

調べてみると、どうやらbundlerにはgemをビルドするときにフラグやオプションを渡すことができる機能を持っているようです。

上記コードは、mysql2のビルドオプションを渡すコードのようです。

Build Options

You can use bundle config to give Bundler the flags to pass to the gem installer every time bundler tries to install a particular gem.

Bundler: bundle config – Bundler Docs

 

似たコードが書かれています。

オプションを追加し、再びbundle install。

・・・エラー直らず。

 

途方に暮れていると、こんな情報が。

ログ見たら –with-cppflags オプションに対応してないとのこと。
ldflagsのみで実行してみる

mysqlのbundle installに失敗する – Qiita

 

なんと、cppflagsはいらないようです。

実際、上記の設定後にbundle install すると問題なくインストールできました。

 

 

先人たちの体験談には頭が上がりません。

感謝です。

 

 

今回はここまで。

おわり

【JS/Electron】electron-builderでElectronアプリをビルドする

こんにちは、しきゆらです。

今回は、electron-builderというものを触ってみます。

 

私は、よく使うサイトをElectronアプリとして書き出して使っています。

ビルドはelectron-packagerというものを使い、時々Electronをビルドしていました。

先日久々にビルドしていると、エラーが出て動かなくなっていました。

正直、NodeやElectronについてはにわか程度の知識しかなく、更新情報なども追えているわけではありませんでした。

調べてみると、electron-builderというものもあるということで、今回はこっちの方を使ってみました。

 

簡単ではありますが、記録として残しておきます。

といっても、参考サイトをほぼそのままやっただけ。

参考サイトは以下です。

electron-builderでElectronアプリのビルド

https://qiita.com/nanairo24/items/73356574b0dc65c0e617

 

Continue reading “【JS/Electron】electron-builderでElectronアプリをビルドする”

【2019/01/03 追記あり】BluetoothヘッドホンCOWIN E7を買った

こんにちは、しきゆらです。

今回は、BluetoothヘッドホンCOWIN E7を買ったので紹介します。

 

・・・今年の頭に、別のヘッドホンを買い紹介しました。

しかし、頭の部分にヒビが入ったことや、イヤーパッドの皮がはがれ始めたため、ひどくなる前に新しいものを購入した感じです。

1年ほどで買い換えるのとても大変・・・。

どう保存するのが正解なんだろうか。

 

それでは、見てみましょう。

Continue reading “【2019/01/03 追記あり】BluetoothヘッドホンCOWIN E7を買った”

【Ruby】Ruby2.6.0をコンパイルし、ベンチマークを取ってみる

こんにちは、しきゆらです。

毎年、この時期はRubyの最新版リリースが熱いですよね。

ということで、早速環境を作っていきましょう。


Rubyは、Ruby3x3という目標のもと、高速化のための改良が続けられています。

今回は、高速化のための変更としてJITコンパイラが導入されました。

オプションとして–jitをつけると、JITを使って動作するようです。

詳しい更新内容については、以下を参照して下さい。

高速化以外の変更でよく使いそうなものとしては、「終端なしRange」の追加でしょうかね。

あとは、何気にCSVファイルの扱いも高速になっているようです。

さて、それでは実際にコンパイルしてみて、どのくらい早くなったのかを、簡単なベンチマークを取りながらみてみましょう。

Continue reading “【Ruby】Ruby2.6.0をコンパイルし、ベンチマークを取ってみる”

【メモ】6年前のPCをHDD -> SSDに換装した

こんにちは、しきゆらです。

久しぶりの投稿ですね。気がつけば、11月が終わっていました。

今回は、サブノートPCのWindows機をHDDからSSDに換装したのでメモしておきます。

 

大学入学に伴って買ったWindows機。

今ではすっかり家でネットサーフィンや音楽再生、ゲーム機等、我が家の雑用機となっています。

単純な雑用ではほぼ不満はないが、ゲームやソフトのインストールなどをしようとすると、途端に不満が。

そう、遅いのである。

まぁ、すでに6年ほど前のPCですからねぇ。

HDDとしては、もう使い倒したと言ってもいいくらいではないでしょうか。

 

ということで、今回はHDDをSSDに換装してみます。

ちなみに、Windows機はこれ。Corei7を積んでいる方です。

 

今回購入したSSDはこちら。キングストンの 120GBです。

 

では、換装していきます。

 

Continue reading “【メモ】6年前のPCをHDD -> SSDに換装した”

【Github】利用するための準備

こんにちは、しきゆらです。

今回はGithubを使うための下準備の部分をメモしておきます。

 

主な内容は、以下の通り。

  • Githubとの連携のための公開鍵作り
  • 公開鍵の登録方法
  • ssh/configファイルの設定

 

公開鍵づくり

この部分は、Githubに限らずSSH接続するような場合によく行う作業なので、覚えておきたい内容ですね。

以下、全てMac環境で行っていきます。

 

以下コマンドで、鍵の生成を行います。

最低限rsa指定は必要です。

「-b 4096」部分に関しては、鍵のbit数になります。

このサイズは、簡単に言えば鍵の強度の部分になります。

参考

SSHでリモートホストに接続する前にやっておくと便利なことは? ssh-keygenコマンド – @IT

2017年版 SSH公開鍵認証で使用する秘密鍵ペアの作り方 – Qiita

 

今は2048bitがデフォルトで生成されるようですが、計算機性能が上がっているので高めに指定しておくと良いかと。

 

実行したときの流れは以下の通り。

「Enter〜」の部分は入力を求められます。

面倒であれば3回何も入力せずEnterを押すと終わり。

 

重要なのは、一番はじめのファイル名。

デフォルトでは「/Users/ユーザ名/.ssh/」という場所にid_rsaとして生成されます。

しかし、複数の鍵を生成する場合は名前をつけて分けておく必要があるでしょう。

ということで、今回はファイルを「github_rsa」として生成しました。

 

これにて、公開鍵づくりは完了です。

 

次からは、作成した鍵をGithubへ登録していきます。

 

Continue reading “【Github】利用するための準備”

【Github】リモートリポジトリにある全てのブランチをローカルへpullする

こんにちは、しきゆらです。

今回は、Githubにあるブランチのすべてをローカルリポジトリへpullしてくる方法を知ったのでメモしておきます。

 

状況

まずは、こんなことをしようと思った経緯をメモしておきます。

先日、メインで利用しているMacbook ProのOSアップグレードをしました。

はい、「High Sierra」から「Mojave」へのアップグレードです。

 

毎回、OSの名前が変わるたびにクリーンインストールしていた私。

今回も例に漏れず、アップグレード後にクリーンインストールしました。

SSDによりPC本体に記録できる容量がHDDに比べて少なくなりましたが、オンラインストレージ等のおかげでほぼ不便なく利用できています。

Mac標準のiCloud、Windowsでも利用しているOneDrive、普段遣いのDropboxと3つを併用しています。

基本的なファイルは、これらの場所においているため、クライアントソフトをインストールすればすぐに利用できるようになります。

 

開発しているプログラムも、殆どはGit/Githubで管理しています。

そこで、クリーンインストールした後homebrewでGitをインストール。

あとはGithubからリポジトリをcloneしてくれば全て解決。

・・・と思ったら、デフォルトでクローンしてくれるのはmasterブランチだけなんですね。

知らなかった。

 

・・・長々と書いてきましたが、ここまでが前置き。

Githubにあるmaster以外のブランチを全てローカルリポジトリにpullしたい。

ということで本編です。

 

解決方法

本編のほうが短いです。

なんと3回コマンドを打つだけなので。

 

調べてみると、こんな記事が。

全部ランチをリモートリポジトリからpullする – Qiita

https://qiita.com/muraikenta/items/e590a380191971f9c4c3

まさにほしい情報でした。

古い記事でしたが、この手順で完了できました。

何をやっているのかよくわかりません。

git branch -rでリモートのブランチを取得し、--trackの部分はわかりませんが、取得したブランチ全てを指定しているのかな?

そして、fetchとpullして取得。

・・・わからん。

 

まとめ

調べてみると、やはり似たようなことをしたい人がいて一安心。

GitやGithubはそれなりに使っていましたが、未だによくわからない部分が多いです。

特に、pullとかcloneとか。

プルリクエストもいまいちわかっていません。

まぁ、基本的に1人で使うことが多いので使う部分が限られるのですが・・・。

 

では、前置きが本編の記事でした。

今回はここまで。

おわり

【Ruby】Excelで書き出したUTF-8のCSVファイルを読み込む

こんにちは、しきゆらです。

今回はExcelで書き出したCSVファイルをRubyで読み込むときに躓いたところをメモしておきます。

 

状況

Excelで管理していたとあるデータをCSVで書き出し、Rubyで変換しつつDBへ突っ込もうと思っていました。

CSVファイルは、先頭にヘッダーとなるタイトルをつけていて、2行目からが実質のデータでした。

 

ExcelでCSVファイルを吐き出す

Excelで書き出すことができるCSVファイルは2種類あります。

  • 「一般的な形式」の中にある「CSV UTF-8 (コンマ区切り) (.csv)」
  • 「特別な形式」の中にある「CSV (コンマ区切り) (.csv)」

「特別な形式」では、文字コードがShift-JISのため「一般的な形式」の方で吐き出しました。

あとは、RubyのCSVライブラリで読み込んでforeachなどですべての行を読み込めば終わり。

・・・と思っていた時代が私にもありました。

このUTF-8が曲者でした。

 

詳しくは、続きから。

 

Continue reading “【Ruby】Excelで書き出したUTF-8のCSVファイルを読み込む”

【日記】地震とその備えや思ったこと

先日の北海道胆振東部地震にて、全道的に停電が起きました。

私の住んでいるところも例に漏れず、1日以上停電が発生しました。

これまでの人生の中で、このような状況は初めてでした。

 

地震にて被害を受けて、感じたことや必要だと思ったものを記しておきます。

 

Continue reading “【日記】地震とその備えや思ったこと”