[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:24829] printing JP with XEmacs



こんにちは、
飛田@ステンドグラスです。

こんにちは、
飛田@ステンドグラスです。

このMLでは、いつも勉強させて頂いております。

現在、potato 上にて印刷環境を整えようとしていますが、XEmacs 上からの印刷
で分からない部分がありますので、お教え頂きたいと思います。

プリンタは、パラレルポートに EPSON PM-750C がぶら下がっており、
/dev/lp0 として認識されています。

lprng + apsfilter(或は magicfilter) を利用しようとインストールして設定し
ていて、apsfilterconfig で、Printer Driver Selection では、stcolor を選
択し、テストページはうまく印刷出来ました。

で、次に日本語の印刷が出来るようにと、/etc/apsfilterrc の GS_FEATURES に、
-dKANJI を追加し、簡単な日本語ファイル(test.txt) を euc-jp にて作成し、
netscape 4.75 から、test.txt を表示させて、Alt-p で、print command 欄に
lpr -Plp を指定して、正しく日本語が印刷されました。

そこで、今度は、同じ test.txt を XEmacs 上で、.emacs の関連する部分は、
(custom-set-variables
 '(lpr-command "lpr")
 '(lpr-switches (quote ("-Plp"))))
な状態でメニューバー(?)の File から "Print Buffer" を選択する(或はツール
バー? からプリンタマークのボタンを押す)と、なにも起こりません。lpq -a と
してもどこにも入っておらず、queue される前(filterでしょうか?)に問題が有
るような気がします。

で、その test.txt にカーソルが有る状態で、M-x print-buffer とすると、
XEmacs は、次の backtrace を残して消え去ってしまいます。

Lisp backtrace follows:

  # (unwind-protect ...)
  # (unwind-protect ...)
  write-region-internal(1 118 "/tmp/emacsxGDr4j" nil silent nil iso-2022-jp)
  # bind (func coding-system lockname visit append filename end start)
  write-region(1 118 "/tmp/emacsxGDr4j" nil silent)
  # bind (coding-system-for-read coding-system-for-write cs-r cs-w)
  # (unwind-protect ...)
  # bind (temp args displayp buffer deletep program end start)
  call-process-region(1 118 "lpr" nil nil nil "-J" "test.txt Emacs buffer" "-Plp")
  apply(call-process-region (1 118 "lpr" nil nil nil "-J" "test.txt Emacs buffer" "-Plp"))
  # (unwind-protect ...)
  # bind (name title width nswitches switch-string page-headers switches end start)
  print-region-1(1 41 ("-Plp") t)
  #<compiled-function nil "...(10)" [print-region-1 lpr-switches t] 5 ("/usr/share/xemacs21/packages/lisp/o  s-utils/lpr.elc" . 2385) nil>()
  call-interactively(print-buffer)
  command-execute(print-buffer t)
  # bind (_execute_command_keys_ _execute_command_name_ prefix-arg)
  execute-extended-command(nil)
  # bind (command-debug-status)
  call-interactively(execute-extended-command)
  # (condition-case ... . error)
  # (catch top-level ...)

Vine上では、XEmacs 上から、上記のような方法で何も考えずに印刷出来ていた
ので、全然スキルが身についておらず、安楽に浸っておりまして、Vine の
printcap とか filter 部分を覗くだけは覗いてはみたのですが、、分かりませ
んでした。^^;

# nkf -j |a2psj -nh -nt -p -a4 |gs -q -dKANJI -dNOPAUSE \
# -sDEVICE=stcolor -sPAPERSIZE=a4 -sOutputFile=- 
# とかいう感じの物を lpr に渡してあげれば良いようには思うのですが、、

どうすれば potato の XEmacs 上から日本語テキストファイルを印刷することが
出来るのか、お教え頂けると助かります。m(_)m

--
  Shinichiro HIDA
  mailto:shinichiro@xxxxxxxxxxxxx