unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
@ 2014-06-11 21:21 Tobias Bora
  2016-02-13 11:07 ` Marcin Borkowski
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Tobias Bora @ 2014-06-11 21:21 UTC (permalink / raw)
  To: 17758


Hello,

I saw a bug (and I'm not the only one to notice it) with printing a
document with emacs. Indeed when there is a non ascii char in a line
(for example 'e') the line isn't wrapped in the output .ps file.

- Way to reproduce it :
===
1) Paste in *scratch* this :

;; This buffer is for notes you don't want to save, and for Lisp evaluation. If you want to create a file, visit that file with C-x C-f,
;; éThis buffer is for notes you don't want to save, and for Lisp evaluation. If you want to create a file, visit that file with C-x C-f,

2) Generate a ps file with M-x ps-spool-buffer-with-faces

3) Swith to the new buffer with C-x b *POSTSCRIPT*

4) M-x ps-mode

5) Change the mode to see the ps picture : C-c C-c (then n to avoid
saving)
====


- What is expected : The two lines should be wrapped with something like 

;; This buffer is for notes you don't want to save, and
for Lisp evaluation. If you want to create a file, visi
t that file with C-x C-f,
;; éThis buffer is for notes you don't want to save, an
d for Lisp evaluation. If you want to create a file, vi
sit that file with C-x C-f,


- What appears : The line with a non ascii char ('é') isn't wrapped in
  two lines but is cut with something like this :

  
;; This buffer is for notes you don't want to save, and
for Lisp evaluation. If you want to create a file, visi
t that file with C-x C-f,
;; éThis buffer is for notes you don't want to save, an




Thank you in advance,

Tobias Bora.

  


In GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.6.0)
 of 2014-01-03 on chindi02, modified by Debian
Windowing system distributor `The X.Org Foundation', version 11.0.11300000
System Description:	Ubuntu 12.10

