tex-open
LaTeXで書かれたファイルをpdfに変換して、pdfが関連付けられたGUIアプリで開きます。ついでにaux、log、dviといった不要なファイルも削除します。
環境:TeX Live、bash 5.1.16
実行画面
対象のTeXファイルを引数に指定します。問題がなければコンパイルされて、自動的にpdfが開きます。Linuxのxdg-open
かmacOSのopen
かを自動で判別してくれます。
$ ./tex-open.sh profile.tex
$
tex-openのコード
#!/bin/bash
declare -ri argc="$#"
declare -r file_name="$1"
declare -r base_name="${1%.*}"
fn_main()
{
fn_is_argment
ptex2pdf -l ${file_name} > /dev/null 2>&1
fn_delete_files
fn_open_file
}
fn_is_argment()
{
if [ ${argc} -ne 1 ]; then
echo "Error: There are many arguments"
echo "Usage: $ ./$0 file.tex"
exit 1
fi
}
fn_delete_files()
{
local -ra delete_files=(aux log div)
for extension in ${delete_files[@]}; do
rm "${base_name}.${extension}" > /dev/null 2>&1
done
}
fn_open_file() {
local open_command=$(which xdg-open || which open)
local -r target="${base_name}.pdf"
eval "${open_command} ${target}"
}
fn_main
#<hase@psipsina.jp>
もともとはワンラナイナーでしたが、可読性が低すぎるので、普通の(?)プログラムにしました。
[ $# = 1 ] && ptex2pdf -l ${1%} && ls | egrep "${1%.*}.(aux|log|dvi)" | xargs rm 2>/dev/null && open ${1%.*}.pdf || open ${1%.*}.pdf
更新情報
- 作成日:2020-07-03
- 作成日:2022-02-11
- 作成日:2022-05-02