Warning: this is a htmlized version!
The original is across this link.
#######
#
# E-scripts on emacs things
#
# Note 1: use the eev command (defined in eev.el) and the
# ee alias (in my .zshrc) to execute parts of this file.
# Executing this file as a whole makes no sense.
#
# Note 2: be VERY careful and make sure you understand what
# you're doing.
#
# Note 3: If you use a shell other than zsh things like |&
# and the for loops may not work.
#
# Note 4: I always run as root.
#
# Note 5: some parts are too old and don't work anymore. Some
# never worked.
#
# Note 6: the definitions for the find-xxxfile commands are on my
# .emacs.
#
# Note 7: if you see a strange command check my .zshrc -- it may
# be defined there as a function or an alias.
#
# Note 8: the sections without dates are always older than the
# sections with dates.
#
# This file is at <http://angg.twu.net/a/e/emacs.e>
#           or at <http://angg.twu.net/e/emacs.e.html>.
#        See also <http://angg.twu.net/emacs.html>,
#                 <http://angg.twu.net/a/.emacs[.html]>,
#                 <http://angg.twu.net/a/.zshrc[.html]>,
#                 <http://angg.twu.net/escripts.html>,
#             and <http://angg.twu.net/>.
#
#######



#####
#
# Adapting eev.el to tcsh
#
#####

#  «tcsh_export»

expect -c 'spawn tcsh; puts "\n"; foreach li [split {\
echo $foo
foo=bar
set foo bar
echo $foo
set foo=bar
echo $foo
tcsh
  echo $foo
  exit
setenv foo bar
echo $foo
tcsh
  echo $foo
  exit
exit} "\n"] {
  expect "#"; send $li\n
}' | tee ~/o


l -rf ~/o




#######
#
# calc 2.02f
#
#######

rm -Rv /usr/src/calc-2.02f
cd /usr/src/
tar -xvzf /snarf/ftp/prep.ai.mit.edu/pub/gnu/calc-2.02f.tar.gz
cd /usr/src/calc-2.02f/
make compile |& tee omc
rm /usr/lib/emacs/calc-2.02f
ln -s /usr/src/calc-2.02f /usr/lib/emacs/calc-2.02f




#######
#
# w3 on emacs19 on hamm
#
#######

dpkg -i --ignore-depends=emacs /debian/bo/binary-all/web/w3-el_2.2.26-1.deb

dpkg -L w3-el

cd /usr/lib/emacs/site-lisp/w3/
etags *.el
# (find-w3tag "w3-view-this-url")


