最新版はこちら。 突っ込みは各日付の BBS エントリのほか、 メール (nakano@st.seikei.ac.jp) や フォーム からどうぞ。 なおスパム除けのため、BBS 機能には 緩い認証を入れて います。 検索エンジンから来た方は、エンジンの方のキャッシュを見るか、 下の簡易検索を試してみてください。
|
Namazu for hns による簡易全文検索 詳しくは 詳細指定/ヘルプを参照して下さい |
|||||||||||||||||||||||||||||||||||||||||||||
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.batにあった。これをコマンドプロンプトから実行して
cl.exe foo.cなどとすると foo.obj と foo.exe ができあがって実行もできる。よしよし。
foo.c(1): warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を 含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。 foo.c(4): fatal error C1075: '{': 一致するトークンが見つかりませんでしたという warning が出る。これも調べたら ということで、BOM つき NKF に変換しちゃうのが簡単ぽい。 ということで nkf -oc=UTF-8-BOM がよさそう。
#!/bin/bash # # WSL から実行する。WSL には nkf が必要。Windows には VS2022 Community のインストールが必要。 # 引き数に与えるサブフォルダに、「us(学籍番号)_(彼らのつけたファイル名).c」で入っている想定。 # if [ $# -ne 1 ]; then echo "Usage: $0 [Cfolder]"; exit 1 fi FOLDER=$1 # BOM 付き UTF-8 に変換しつつコピー for subc in $FOLDER/*.c; do compc=`basename $subc | cut -d _ -f 1`.c echo $subc $compc nkf --oc=UTF-8-BOM "$subc" > $compc done # 一括コンパイル TMPBAT=temp_$$.bat cat << 'EOS' > ./$TMPBAT chcp 65001 call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 for %%i in (*.c) do ( cl.exe %%i ) EOS cmd.exe /c $TMPBAT rm $TMPBAT # 一括実行用の PowerShell ファイルを生成 PS1FILE=execall.ps1 echo "chcp 65001" > $PS1FILE for exe in *.exe; do echo "Write-Output -InputObject \"[Exec $exe]\"" >> $PS1FILE echo "pause" >> $PS1FILE echo ".\\$exe" >> $PS1FILE donewsl のシェルから実行して、nkf -W をパイプしてログをとると、一応コンパイルの状況も確認できる。
# update-locale LANG=en_US.UTF-8 LANGUAGE=en_US:enという感じで、/etc/default/locale が書き変わる。つぎのログインから反映されるそう。
sed '1s/^\xEF\xBB\xBF//' input.txt > output.txtでいける。
libreoffice --headless --convert-to pdf your_document.txtという感じで。