People have asked for it before as it is commonly used, but for some
reason doesn't have a .layout included in LyX.  I simply modified
IEEETran.layout according to the ACM SIG Proceedings Format author
guidelines.  Mainly I changed it to two column format, changed some of
the environments to be declared as \newdef as opposed to \newtheorem as
mandated by the guidelines, and I changed the label strings for
environments from ending with "#:" to "#.", which more closely matches
the ACM format.

I might have left some things out, but initial testing seems to show
that it works good enough for a paper that includes a varied mix of
environments.

One aspect that is lacking in both IEEETran.layout and therefore the
layout that I made is multiple author affiliations.  I am not sure how
to do this correctly in the layout or if it is even supported by LyX.
Currently I just use a free "TeX" LyX environment to embed the correct
code to make things work in the case of multiple affiliations.  Any
ideas on a better solution are welcome.

Almost forgot to attach the layout.  Feel free to modify/whatever this
layout as it is just a modification of the LyX team's file, and please
if you have any suggestions for improvement, let me know.

As far as the LyX devs are concerned, please considering including this
or some other implemenation of an ACM layout in the default LyX distro.
Also, why aren't IEEETran.cls, elsart.cls, and other class files
included with the default distro?  If their layouts are included by
default, then their class files should also be included, in my opinion.

Thanks again for the great application.  I find it to be useful and fun
to use (yes this is nerdy).

-luke
#% Do not delete he line below; configure depends on this
#  \DeclareLaTeXClass[acm_proc_article-sp]{ACM SIG Proceedings}
# Based on IEEEtran.layout
#
# Author : Luke Simon <[EMAIL PROTECTED]>
#
# acm_proc_article-sp is the class used for the ACM SIG Proceedings format.
# The on-screen display in LyX is set to reflect the appearance of two column
# text.  The section counters appear correctly in the output but are
# in arabic numerals in LyX -- this requires some additional code in LyX
# to get right (maybe LyX-2.0 ;-).
#
# acm_proc_article-sp.cls can be obtained from
# http://www.acm.org/sigs/pubs/proceed/template.html
#
# Input general definitions

Columns                 2
Sides                   1
MaxCounter              Counter_Section
SecNumDepth             3
TocDepth                3

ClassOptions
  FontSize              9|10|11|12
End  

DefaultFont
  Family                Roman
  Series                Medium
  Shape                 Up
  Size                  Normal
  Color                 None
EndFont

# Standard style definition
Style Standard
  Margin                Static
  LatexType             Paragraph
  LatexName             dummy
  ParIndent             MM
  ParSkip               0.4
  Align                 Block
  AlignPossible         Block, Left, Right, Center
  LabelType             No_Label
End

##
## stdlists
##
Input stdlists.inc

# 
# First cut at theorem environment support.
# What other theorem-like environments are needed?
# How many of these should be discarded?
# I got this list from amsmaths*.inc but I haven't
# found an official list of theorem environments for
# IEEE Transactions.
# OH!  and all theorems are numbered.  Is that a problem?
# Tell me:  [EMAIL PROTECTED]
#
# Theorem-numbered style *Template* declaration
Style TheoremTemplate
  Margin                First_Dynamic
  LatexType             Environment
  LabelSep              M
  ParIndent             MM
  ParSep                0.4
  Align                 Block
  AlignPossible         Block, Left
  LabelType             Static

  # label font definition
  LabelFont
    Shape               Italic
  EndFont
End

# Proof style declaration
Style Proof
  CopyStyle             TheoremTemplate
  LatexName             proof
  LabelString           "PROOF."
  EndLabelType          Filled_Box
End

# Theorem-numbered style declaration
Style Theorem
  CopyStyle             TheoremTemplate
  LatexName             theorem
  LabelString           "Theorem #."

  Preamble
    \newtheorem{theorem}{Theorem}
  EndPreamble
End  

# Lemma-numbered style declaration
Style Lemma
  CopyStyle             TheoremTemplate
  LatexName             lemma
  LabelString           "Lemma #."

  Preamble
    \newtheorem{lemma}{Lemma}
  EndPreamble