(defun w3f9 ()
  (interactive)
  (let* ((ext (w3-zone-at (point)))
	 (data (and ext (w3-zone-data ext))))
    (if (eq (car data) 'w3)
	(let ((d (nth 2 data)))
	  (message (format "%S" d))
	  (if d (setq urls (cons d urls))))
      (beep))))
(setq urls nil)
(global-set-key [f9] 'w3f9)

      (setq urls (cons (nth 2 if (not no-show)
	  (if (nth 2 data)
	      (message "%s" (url-truncate-url-for-viewing (nth 2 data))))
	(nth 2 data)))
     ((eq (car data) 'w3form)
      (if (not no-show)
	  (message "Form entry (name=%s, type=%s)" (nth 3 data)
		   (if (equal "" (nth 2 data)) "TEXT" (nth 2 data))) nil))
     ((eq (car data) 'w3graphic)
      (if (not no-show) (message "Inlined image (%s)" (nth 1 data)) nil))
     (t (if (not no-show) (message "No link at point.")
	  nil)))))

(find-node "(w3)Top")
(w3-open-local "~/ZHTML/index.html")
(find-fline "/usr/lib/emacs/site-lisp/w3/w3.el")
(find-fline "/usr/lib/emacs/site-lisp/w3/w3-vars.el" "[[")

(find-w3file "url.el" "Save history in")
(find-w3file "w3.el" "Reuse URL")







#######
#
# gnuserv
#
#######

# (find-vldifile "gnuserv.list")
# (find-fline "/usr/doc/gnuserv/")

# (find-fline "/usr/doc/gnuserv/README.debian")
# (find-fline "/usr/doc/gnuserv/README.gz")
# (find-fline "/usr/share/emacs/site-lisp/gnuserv.el" " server-d")

gnudoit '(pwd)'
gnudoit '(find-enode "Top")'
gnuclient +4 ~/CRIM/011ideas


# Interacting with code-c-d:
# (find-fline "~/.emacs" "knuth")
cd $(gnudoit '(substitute-in-file-name (knuthfile ""))')
l  $(gnudoit '(substitute-in-file-name (knuthfile "tex/texbook.tex"))')


lsof | grep '^\(gnuserv\|emacs\)'





#######
#
# gnuserv: on creating a softer `server-done-function'
#
#######

# (find-node "(elisp)Mode Line Format")
# (find-node "(elisp)Mode Line Data")

mode-line-format

(""
 mode-line-modified
 mode-line-buffer-identification
 "   "
 global-mode-string
 "   %[("
 mode-name mode-line-process
 minor-mode-alist
 "%n"
 ")%]--"
 (line-number-mode "L%l--")
 (column-number-mode "C%c--")
 (-3 . "%p")
 "-%-")

minor-mode-alist

((c-auto-hungry-string c-auto-hungry-string)
 (server-buffer-clients " Server")
 (vc-mode vc-mode)
 (abbrev-mode " Abbrev")
 (overwrite-mode overwrite-mode)
 (auto-fill-function " Fill")
 (defining-kbd-macro " Def")
 (isearch-mode isearch-mode))


pdsc /big/slinks1/dists/slink/main/source/editors/gnuserv_2.1alpha-4.dsc
# (code-c-d "gnuserv" "/usr/src/gnuserv-2.1alpha/")
# (find-gnuservfile "gnuserv.el")

# (find-node "(ipc)Top")






#######
#
# LCD (the emacs lisp code directory)
#
#######

# export LCD=/snarf/ftp/gatekeeper.dec.com/pub/GNU/elisp-archive
# export ELISP=/usr/share/emacs/19.34/lisp

(find-fline "$LCD/LCD-datafile")
(find-fline "$LCD/lispdir.el")
(setq lisp-code-directory "$LCD/LCD-datafile")
(load-library "$LCD/lispdir")
(format-lisp-code-directory)

$LCD/packages/dismal-0.92.tar.Z

describe
describe-perl-symbol
maple-mode
spread
sokoban

cp -iv $LCD/modes/maple.el.Z $ELISP/
gzip -dv $ELISP/maple.el.Z
# (find-efile "maple.el")

cp -iv $LCD/modes/spread.el.Z $ELISP/
gzip -dv $ELISP/spread.el.Z
# (find-efile "spread.el")

lynx $LCD/




#######
#
# calc 2.02f
#
#######

rm -Rv /usr/src/calc-2.02f
cd /usr/src/
tar -xvzf /snarf/ftp/prep.ai.mit.edu/pub/gnu/calc-2.02f.tar.gz
cd /usr/src/calc-2.02f/
make compile |& tee omc
rm /usr/lib/emacs/calc-2.02f
ln -s /usr/src/calc-2.02f /usr/lib/emacs/calc-2.02f




#######
#
# elisp manual (on crappy RedHat boxes)
#
#######

ln -s /usr/info elisp-manual-19-2.4.2

zsne ftp prep.ai.mit.edu/pub/gnu elisp-manual-19-2.4.2.tar.gz
ln -s ~/info elisp-manual-19-2.4.2

tar -xvzf $snarf/ftp/prep.ai.mit.edu/pub/gnu/elisp-manual-19-2.4.2.tar.gz \
  elisp-manual-19-2.4.2/elisp \
  elisp-manual-19-2.4.2/elisp-'[1-9]*'
rm elisp-manual-19-2.4.2





########
#
# emacs-lisp-intro
#
########

rm -Rv /usr/src/emacs-lisp-intro-1.05/
cd /usr/src/
tar -xvzf /snarf/ftp/prep.ai.mit.edu/pub/gnu/emacs-lisp-intro-1.05.tar.gz
cd /usr/src/emacs-lisp-intro-1.05/
makeinfo emacs-lisp-intro.texi
cp -v emacs-lisp-intro.info* /usr/info/

texi2dvi emacs-lisp-intro.texi |& tee ot

# (find-elinode "Top")




#######
#
# etags'ing emacs' .el files
#
#######

cd /usr/share/emacs/19.34/lisp/
etags *.el term/*.el
glimpseindex -H . -y *.el term/*.el

cd /usr/share/emacs/20.3/lisp/
etags $(find * -name '*.el')
glimpseindex -H . -y $(find * -name '*.el')




#######
#
# Debugging
#
#######

(find-elinode "Debug")
(find-elinode "debug-on-entry")

(find-elinode "Top")
(find-elinode "Debugging")
(find-elnode "Vectors")

(find-elnode "Control Structures")
(find-elnode "Catch and Throw")
(find-etag "point-to-register")

# (debug-on-entry 'eelatex-bounded)

%*
foo bar
%*


(setq debug-on-error t)
(calendar)

(find-efile "calendar.el")

(find-fline "~/.emacs" "shrink-window")
(describe-function 'shrink-window)





#######
#
# Life
#
#######

(find-elfile "life.el")

(progn
  (setq my-rectangle
   '("@@ "
     " @@"
     " @ "
     ))
  (setq my-rectangle
   '(" @          "
     "@           "
     "@          @"
     "@          @"
     "@@@@@@@@@@@@"))
  (setq my-rectangle '("@@@@@@@@@@"))
  (life 0.15))

(defun life-insert-random-pattern ()
  (insert-rectangle my-rectangle)
  (insert ?\n))

(life)

(life 0)




#######
#
# etags hacking (pure)
#
#######

cd /usr/share/emacs/19.34/lisp/
agrep \" etags.el | sort
agrep \" etags.el | agrep \\\\ | sort
agrep -n \" etags.el | agrep \\\\
l -f $(locate '*TAGS')

(find-demutag "YYSTYPE")
(find-demufile "TAGS")

A parte antes do del (a subregexp 1) é sempre um segmento inicial de
uma linha?

(find-efile "etags.el")

(find-etag "find-tag-default")
(find-etag "etags-file-of-tag")
(find-etag "tag-re-match-p")

(find-elnode "Syntax of Regexps")

(find-etag "etags-tags-completion-table")

      ;; This monster regexp matches an etags tag line.
      ;;   \1 is the string to match;
      ;;   \2 is not interesting;
      ;;   \3 is the guessed tag name; XXX guess should be better eg DEFUN
      ;;   \4 is not interesting;
      ;;   \5 is the explicitly-specified tag name.
      ;;   \6 is the line to start searching at;
      ;;   \7 is the char to start searching at.

"^\\(\\([^\177]+[^-a-zA-Z0-9_$\177]+\\)?\\([-a-zA-Z0-9_$?:]+\\)\
  ĄÄŁĄÄŁ³ ĄÄÄŁ³³³      	      ĄÄÄŁ³³ĄÄŁ³ĄÄŁĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ ĄÄŁ
   ³  ³	ĄÄÄÄÄÄĮŁĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĮŁ ³ ³ Ą3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ
   ³  Ą(2)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĮÄŁ
   Ą1ÄÄÄ........................................................


\[^-a-zA-Z0-9_$?:\177]*\\)\177\\(\\([^\n\001]+\\)\001\\)?\
 ³               ĄÄÄŁ³³ĄÄŁĄÄÄŁĄÄŁĄÄŁ³ ĄŁĄÄÄŁ³³ĄÄŁĄÄÄŁĄÄŁ³
 ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĮŁ ³      ³  ³ ĄÄÄÄÄÄÄÄĮŁ ³      ³	³
                        ³      ³  Ą5ÄÄÄÄÄÄÄÄÄÄÄŁ      ³	³
 ........ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ1Ł      Ą(4)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĮÄŁ


\\([0-9]+\\)?,\\([0-9]+\\)?\n"
ĄÄŁĄÄÄÄĮŁĄÄŁ³ ĄÄŁĄÄÄÄĮŁĄÄŁ³ĄŁ
 Ą6ÄÄÄÄÄÄÄĮÄŁ  Ą7ÄÄÄÄÄÄÄĮÄŁ




#######
#
# etags hacking (applied)
#
#######

(describe-function 'skip-chars-forward)	 
(describe-function 'looking-at)		 
					 
(defun forth-word-at-cursor ()		 
  (save-excursion			 
    (buffer-substring			 
     (progn (skip-chars-backward "!-~") (point))
     (progn (skip-chars-forward "!-~") (point)))))




#######
#
# Saving macros
# 00jan04
#
#######

#  «saving_emacs_macros»

# (find-enode "Save Kbd Macro")
# (find-etag "insert-kbd-macro")
# (find-etag "read-kbd-macro")
# (find-elnode "Creating Symbols")

# (find-efile "edmacro.el" "insert-kbd-macro")
# (find-efile "edmacro.el" "defun insert-kbd-macro")
# (find-efile "macros.el" "defun insert-kbd-macro")
# (load-library "edmacro")
# (load-library "macros")

# (insert-kbd-macro (make-symbol ""))

# (setq last-kbd-macro (read-kbd-macro "# SPC (find-vldifile SPC \" NUL C-e ESC w .list\") C-a <down> RET <up> # SPC (find-fline SPC \"/usr/doc/ C-y /\") C-a <down>"))

# (setq last-kbd-macro (read-kbd-macro "NUL <down> C-w <down> C-y 2*<up> ESC z SPC ESC z SPC { \\ al SPC C-a <down> ESC z 3*SPC C-a <down>"))


# (find-node "(elisp)Keyboard Macros")

(defun dff () (interactive)
  (execute-kbd-macro
   (read-kbd-macro "C-a # SPC (find-vldifile SPC \" NUL C-e ESC w .list\")
		    C-a <down> RET <up> # SPC (find-fline SPC \"/usr/doc/
		    C-y /\") C-a <down>")))




#######
#
# Emacs20 bug - old notes
#
#######

# (find-node "(emacs)Single-Byte European Support")
set-language-environment

cd /usr/share/emacs/20.2/lisp/
find * -name '*.el' > .files.el
etags $(<.files.el)
glimpseindex -H . -y $(<.files.el)

# (code-c-d "e20" "/usr/share/emacs/20.2/lisp/" "emacs")
# (code-c-d "e20s" "/usr/src/emacs20-20.2/")
# (find-e20tag "set-language-environment")
# (find-e20tag "set-terminal-coding-system")
# (find-e20tag "standard-display-european")
# (find-e20tag "standard-display-8bit")

# (find-fline "/usr/share/emacs/20.2/etc/")
# (find-fline "/usr/share/emacs/20.2/etc/FAQ" "Using Emacs with Alternate Character Sets")

(standard-display-8bit 128 255)
(standard-display-default 128 255)
Problema:
  ~
acao
 '
ação

# (find-e20tag "standard-display-european")
# (find-e20file "international/fontset.el")

(list-coding-systems)
(list-coding-systems 1)

set-language-environment

and specify `Latin-N'.

   Emacs can display those characters provided the terminal or font in
use supports them.  Use the `M-x standard-display-european' command to
enable or disable European display mode.  With a numeric argument, `M-x
standard-display-european' enables European character display if and
only if the argument is positive.

(standard-display-european 1)

/usr/doc/expect5.24/examples/autoexpect emacs20 --no-windows ~/CRIM/010ideas
# (find-fline "~/script.exp")

pdsc /debian/main/source/editors/emacs20_20.2-7.dsc
debian/rules binary	|& tee odrb

cd /usr/src/emacs20-20.2/
find * -type f -and -not -name '*.elc' > .files
glimpseindex -H . -F < .files

e20sglimpse Fredraw_frame

# (find-e20sfile "src/.gdbinit")
# set args --no-windows
# source ~/e

# (find-e20sfile "src/dispnew.c")
# (find-e20sfile "src/dispnew.c" "redraw-frame")
# (find-elnode "Index")

# (find-node "(gdb)Attach")
# (find-node "(gdb)Command Files")

# (find-elnode "Terminal Output" "send-string-to-terminal")
# (find-enode "Choosing Modes" "-*-")
# (find-enode "File Variables")

# (find-e20sfile "etc/NEWS" "Displaying international")
# (find-e20sfile "etc/NEWS" "fontset")
# (find-e20sfile "etc/NEWS" "browse-url-lynx-emacs")
# (find-e20sfile "etc/NEWS" "speedbar")
# (find-e20sfile "etc/NEWS" "unibyte-display-via-language-environment")
# (find-e20sfile "etc/NEWS" "0237")
# (find-e20sfile "etc/NEWS" "** Changes relating to multibyte characters")
# (find-e20sfile "etc/LNEWS" "Display tables")

# (find-e20file "emacs-lisp/")
# (find-e20file "emacs-lisp/trace.el" "ack ")
# (find-e20file "sregex.el")

# (find-e20file "international/fontset.el")
xlsfonts | grep -i mule





#####
#
# emacs 20.3.2 (slink), tracing the glyph bug.
#
#####

#  «tracing_the_glyph_bug»

apti liblockfile-dev

pdsc /big/slinks1/dists/slink/main/source/editors/emacs20_20.3-7.dsc
cd /usr/src/emacs20-20.3/

find * -type f -and -not -name '*.elc' > .files
# glimpseindex -n -H . -F < .files
etags src/*.[ch]

debian/rules binary	|& tee odrb


laf	\
    /usr/bin/emacs*			\
    /usr/src/emacs20-20.3/src/emacs*	\
    /usr/src/emacs20-20.3/debian/tmp/usr/bin/emacs-20.3		\
    /usr/src/emacs20-20.3/debian/tmp/usr/bin/emacs20

# (find-fline "~/eev.el" "eegdb-bounded")
# (gdb "gdb /usr/src/emacs20-20.3/src/emacs")
# (gdb "gdbattach /usr/src/emacs20-20.3/src/emacs")

/usr/src/emacs20-20.3/src/emacs \
  --no-windows --unibyte --no-init-file /home/root/glyphbug

# (find-fline "~/bin/gdbattach")
gdbattach /usr/src/emacs20-20.3/src/emacs


strace -f -o ~/s \
/usr/src/emacs20-20.3/src/emacs \
  --no-windows --unibyte --no-init-file /home/root/glyphbug

# (find-e20node "Bugs")
# (find-e20node "Checklist" "hung")
# (find-e20node "Initial Options")

# (find-e20stag "write_glyphs")
# (find-e20stag "encode_terminal_code")
# (find-e20stag "encode_coding")
# (find-e20stag "encode_coding_iso2022")

write_glyphs



%*
set args --no-windows --unibyte --no-init-file /home/root/glyphbug
br 405
br 507
run -geometry 300x300+20-20

p *argv
n
p xpos
p ypos
p width
p height
p dest_geom_mask
cont

p xpos
p ypos
p width
p height
p xswa
%*
p *(xswa.win_gravity)
%*










#####
#
# Emacs20, sending a bug report
#
#####

# (find-node "(gcc)Bugs")
# (find-node "(gcc)Bug Reporting")






#####
#
#
#
#####

# (find-enode "Single Shell")
# (find-etag "shell-command")
# (shell-command "laf /tmp" t)

# (find-node "(zsh)Description of Options" ".zshrc")

(let ((shell-file-name "/usr/bin/zsh -f"))
  (shell-command "laf /tmp" t))

zsh: command not found: laf

gsrvdir0




######
#
# Trapping errors
#
######

# (find-node "(elisp)Handling Errors" "VAR PROTECTED-FORM")
# (find-efile "files.el" "condition-case")

eglimpse condition-case




# (find-efile "ffap.el" "url from the text around")





#####
#
# Emacs20 fontsets
#
#####

# (find-vldifile "emacs20.list")
# (find-fline "/usr/doc/emacs20/")

# (find-fline "/usr/share/emacs/20.3/etc/")
# (find-fline "/usr/share/emacs/20.3/etc/HELLO")
# (find-fline "/usr/share/emacs/20.3/etc/NEWS" "HELLO")

cd ~/SLINK/
ls | grep font

apti intlfonts-arabic intlfonts-asian intlfonts-chinese \
  intlfonts-chinese-big intlfonts-european intlfonts-japanese \
  intlfonts-japanese-big intlfonts-phonetic

# (find-fline "/usr/doc/intlfonts-arabic/")
# (find-fline "/usr/doc/intlfonts-asian/")
# (find-fline "/usr/doc/intlfonts-chinese-big/")
# (find-fline "/usr/doc/intlfonts-chinese/")
# (find-fline "/usr/doc/intlfonts-european/")
# (find-fline "/usr/doc/intlfonts-japanese-big/")
# (find-fline "/usr/doc/intlfonts-japanese/")
# (find-fline "/usr/doc/intlfonts-phonetic/")
# (find-vldifile "intlfonts-arabic.list")
# (find-vldifile "intlfonts-asian.list")
# (find-vldifile "intlfonts-chinese-big.list")
# (find-vldifile "intlfonts-chinese.list")
# (find-vldifile "intlfonts-european.list")
# (find-vldifile "intlfonts-japanese-big.list")
# (find-vldifile "intlfonts-japanese.list")
# (find-vldifile "intlfonts-phonetic.list")


# (find-vldifile "emacs20.list")
# (find-fline "/usr/doc/emacs20/")


apti intlfonts-asian

# (find-vldifile "intlfonts-asian.list")
# (find-fline "/usr/doc/intlfonts-asian/")

# (find-e20node "Fontsets")
# (find-e20node "Defining Fontsets")
# (find-e20node "Mode Line" "CS states the coding system")
# (eeman "4 charsets" "ISO 2022 AND ISO 4873")
# (eeman "4 charsets" "UTF-8")
# (eeman "Tcl" "xhh")

# ranges
set r10   "\[\x80-\xBF\]"
set r110  "\[\xC0-\xDF\]"
set r1110 "\[\xE0-\xEF\]"

# (set-mstd-cchar 27 "31" "[")
# (find-fline "/usr/share/emacs/20.3/etc/HELLO")





######
#
# ISO 2022/4873
#
######

# (eeman "4 charsets" "ISO 2022 AND ISO 4873")

Switching  between  character sets is done using the shift
functions ^N (SO or LS1), ^O (SI or LS0), 
ESC n (LS2), 
ESC o (LS3),
ESC N (SS2),
ESC O (SS3), 
ESC ~ (LS1R), 
ESC } (LS2R),
ESC | (LS3R). The function LSn makes character set Gn the current one
for codes with high bit zero. The function LSnR makes character set Gn
the current one for codes with high bit one. The function SSn makes
character set Gn (n=2 or 3) the current one for the next character
only (regardless of the value of its high order bit).

A 94-character set is designated as Gn character set by an ESCape
sequence
ESC ( xx (for G0), 
ESC ) xx (for G1),  
ESC *  xx (for G2), 
ESC + xx (for G3), where xx is a symbol or a pair of symbols found in
the ISO 2375 International Register of Coded Character Sets. For
example,
ESC ( @ selects the ISO 646 character set as G0, 
ESC ( A selects the UK standard character set (with pound instead of
number sign),
ESC ( B selects ASCII (with dollar instead of currency sign),
ESC ( M selects a character set for African languages,
ESC ( ! A selects the Cuban character set, etc. etc.
A 96-character set is designated as Gn character set by an ESCape
sequence
ESC - xx (for G1), 
ESC . xx (for G2) or
ESC / xx (for G3). For example,
ESC - G selects the Hebrew alphabet as G1.




######
#
# The standard fontset
#
######

# (find-node "(gawk)Command Line Field Separator")
# (find-e20sfile "etc/CHARSETS")

grep '^##	' < /usr/src/emacs20-20.3/etc/CHARSETS
awk -F: 'NF==10 {printf "%-23s %3d %d %d %d %d %d %d %d %s\n",
            $1, $2, $3, $4, $5, $6, $7, $8, $9, $10}' \
  < /usr/src/emacs20-20.3/etc/CHARSETS

##	CHARSET-SYMBOL-NAME,
##	CHARSET-ID,
##	DIMENSION (1 or 2)
##	CHARS (94 or 96)
##	BYTES (of multibyte form: 1, 2, 3, or 4),
##	WIDTH (occupied column numbers: 1 or 2),
##	DIRECTION (0:left-to-right, 1:right-to-left),
##	ISO-FINAL-CHAR (character code of ISO-2022's final character)
##	ISO-GRAPHIC-PLANE (ISO-2022's graphic plane, 0:GL, 1:GR)
##	DESCRIPTION (describing string of the charset)

ascii                     0 1 94 1 1 0 66 0 ASCII (ISO646 IRV)
latin-iso8859-1         129 1 96 2 1 0 65 1 ISO8859-1 (Latin-1)
latin-iso8859-2         130 1 96 2 1 0 66 1 ISO8859-2 (Latin-2)
latin-iso8859-3         131 1 96 2 1 0 67 1 ISO8859-3 (Latin-3)
latin-iso8859-4         132 1 96 2 1 0 68 1 ISO8859-4 (Latin-4)
thai-tis620             133 1 96 2 1 0 84 1 TIS620.2529 (Thai)
greek-iso8859-7         134 1 96 2 1 0 70 1 ISO8859-7 (Greek)
arabic-iso8859-6        135 1 96 2 1 1 71 1 ISO8859-6 (Arabic)
hebrew-iso8859-8        136 1 96 2 1 1 72 1 ISO8859-8 (Hebrew)
katakana-jisx0201       137 1 94 2 1 0 73 1 JISX0201.1976 Japanese Kana
latin-jisx0201          138 1 94 2 1 0 74 0 JISX0201.1976 Japanese Roman
cyrillic-iso8859-5      140 1 96 2 1 0 76 1 ISO8859-5 (Cyrillic)
latin-iso8859-9         141 1 96 2 1 0 77 1 ISO8859-9 (Latin-5)
japanese-jisx0208-1978  144 2 94 3 2 0 64 0 JISX0208.1978 Japanese Kanji (so called "old JIS")
chinese-gb2312          145 2 94 3 2 0 65 0 GB2312 Chinese simplified
japanese-jisx0208       146 2 94 3 2 0 66 0 JISX0208.1983/1990 Japanese Kanji
korean-ksc5601          147 2 94 3 2 0 67 0 KSC5601 Korean Hangul and Hanja
japanese-jisx0212       148 2 94 3 2 0 68 0 JISX0212 Japanese supplement
chinese-cns11643-1      149 2 94 3 2 0 71 0 CNS11643 Plane 1 Chinese traditional
chinese-cns11643-2      150 2 94 3 2 0 72 0 CNS11643 Plane 2 Chinese traditional
chinese-big5-1          152 2 94 3 2 0 48 0 Big5 Level-1 Chinese traditional
chinese-big5-2          153 2 94 3 2 0 49 0 Big5 Level-2 Chinese traditional
chinese-sisheng         160 1 94 3 1 0 48 0 SiSheng characters for PinYin/ZhuYin
ipa                     161 1 96 3 1 0 48 1 IPA (International Phonetic Association)
vietnamese-viscii-lower 162 1 96 3 1 0 49 1 VISCII1.1 lower-case
vietnamese-viscii-upper 163 1 96 3 1 0 50 1 VISCII1.1 upper-case
arabic-digit            164 1 94 3 1 0 50 0 Arabic digit
arabic-1-column         165 1 94 3 1 1 51 0 Arabic 1-column
ascii-right-to-left     166 1 94 3 1 1 66 0 ASCII (left half of ISO8859-1) with right-to-left direction
lao                     167 1 94 3 1 0 49 0 Lao characters (ISO10646 0E80..0EDF)
arabic-2-column         224 1 94 3 2 1 52 0 Arabic 2-column
indian-is13194          225 1 94 3 2 0 53 1 Generic Indian charset for data exchange with IS 13194
indian-1-column         240 2 94 4 1 0 54 0 Indian charset for 2-column width glypps
tibetan-1-column        241 2 94 4 1 0 56 0 Tibetan 1 column glyph
ethiopic                245 2 94 4 2 0 51 0 Ethiopic characters
chinese-cns11643-3      246 2 94 4 2 0 73 0 CNS11643 Plane 3 Chinese Traditional
chinese-cns11643-4      247 2 94 4 2 0 74 0 CNS11643 Plane 4 Chinese Traditional
chinese-cns11643-5      248 2 94 4 2 0 75 0 CNS11643 Plane 5 Chinese Traditional
chinese-cns11643-6      249 2 94 4 2 0 76 0 CNS11643 Plane 6 Chinese Traditional
chinese-cns11643-7      250 2 94 4 2 0 77 0 CNS11643 Plane 7 Chinese Traditional
indian-2-column         251 2 94 4 2 0 53 0 Indian charset for 2-column width glyphs
tibetan                 252 2 94 4 2 0 55 0 Tibetan characters






cd /usr/src/emacs20-20.3/
find * -type f -and -not -name '*.elc' > .files
glimpseindex -n -H . -F < .files

cd /usr/src/emacs20-20.3/
agrep -l 2022 $(<.files)

cd /usr/src/emacs20-20.3/
agrep -i UTF $(<.files)

# (find-e20sfile "")
# (find-e20sfile "etc/CHARSETS")
# (find-e20sfile "etc/CODINGS")
# (find-e20sfile "etc/NEWS")
# (find-e20sfile "etc/ORDERS")
# (find-e20sfile "etc/SERVICE")
# (find-e20sfile "etc/TUTORIAL.ja")
# (find-e20sfile "leim/CXTERM-DIC/4Corner.tit")
# (find-e20sfile "leim/quail/cyril-jis.el")
# (find-e20sfile "leim/quail/cyrillic.el")
# (find-e20sfile "lisp/gnus/gnus-mule.el")
# (find-e20sfile "lisp/ChangeLog")
# (find-e20sfile "lisp/international/characters.el")
# (find-e20sfile "lisp/international/encoded-kb.el")
# (find-e20sfile "lisp/international/kkc.el")
# (find-e20sfile "lisp/international/mule-cmds.el")
# (find-e20sfile "lisp/international/mule-conf.el")
# (find-e20sfile "lisp/international/mule-diag.el")
# (find-e20sfile "lisp/international/mule.el")
# (find-e20sfile "lisp/international/quail.el")
# (find-e20sfile "lisp/international/skkdic-cnv.el")
# (find-e20sfile "lisp/international/titdic-cnv.el")
# (find-e20sfile "lisp/language/china-util.el")
# (find-e20sfile "lisp/language/chinese.el")
# (find-e20sfile "lisp/language/cyril-util.el")
# (find-e20sfile "lisp/language/cyrillic.el")
# (find-e20sfile "lisp/language/ethiopic.el")
# (find-e20sfile "lisp/language/european.el")
# (find-e20sfile "lisp/language/greek.el")
# (find-e20sfile "lisp/language/hebrew.el")
# (find-e20sfile "lisp/language/japanese.el")
# (find-e20sfile "lisp/language/korean.el")
# (find-e20sfile "lisp/language/misc-lang.el")
# (find-e20sfile "lisp/language/tibetan.el")
# (find-e20sfile "src/ChangeLog")
# (find-e20sfile "src/charset.c")
# (find-e20sfile "src/charset.h")
# (find-e20sfile "src/coding.c")
# (find-e20sfile "src/coding.h")
# (find-e20sfile "src/fileio.c")



# (find-e20sfile "src/coding.c" "** 2. Emacs internal format")
# (find-e20sfile "src/coding.c" "** 3. ISO2022 handlers")
# (find-e20sfile "src/coding.c" "  o coding-category-iso-7")
# (find-e20sfile "src/coding.c" "")
# (find-e20sfile "src/coding.h" "EMACS' INTERNAL FORMAT")
# (find-e20sfile "src/charset.h" "private dim1")






#####
#
# Making the files HELLOS and HELLOS2
#
#####

set mule1st  "\[\x80-\x9F\]"
set mulerest "\[\xA0-\xFF\]"
set string [exec cat /home/root/HELLO]
puts ";-*- coding: emacs-mule-unix -*-"
while {[regexp "($mule1st$mulerest+)(.*$)" $string {} mulestr string]} {
  puts $mulestr
}

eet | sort | uniq > ~/HELLOS


set highchar "\[\x80-\xFF\]"
set lines [split [exec cat /home/root/HELLOS] "\n"]
foreach li $lines {
  if {[regexp "$highchar+" $li highs]} {
    set mylist {}
    foreach c [split $highs {}] {
      scan $c "%c" code
      lappend mylist [format "%02x" $code]
    }
    puts "$li	$mylist"
  } else {
    puts $li
  }
}

eet > ~/HELLOS2



# (find-efile "simple.el" "what-cursor-position")



# (find-e20node "Coding Systems")
# (find-e20node "Specify Coding" "for the immediately following command")

# (find-e20file "")
# (find-e20file "language/")
# (find-e20file "international/")
# (find-e20file "international/quail.el")

# (find-e20tag "list-character-sets-1")
describe-current-coding-system-briefly

(set-buffer-file-coding-system 'emacs-mule-unix)

(defun ascstr32 (i lasti)
  (while (<= i lasti)
    (insert (format "%d: " i))
    (let ((j i)
	  (lastj (+ i 32)))
      (while (<= j lastj)
	(insert (format "%c" j))
	(setq j (+ j 1))))
    (setq i (+ i 32))
    (insert "\n")))

(ascstr32 32 128)

32:  !"#$%&'()*+,-./0123456789:;<=>?@
64: @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
96: `abcdefghijklmnopqrstuvwxyz{|}~Ç
128: ÇüéâäàåçêëèïîìÄÅÉæÆôöòûù˜ÖܛœžŸá






    (princ (format "%c" i) (current-buffer))
    (setq i (+ i 32))))



emacs20 -fn fontset-standard /usr/share/emacs/20.3/etc/HELLO

# (find-e20file "international/fontset.el")





#####
#
# A chapter on Emacs for the Debian tutorial
#
#####

#  «emacs_ee_tutor»

Emacs is an interactive Lisp programming environment that most of the
time is used as an editor, as an info-file viewer (see section ...),
as interface to debuggers or to read mail and news. It was made to be
extensible and has been extended so much that it is now next to
impossible to describe it briefly.

Entering emacs -- usually you keep one emacs session running and call 
it from other places with emacsclient or gnuclient.

From top to bottom you see: a menu bar, a large spaceone "window""buffer" editing your
file, the "mode line" (telling the mode, etc) and the "minibuffer".
The cursor starts in the 

One buffer with your file, one mode line, one message line, one menu
bar.

How keys are processed



lynx $S/http/www.debian.org/~hp/tutorial/debian-tutorial.html/ch-editor.html#s-editor-vi
edrxnetscape $S/http/www.debian.org/~hp/tutorial/debian-tutorial.html/ch-editor.html#s-editor-vi

# (find-enode "Debuggers")





#####
#
# emacs-20.4 source - trying to recycle slink's patches
#
#####

#  «emacs20.4»
# (code-c-d "e204" "/usr/src/emacs-20.4/")

rm -Rv /usr/src/emacs-20.4/
cd /usr/src/
#tar -xvzf $S/ftp/ftp.unicamp.br/pub/gnu/emacs/emacs-20.4.tar.gz
tar -xvzf $S/ftp/prep.ai.mit.edu/pub/gnu/emacs/emacs-20.4.tar.gz

gzip -cd /big/slinks1/dists/slink/main/source/editors/emacs20_20.3-7.diff.gz \
  > /tmp/emacs20.diff

# (find-fline "/tmp/emacs20.diff")
# (find-fline "/tmp/emacs20.difffiles")
grep '+++' /tmp/emacs20.diff > /tmp/emacs20.difffiles
awk '
  /--- emacs20-20.3.orig\/debian\/bin\/gcc\/gcc/ { p=1 }
  /\+\+\+ emacs20-20.3\/man\/Makefile.in/ { p=0 }
  /--- emacs20-20.3.orig\/src\/m\/arm.h/ { p=1 }
  p==1 { print $0 }
' < /tmp/emacs20.diff > /tmp/emacs20.diff-

cd /usr/src/emacs-20.4/
cat /tmp/emacs20.diff- | patch -p1 |& tee op

# (find-fline "/usr/src/emacs-20.4/op")
# (find-fline "/usr/src/emacs-20.4/debian/")

chmod 777 debian/rules
debian/rules binary	|& tee odrb





#####
#
# emacs-20.4 source - raw make
#
#####

#  «emacs20.4»
# (code-c-d "e204" "/usr/src/emacs-20.4/")

rm -Rv /usr/src/emacs-20.4/
cd /usr/src/
#tar -xvzf $S/ftp/ftp.unicamp.br/pub/gnu/emacs/emacs-20.4.tar.gz
tar -xvzf $S/ftp/prep.ai.mit.edu/pub/gnu/emacs/emacs-20.4.tar.gz

# (find-fline "/usr/src/emacs-20.4/")
# (find-fline "/usr/src/emacs-20.4/INSTALL")

cd /usr/src/emacs-20.4/
./configure --with-x=no	|& tee oc
make |& tee om




#####
#
# Making emacs-20.4 share many files with 20.3
#
#####

/usr/src/emacs-20.4/src/emacs

# Here we make an autoexpect script and tune it by hand; it becomes
# the short "-c" script below.
#
man2t /usr/doc/expect5.24/examples/autoexpect.1 | l
/usr/doc/expect5.24/examples/autoexpect -f /tmp/e \
  /usr/src/emacs-20.4/src/emacs

# Check which paths are being used.
#
strace-to ~/s \
expect -c '
#set timeout -1
proc ssend {str} {sleep 0.05; send -- $str}
spawn /usr/src/emacs-20.4/src/emacs
#match_max 100000
expect "Type C-h C-d for information on getting the latest version."
ssend "\010"
expect -re "This buffer is for notes you don.t want to save"
ssend "i"
expect "This is the top of the INFO tree"
ssend "q"
expect -re "This buffer is for notes you don.t want to save"
ssend "\010k"
expect "Describe key:"
ssend "\030"
expect "C-x-"
ssend "2"
expect "C-x 2 runs the command split-window-vertically"
ssend "\033\[17~"
expect "Picture:right"
ssend "\030\003"
expect eof
exit
'

grep -v ENOENT ~/s | getstrings | sort | uniq |& tee ~/o








# (find-fline "/usr/bin/dpkg-source")
# (find-fline "/usr/bin/dpkg-source" "'patch'")



laf /tmp/emacs20.diff*
grep '+++' /tmp/emacs20.diff-


awk '/\+\+\+ emacs20-20.3\/man/ {print}' < /tmp/emacs20.diff

# (find-fline "/tmp/emacs20.diff-")


# (find-fline "/tmp/emacs20.difffiles")
# (find-fline "/tmp/emacs20.diff" "+++ emacs20-20.3/debian/bin/gcc/gcc")
# (find-fline "/tmp/emacs20.diff" "+++ emacs20-20.3/lisp/site-init.el")
# (find-fline "/tmp/emacs20.diff" "+++ emacs20-20.3/lisp/startup.el")

cd /usr/src/emacs-20.4/
./configure --help	|& tee och
./configure		|& tee oc



cat /tmp/emacs20.diff | patch -p1 |& tee op







cd /usr/src/
for i in configure lisp/gnus/nnmail.el lisp/mail/sendmail.el \
  man/Makefile.in man/message.texi man/reftex.texi; do
/usr/bin/wish8.0 `w tkdiff` emacs20-20.3/$i emacs-20.4/$i
done


# (find-fline "/usr/X11R6/bin/tkdiff")

cd /usr/src/emacs-20.4/
gzip -cd /big/slinks1/dists/slink/main/source/editors/emacs20_20.3-7.diff.gz \
  | patch -p1 |& tee op

# (find-e204file "op")
grep 'saving rejects' < op > ~/o
# (find-fline "~/o")

# (find-e204file "configure.rej")
# (find-e204file "lisp/gnus/nnmail.el.rej")
# (find-e204file "lisp/mail/sendmail.el.rej")
# (find-e204file "man/Makefile.in.rej")
# (find-e204file "man/message.texi.rej")
# (find-e204file "man/reftex.texi.rej")

# (find-e204file "")

cd /usr/src/emacs-20.4/
chmod 777 debian/rules
debian/rules binary	|& tee odrb




# (find-fline "/big/slinks1/dists/slink/main/source/editors/emacs20_20.3-7.diff.gz")




######
#
# X resources
#
######

#  «resources»

# (find-fline "/usr/share/emacs/19.34/etc/FAQ" "\n\n68:")
# (find-enode "Resources X")
# (find-fline "~/.Xdefaults")

# (eeman "emacs" "emacs.keyword:value")




######
#
# emacs20.4 on tardis
#
######

cd /export/home2/edrx/
mkdir zip
cd /export/home2/edrx/zip/
wget ftp://ftp.unicamp.br/pub/gnu/emacs/emacs-20.4.tar.gz

# Aproveitando que eu estou baixando coisas...
#
cd /export/home2/edrx/zip/
wget http://www.equi4.com/tclkit/tclkit-linux.gz
wget http://mini.net/cgi-bin/wikit.gz




######
#
# Emacspeak
#
######

Pgrep m/emacspeak/i

apti emacspeak
# (find-vldifile "emacspeak.list")
# (find-fline "/usr/doc/emacspeak/")

# (find-fline "/usr/doc/HOWTO/Emacspeak-HOWTO.gz")
ftp://vpsyc.nott.ac.uk/pub/ritter/dismal




#####
#
# Signing papers for the FSF
# 99dec26
#
#####

#  «fsf_papers»

# (find-fline "~/99dec26.popmail" "snail this page")
# (find-fline "~/LATEX/eevcontract.tex")

cd ~/LATEX/; make eevcontract.dvi
xdvi eevcontract.dvi &

cd ~/LATEX/; make eevcontract.p01


%*

Hi,

Gerd Moellman, the Emacs maintainer, told me to send you the data on
this page and the assignment contract, for {\tt eev.el}-related
bureaucracy. I hope I've got everything right...

% Other data, for copyrights, correspondence, etc.:

\medskip

Full name, citizenship, date of birth:

\smallskip

Eduardo Nahum Ochs, Brazilian, 7/feb/1971.

\medskip

Snail-mail address:

\smallskip

Av.\ Lineu de Paula Machado, 117/101 - Lagoa

Rio de Janeiro, RJ

CEP 22470-040

Brazil

\medskip

E-mail addresses:

\smallskip

{\tt edrx@inx.com.br}

{\tt edrx@mat.puc-rio.br}

\medskip

Homepage:

\smallskip

{\tt http://angg.twu.net/}

% \noindent This data is also available though my homepage, {\tt
% http://angg.twu.net/}, and I'll send a copy to you by e-mail to
% minimize the risk of typing errors...

\bigskip

\noindent [\ ], Edrx.


\vskip 4cm

Richard Stallman

545 Tech Sq rm 425

Cambridge, MA 02139

USA


%*