Configured using:
 `configure '--build' 'x86_64-linux-gnu' '--build' 'x86_64-linux-gnu'
 '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib'
 '--localstatedir=/var/lib' '--infodir=/usr/share/info'
 '--mandir=/usr/share/man' '--with-pop=yes'
 '--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.3/site-lisp:/usr/share/emacs/site-lisp'
 '--with-crt-dir=/usr/lib/x86_64-linux-gnu' '--with-x=yes'
 '--with-x-toolkit=gtk3' '--with-toolkit-scroll-bars'
 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector
 --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall'
 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro'
 'CPPFLAGS=-D_FORTIFY_SOURCE=2''

Important settings:
  value of $LANG: fr_FR.UTF-8
  locale-coding-system: utf-8
  default enable-multibyte-characters: t

Major mode: Buffer Menu

Minor modes in effect:
  global-undo-tree-mode: t
  undo-tree-mode: t
  global-auto-complete-mode: t
  auto-insert-mode: t
  savehist-mode: t
  recentf-mode: t
  ido-ubiquitous-mode: t
  ido-everywhere: t
  show-paren-mode: t
  global-linum-mode: t
  delete-selection-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  abbrev-mode: t

Recent input:
M-x C-s <C-return> <M-left> M-x C-s <return> <M-right> 
C-x b p o <return> M-x p s SPC m o <return> C-c C-c 
n <right> <right> C-x o <up> C-a <right> <right> <right> 
C-d <M-right> C-x k <return> <M-left> C-x b C-g C-x 
b p o <backspace> <backspace> C-g M-x C-s <return> 
<M-right> C-x b p o <return> C-c n C-c C-c n M-x p 
s SPC m o d e <return> C-c C-c n <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <M-left> C-s 
é <return> C-d C-s C-s <return> <M-right> C-x k <return> 
<M-left> M-x C-s <return> <M-right> C-x b p o <return> 
M-x p s SPC m o <return> C-c C-c n <M-left> C-a <right> 
<right> <right> <right> <left> é <M-right> C-x k <return> 
<M-left> M-x C-s <return> <M-right> C-x b p o <return> 
M-x p s SPC m o <return> C-c C-c n <M-left> <up> <up> 
C-a C-k C-k C-p C-p C-k C-k C-SPC <down> <down> <down> 
C-w <down> <down> <up> <up> C-SPC <down> <down> M-w 
C-y <up> <up> <right> <right> <right> & <backspace> 
é <M-right> C-x k <return> <M-left> C-x b p o C-g M-x 
p s C-s <return> <M-right> C-x b p o <return> C-c C-c 
C-g M-x p s SPC m o d e <return> C-c C-c n <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <M-left> C-x h M-w <help-echo> M-x <help-echo> 
C-g <down-mouse-1> <mouse-1> C-x k <return> <M-left> 
<M-right> M-x r e p o <return>

Recent messages:
Mark set
Mark activated
Mark set
Quit
Formatting...done
Type C-c C-c to toggle between editing or viewing the document.
The buffer has been modified.  Save the changes? (y or n)  n
Wrote /tmp/docview1000/*PostScript*
Type C-c C-c to toggle between editing or viewing the document.
Mark set [2 times]
Quit

Load-path shadows:
/home/tobias/.emacs.d/el-get/org-mode/.dir-locals hides /home/tobias/.emacs.d/el-get/el-get/.dir-locals
/usr/share/emacs/24.3/site-lisp/cmake-data/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/speedbar/sb-image hides /usr/share/emacs/24.3/lisp/sb-image
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/ezimage hides /usr/share/emacs/24.3/lisp/ezimage
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/speedbar/dframe hides /usr/share/emacs/24.3/lisp/dframe
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/speedbar/speedbar hides /usr/share/emacs/24.3/lisp/speedbar
/usr/share/emacs24/site-lisp/dictionaries-common/ispell hides /usr/share/emacs/24.3/lisp/textmodes/ispell
/usr/share/emacs24/site-lisp/dictionaries-common/flyspell hides /usr/share/emacs/24.3/lisp/textmodes/flyspell
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-ctags hides /usr/share/emacs/24.3/lisp/org/org-ctags
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-element hides /usr/share/emacs/24.3/lisp/org/org-element
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-matlab hides /usr/share/emacs/24.3/lisp/org/ob-matlab
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-comint hides /usr/share/emacs/24.3/lisp/org/ob-comint
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-lisp hides /usr/share/emacs/24.3/lisp/org/ob-lisp
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-timer hides /usr/share/emacs/24.3/lisp/org/org-timer
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-fortran hides /usr/share/emacs/24.3/lisp/org/ob-fortran
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-loaddefs hides /usr/share/emacs/24.3/lisp/org/org-loaddefs
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ditaa hides /usr/share/emacs/24.3/lisp/org/ob-ditaa
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-sql hides /usr/share/emacs/24.3/lisp/org/ob-sql
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-src hides /usr/share/emacs/24.3/lisp/org/org-src
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-sqlite hides /usr/share/emacs/24.3/lisp/org/ob-sqlite
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-mouse hides /usr/share/emacs/24.3/lisp/org/org-mouse
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-habit hides /usr/share/emacs/24.3/lisp/org/org-habit
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-entities hides /usr/share/emacs/24.3/lisp/org/org-entities
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-clojure hides /usr/share/emacs/24.3/lisp/org/ob-clojure
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-mhe hides /usr/share/emacs/24.3/lisp/org/org-mhe
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-table hides /usr/share/emacs/24.3/lisp/org/ob-table
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-mobile hides /usr/share/emacs/24.3/lisp/org/org-mobile
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-pcomplete hides /usr/share/emacs/24.3/lisp/org/org-pcomplete
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-scheme hides /usr/share/emacs/24.3/lisp/org/ob-scheme
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-feed hides /usr/share/emacs/24.3/lisp/org/org-feed
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ruby hides /usr/share/emacs/24.3/lisp/org/ob-ruby
/home/tobias/.emacs.d/el-get/org-mode/contrib/lisp/org-wl hides /usr/share/emacs/24.3/lisp/org/org-wl
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-plantuml hides /usr/share/emacs/24.3/lisp/org/ob-plantuml
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ref hides /usr/share/emacs/24.3/lisp/org/ob-ref
/home/tobias/.emacs.d/el-get/org-mode/contrib/lisp/org-mew hides /usr/share/emacs/24.3/lisp/org/org-mew
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-clock hides /usr/share/emacs/24.3/lisp/org/org-clock
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-sass hides /usr/share/emacs/24.3/lisp/org/ob-sass
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-calc hides /usr/share/emacs/24.3/lisp/org/ob-calc
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-bbdb hides /usr/share/emacs/24.3/lisp/org/org-bbdb
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-awk hides /usr/share/emacs/24.3/lisp/org/ob-awk
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-C hides /usr/share/emacs/24.3/lisp/org/ob-C
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-attach hides /usr/share/emacs/24.3/lisp/org/org-attach
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-info hides /usr/share/emacs/24.3/lisp/org/org-info
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-id hides /usr/share/emacs/24.3/lisp/org/org-id
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-picolisp hides /usr/share/emacs/24.3/lisp/org/ob-picolisp
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-colview hides /usr/share/emacs/24.3/lisp/org/org-colview
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-faces hides /usr/share/emacs/24.3/lisp/org/org-faces
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-scala hides /usr/share/emacs/24.3/lisp/org/ob-scala
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-agenda hides /usr/share/emacs/24.3/lisp/org/org-agenda
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-screen hides /usr/share/emacs/24.3/lisp/org/ob-screen
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob hides /usr/share/emacs/24.3/lisp/org/ob
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-footnote hides /usr/share/emacs/24.3/lisp/org/org-footnote
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-mscgen hides /usr/share/emacs/24.3/lisp/org/ob-mscgen
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-rmail hides /usr/share/emacs/24.3/lisp/org/org-rmail
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-tangle hides /usr/share/emacs/24.3/lisp/org/ob-tangle
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-python hides /usr/share/emacs/24.3/lisp/org/ob-python
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-lilypond hides /usr/share/emacs/24.3/lisp/org/ob-lilypond
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-docview hides /usr/share/emacs/24.3/lisp/org/org-docview
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-io hides /usr/share/emacs/24.3/lisp/org/ob-io
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-eval hides /usr/share/emacs/24.3/lisp/org/ob-eval
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-archive hides /usr/share/emacs/24.3/lisp/org/org-archive
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-js hides /usr/share/emacs/24.3/lisp/org/ob-js
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-haskell hides /usr/share/emacs/24.3/lisp/org/ob-haskell
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-indent hides /usr/share/emacs/24.3/lisp/org/org-indent
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-macs hides /usr/share/emacs/24.3/lisp/org/org-macs
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-latex hides /usr/share/emacs/24.3/lisp/org/ob-latex
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-capture hides /usr/share/emacs/24.3/lisp/org/org-capture
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-plot hides /usr/share/emacs/24.3/lisp/org/org-plot
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-inlinetask hides /usr/share/emacs/24.3/lisp/org/org-inlinetask
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-perl hides /usr/share/emacs/24.3/lisp/org/ob-perl
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-bibtex hides /usr/share/emacs/24.3/lisp/org/org-bibtex
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-asymptote hides /usr/share/emacs/24.3/lisp/org/ob-asymptote
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-gnuplot hides /usr/share/emacs/24.3/lisp/org/ob-gnuplot
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-java hides /usr/share/emacs/24.3/lisp/org/ob-java
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-gnus hides /usr/share/emacs/24.3/lisp/org/org-gnus
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-protocol hides /usr/share/emacs/24.3/lisp/org/org-protocol
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-dot hides /usr/share/emacs/24.3/lisp/org/ob-dot
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-maxima hides /usr/share/emacs/24.3/lisp/org/ob-maxima
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-list hides /usr/share/emacs/24.3/lisp/org/org-list
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-octave hides /usr/share/emacs/24.3/lisp/org/ob-octave
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-eshell hides /usr/share/emacs/24.3/lisp/org/org-eshell
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-compat hides /usr/share/emacs/24.3/lisp/org/org-compat
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-install hides /usr/share/emacs/24.3/lisp/org/org-install
/home/tobias/.emacs.d/el-get/org-mode/lisp/org hides /usr/share/emacs/24.3/lisp/org/org
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-org hides /usr/share/emacs/24.3/lisp/org/ob-org
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-R hides /usr/share/emacs/24.3/lisp/org/ob-R
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-shen hides /usr/share/emacs/24.3/lisp/org/ob-shen
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-table hides /usr/share/emacs/24.3/lisp/org/org-table
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-w3m hides /usr/share/emacs/24.3/lisp/org/org-w3m
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-emacs-lisp hides /usr/share/emacs/24.3/lisp/org/ob-emacs-lisp
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-exp hides /usr/share/emacs/24.3/lisp/org/ob-exp
/home/tobias/.emacs.d/el-get/org-mode/contrib/lisp/org-vm hides /usr/share/emacs/24.3/lisp/org/org-vm
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-crypt hides /usr/share/emacs/24.3/lisp/org/org-crypt
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ocaml hides /usr/share/emacs/24.3/lisp/org/ob-ocaml
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-keys hides /usr/share/emacs/24.3/lisp/org/ob-keys
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-lob hides /usr/share/emacs/24.3/lisp/org/ob-lob
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-irc hides /usr/share/emacs/24.3/lisp/org/org-irc
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-datetree hides /usr/share/emacs/24.3/lisp/org/org-datetree
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ledger hides /usr/share/emacs/24.3/lisp/org/ob-ledger
/home/tobias/.emacs.d/el-get/org-mode/lisp/ob-css hides /usr/share/emacs/24.3/lisp/org/ob-css
/home/tobias/.emacs.d/el-get/org-mode/lisp/org-version hides /usr/share/emacs/24.3/lisp/org/org-version
/home/tobias/.emacs.d/el-get/org-mode/.dir-locals hides /usr/share/emacs/24.3/lisp/gnus/.dir-locals
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-base hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-base
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-datadebug hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-datadebug
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-opt hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-opt
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/chart hides /usr/share/emacs/24.3/lisp/emacs-lisp/chart
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-speedbar hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-speedbar
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-custom hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-custom
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet-cscope hides /usr/share/emacs/24.3/lisp/cedet/cedet-cscope
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/srecode/srecode hides /usr/share/emacs/24.3/lisp/cedet/srecode
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/pulse hides /usr/share/emacs/24.3/lisp/cedet/pulse
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet hides /usr/share/emacs/24.3/lisp/cedet/cedet
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet-idutils hides /usr/share/emacs/24.3/lisp/cedet/cedet-idutils
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/inversion hides /usr/share/emacs/24.3/lisp/cedet/inversion
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/ede/ede hides /usr/share/emacs/24.3/lisp/cedet/ede
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet-files hides /usr/share/emacs/24.3/lisp/cedet/cedet-files
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/data-debug hides /usr/share/emacs/24.3/lisp/cedet/data-debug
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/semantic/semantic hides /usr/share/emacs/24.3/lisp/cedet/semantic
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet-global hides /usr/share/emacs/24.3/lisp/cedet/cedet-global
/home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/mode-local hides /usr/share/emacs/24.3/lisp/cedet/mode-local

Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils misearch multi-isearch semantic-find caml tuareg
compile smie caml-help caml-types caml-emacs autorevert doc-view
jka-compr image-mode ps-mode comint ansi-color windmove ps-mule ps-print
ps-def lpr semantic-el semantic-bovine bovine-debug semantic-debug
hideshow undo-tree diff server merlin easy-mmode tq auto-complete-config
auto-complete popup autoinsert multiple-cursors mc-separate-operations
rectangular-region-mode mc-mark-pop mc-mark-more thingatpt
mc-cycle-cursors mc-edit-lines multiple-cursors-core rect smex savehist
recentf tree-widget ido-complete-space-or-hyphen ido-ubiquitous ido
paren linum delsel re-builder edmacro kmacro auto-complete-autoloads
graphviz-dot-mode-autoloads ido-complete-space-or-hyphen-autoloads
ido-ubiquitous-autoloads magit-autoloads sb-info info
git-rebase-mode-autoloads git-commit-mode-autoloads
markdown-mode-autoloads multi-web-mode-autoloads
multiple-cursors-autoloads php-mode-autoloads popup-autoloads
scad-mode-autoloads smex-autoloads finder-inf tuareg-autoloads
caml-autoloads undo-tree-autoloads vlf-autoloads w3-autoloads .loaddefs
yasnippet org-install preview-latex tex-site auto-loads el-get
el-get-autoloads el-get-list-packages el-get-notify el-get-dependencies
el-get-build el-get-status pp el-get-recipes el-get-byte-compile
el-get-methods el-get-fossil el-get-svn el-get-pacman el-get-github-zip
el-get-github-tar el-get-http-zip el-get-http-tar el-get-hg
el-get-git-svn el-get-fink el-get-emacswiki el-get-http
el-get-emacsmirror el-get-github el-get-git el-get-elpa package
el-get-darcs el-get-cvs el-get-bzr el-get-brew el-get-builtin
el-get-apt-get el-get-custom el-get-core autoload dired
semantic-tag-folding semantic-ectag-util cedet-global semantic-gcc
semantic-dep semantic-ia semantic-decorate-include semanticdb-find
semantic-decorate-mode semantic-decorate pulse semantic-m3
semantic-analyze-refs cedet-m3 semantic-mru-bookmark semanticdb-mode
semantic-idle eldoc senator ring which-func semantic-imenu semantic-sb
imenu cedet cedet-contrib-load contrib-loaddefs cogre-load
cogre-loaddefs speedbar-load speedbar-loaddefs ede-load ede-loaddefs
ede-speedbar ede-files ede ede-base ede-auto eieio-speedbar
semantic-ia-sb semantic-analyze semantic-scope semantic-analyze-fcn
semantic-sort semanticdb-javap cedet-java semanticdb-el semanticdb-ref
semanticdb semantic-ctxt semantic-format semantic-util-modes
semantic-util semantic semantic-lex semantic-tag-ls semantic-tag working
fame speedbar sb-image ezimage dframe assoc eieio-custom wid-edit
ede-source eieio-base srecode-load srecode srecode-loaddefs
semantic-load eieio-opt help-mode easymenu semantic-fw semantic-loaddefs
mode-local find-func derived eieio-load eieio-loaddefs cedet-load
cedet-compat cedet-loaddefs eieio warnings advice help-fns
advice-preload byte-opt bytecomp byte-compile cconv inversion cl-macs gv
cl cl-lib time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel
x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list
newcomment lisp-mode register page menu-bar rfn-eshadow timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham
georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese hebrew greek romanian slovak czech european ethiopic
indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple
abbrev minibuffer loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote make-network-process
dbusbind dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty emacs)





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2014-06-11 21:21 bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars Tobias Bora
@ 2016-02-13 11:07 ` Marcin Borkowski
  2021-05-29  5:38 ` Lars Ingebrigtsen
  2021-05-29  8:09 ` Mattias Engdegård
  2 siblings, 0 replies; 10+ messages in thread
