Overview Features Set-Up Manual (html) Manual (ps) Changes + Distribution

Emacs package "X-Symbol": Default Set-Up

  • Which token language does X-Symbol choose for new buffers?
  • When is X-Symbol minor mode automatically turned on?
  • What about 8bit characters in files?
  • Which images are recognized?

  • Which token language does X-Symbol choose for new buffers?

    Language `tex' ("TeX macro") is chosen for the following major modes: tex-mode, latex-mode, plain-tex-mode, bibtex-mode and noweb-mode.

    Language `utex' ("Unique TeX macro") is never chosen by default. It might be useful if you think it is a good idea to redefine standard TeX macros like \ne or if you want to turn-on X-Symbol mode in TeX's style files.

    Language `sgml' ("SGML entity") is chosen for the following major modes: sgml-mode and html-mode.

    You can also set (which has higher precedence than the automatic deduction above) the buffer-local variable `x-symbol-language' in major mode hooks or with something like the following at the end of your file:

      %% Local Variables:
      %% x-symbol-language: utex
      %% End:
        

    The language is mentioned in the modeline string if X-Symbol mode is turned on: e.g., XS:tex is the modeline string for buffers with token language `tex'.

    If no token language can be set for a buffer, X-Symbol mode cannot be turned on.


    When is X-Symbol minor mode automatically turned on?

    First of all, there must be a token language for the current buffer, see previous question. In a TeX/LaTeX buffer, X-Symbol mode is only automatically turned on, if the buffer file name extension is .tex. In a BibTeX or HTML (but not SGML) buffer, it is always turned on.

    Note that turning X-Symbol mode on automatically decodes the buffer, i.e., converts the tokens to characters.


    What about 8bit characters in files?

    There are two questions: How to interpret 8bit characters in a file? Should we store 8bit characters in the file? Note that the first question is important even if the answer to the second is no: the file might contain 8bit characters (e.g., if edited by your co-author).

    You have a standard interpretation of 8bit characters: it is Western encoding (`iso-8859-1') if you have not changed variable `x-symbol-default-coding' (other possible value are `iso-8859-2', `iso-8859-3' and `iso-8859-9').

    You can use a different encoding of single files. They are automatically deduced, if one of the following eight strings (the first four in TeX/LaTeX buffers, the last four in SGML/HTML buffers) could be found in the first 10000 characters of your file (this includes the comment!):

      \usepackage[latin1]{inputenc}
      \usepackage[latin2]{inputenc}
      \usepackage[latin3]{inputenc}
      \usepackage[latin5]{inputenc}
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-3">
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-9">
        

    You can also set (which has higher precedence than the automatic deduction above) the buffer-local variable `x-symbol-coding' in major mode hooks or with something like the following at the end of your file (value nil means your standard encoding):

      <!-- Local Variables: -->
      <!-- x-symbol-coding: iso-8859-2 -->
      <!-- End: -->
        

    By default, 8bit characters are only stored in the file (i.e., there is no corresponding encoding to their tokens) if one of the eight strings above have been found (more specific: `x-symbol-coding has a non-nil value). You can also set the buffer-local variable `x-symbol-8bits':

      <!-- Local Variables: -->
      <!-- x-symbol-8bits: nil -->
      <!-- End: -->
        

    The use of 8bit characters and the encoding in a file is mentioned in the modeline string: XS:tex8-l2, XS:sgml-l5, the coding part is not shown if the file coding is equal to your standard coding: XS:tex8.


    Which images are recognized?

    The following image insertion commands are recognized with token language `tex':

      \input{FILE.pstex_t}
      \includegraphics*?[OPTIONS][OPTIONS]{FILE.e?ps}, default extension .eps
      \epsfig{file=FILE.e?ps[,OPTIONS]}
      \psfig{file=FILE.e?ps[,OPTIONS]}
      \epsfbox[OPTIONS]{FILE.e?ps}
      \epsffile[OPTIONS]{FILE.e?ps}
    

    The following image insertion command is recognized with token language `sgml':

      <img [...] src="FILE.{gif,png,jpeg,jpg}" [...]>
    

    With language `tex', relative file names are relative to the directory part of variable `TeX-master' (defined by AucTeX, but usable without), if this variable is buffer-local and a string (otherwise relative to the current directory).

    If the file name is implicitly relative (e.g., img.eps, images/img.png, but not ./img.eps, ~/images/img.png, /home/you/img.jpeg), the file is supposed to be searched in a searchpath: With language `tex', the environment variable $TEXPICTS or $TEXINPUTS is used. With language `sgml', just the current directory is used.

    With language `sgml', image file names can have special prefixes according to the format of an URL. Prefix "file: is simply ignored. With other prefixes, the image insertion command is not highlighted. But you easily can define that "http://www.fmi.uni-passau.de/~wedler/" corresponds to "~/public_html/", see variable `x-symbol-sgml-image-file-truename-alist' for details.

    In order not to slow down editing, glyphs are not created (special glyphs are used instead) in the following situations (you can change the default):

    The following image editors are used by default: for image files FILE.{eps,ps,pstex}, xfig is invoked with file FILE.fig, for other image files FILE.EXT, display (part of the ImageMagick distribution) is invoked with file FILE.EXT.

    Overview Features Set-Up Manual (html) Manual (ps) Changes + Distribution
    Christoph Wedler 31 May 2000