summaryrefslogtreecommitdiff
path: root/language/hebrew/hebclass/iitcsw.cls
diff options
context:
space:
mode:
Diffstat (limited to 'language/hebrew/hebclass/iitcsw.cls')
-rw-r--r--language/hebrew/hebclass/iitcsw.cls329
1 files changed, 329 insertions, 0 deletions
diff --git a/language/hebrew/hebclass/iitcsw.cls b/language/hebrew/hebclass/iitcsw.cls
new file mode 100644
index 0000000000..2296eff45d
--- /dev/null
+++ b/language/hebrew/hebclass/iitcsw.cls
@@ -0,0 +1,329 @@
+%latex2e declaration
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{iitcsw}[2002/01/29 homework class]
+\newif\ifiitcsweightbit
+\iitcsweightbitfalse
+\newif\ifiitcswfancy
+\iitcswfancyfalse
+\newif\ifiitcswdraft
+\iitcswdraftfalse
+\newif\ifiitcswremarks
+\iitcswremarksfalse
+\newif\ifiitcswanswers
+\iitcswanswersfalse
+% wide margins
+\newif\ifiitcswwide
+\iitcswwidetrue
+\newif\ifiitcswrecpt
+\iitcswrecpttrue
+\newif\ifiitcswpairs
+\iitcswpairstrue
+\newif\ifiitcsw@fontload % Whether or not we need to load hebfont
+\iitcsw@fontloadfalse
+\newcommand{\iitcsw@quesPageBreak}{}
+\newcommand{\iitcsw@articledraft}{}
+\DeclareOption{enccp862}{\providecommand{\iitcsw@inputenc}{cp862}}%
+\DeclareOption{enc8859-8}{\providecommand{\iitcsw@inputenc}{8859-8}}%
+\DeclareOption{enccp1255}{\providecommand{\iitcsw@inputenc}{cp1255}}%
+\DeclareOption{encsi960}{\providecommand{\iitcsw@inputenc}{si960}}%
+\DeclareOption{eightbit}{\iitcsweightbittrue}
+\DeclareOption{fancy}{\iitcswfancytrue}
+\DeclareOption{nofancy}{\iitcswfancyfalse}
+\DeclareOption{wide}{\iitcswwidetrue}
+\DeclareOption{nowide}{\iitcswwidefalse}
+\DeclareOption{draft}{%
+ \iitcswdrafttrue%
+ \renewcommand{\iitcsw@articledraft}{draft}%
+}
+\DeclareOption{final}{\iitcswdraftfalse}
+\DeclareOption{remarks}{\iitcswremarkstrue}
+\DeclareOption{noremarks}{\iitcswremarksfalse}
+% Should I leave both "answers" and "remarks"?
+\DeclareOption{answers}{\iitcswanswerstrue}
+\DeclareOption{noanswers}{\iitcswanswersfalse}
+\DeclareOption{recpt}{\iitcswrecptstrue}
+\DeclareOption{norecpt}{\iitcswrecptfalse}
+\DeclareOption{pairs}{\iitcswpairsstrue}
+\DeclareOption{nopairs}{\iitcswpairsfalse}
+\DeclareOption{pagebreak}{\renewcommand{\iitcsw@quesPageBreak}{\pagebreak}}
+\DeclareOption{nopagebreak}{\renewcommand{\iitcsw@quesPageBreak}{}}
+\ProcessOptions
+
+% set the option "answers" if LatexMake set it
+\ifx\LatexMakeAnswerSwitch\@undefined\else\iitcswanswerstrue\fi
+
+\LoadClass[11pt,\iitcsw@articledraft]{article}
+
+% I don't feel like leaaving wide margins. I would use wider margins for what
+% I submit, though. 'wide' is currently on by default. (Tzafrir)
+\ifiitcswwide%
+ \RequirePackage{a4wide}% has to come before 'onehalfspacing, if that one is
+ % used
+ %\RequirePackage[top=3cm,bottom=4cm,left=3cm,right=3cm]{geometry}%
+\fi
+
+\ifiitcswanswers%
+ % If this form is typeset with answers
+ \iitcsw@fontloadtrue%
+\fi
+
+\ifiitcsweightbit%
+ \newcommand{\HeblatexEightBitFont}{}%
+\else% the current 7bit fonts need more spacing
+ \RequirePackage{setspace}
+ \onehalfspacing
+\fi
+
+\ifx\iitcsw@inputenc\@undefined\else%
+ % Do the following if an input encoding option was given
+ \RequirePackage[\iitcsw@inputenc]{inputenc}%
+\fi
+
+\ifiitcswfancy%
+ \RequirePackage{amssymb}%
+ \RequirePackage{fancybox}%
+ \newcommand{\iitcsw@goodluckbox}[1]{%
+ {\LARGE $\looparrowright$ \shadowbox{#1} $\looparrowleft$}%
+ }%
+\else
+ \newcommand{\iitcsw@goodluckbox}[1]{\LAARGE #1}
+\fi
+
+\newcommand{\draftremarkname}{drxz hiehd} %7bit for "הערת טיוטה"
+% define \remark:
+\ifiitcswremarks%
+ \newcommand{\remark}[2][\draftremarkname]{\footnote{\R{#1: #2}}}%
+\else%
+ \newcommand{\remark}[2][]{}%
+\fi
+
+%\newcommand{\answer}[1]{\remark[\hebhe\hebtav\hebshin\hebvav\hebbet\hebhe]{#1}}
+\newcommand{\answer}[1]{\remark[dzyead]{#1}}
+
+\RequirePackage[english,hebrew]{babel}
+%\RequirePackage{amsfonts}
+\RequirePackage{amssymb}
+%\usepackage{hebfont}
+\RequirePackage{hebcal}
+\RequirePackage{fancyhdr}
+%\RequirePackage{amsmath}
+%\RequirePackage{amssymbpatch}
+%\RequirePackage{dsfont}
+%\RequirePackage{usefull1}
+
+% If any option requires hebfont load it
+\ifiitcsw@fontload%
+ \RequirePackage{hebfont}
+\fi
+
+
+
+
+\pagestyle{fancy}
+
+% The fllowing have to be explicitly defined:
+
+% \providecommand\CourseName{תכן לוגי}
+% \providecommand\CourseFullName{\CourseName \ \L{234262}} %or simply \CourseName
+% \providecommand\Semester{חורף תשס"ב}
+% \providecommand\AssignmentSubject{מעבד ה-\L{MIPS}}
+% \providecommand\HWNum{2}
+% \providecommand{\SubmitionTime}{יום ח' \L{35.5.2005} בשעה \L{12:30}
+
+\providecommand{\FinalText}{%
+ \vfill
+ \center{\iitcsw@goodluckbox{\goodluckname!}}
+ \vfill
+ \vfill
+}
+
+\lhead{\R{\CourseName}}
+\chead{\R{\Semester}}
+\rhead{\R{\homeworkname \HWNum}}
+\cfoot{\L{\arabic{page}}}
+
+\newcommand{\ExtraInstructions}{}
+
+\def\submittersname{\hebhe\hebmem\hebgimel\hebyod\hebshin\hebyod\hebfinalmem}
+\def\addressname{\hebkaf\hebtav\hebvav\hebbet\hebtav}
+\def\semestername{\hebsamekh\hebmem\hebsamekh\hebtet\hebresh}
+\def\homeworkname{\hebtav\hebresh\hebgimel\hebyod\heblamed \hebbet\hebyod\hebtav}
+\def\withanswersname{\hebayin\hebfinalmem \hebtav\hebshin\hebvav\hebbet\hebvav\hebtav}
+\def\answersprintedname{\hebhe\hebtav\hebshin\hebvav\hebbet\hebvav\hebtav \hebmem\hebvav\hebdalet\hebpe\hebsamekh\hebvav\hebtav !!!}
+\def\tainchargename{\hebmem\hebtav\hebresh\hebgimel\heblamed \hebalef\hebhet\hebresh\hebalef\hebyod}
+\def\rechoursname{\hebshin\hebayin\hebvav\hebtav \hebqof\hebbet\heblamed\hebhe}
+\def\subdatename{\hebtav\hebalef\hebresh\hebyod\hebfinalkaf \hebhe\hebgimel\hebshin\hebhe}
+\def\subinpairsname{\hebhe\hebhe\hebgimel\hebshin\hebhe \hebbet\hebzayin\hebvav\hebgimel\hebvav\hebtav \hebbet\heblamed\hebbet\hebdalet!}
+\def\namename{\hebshin\hebfinalmem}
+\def\studnumname{\hebmem.\hebsamekh.}
+\def\gradename{\hebtsadi\hebyod\hebvav\hebfinalnun}
+\def\retboxname{\hebtav\hebalef \heblamed\hebhe\hebhet\hebzayin\hebresh\hebhe}
+\def\questionname{\hebshin\hebalef\heblamed\hebhe}
+\def\AnswerExplainname{\hebhe\hebsamekh\hebbet\hebresh: }
+\def\goodluckname{\hebbet\hebhe\hebtsadi\heblamed\hebhet\hebhe}
+
+\renewcommand{\maketitle}{
+ \noindent
+ \FacultyName\ \hfill \semestername{} \Semester \\
+ \CourseFullName\ \hfill \today
+
+ \vskip 3em
+
+ \begin{center}
+ {\LARGE \homeworkname{} \HWNum} \par
+ {\large \AssignmentSubject}
+ \ifiitcswanswers
+ \\ {\large )\withanswersname(}
+ \fi
+ \end{center}
+
+ %\vskip 1em
+
+ \thispagestyle{empty}
+
+ \zeroparskip
+ \remark{\LARGE \answersprintedname}
+ \noindent{\bf \tainchargename}: \TaInCharge \L{(\TaInChargeEmail)}
+
+ \ifiitcswrecpt%
+ \noindent{\bf \rechoursname}: \RecHours
+ \fi
+
+ \noindent{\bf \subdatename}: \SubmitionTime
+
+ \ifiitcswpairs
+ \vskip 1ex
+
+ \noindent{\bf \subinpairsname}
+ \fi
+
+ \vskip 1ex
+
+ \Instructions
+
+ \restoreparskip
+
+ \vfill
+
+ \begin{center} \Large
+ {\normalsize \submittersname:}
+
+ \namename: \underline{\makebox[7em]{}} \quad
+ \studnumname: \underline{\makebox[7em]{}}
+
+ \bigskip
+
+ %\Large
+ \namename: \underline{\makebox[7em]{}} \quad
+ \studnumname: \underline{\makebox[7em]{}}
+
+ \bigskip
+
+ %\Large
+ \addressname: \underline{{\makebox[13em]{}}@\makebox[8em]{}}
+
+ \medskip
+
+ \vfill
+
+ \gradename: \underline{\makebox[2em]{}} \hfill
+ \retboxname: \underline{\makebox[2em]{}}
+
+ \end{center}
+
+ \vfill
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \setcounter{page}{0} % we start at page 1
+
+ \pagebreak
+}
+
+%%
+%% \Answer{} Print text in "answer" font if answers are to be printed
+%%
+\newcommand{\Answer}[1]{\ifiitcswanswers\textshscr{#1}\fi}
+
+%%
+%% \AnswerLines: produce 5 horisental lines, for filling in the answer
+%% \NaswerPlace: Porduces some underlined space
+%%
+%% The non-optional (though possibly empty) argument of them is the
+%% answer, that wil be typeset if the option 'answers' is used
+%%
+\newcounter{iitcsw@ansline}
+%\setcounter{\iitcsw@ansline}{5}
+\newcommand\AnswerLines[2][5]{%
+ \ifiitcswanswers%
+ \Answer{#2}% This is non-optimal: doing this if twice...
+ \else%
+ % \begin{tabular*}{0.95\textwidth}{c}% without factor of 0.95 I get a latex
+ % % warning about the width
+ % \\ \hline \\ \hline \\\hline \\ \hline \\ \hline %
+ % \end{tabular*}%
+ \setcounter{iitcsw@ansline}{#1}
+ \whiledo{\value{iitcsw@ansline} > 0}{
+ \noindent \rule{0em}{1ex} \hrulefill \\ %
+ \addtocounter{iitcsw@ansline}{-1}%
+ }
+ \fi
+}
+\newlength{\AnswerPlacelen}
+\setlength{\AnswerPlacelen}{3em}
+% \AnswerPlace[width]: create an underlined space of the specified width.
+% \AnswerPlace (with no parameter): The width is \AnswerPlacelen (3em, by
+% default)
+\newcommand\AnswerPlace[2][\AnswerPlacelen]{
+ \underline{\makebox[#1]{\Answer{#2}}}
+}
+
+% explanations are answers that are given as footnotes, for further
+% clarification
+\newcommand{\AnswerExplain}[1]{%
+ \ifiitcswanswers%
+ \footnote{\Answer{\AnswerExplainname #1}}
+ \fi%
+}
+
+\newlength{\saveparskip}
+% don't use two \zeroparskip without a \restoreparskip in the middle!
+\newcommand\zeroparskip{\setlength{\saveparskip}{\parskip}\setlength{\parskip}{0em}}
+\newcommand\restoreparskip{\setlength{\parskip}{\saveparskip}}
+
+%%%
+%%% Some helper macros:
+%%%
+
+\providecommand{\BeforeQuestion}{}
+%\setlength{\parindent}{0pt}
+%\renewcommand{\thesection}{\hebshin\hebalef\heblamed\hebhe \arabic{section}}
+\renewcommand\section{\BeforeQuestion %
+ \@startsection {section}{1}{\z@}%
+ {-3.5ex \@plus -1ex \@minus -.2ex}{2.3ex \@plus.2ex}%
+ {%
+ \normalfont\Large\bfseries\centering%
+ \questionname\ %
+ }%
+ }
+
+\def\thesubsection{\gim{subsection}}
+%\def\thesubsection{\alph{subsection}}
+% \newcommand\question[1]{%
+% \begin{center}%
+% \section{\hebshin\hebalef\heblamed\hebhe \hebmem\hebsamekh' \arabic{section} - #1}%
+% \end{center}%
+% }
+%
+% \newcommand{\ques}[1][]{\section{#1}}
+\providecommand{\question}[1]{\iitcsw@quesPageBreak \section{#1}}
+\providecommand{\courseSlogan}[1]{
+ {\footnotesize
+ \noindent
+ \begin{flushleft}
+ \hfill
+ #1
+ \end{flushleft}
+ }
+}
+
+\endinput