End  

# Corollary-numbered style declaration
Style Corollary
  CopyStyle             TheoremTemplate
  LatexName             corollary
  LabelString           "Corollary #."

  Preamble
    \newtheorem{corollary}{Corollary}
  EndPreamble
End

# Proposition-numbered style declaration
Style Proposition
  CopyStyle             TheoremTemplate
  LatexName             proposition
  LabelString           "Proposition #."

  Preamble
    \newtheorem{proposition}{Proposition}
  EndPreamble
End  

# Conjecture-numbered style declaration
Style Conjecture
  CopyStyle             TheoremTemplate
  LatexName             conjecture
  LabelString           "Conjecture #."

  Preamble
    \newtheorem{conjecture}{Conjecture}
  EndPreamble
End  

# Criterion-numbered style declaration
Style Criterion
  CopyStyle             TheoremTemplate
  LatexName             criterion
  LabelString           "Criterion #."

  Preamble
    \newtheorem{criterion}{Criterion}
  EndPreamble
End  

# Fact-numbered style declaration
Style Fact
  CopyStyle             TheoremTemplate
  LatexName             fact
  LabelString           "Fact #."

  Preamble
    \newdef{fact}{Fact}
  EndPreamble
End  

# Axiom-numbered style declaration
Style Axiom
  CopyStyle             TheoremTemplate
  LatexName             axiom
  LabelString           "Axiom #."

  Preamble
    \newtheorem{axiom}{Axiom}
  EndPreamble
End  

# Definition-numbered style declaration
Style Definition
  CopyStyle             TheoremTemplate
  LatexName             definition
  LabelString           "Definition #."

  Preamble
    \newdef{definition}{Definition}
  EndPreamble
End

# Example-numbered style declaration
Style Example
  CopyStyle             TheoremTemplate
  LatexName             example
  LabelString           "Example #."

  Preamble
    \newdef{example}{Example}
  EndPreamble
End

# Condition-numbered style declaration
Style Condition
  CopyStyle             TheoremTemplate
  LatexName             condition
  LabelString           "Condition #."

  Preamble
    \newdef{condition}{Condition}
  EndPreamble
End

# Problem-numbered style declaration
Style Problem
  CopyStyle             TheoremTemplate
  LatexName             problem
  LabelString           "Problem #."

  Preamble
    \newdef{problem}{Problem}
  EndPreamble
End

# Exercise-numbered style declaration
Style Exercise
  CopyStyle             TheoremTemplate
  LatexName             exercise
  LabelString           "Exercise #."

  Preamble
    \newdef{exercise}{Exercise}
  EndPreamble
End

# Remark-numbered style declaration
Style Remark
  CopyStyle             TheoremTemplate
  LatexName             remark
  LabelString           "Remark #."

  Preamble
    \newdef{remark}{Remark}
  EndPreamble
End

# Claim-numbered style declaration
Style Claim
  CopyStyle             TheoremTemplate
  LatexName             claim
  LabelString           "Claim #."

  Preamble
    \newdef{claim}{Claim}
  EndPreamble
End

# Note-numbered style declaration
Style Note
  CopyStyle             TheoremTemplate
  LatexName             note
  LabelString           "Note #."

  Preamble
    \newdef{note}{Note}
  EndPreamble
End

# Notation-numbered style declaration
Style Notation
  CopyStyle             TheoremTemplate
  LatexName             notation
  LabelString           "Notation #."

  Preamble
    \newdef{notation}{Notation}
  EndPreamble
End

# Case-numbered style declaration
Style Case
  CopyStyle             TheoremTemplate
  LatexName             case
  LabelString           "Case #."

  Preamble
    \newdef{case}{Case}
  EndPreamble
End

NoStyle TheoremTemplate

##
## stdsections and stdstarsections
##
Input stdsections.inc
Input stdstarsections.inc

NoStyle                 Part
NoStyle                 Part*
NoStyle                 Chapter
NoStyle                 Chapter*
NoStyle                 Subparagraph
NoStyle                 Subparagraph*

