GithubHelp home page GithubHelp logo

courseoutlinelatexclass's Introduction

CourseOutlineLaTeXClass

I got tired of the duplication involved in making my course outlines and I wanted to focus on the important stuff. I also was feeling picky about how stuff looked, hence my crappy go at tikz for laying out the course summaries. I should fix that up so it does the sizing and alignment properly...

Sample

main.tex gives a sample usage.

 \SetDate[09/01/2023]
 \logo{img/CONU-logo-clr.png}
 \Course{COEN 244}{S}{Programming Methodology II}{M/W}{13:15-14:30}{MB 1.210}
 \Semester{Fall 2021}{Jan 9th}{Apr 17th}
 \Prof{Stuart Thiel}{[email protected]}{Zoom, by appointment}[img/stuart.jpg]

In the preamble you set the date of the first class, give your University logo (140x140, preferably). Give the course details (may have to tweak that for other Universities), the semester details and finally your own details (140x140 picture of you is optional).

\maketitle

Will make the initial stuff at the top (Uni logo and course info)

\begin{courseblock}
\tutorial{Th, 16:15-17:55}{H 907}{Mina Masoumi}[[email protected]]
\tutorial{Th, 16:15-17:35}{H 847}{Ismael Ridha}[[email protected]]
\tutorial{F, 16:15-17:55}{H 917}{Mustafa Daraghmeh}[[email protected]]
\tutorial{F, 16:15-17:55}{H 843}{Zaedul Islam}[[email protected]]\addtocounter{TutorialSection}{2}%
\tutorial{Th, 16:05-17:45}{H 903}{Zaedul Islam}[[email protected]]
\marker[Mohammad Reza Rejali][[email protected]]
\marker[Ismael Ridha][[email protected]]
\end{courseblock}

You can get the blurb with the main lecture info and all you tutorial/tutors info. If you leave out the emails, they just don't show. If you leave out both the name and email it should say TBD. The courseblock formats it nicelym sticks the main lecture info and your info

\begin{DetailedOutline}{Course Outline - First Half}
\LectureEntry[0]{
    Course Description \textbf{\small Outline}
}
\LectureEntry[2]{
    \textbf{Live-Coding} \\
    Overview of C++ (main function, cin/cout, variables and constants, arrays, enumerated types, If-else, loops, strings, functions, pointers, namespaces, structures) \textbf{Ch. 1โ€8 (COEN 243 Concepts)} \\
    Making tic-tac-toe}
\LectureEntry[5]{
    C++ Classes (Data abstraction, classes and objects, encapsulation, data members, function members, constructors and destructors) \textbf{Ch. 3, 9}
}
\LectureEntry[2]{
    Midterm Break
}[gray!25]
\end{DetailedOutline}

The DetailedOutline environment takes a parameter that is the blurb at the top. This should fit on a single page, though I imagine I could fix that to span pages if I were ambitious. Each LectureEntry gets formatted with the date in the left column and the content of the LectureEntry in the right column. The date comes from the first optional parameter and is initially an offset from the StartingDate speceified in the preamble. The counter tracking the date increments each time, so each entry is relative to the last. If you leave out the optional first param, the date is listed as TBD and it doesn't mess with the date counter. You can specify a row color as an optional last parameter.

Everything else

The rest you can format as you'd like. The format used here is based of the reccomended on in the GCS at Concordia, and the pdf is just me converting the GAAS word document (after I move section 3 to start on its own page) to pdf and importing them all.

courseoutlinelatexclass's People

Contributors

ramou avatar

Watchers

 avatar

courseoutlinelatexclass's Issues

Make the CourseOutline Detail determine sizes first

You can have a pre-pass that determines the width of the largest thing in the first column and then just applies that width statically later so we don't have to do current weird fudging. Have the Lecture commands queue things up and then in the post-step of the detail unfold it and actually do the calculations and tikz work.

Make a way to save a list of markers/TAs to reference later

You get the same ones semester after semester and figuring out what emails they want to use is a pain. If you have that already stored, you can just pass the marker/TA in directly and probably leave the list of them in another file that you just update as you go.

Make a command to do books nicely

This is a gross formatting exercise. Take out the tedium and give a simple way of doing it with AddRequiredReading and AddOptionalReading and then just dump them in where they're supposed to go. We can also do like we did with the lectures, and that might work well too, as long as we do away with that nasty formatting.

Fix tutorial/lab/pod labelling quirks

Sometimes they don't start at A and the fact that they sometimes skip about is a nuisance. Maybe it's best to specifically label them when we add the tutorials, but I'll have to think about it.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.