半角カナを含むソースコードをTeXに載せたい

半角カナを含むソースコードをTeXに載せたい

- 蔵木 真昼 の投稿
返信数: 10
とあるソフトのソースコードに半角カナを含むものがあります.
これをどうにかTeXに載せたいのですが,方法がわかりません.

当方はMacユーザでMacTeXを使用しています.

何かいい案等ございますでしょうか.
ご回答のほどよろしくお願いいたします.
蔵木 真昼 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- 飯島 徹 の投稿
余りこのような指摘はしたくはないのですが
「とあるソフトのソースコードをTeXに載せたい」という日本語の意味がわかりません
このような表現は一般的なのでしょうか?もしかしたらあなたにしか通用しないおかしな表現なのではないでしょうか?

もしあなたの使っている特殊な言葉を解しない普通の人たちにあなたの悩みを解消するための質問をしているのであれば
普通の人が読んでもわかるような言葉を使って質問をするべきではありませんか?

そして,もし回答する人がいるとして
「○○環境を利用して○○すると云々」などというコメントがつくと思いますが,もしかするとあなたは
「いや○○環境を前提としてなくて□□環境です」とか言い出すかもしれません

このようなことを想像すると回答が出来る知識のある人は色々な回答を想像はできても「どうせつまらないやり取りを何度もしないとダメなんだろうなぁ」と思ってしまう可能性があります

回答者にそのようなことを考えさせずに色々な回答を得るためにもあなたはもっと具体的な質問をし,さらにあなたがやりたいことがわかる(コンパイルができなくても)最小限のソースを添え,さらにコンパイル方法も付記し(端末から platex hoge を実行したなど)質問したほうがいいと思います
そしてコンパイルが通らない場合はその時のログファイルも添付するのが一般的な質問の仕方です