From: Marcin Borkowski @ 2016-02-13 11:07 UTC (permalink / raw)
  To: Tobias Bora; +Cc: 17758

Hi all,

my previous email was somehow lost, so I'm writing again.

Confirmed on GNU Emacs 25.1.50.2 (revision 4ccd268).  For the record: it
is "*PostScript*", not "*POSTSCRIPT*".

Best,
Marcin Borkowski


On 2014-06-12, at 00:21, Tobias Bora <tobias.bora@gmail.com> wrote:

> Hello,
>
> I saw a bug (and I'm not the only one to notice it) with printing a
> document with emacs. Indeed when there is a non ascii char in a line
> (for example 'e') the line isn't wrapped in the output .ps file.
>
> - Way to reproduce it :
> ===
> 1) Paste in *scratch* this :
>
> ;; This buffer is for notes you don't want to save, and for Lisp evaluation. If you want to create a file, visit that file with C-x C-f,
> ;; éThis buffer is for notes you don't want to save, and for Lisp evaluation. If you want to create a file, visit that file with C-x C-f,
>
> 2) Generate a ps file with M-x ps-spool-buffer-with-faces
>
> 3) Swith to the new buffer with C-x b *POSTSCRIPT*
>
> 4) M-x ps-mode
>
> 5) Change the mode to see the ps picture : C-c C-c (then n to avoid
> saving)
> ====
>
>
> - What is expected : The two lines should be wrapped with something like 
>
> ;; This buffer is for notes you don't want to save, and
> for Lisp evaluation. If you want to create a file, visi
> t that file with C-x C-f,
> ;; éThis buffer is for notes you don't want to save, an
> d for Lisp evaluation. If you want to create a file, vi
> sit that file with C-x C-f,
>
>
> - What appears : The line with a non ascii char ('é') isn't wrapped in
>   two lines but is cut with something like this :
>
>   
> ;; This buffer is for notes you don't want to save, and
> for Lisp evaluation. If you want to create a file, visi
> t that file with C-x C-f,
> ;; éThis buffer is for notes you don't want to save, an
>
>
>
>
> Thank you in advance,
>
> Tobias Bora.
>
>   
>
>
> In GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.6.0)
>  of 2014-01-03 on chindi02, modified by Debian
> Windowing system distributor `The X.Org Foundation', version 11.0.11300000
> System Description:	Ubuntu 12.10
>
> Configured using:
>  `configure '--build' 'x86_64-linux-gnu' '--build' 'x86_64-linux-gnu'
>  '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib'
>  '--localstatedir=/var/lib' '--infodir=/usr/share/info'
>  '--mandir=/usr/share/man' '--with-pop=yes'
>  '--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.3/site-lisp:/usr/share/emacs/site-lisp'
>  '--with-crt-dir=/usr/lib/x86_64-linux-gnu' '--with-x=yes'
>  '--with-x-toolkit=gtk3' '--with-toolkit-scroll-bars'
>  'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector
>  --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall'
>  'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro'
>  'CPPFLAGS=-D_FORTIFY_SOURCE=2''
>
> Important settings:
>   value of $LANG: fr_FR.UTF-8
>   locale-coding-system: utf-8
>   default enable-multibyte-characters: t
>
> Major mode: Buffer Menu
>
> Minor modes in effect:
>   global-undo-tree-mode: t
>   undo-tree-mode: t
>   global-auto-complete-mode: t
>   auto-insert-mode: t
>   savehist-mode: t
>   recentf-mode: t
>   ido-ubiquitous-mode: t
>   ido-everywhere: t
>   show-paren-mode: t
>   global-linum-mode: t
>   delete-selection-mode: t
>   yas-global-mode: t
>   yas-minor-mode: t
>   tooltip-mode: t
>   mouse-wheel-mode: t
>   tool-bar-mode: t
>   menu-bar-mode: t
>   file-name-shadow-mode: t
>   global-font-lock-mode: t
>   font-lock-mode: t
>   blink-cursor-mode: t
>   auto-composition-mode: t
>   auto-encryption-mode: t
>   auto-compression-mode: t
>   buffer-read-only: t
>   column-number-mode: t
>   line-number-mode: t
>   transient-mark-mode: t
>   abbrev-mode: t
>
> Recent input:
> M-x C-s <C-return> <M-left> M-x C-s <return> <M-right> 
> C-x b p o <return> M-x p s SPC m o <return> C-c C-c 
> n <right> <right> C-x o <up> C-a <right> <right> <right> 
> C-d <M-right> C-x k <return> <M-left> C-x b C-g C-x 
> b p o <backspace> <backspace> C-g M-x C-s <return> 
> <M-right> C-x b p o <return> C-c n C-c C-c n M-x p 
> s SPC m o d e <return> C-c C-c n <right> <right> <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <right> <right> <right> <right> <M-left> C-s 
> é <return> C-d C-s C-s <return> <M-right> C-x k <return> 
> <M-left> M-x C-s <return> <M-right> C-x b p o <return> 
> M-x p s SPC m o <return> C-c C-c n <M-left> C-a <right> 
> <right> <right> <right> <left> é <M-right> C-x k <return> 
> <M-left> M-x C-s <return> <M-right> C-x b p o <return> 
> M-x p s SPC m o <return> C-c C-c n <M-left> <up> <up> 
> C-a C-k C-k C-p C-p C-k C-k C-SPC <down> <down> <down> 
> C-w <down> <down> <up> <up> C-SPC <down> <down> M-w 
> C-y <up> <up> <right> <right> <right> & <backspace> 
> é <M-right> C-x k <return> <M-left> C-x b p o C-g M-x 
> p s C-s <return> <M-right> C-x b p o <return> C-c C-c 
> C-g M-x p s SPC m o d e <return> C-c C-c n <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <right> <right> <right> <right> <right> <right> 
> <right> <M-left> C-x h M-w <help-echo> M-x <help-echo> 
> C-g <down-mouse-1> <mouse-1> C-x k <return> <M-left> 
> <M-right> M-x r e p o <return>
>
> Recent messages:
> Mark set
> Mark activated
> Mark set
> Quit
> Formatting...done
> Type C-c C-c to toggle between editing or viewing the document.
> The buffer has been modified.  Save the changes? (y or n)  n
> Wrote /tmp/docview1000/*PostScript*
> Type C-c C-c to toggle between editing or viewing the document.
> Mark set [2 times]
> Quit
>
> Load-path shadows:
> /home/tobias/.emacs.d/el-get/org-mode/.dir-locals hides /home/tobias/.emacs.d/el-get/el-get/.dir-locals
> /usr/share/emacs/24.3/site-lisp/cmake-data/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/speedbar/sb-image hides /usr/share/emacs/24.3/lisp/sb-image
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/ezimage hides /usr/share/emacs/24.3/lisp/ezimage
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/speedbar/dframe hides /usr/share/emacs/24.3/lisp/dframe
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/speedbar/speedbar hides /usr/share/emacs/24.3/lisp/speedbar
> /usr/share/emacs24/site-lisp/dictionaries-common/ispell hides /usr/share/emacs/24.3/lisp/textmodes/ispell
> /usr/share/emacs24/site-lisp/dictionaries-common/flyspell hides /usr/share/emacs/24.3/lisp/textmodes/flyspell
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-ctags hides /usr/share/emacs/24.3/lisp/org/org-ctags
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-element hides /usr/share/emacs/24.3/lisp/org/org-element
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-matlab hides /usr/share/emacs/24.3/lisp/org/ob-matlab
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-comint hides /usr/share/emacs/24.3/lisp/org/ob-comint
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-lisp hides /usr/share/emacs/24.3/lisp/org/ob-lisp
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-timer hides /usr/share/emacs/24.3/lisp/org/org-timer
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-fortran hides /usr/share/emacs/24.3/lisp/org/ob-fortran
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-loaddefs hides /usr/share/emacs/24.3/lisp/org/org-loaddefs
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ditaa hides /usr/share/emacs/24.3/lisp/org/ob-ditaa
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-sql hides /usr/share/emacs/24.3/lisp/org/ob-sql
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-src hides /usr/share/emacs/24.3/lisp/org/org-src
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-sqlite hides /usr/share/emacs/24.3/lisp/org/ob-sqlite
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-mouse hides /usr/share/emacs/24.3/lisp/org/org-mouse
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-habit hides /usr/share/emacs/24.3/lisp/org/org-habit
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-entities hides /usr/share/emacs/24.3/lisp/org/org-entities
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-clojure hides /usr/share/emacs/24.3/lisp/org/ob-clojure
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-mhe hides /usr/share/emacs/24.3/lisp/org/org-mhe
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-table hides /usr/share/emacs/24.3/lisp/org/ob-table
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-mobile hides /usr/share/emacs/24.3/lisp/org/org-mobile
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-pcomplete hides /usr/share/emacs/24.3/lisp/org/org-pcomplete
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-scheme hides /usr/share/emacs/24.3/lisp/org/ob-scheme
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-feed hides /usr/share/emacs/24.3/lisp/org/org-feed
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ruby hides /usr/share/emacs/24.3/lisp/org/ob-ruby
> /home/tobias/.emacs.d/el-get/org-mode/contrib/lisp/org-wl hides /usr/share/emacs/24.3/lisp/org/org-wl
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-plantuml hides /usr/share/emacs/24.3/lisp/org/ob-plantuml
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ref hides /usr/share/emacs/24.3/lisp/org/ob-ref
> /home/tobias/.emacs.d/el-get/org-mode/contrib/lisp/org-mew hides /usr/share/emacs/24.3/lisp/org/org-mew
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-clock hides /usr/share/emacs/24.3/lisp/org/org-clock
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-sass hides /usr/share/emacs/24.3/lisp/org/ob-sass
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-calc hides /usr/share/emacs/24.3/lisp/org/ob-calc
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-bbdb hides /usr/share/emacs/24.3/lisp/org/org-bbdb
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-awk hides /usr/share/emacs/24.3/lisp/org/ob-awk
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-C hides /usr/share/emacs/24.3/lisp/org/ob-C
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-attach hides /usr/share/emacs/24.3/lisp/org/org-attach
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-info hides /usr/share/emacs/24.3/lisp/org/org-info
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-id hides /usr/share/emacs/24.3/lisp/org/org-id
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-picolisp hides /usr/share/emacs/24.3/lisp/org/ob-picolisp
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-colview hides /usr/share/emacs/24.3/lisp/org/org-colview
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-faces hides /usr/share/emacs/24.3/lisp/org/org-faces
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-scala hides /usr/share/emacs/24.3/lisp/org/ob-scala
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-agenda hides /usr/share/emacs/24.3/lisp/org/org-agenda
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-screen hides /usr/share/emacs/24.3/lisp/org/ob-screen
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob hides /usr/share/emacs/24.3/lisp/org/ob
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-footnote hides /usr/share/emacs/24.3/lisp/org/org-footnote
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-mscgen hides /usr/share/emacs/24.3/lisp/org/ob-mscgen
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-rmail hides /usr/share/emacs/24.3/lisp/org/org-rmail
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-tangle hides /usr/share/emacs/24.3/lisp/org/ob-tangle
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-python hides /usr/share/emacs/24.3/lisp/org/ob-python
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-lilypond hides /usr/share/emacs/24.3/lisp/org/ob-lilypond
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-docview hides /usr/share/emacs/24.3/lisp/org/org-docview
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-io hides /usr/share/emacs/24.3/lisp/org/ob-io
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-eval hides /usr/share/emacs/24.3/lisp/org/ob-eval
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-archive hides /usr/share/emacs/24.3/lisp/org/org-archive
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-js hides /usr/share/emacs/24.3/lisp/org/ob-js
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-haskell hides /usr/share/emacs/24.3/lisp/org/ob-haskell
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-indent hides /usr/share/emacs/24.3/lisp/org/org-indent
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-macs hides /usr/share/emacs/24.3/lisp/org/org-macs
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-latex hides /usr/share/emacs/24.3/lisp/org/ob-latex
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-capture hides /usr/share/emacs/24.3/lisp/org/org-capture
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-plot hides /usr/share/emacs/24.3/lisp/org/org-plot
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-inlinetask hides /usr/share/emacs/24.3/lisp/org/org-inlinetask
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-perl hides /usr/share/emacs/24.3/lisp/org/ob-perl
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-bibtex hides /usr/share/emacs/24.3/lisp/org/org-bibtex
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-asymptote hides /usr/share/emacs/24.3/lisp/org/ob-asymptote
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-gnuplot hides /usr/share/emacs/24.3/lisp/org/ob-gnuplot
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-java hides /usr/share/emacs/24.3/lisp/org/ob-java
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-gnus hides /usr/share/emacs/24.3/lisp/org/org-gnus
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-protocol hides /usr/share/emacs/24.3/lisp/org/org-protocol
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-dot hides /usr/share/emacs/24.3/lisp/org/ob-dot
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-maxima hides /usr/share/emacs/24.3/lisp/org/ob-maxima
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-list hides /usr/share/emacs/24.3/lisp/org/org-list
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-octave hides /usr/share/emacs/24.3/lisp/org/ob-octave
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-eshell hides /usr/share/emacs/24.3/lisp/org/org-eshell
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-compat hides /usr/share/emacs/24.3/lisp/org/org-compat
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-install hides /usr/share/emacs/24.3/lisp/org/org-install
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org hides /usr/share/emacs/24.3/lisp/org/org
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-org hides /usr/share/emacs/24.3/lisp/org/ob-org
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-R hides /usr/share/emacs/24.3/lisp/org/ob-R
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-shen hides /usr/share/emacs/24.3/lisp/org/ob-shen
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-table hides /usr/share/emacs/24.3/lisp/org/org-table
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-w3m hides /usr/share/emacs/24.3/lisp/org/org-w3m
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-emacs-lisp hides /usr/share/emacs/24.3/lisp/org/ob-emacs-lisp
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-exp hides /usr/share/emacs/24.3/lisp/org/ob-exp
> /home/tobias/.emacs.d/el-get/org-mode/contrib/lisp/org-vm hides /usr/share/emacs/24.3/lisp/org/org-vm
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-crypt hides /usr/share/emacs/24.3/lisp/org/org-crypt
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ocaml hides /usr/share/emacs/24.3/lisp/org/ob-ocaml
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-keys hides /usr/share/emacs/24.3/lisp/org/ob-keys
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-lob hides /usr/share/emacs/24.3/lisp/org/ob-lob
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-irc hides /usr/share/emacs/24.3/lisp/org/org-irc
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-datetree hides /usr/share/emacs/24.3/lisp/org/org-datetree
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-ledger hides /usr/share/emacs/24.3/lisp/org/ob-ledger
> /home/tobias/.emacs.d/el-get/org-mode/lisp/ob-css hides /usr/share/emacs/24.3/lisp/org/ob-css
> /home/tobias/.emacs.d/el-get/org-mode/lisp/org-version hides /usr/share/emacs/24.3/lisp/org/org-version
> /home/tobias/.emacs.d/el-get/org-mode/.dir-locals hides /usr/share/emacs/24.3/lisp/gnus/.dir-locals
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-base hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-base
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-datadebug hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-datadebug
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-opt hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-opt
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/chart hides /usr/share/emacs/24.3/lisp/emacs-lisp/chart
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-speedbar hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-speedbar
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/eieio/eieio-custom hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-custom
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet-cscope hides /usr/share/emacs/24.3/lisp/cedet/cedet-cscope
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/srecode/srecode hides /usr/share/emacs/24.3/lisp/cedet/srecode
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/pulse hides /usr/share/emacs/24.3/lisp/cedet/pulse
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet hides /usr/share/emacs/24.3/lisp/cedet/cedet
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet-idutils hides /usr/share/emacs/24.3/lisp/cedet/cedet-idutils
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/inversion hides /usr/share/emacs/24.3/lisp/cedet/inversion
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/ede/ede hides /usr/share/emacs/24.3/lisp/cedet/ede
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet-files hides /usr/share/emacs/24.3/lisp/cedet/cedet-files
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/data-debug hides /usr/share/emacs/24.3/lisp/cedet/data-debug
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/semantic/semantic hides /usr/share/emacs/24.3/lisp/cedet/semantic
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/cedet-global hides /usr/share/emacs/24.3/lisp/cedet/cedet-global
> /home/tobias/.emacs.d/mode/CEDET/cedet-1.1/common/mode-local hides /usr/share/emacs/24.3/lisp/cedet/mode-local
>
> Features:
> (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
> mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
> gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
> mail-prsvr mail-utils misearch multi-isearch semantic-find caml tuareg
> compile smie caml-help caml-types caml-emacs autorevert doc-view
> jka-compr image-mode ps-mode comint ansi-color windmove ps-mule ps-print
> ps-def lpr semantic-el semantic-bovine bovine-debug semantic-debug
> hideshow undo-tree diff server merlin easy-mmode tq auto-complete-config
> auto-complete popup autoinsert multiple-cursors mc-separate-operations
> rectangular-region-mode mc-mark-pop mc-mark-more thingatpt
> mc-cycle-cursors mc-edit-lines multiple-cursors-core rect smex savehist
> recentf tree-widget ido-complete-space-or-hyphen ido-ubiquitous ido
> paren linum delsel re-builder edmacro kmacro auto-complete-autoloads
> graphviz-dot-mode-autoloads ido-complete-space-or-hyphen-autoloads
> ido-ubiquitous-autoloads magit-autoloads sb-info info
> git-rebase-mode-autoloads git-commit-mode-autoloads
> markdown-mode-autoloads multi-web-mode-autoloads
> multiple-cursors-autoloads php-mode-autoloads popup-autoloads
> scad-mode-autoloads smex-autoloads finder-inf tuareg-autoloads
> caml-autoloads undo-tree-autoloads vlf-autoloads w3-autoloads .loaddefs
> yasnippet org-install preview-latex tex-site auto-loads el-get
> el-get-autoloads el-get-list-packages el-get-notify el-get-dependencies
> el-get-build el-get-status pp el-get-recipes el-get-byte-compile
> el-get-methods el-get-fossil el-get-svn el-get-pacman el-get-github-zip
> el-get-github-tar el-get-http-zip el-get-http-tar el-get-hg
> el-get-git-svn el-get-fink el-get-emacswiki el-get-http
> el-get-emacsmirror el-get-github el-get-git el-get-elpa package
> el-get-darcs el-get-cvs el-get-bzr el-get-brew el-get-builtin
> el-get-apt-get el-get-custom el-get-core autoload dired
> semantic-tag-folding semantic-ectag-util cedet-global semantic-gcc
> semantic-dep semantic-ia semantic-decorate-include semanticdb-find
> semantic-decorate-mode semantic-decorate pulse semantic-m3
> semantic-analyze-refs cedet-m3 semantic-mru-bookmark semanticdb-mode
> semantic-idle eldoc senator ring which-func semantic-imenu semantic-sb
> imenu cedet cedet-contrib-load contrib-loaddefs cogre-load
> cogre-loaddefs speedbar-load speedbar-loaddefs ede-load ede-loaddefs
> ede-speedbar ede-files ede ede-base ede-auto eieio-speedbar
> semantic-ia-sb semantic-analyze semantic-scope semantic-analyze-fcn
> semantic-sort semanticdb-javap cedet-java semanticdb-el semanticdb-ref
> semanticdb semantic-ctxt semantic-format semantic-util-modes
> semantic-util semantic semantic-lex semantic-tag-ls semantic-tag working
> fame speedbar sb-image ezimage dframe assoc eieio-custom wid-edit
> ede-source eieio-base srecode-load srecode srecode-loaddefs
> semantic-load eieio-opt help-mode easymenu semantic-fw semantic-loaddefs
> mode-local find-func derived eieio-load eieio-loaddefs cedet-load
> cedet-compat cedet-loaddefs eieio warnings advice help-fns
> advice-preload byte-opt bytecomp byte-compile cconv inversion cl-macs gv
> cl cl-lib time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel
> x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list
> newcomment lisp-mode register page menu-bar rfn-eshadow timer select
> scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham
> georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
> korean japanese hebrew greek romanian slovak czech european ethiopic
> indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple
> abbrev minibuffer loaddefs button faces cus-face macroexp files
> text-properties overlay sha1 md5 base64 format env code-pages mule
> custom widget hashtable-print-readable backquote make-network-process
> dbusbind dynamic-setting system-font-setting font-render-setting
> move-toolbar gtk x-toolkit x multi-tty emacs)





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2014-06-11 21:21 bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars Tobias Bora
  2016-02-13 11:07 ` Marcin Borkowski
@ 2021-05-29  5:38 ` Lars Ingebrigtsen
  2021-05-29  6:38   ` Eli Zaretskii
  2021-05-29  8:09 ` Mattias Engdegård
  2 siblings, 1 reply; 10+ messages in thread
From: Lars Ingebrigtsen @ 2021-05-29  5:38 UTC (permalink / raw)
  To: Tobias Bora; +Cc: 17758

Tobias Bora <tobias.bora@gmail.com> writes:

> I saw a bug (and I'm not the only one to notice it) with printing a
> document with emacs. Indeed when there is a non ascii char in a line
> (for example 'e') the line isn't wrapped in the output .ps file.

(I'm going through old bug reports that unfortunately got little response at
the time.)

This is due to this code:

(defun ps-mule-plot-string (from to &optional _bg-color)
[...]
	 (ascii-or-latin-1 "[\000-\377]+")
[...]
	    ((looking-at ascii-or-latin-1)
	     (let ((nchars (- (min (match-end 0) stop) (point))))
	       (setq width (* average-width nchars))
	       (if (< ps-width-remaining (+ run-width width))
		   (setq nchars (truncate (- ps-width-remaining run-width)
					  average-width)
			 run-width (+ run-width (* nchars average-width))
			 endpos (+ (point) nchars))
		 (setq run-width (+ run-width width))
		 (forward-char nchars))))

	    (t
	     (while (and (< (point) stop) (not endpos))
	       (setq width (char-width (following-char)))
	       (if (< ps-width-remaining (+ run-width width))
		   (setq endpos (point))
		 (setq run-width (+ run-width width))
		 (forward-char 1))))))

This is trying to do word line wrapping if we're looking at ASCII or
Latin-1 text.  (I'm not sure I understand the reasoning behind that, but
perhaps it's because we don't want to wrap (say) Chinese text?  But...
what's so special about Latin-1?  Why not fold Cyrillic?)

Anyway, the regexp is buggy, why is why this doesn't work.  I've now
fixed this in Emacs 28.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2021-05-29  5:38 ` Lars Ingebrigtsen
@ 2021-05-29  6:38   ` Eli Zaretskii
  2021-05-29  6:41     ` Lars Ingebrigtsen
  0 siblings, 1 reply; 10+ messages in thread
From: Eli Zaretskii @ 2021-05-29  6:38 UTC (permalink / raw)
  To: Lars Ingebrigtsen, Kenichi Handa; +Cc: 17758, tobias.bora

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Date: Sat, 29 May 2021 07:38:15 +0200
> Cc: 17758@debbugs.gnu.org
> 
> (defun ps-mule-plot-string (from to &optional _bg-color)
> [...]
> 	 (ascii-or-latin-1 "[\000-\377]+")
> [...]
> 	    ((looking-at ascii-or-latin-1)
> 	     (let ((nchars (- (min (match-end 0) stop) (point))))
> 	       (setq width (* average-width nchars))
> 	       (if (< ps-width-remaining (+ run-width width))
> 		   (setq nchars (truncate (- ps-width-remaining run-width)
> 					  average-width)
> 			 run-width (+ run-width (* nchars average-width))
> 			 endpos (+ (point) nchars))
> 		 (setq run-width (+ run-width width))
> 		 (forward-char nchars))))
> 
> 	    (t
> 	     (while (and (< (point) stop) (not endpos))
> 	       (setq width (char-width (following-char)))
> 	       (if (< ps-width-remaining (+ run-width width))
> 		   (setq endpos (point))
> 		 (setq run-width (+ run-width width))
> 		 (forward-char 1))))))
> 
> This is trying to do word line wrapping if we're looking at ASCII or
> Latin-1 text.  (I'm not sure I understand the reasoning behind that, but
> perhaps it's because we don't want to wrap (say) Chinese text?  But...
> what's so special about Latin-1?  Why not fold Cyrillic?)
> 
> Anyway, the regexp is buggy, why is why this doesn't work.  I've now
> fixed this in Emacs 28.

I'm not sure I understand the fix, can you explain it?

Regarding the reason for limiting ourselves to Latin-1: AFAIR, ps-mule
doesn't support non-ASCII characters outside Latin-1 and CJK character
sets.  Perhaps this is the reason for this code?  But the only expert
on this is Handa-san (CC'ed): perhaps he could help us understand what
the code is doing?





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2021-05-29  6:38   ` Eli Zaretskii
@ 2021-05-29  6:41     ` Lars Ingebrigtsen
  2021-05-29  7:01       ` Eli Zaretskii
  0 siblings, 1 reply; 10+ messages in thread
From: Lars Ingebrigtsen @ 2021-05-29  6:41 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Kenichi Handa, 17758, tobias.bora

Eli Zaretskii <eliz@gnu.org> writes:

> I'm not sure I understand the fix, can you explain it?

I'm not sure I understand it either.  :-/

(string-match "^[\000-ÿ]+" "éfoo")
=> 0

(string-match "^[\000-\377]+" "éfoo")
=> nil

Which surprised me.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2021-05-29  6:41     ` Lars Ingebrigtsen
@ 2021-05-29  7:01       ` Eli Zaretskii
  2021-05-29  8:19         ` Andreas Schwab
  0 siblings, 1 reply; 10+ messages in thread
From: Eli Zaretskii @ 2021-05-29  7:01 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: handa, 17758, tobias.bora

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: Kenichi Handa <handa@gnu.org>,  tobias.bora@gmail.com,
>   17758@debbugs.gnu.org
> Date: Sat, 29 May 2021 08:41:38 +0200
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > I'm not sure I understand the fix, can you explain it?
> 
> I'm not sure I understand it either.  :-/
> 
> (string-match "^[\000-ÿ]+" "éfoo")
> => 0
> 
> (string-match "^[\000-\377]+" "éfoo")
> => nil
> 
> Which surprised me.

Maybe because an octal escape causes us to match only raw bytes?

(string-match "^[\000-\377]+" (encode-coding-string "éfoo" 'latin-1))
=> 0

Is that documented somewhere?





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2014-06-11 21:21 bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars Tobias Bora
  2016-02-13 11:07 ` Marcin Borkowski
  2021-05-29  5:38 ` Lars Ingebrigtsen
@ 2021-05-29  8:09 ` Mattias Engdegård
  2021-05-30  4:04   ` Lars Ingebrigtsen
  2 siblings, 1 reply; 10+ messages in thread
From: Mattias Engdegård @ 2021-05-29  8:09 UTC (permalink / raw)
  To: Lars Ingebrigtsen, Eli Zaretskii, Kenichi Handa, 17758,
	tobias.bora

> (string-match "^[\000-ÿ]+" "éfoo")
> => 0
> 
> (string-match "^[\000-\377]+" "éfoo")
> => nil

Yes, this is by design. The former is the range U+0000..U+00FF and covers Latin-1. The latter covers ASCII and raw bytes, but no non-ASCII Unicode characters.

It is what we get when one interval endpoint is ASCII and the other a raw byte; it is mainly intended for regexp matching in unibyte text. Since the Emacs multibyte encoding puts the raw bytes 80..FF at the very end of the character numbering, [\000-\377] would include every Unicode character (which would be very surprising) if we didn't have this mechanism.






^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2021-05-29  7:01       ` Eli Zaretskii
@ 2021-05-29  8:19         ` Andreas Schwab
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Schwab @ 2021-05-29  8:19 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: handa, Lars Ingebrigtsen, 17758, tobias.bora

On Mai 29 2021, Eli Zaretskii wrote:

> Maybe because an octal escape causes us to match only raw bytes?

More exactly, if the range end points are both 8-bit characters (or from
ascii to 8-bit), we only match 8-bit characters (plus all ascii chars
from the start point if ascii).  Which kind of makes sense.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2021-05-29  8:09 ` Mattias Engdegård
@ 2021-05-30  4:04   ` Lars Ingebrigtsen
  2021-05-30 10:20     ` Eli Zaretskii
  0 siblings, 1 reply; 10+ messages in thread
From: Lars Ingebrigtsen @ 2021-05-30  4:04 UTC (permalink / raw)
  To: Mattias Engdegård; +Cc: Kenichi Handa, 17758, tobias.bora

Mattias Engdegård <mattiase@acm.org> writes:

> Yes, this is by design. The former is the range U+0000..U+00FF and
> covers Latin-1. The latter covers ASCII and raw bytes, but no
> non-ASCII Unicode characters.
>
> It is what we get when one interval endpoint is ASCII and the other a
> raw byte; it is mainly intended for regexp matching in unibyte
> text. Since the Emacs multibyte encoding puts the raw bytes 80..FF at
> the very end of the character numbering, [\000-\377] would include
> every Unicode character (which would be very surprising) if we didn't
> have this mechanism.

It makes sense, but when playing with this, I looked at the "range" item
in the "Regexp Special" node in the elisp manual, and it doesn't look
like this quirk is documented?  (But it's a long node, perhaps I missed
something when skimming it.)

And this bit seems to actively discourage the change I did here:

--
Although a range's bound can be almost any character, it is better
style to stay within natural sequences of ASCII letters and digits
because most people have not memorized character code tables.
For example, @samp{[.-9]} is less clear than @samp{[./0-9]},
and @samp{[`-~]} is less clear than @samp{[`a-z@{|@}~]}.
Unicode character escapes can help here; for example, for most programmers
@samp{[ก-ฺ฿-๛]} is less clear than @samp{[\u0E01-\u0E3A\u0E3F-\u0E5B]}.
--

So I think a couple of lines mentioning raw bytes vs. Latin-1 would he
helpful here.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars
  2021-05-30  4:04   ` Lars Ingebrigtsen
@ 2021-05-30 10:20     ` Eli Zaretskii
  0 siblings, 0 replies; 10+ messages in thread
From: Eli Zaretskii @ 2021-05-30 10:20 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: mattiase, 17758, tobias.bora, handa

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: Eli Zaretskii <eliz@gnu.org>,  Kenichi Handa <handa@gnu.org>,
>   17758@debbugs.gnu.org,  tobias.bora@gmail.com
> Date: Sun, 30 May 2021 06:04:28 +0200
> 
> So I think a couple of lines mentioning raw bytes vs. Latin-1 would he
> helpful here.

Done.





^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2021-05-30 10:20 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-11 21:21 bug#17758: 24.3; The line isn't wrapped during printing if it contains non ascii chars Tobias Bora
2016-02-13 11:07 ` Marcin Borkowski
2021-05-29  5:38 ` Lars Ingebrigtsen
2021-05-29  6:38   ` Eli Zaretskii
2021-05-29  6:41     ` Lars Ingebrigtsen
2021-05-29  7:01       ` Eli Zaretskii
2021-05-29  8:19         ` Andreas Schwab
2021-05-29  8:09 ` Mattias Engdegård
2021-05-30  4:04   ` Lars Ingebrigtsen
2021-05-30 10:20     ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).