Emacs コマンド備忘録

よく使うコマンドたちの備忘録。

コマンドの基本的な打ち方

  • C-uなどと書くと、Controlキーと"u"を一緒に押します。
  • C-u 0となっているときは、一度C-uを押してから指を離して、"0"だけ押します。
  • M-xなどと書くと、「メタエックス」などと呼ばれ、alt (option) キーと"x"を一緒に押します。
  • とにかくコマンドを中止したいときはC-gを押しておけばOK。下のミニバッファにQuitと表示される。

カーソル移動

  • C-u 0 C-l : 現在のカーソルの位置が画面の一番上に来るようにする
  • C-u -1 C-l : 現在のカーソルの位置が画面の一番下に来るようにする
  • C-l : 現在のカーソル位置が画面の中央に来るようにする
  • C-v : 次の画面に進む(スクロールする)
  • M-v : 前の画面に進む(スクロールする)

検索

  • C-s : いわゆるi-search forward。現在のカーソルの位置から順番に検索する。次の候補を探したいときはもう一度C-sを押せばいい。C-sしまくっていると2巡目に入る(wrapped i-search)。ウィンドウをクリックすると検索は終了する。検索を中止して元の位置に戻りたいときはC-gでよい。
  • C-r : i-search backward。現在のカーソル位置から逆順に検索する。詳細は上に同じ。

行数の表示

  • M-x linum : 画面の左側に行番号を表示する

ウィンドウ分割

  • C-x 2 : 縦に2分割
  • C-x 3 : 横に2分割
  • C-x 0 : 分割をやめる

バッファ

  • C-x k : バッファを削除する

qiita.com

ghostscript - gs_init.ps がないと言われた

gs_init.ps がない