このようなことを踏まえ,できれば TeX Wiki の質問の仕方( https://texwiki.texjp.org/?%E8%B3%AA%E5%95%8F%E3%81%AE%E3%81%97%E3%81%8B%E3%81%9F )などをよく読みこのスレに続ける形で構わないのでもう一度質問をし直した方がいいでしょう
飯島 徹 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- KUROKI Yusuke の投稿
飯島さんのおっしゃることはその通りで,ご指摘感謝します.

最も不親切な回答は,「p(la)texではなくup(la)texコマンドを使えば半角カナも問題なくタイプセットできます」だと思います.

少し補足すると,以下のようなソース(hoge.tex)は,
uplatex hoge.tex
dvipdfmx hoge.dvi
または
ptex2pdf -u -l hoge
を実行すると,hoge.pdf という,半角カナを含む結果が得られます.

%%% hoge.tex ここから
\documentclass[uplatex]{jsarticle}

\begin{document}
ひらがな,全角カナ,半角カナ。
\end{document}
%%% hoge.tex ここまで

以上です.
飯島 徹 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- 蔵木 真昼 の投稿
おかしな表現かつ意味不明な質問をして申し訳ありません.
ご指摘,質問の仕方等教えていただきありがとうございます.


環境などはよくわかりませんが,思い描いているものは以下の通りです.

ソース
%%%
\documentclass[a4j]{jsarticle}
\begin{document}

%半角カナを含むソースコードを記述

\end{document}
%%%

タイプセットは platex -> dvips -> ps2pdfです.

得られるpdfに半角カナを含むソースコードを表示させたいです.


以上ですが,何か不足の情報等ございましたらご指摘いただければ幸いです.
蔵木 真昼 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- Z. R. の投稿
何か不足の情報等ございましたらご指摘いただければ幸いです.

一番重要なのは、「現状でソースの部分をどうやって書いているのか」でしょう。

つまり単なる verbatim なのか、listings パッケージ使用なのか、それとも「自力で凝った出力(文法ハイライト)をしている」のか、ということです。

蔵木 真昼 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- 飯島 徹 の投稿
>思い描いているものは以下の通りです.
>
>ソース
>%%%
>\documentclass[a4j]{jsarticle}
>\begin{document}
>
>%半角カナを含むソースコードを記述
>
>\end{document}
>%%%

TeX を用いて PDF を作成する過程で色々なソフトウェアが登場すると思います
この説明では「使用しているエディタで半角カナを入力する手段がわからない」のか「半角カナは入力できるがそれが含まれる文章のコンパイル方法がわからない」のか判断がつきません

恐らく後者だとは思いますがそれであっても Z. R. さんの指摘のように「%半角カナを含むソースコードを記述」の部分がわからないと誰も適切な助言をすることはできません

次のように記述しているとは思えませんが,その可能性は排除できません
その場合は半角カナ云々以前に適切な環境をあなたに教えることが回答者の最初のステップとなります
\#include<stdio.h>\\
int main ()\{\\
    int i;\\
    ......
\}

このように回答をしようとする人はたくさんの知識があるがゆえにあなたに具体的に書いてもらえないと何を回答していいのかわからないのです
もちろん「%半角カナを含むソースコードを記述」の部分は今あなたが作成しているTeXソースすべてではなく
使っている環境がわかり,コンパイル時にエラーが出るのであればその部分の記述が書かれていればいいです
\documentclass[a4j]{jsarticle}
\begin{document}
\begin{hoge}
#include<stdio.h>
.....
printf("ホゲ\n");
.....
\end{hoge}
\end{document}
このようにあなたが書いた時点でようやくちゃんとした回答が始まります
ただ,もしhoge環境が TeX Live などには含まれない特殊なものであれば,それを入手したサイトなどの記述が必要になります
飯島 徹 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- 蔵木 真昼 の投稿
すみません。
ここは、「実際にやった具体的なこと・手順」に対して、「上手くいかなかったこと」を書いて、「うまく行かなかったときのエラー、ログ」を添付して参考にしていただき、解決策を乞う場所だということを今知りました。
私は環境云々以前に、いくら調べてもやり方がわからなかったので、ここで何かきっかけとなる情報(私ならこうする、こういう環境下ではこういうやりかたがある、など)が得られるのでは、と思って質問しましたが、うまく説明できなかったがために回答者様方を困らせてしまいました。

大変申し訳ございません。
私には早すぎる場所でしたので、時間をおいて再度質問してみます。
蔵木 真昼 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- 北見 けん の投稿
まあまあ、そうお気になさらずに。
ここで答えてくれているみなさんそうだと思いますが、
「ここはそういう場所だからわきまえてほしい」
と言っているわけではなくて、
「こういう質問のしかたをした方がより有効な情報が集まりやすいですよ」
と言っているのだと思います。

蔵木さんは、
「ソースコードに半角カナを含むものがあります.これをどうにかTeXに載せたい」
と仰っていますね。
だとすれば、
半角カナを含まないものであれば“TeXに載せ”られたのではないですか?
そしてそのまま半角カナを含ませようとしたらうまくいかなかったと。
もしもそうであれば、
その二つの作業をそのままソースファイルなども示しながら説明すればいいと思います。
「半角カナを含まないときはこうやってうまくいくけれども、
 ここの部分に半角カナを追加してこうした場合には、こうなってしまいました」
という具合に。その“こうやった”のところでソースファイルなどを実際に示すわけです。
蔵木 真昼 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- 飯島 徹 の投稿
質問者の頭の中にある「もやもやしたやりたいこと」は回答者には伝わらないということです
% 回答者が何となく「こういうことかな?」と想像したとしても「なんかめんどくさそうだなぁ」と思われてしまいます
% そうなると回答を得る機会が減るので質問者にとってよいことではありません

ここの掲示板がどのような性質云々ではなく,どこの掲示板でもどのような質問でもハッキリとわかりやすく相手に伝わるように書けば回答者はしっかりとコメントをつけてくれます
場合によっては自分が望む以上のものを与えてくれるでしょう

まずは,自分のやりたいことを切り分けて整理してください
恐らく次のようなことだと思います

・プログラムを書き出す環境(行番号を付けられたほうがいいのか行番号なんて必要ないのかということも重要)がどのようなものがあるか知りたい
・上記とは別に TeX で半角カナを出力するためにはどうしたらよいのか知りたい

前者は Z. R. さんが回答してくださっている中にある「verbatim なのか、listings パッケージ使用なのか、それとも「自力で凝った出力(文法ハイライト)をしている」のか」が回答になると思いますし
後者は KUROKI Yusuke さんが回答してくださっている「p(la)texではなくup(la)texコマンドを使えば半角カナも問題なくタイプセットできます」が回答になると思います

より具体的に回答を得たいのならばそれぞれのコメントに返信という形で質問をすればいいでしょう

さらに,これらを試したときにもしかすると「プログラムを書き出す環境内で半角カナを用いると問題が起こる」ということもあるかもしれません
そのときは改めて質問をすればいいと思います
飯島 徹 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- 蔵木 真昼 の投稿
さきほど,uplatexコマンドを用い,かつjlisting.styを使用したところ,所望の結果が得られました.
以下ソース(hoge.tex)です.
---
\documentclass[dvipdfmx, a4j, uplatex, 11pt]{jsarticle}
\usepackage{listings, jlisting}

\lstset{%
language={C},
basicstyle={\small},%
identifierstyle={\small},%
commentstyle={\small\ttfamily \color[rgb]{0,0,0}},%
keywordstyle={\small\bfseries \color[rgb]{0,0,1}},%
ndkeywordstyle={\small},%
stringstyle={\small\ttfamily},
frame={tb},
breaklines=true,
columns=[l]{fullflexible},%
numbers=left,%
xrightmargin=0zw,%
xleftmargin=3zw,%
numberstyle={\small},%
stepnumber=1,
numbersep=1zw,%
morecomment=[l]{//}%
}

\renewcommand{\thelstnumber}{\tt{\arabic{lstnumber}:}}

\begin{document}
\bf
\begin{lstlisting}[basicstyle=\ttfamily\small, frame=tb]
パス1=1
パス2=2
\end{lstlisting}
\end{document}
---

これで,ptex2pdf -e -u -ot hoge.texを実行すると半角カナを含むソースコードを出力したpdfができました.

私としては満足いく結果となりましたが,飯島さん始め,他の方々に意味不明な質問をしてしまい申し訳ありませんでした.
今後,より具体的な質問をするよう心がけます.
様々な情報をくださり,また質問の仕方を指摘してくださった皆様,ありがとうございました.


追記
上記のソースにおいて,
language={C},
と入力している箇所の先頭にXが表示されています.
何度編集しても直りませんでしたのでそのままにしてあります.
誰もおられないと思いますが,タイプセットされる際はXを削除してください.
蔵木 真昼 への返信

Re: 半角カナを含むソースコードをTeXに載せたい

- 飯島 徹 の投稿
このようにソースを載せていただくと検証がしやすくありがたいです

>これで,ptex2pdf -e -u -ot hoge.texを実行すると半角カナを含むソースコードを出力したpdfができました.

本当でしょうか?私の環境では

>This is ptex2pdf[.lua] version 20170622.0.
>No filename argument given, exiting.

とエラーが出ます
ソースファイル hoge.tex において,半角カナを出力するために uplatex でコンパイルし PDF ファイルを作成したいときは ptex2pdf -u -l hoge のようにします
ptex2pdf のオプションや使い方に関しては TeXWiki の「ptex2pdf」 https://texwiki.texjp.org/?ptex2pdf を参考にしてください

jlisting.sty は「myTeXpert」の「ダウンロード一覧」 https://ja.osdn.net/projects/mytexpert/releases/ にあるものだと思いますが,以前に述べたように一般的でないスタイルファイルを利用するときはそれを取得したサイトのアドレスなどの情報をお願いします

いろいろ試行錯誤して混乱しているのだと思いますがとりあえず期待する出力が得られたようでお疲れ様でした