Style Section
  Align                 Center
  AlignPossible         Block, Center, Left

  Font
     Shape              Smallcaps
     Size               Normal
  EndFont
End


Style Subsection
  Font
     Shape              Italic
     Size               Normal
  EndFont
End

Style Subsubsection
  Font
     Shape              Up
     Size               Normal
  EndFont
End

Style Section*
  Align                 Center
  AlignPossible         Block, Center, Left

  Font
     Shape              Smallcaps
     Size               Normal
  EndFont
End


Style Subsection*
  Font
     Shape              Italic
     Size               Normal
  EndFont
End

Style Subsubsection*
  Font
     Shape              Up
     Size               Normal
  EndFont
End

##
## stdstruct
##
Input stdtitle.inc
Input stdstruct.inc

Style Abstract
  Margin                First_Dynamic
  LeftMargin            ""
  RightMargin           ""
#  ParIndent            MM
  LabelSep              M
  LabelType             Static
  LabelString           "Abstract---"
#  LabelBottomSep        0.0

  # standard font definition
  Font 
    Series              Bold
    Size                Small
  EndFont

  # label font definition
  LabelFont
    Shape               Italic
    Series              Medium
    Size                Small
  EndFont
End 

Style Keywords
  Margin                Dynamic
  LatexType             Environment
  InTitle               0
  LatexName             keywords
  ParSkip               0.4
  BottomSep             1.5
  ParSep                1.5
  Align                 Left
  AlignPossible         Block, Left, Right, Center
  LabelType             Static
  LabelString           "Keywords---"
  # label font definition
  TextFont
    Shape               Up
    Size                Small
  EndFont
  LabelFont
    Shape               Italic
    Size                Small
  EndFont
End

# Bibliography style definition
Style Bibliography
  # label font definition
  LabelFont
    Shape               Smallcaps             
    Series              Medium
    Size                Normal
  EndFont
End

Style Appendix
  Margin                Static
  LatexType             Command
  InTitle               0
  LatexName             appendix
  ParSkip               0.4
  BottomSep             1.5
  ParSep                1.5
  Align                 Block
  AlignPossible         Block, Left, Right, Center
  LabelType             Static
  LabelString           "Appendix"
  # label font definition
  TextFont
    Shape               Up
    Size                Normal
  EndFont
  LabelFont
    Shape               Smallcaps
    Size                Normal
  EndFont
End

Style Appendices
  Margin                Static
  LatexType             Command
  InTitle               0
  LatexName             appendices
  ParSkip               0.4
  BottomSep             1.5
  ParSep                1.5
  Align                 Center
  AlignPossible         Block, Left, Right, Center
  LabelType             Static
  LabelString           "Appendices"
  # label font definition
  TextFont
    Shape               Up
    Size                Small
  EndFont
  LabelFont
    Shape               Smallcaps
    Size                Normal
  EndFont
End

Style Biography
  LaTeXType             Environment
  LaTeXName             biography
  Align                 Block
  AlignPossible         Block
  TextFont
    Size                Small
  EndFont
End

##
##  stdlayouts
##
Input stdlayouts.inc

Style Caption
  LabelFont
    Series              Medium
  EndFont
End

Style Footernote
  Margin                Static
  LatexType             Command
  InTitle               0
  LatexName             footernote
  ParSkip               0.4
  BottomSep             1.5
  ParSep                1.5
  Align                 Center
  AlignPossible         Block, Left, Right, Center
  LabelType             Static
  LabelString           "Footernote"
  # label font definition
  TextFont
    Shape               Up
    Size                Small
  EndFont
  LabelFont
    Shape               Italic
    Size                Small
  EndFont
End

Style MarkBoth
  LaTeXType             Command
  LaTeXName             markboth
  Align                 Center
  AlignPossible         Center
End

##
## Others
##
Input stdfloats.inc
Input stdcounters.inc
Input lyxmacros.inc
Input obsolete.inc

Reply via email to