ps2pdf (https://webkaru.net/linux/pdf2ps-ps2pdf-command/) を使おうとしたら、

GPL Ghostscript 9.19: Can't find initialization file gs_init.ps.

と言われてしまったのでいろいろ解決策を探してみました。
Ghostscript: Ghostscript は私は Homebrew — macOS 用パッケージマネージャー で入れているのですが、どうやらうまくリンクが貼れていないみたい様子でした。

qiita.com これを参考にさせていただいて解決しました。

以下、雑なメモです

ghostscript のバージョン

2017年10月18日時点だと(ちゃんとbrew upgradeしてあるので)バージョン9.22が最新のはずですが9.19のまま。ちゃんとリンクが貼れていない模様。

$ gs -v
GPL Ghostscript 9.19 (2016-03-23)
Copyright (C) 2016 Artifex Software, Inc.  All rights reserved.

現在の ghostscript はどこにいるのか

$ ls -al $(which gs)
(略) 2017 /usr/local/bin/gs -> /usr/local/bin/gs-X11

マシンにインストールしてあるバージョンを調べる

Homebrewでインストールしたのであれば Cellar の中にあるはずです。

$ ls /usr/local/Cellar/ghostscript/
9.20  9.21_3  9.21_4  9.22

9.22が今のところ一番新しいっぽいのでそれに乗り換えることにします。

乗り換える

$ ln -s /usr/local/Cellar/ghostscript/9.22/bin/gs /usr/local/bin/gs
$ gs -v
GPL Ghostscript 9.22 (2017-10-04)
Copyright (C) 2017 Artifex Software, Inc.  All rights reserved.

うまくいったみたいです! このあとちゃんと ps2pdf も動きました。

mac で mts 形式を連結して mp4 に変換するまで

iMovie とかは使わずに、ターミナルを立ち上げてフリーソフトをインストールしてコマンドで変換します。

そもそも

mts 形式って、ビデオカメラで撮影した時の動画の拡張子です。いろいろあるんですね。

mts ファイルの連結

ビデオカメラで撮影したファイルがいくつかに分かれていたのでまずはつなげます。
cat コマンドで繋げたいファイルを列挙して、出力先ファイルを > の後に書きます。

cat file1.mts file2.mts file3.mts > connected.mts

catコマンドは mts ファイルに限らず、他の拡張子でも連結できます。テキストファイルとか。
で、ファイルを連結したのはいいんですがなぜか Quick Time Player だと「不明なエラー(1718449215)」とかいうのが出てきて再生できないんですよね。 Official Download of VLC media player for Mac OS X - VideoLAN (あの三角コーンのアイコンのアプリ) なら再生できるので、とりあえずよしとしておきましょう笑

mts を mp4 に変換

FFmpeg というツールを使います。Homebrew — macOS 用パッケージマネージャー をつかっているなら

brew install ffmpeg

でインストールできて、

ffmpeg -i file1.mts -s 1280x720 converted.mp4

これで変換できます。「file1.mts というファイルを、1280x720 のサイズで converted.mp4 というファイルに変換して出力する」という感じです。-i が入力ファイルの設定で、-s が出力サイズの設定ですね。サイズ指定の時は、[幅][小文字のエックス][高さ]で指定できます。
オプションの詳しいところは FFmpeg - Wikipediaffmpeg Documentation (英語) をご覧ください。

動画サイズは自分で好きなように設定できるとはいえ、一般的な動画サイズの方がよさげですね。mts形式だったらビデオカメラで撮っているはずなので元サイズはおそらく 1440x1080 のはず (HDV 1080i というやつ) です。詳しくは以下をどうぞ。

bindcamp.digitalstage.jp

LaTeXで証明木を書く

証明木をflag notationで書く

普通の証明木(?)を書く方法はネットに情報が転がっているのですが、flag記法で書く方法はどうにも情報がない…と思っていたらついに見つけました。

CTAN: Package flagderiv

PDFはこちら。

http://ftp://ftp.u-aizu.ac.jp/pub/tex/CTAN/macros/latex/contrib/flagderiv/flagderiv.pdf

普通のproof treeは bussproofs が良さげです。 このページにいろいろ載ってました。

3. Natural deduction proofs | Logic Matters

広告を非表示にする

brew-file関連

brew-file関連のリンクを貼っておこう。

なんか多分この前はtapだけして満足してたのかもしれない。 tapとinstallは違うというのに。

installはここから。
github.com

documentationはここから。
Welcome to homebrew-file’s documentation! — Homebrew-file 3.12.3 documentation

初回にbrew-fileを入れた(と錯覚していた)ときはbrew file initとかbrew file catとかしてもちゃんと動かなかったような記憶がある。あーーーてかあれか、多分caskが動いたせいだな。それだ。
そういうわけでした。

広告を非表示にする

TeX 行間の調整

一行おきに書きたい、とか行間を調整したいという時に。

一部だけ行間を調整したい

一行おきに書きたい、とかそういうときは特に便利かもしれないです。 setspaceというパッケージを使うとできます。プリアンブルのところに

\usepackage{setspace}

と書いてから、文書本体に

\begin{spacing}{倍率}
行間を調節したい文章をここに書いて!
\end{spacing}

と書けば、\begin\endに挟まれた部分の行間が変更されます。
一行おきに書きたい時は倍率を2.0にすれば楽勝ですね。 それから、箇条書きが意外と幅取っててめんどくさい時も倍率0.9とか0.8にして使えます。

文書全体の行間を調整したい

全体を変更したい時は基本的にプリアンブルで設定を変更すればできます。

\renewcommand{\baselinestretch}{倍率}

と書けばできます。

参考にさせていただきました

空白のコントロールTex tips

qiita.com

www.latex-cmd.com

広告を非表示にする

homebrew-caskの移動とAlfred

brew-caskの移動

最近Homebrewの方でCaskのデフォルト位置を動かしたようです。何か新しいアプリをCaskで入れようとしたり、brew doctorを叩いたりするとWarningが出てきますね。

Warning: The default Caskroom location has moved to /usr/local/Caskroom.

Please migrate your Casks to the new location and delete /opt/homebrew-cask/Caskroom,
or if you would like to keep your Caskroom at /opt/homebrew-cask/Caskroom, add the
following to your HOMEBREW_CASK_OPTS:

  --caskroom=/opt/homebrew-cask/Caskroom

For more details on each of those options, see https://github.com/caskroom/homebrew-cask/issues/21913.

▼最終行の "For more details on each of those options, ..." とはこれのことですね
github.com
細かいコマンドはリンク先に書いてあるのでそれで大丈夫です。ざっくり何やってるか説明すると
①まずはCaskroomを新しい位置にmvする
cask list上のアプリを全部再インストールする(強制的に再インストールしてるので--forceオプションが必要です、そうでないと「すでにインストールされてますよ」って言われてインストールしてくれません)
/Applicationsフォルダのリンクが正しくないのでそれを直してあげる。
※リンク先ではoldlocとなっている場所を、以前Caskroomのあった場所に変えてください。おそらくほとんどの人が/opt/homebrew-cask/だと思います。いくつかエラー吐くと思いますが大体はこれでOKです。どうしてもなら/usr/local/Caskroomまで移動して手動でエイリアスを作成して/Applicationsフォルダに投げ入れるっていう原始的な方法もありますが笑

まあこんな感じですかね。

▼ぶっちゃけここ読んどけばいけます
rcmdnk.github.io

LaunchPadでアイコンにクエスチョンマークが出てくるときはリンクがうまく貼られてないときですね。上記の手順③やればうまくいくと思うんですけどね。
▼うまくいってない例(Eclipse)
f:id:saphir_jaune:20160706125119p:plain

Alfredもちょっと変更

過去にCaskでインストールしたものたちがAlfredの検索結果にひっかからなくなっちゃうのでそっちの設定も動かしておいてあげる。まあ心配なら両方残しといてもいいんじゃないですかね。Alfredの動作速度を極めるならアレですけど。
Preference > Features > Default Results > Search Scope
で、新しいパスを追加。ドラッグ&ドロップでも追加できますよ。
これでAlfredでもちゃんと認識されます。めでたし。