Skip to content

Repository files navigation

ETthesis

ETthesis is a LaTeX class and template for academic theses and documents prepared at the Department of Electrical Engineering and Information Technology at Paderborn University, Germany.

Contents

  • etthesis.cls: Document class file, an extension to scrbook. Provides all structure, formatting and processing.
  • thesis.tex: Main file of the exemplary document.
  • custom.sty: Local package for user customization. Contents are suggestions, not required for the class to work.
  • thesis.bib: Bibliography file. Multiple source files are supported.
  • Files in frontmatter, mainmatter, and backmatter: Exemplary content with recommended formatting, e.g. for lists of symbols.

Features

  • Support for different document types
    • Student theses (Bachelor's, Master's)
    • Doctoral theses
    • Student projects and similar ("Projektarbeit", "Studienarbeit")
    • Generic reports (non-thesis)
  • English and German language variants
  • Support for different document states, e.g. "Prüfexemplar" and "Belegexemplar" for doctoral theses
  • Compliance with university, faculty and work group requirements (no guarantees though)
  • Metadata (author name, thesis title etc.) centrally defined in main document
  • Page layout, fonts etc. according to typographical standards
  • Configurable document structure:
    • Title page
    • Problem statement (default for student theses)
    • Preface (default for accepted doctoral theses)
    • Abstract (german and/or english)
    • Table of Contents
    • List of figures
    • List of tables
    • List of abbreviations and symbols
    • (Main content)
    • Bibliography
    • Appendices (if any)
    • CV (for submission variant of doctoral theses)
    • Own publications (for submission variant of doctoral theses)
    • Affirmation of own independent work (default for student theses)
  • Common packages already included, e.g.
    • babel
    • biblatex
    • booktabs
    • hyperref
    • longtable
    • microtype
    • minted (optional)
  • Custom BibLaTeX entry type @norm for citing norms and standards.
    • Supported fields: type, number, title, year, publisher
    • See thesis.bib for an example

Class options

The ETthesis document class supports the following options, which can be given via:

 \documentclass[option1=value1, option2=value2]{etthesis}
  • lang: Template language:
    • german: German version [default]
    • english: English version
  • doctype: Document type:
    • bachelors: Bachelor's thesis [default]
    • dring: Doctoral thesis (Dr.-Ing.)
    • drrernat: Doctoral thesis (Dr. rer. nat.)
    • masters: Master's thesis (M.Sc.)
    • project: Student project ("Projektarbeit")
    • report: Generic report
    • sa: "Studienarbeit"
  • docstate: Document publication state:
    • preliminary: Like submission, but without the official-looking title page.
    • submission: Typeset for submission / grading, e.g. with 1.5x line spacing by default. For doctoral theses, typeset "Prüfexemplar" (see above for details). [default]
    • accepted: Typeset for print / publication, e.g. with single line spacing. For doctoral theses, typeset "Belegexemplar" (see above for details).
  • linespacing: When to use 1.5x line spacing in the document:
    • auto: Use 1.5x line spacing for all submission documents and single spacing for accepted documents.
    • single: Use single line spacing.
    • onehalf: Use 1.5x line spacing.
  • paperformat: Which paper format to use:
    • a4: Use DIN A4 paper format with 12pt font size. [default]
    • a4onesided: Use DIN A4 paper format with 12pt font size, one-sided layout, and no binding correction. Suggested for digital submission.
    • a5: Use DIN A5 paper format with 10pt font size for a more compact layout.
  • preface: Whether to display the preface:
    • auto: Include for accepted doctoral theses only. [default]
    • always: Enable preface.
    • never: Disable preface.
  • problem: Whether to display the problem statement:
    • auto: Include for student theses only. [default]
    • always: Enable problem statement.
    • never: Disable problem statement.
  • abstracts: Whether to display the abstract(s):
    • auto: Include german and english abstract for doctoral theses, none for reports and only an abstract in the document's language for all other document types. [default]
    • one: Enable only the abstract in the document's language.
    • both: Enable both the german and english abstract.
    • none: Disable abstracts.
  • affirmation: Whether to display the affirmation:
    • auto: Include for student theses only. [default]
    • always: Enable affirmation.
    • never: Disable affirmation.
  • singlecitelabel: Toggle cite label format for multi-author sources.
    • false: Use up to three author's initials in label. For Mustermann and Doe, set [MD18]. [default]
    • true: Always use only the first author's name in label. For Mustermann and Doe, set [Mus18].
  • useminted: Toggle package usage for minted.
    • false: Do not include minted, e.g. when using listings instead. [default]
    • true: Automatically include minted package.

Using with Git

If you use git to track changes in your thesis (which you should!), the following workflow is recommended:

  1. (Optional) Create remote repository

  2. Clone or create local repository

    • When using a remote repository as per Step 1, create a local clone:

      git clone https://YOUR.GIT.SERVER/git/YOUR_NAME/YOUR_REPO.git
      
    • Otherwise, create a new repository:

      git init
      
  3. Add the thesis template as an alternate remote:

    git remote add template https://github.com/ei-upb/ETthesis.git
    
  4. Pull the template:

    git pull template master
    

Now, you can start with a fresh template, with the following behaviour:

  • Adding commits will add them to your own master.
  • Pushing your changes with git push will push them to your own remote (not the template).
  • Calling git pull template master again will update the template.
  • Updating the template will not overwrite your local changes.
  • As long as you do not change core files like etthesis.cls, no merge conflicts should occur.

About

LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
GitHub - ei-upb/ETthesis: LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology. · GitHub
Skip to content

Repository files navigation

ETthesis

ETthesis is a LaTeX class and template for academic theses and documents prepared at the Department of Electrical Engineering and Information Technology at Paderborn University, Germany.

Contents

  • etthesis.cls: Document class file, an extension to scrbook. Provides all structure, formatting and processing.
  • thesis.tex: Main file of the exemplary document.
  • custom.sty: Local package for user customization. Contents are suggestions, not required for the class to work.
  • thesis.bib: Bibliography file. Multiple source files are supported.
  • Files in frontmatter, mainmatter, and backmatter: Exemplary content with recommended formatting, e.g. for lists of symbols.

Features

  • Support for different document types
    • Student theses (Bachelor's, Master's)
    • Doctoral theses
    • Student projects and similar ("Projektarbeit", "Studienarbeit")
    • Generic reports (non-thesis)
  • English and German language variants
  • Support for different document states, e.g. "Prüfexemplar" and "Belegexemplar" for doctoral theses
  • Compliance with university, faculty and work group requirements (no guarantees though)
  • Metadata (author name, thesis title etc.) centrally defined in main document
  • Page layout, fonts etc. according to typographical standards
  • Configurable document structure:
    • Title page
    • Problem statement (default for student theses)
    • Preface (default for accepted doctoral theses)
    • Abstract (german and/or english)
    • Table of Contents
    • List of figures
    • List of tables
    • List of abbreviations and symbols
    • (Main content)
    • Bibliography
    • Appendices (if any)
    • CV (for submission variant of doctoral theses)
    • Own publications (for submission variant of doctoral theses)
    • Affirmation of own independent work (default for student theses)
  • Common packages already included, e.g.
    • babel
    • biblatex
    • booktabs
    • hyperref
    • longtable
    • microtype
    • minted (optional)
  • Custom BibLaTeX entry type @norm for citing norms and standards.
    • Supported fields: type, number, title, year, publisher
    • See thesis.bib for an example

Class options

The ETthesis document class supports the following options, which can be given via:

 \documentclass[option1=value1, option2=value2]{etthesis}
  • lang: Template language:
    • german: German version [default]
    • english: English version
  • doctype: Document type:
    • bachelors: Bachelor's thesis [default]
    • dring: Doctoral thesis (Dr.-Ing.)
    • drrernat: Doctoral thesis (Dr. rer. nat.)
    • masters: Master's thesis (M.Sc.)
    • project: Student project ("Projektarbeit")
    • report: Generic report
    • sa: "Studienarbeit"
  • docstate: Document publication state:
    • preliminary: Like submission, but without the official-looking title page.
    • submission: Typeset for submission / grading, e.g. with 1.5x line spacing by default. For doctoral theses, typeset "Prüfexemplar" (see above for details). [default]
    • accepted: Typeset for print / publication, e.g. with single line spacing. For doctoral theses, typeset "Belegexemplar" (see above for details).
  • linespacing: When to use 1.5x line spacing in the document:
    • auto: Use 1.5x line spacing for all submission documents and single spacing for accepted documents.
    • single: Use single line spacing.
    • onehalf: Use 1.5x line spacing.
  • paperformat: Which paper format to use:
    • a4: Use DIN A4 paper format with 12pt font size. [default]
    • a4onesided: Use DIN A4 paper format with 12pt font size, one-sided layout, and no binding correction. Suggested for digital submission.
    • a5: Use DIN A5 paper format with 10pt font size for a more compact layout.
  • preface: Whether to display the preface:
    • auto: Include for accepted doctoral theses only. [default]
    • always: Enable preface.
    • never: Disable preface.
  • problem: Whether to display the problem statement:
    • auto: Include for student theses only. [default]
    • always: Enable problem statement.
    • never: Disable problem statement.
  • abstracts: Whether to display the abstract(s):
    • auto: Include german and english abstract for doctoral theses, none for reports and only an abstract in the document's language for all other document types. [default]
    • one: Enable only the abstract in the document's language.
    • both: Enable both the german and english abstract.
    • none: Disable abstracts.
  • affirmation: Whether to display the affirmation:
    • auto: Include for student theses only. [default]
    • always: Enable affirmation.
    • never: Disable affirmation.
  • singlecitelabel: Toggle cite label format for multi-author sources.
    • false: Use up to three author's initials in label. For Mustermann and Doe, set [MD18]. [default]
    • true: Always use only the first author's name in label. For Mustermann and Doe, set [Mus18].
  • useminted: Toggle package usage for minted.
    • false: Do not include minted, e.g. when using listings instead. [default]
    • true: Automatically include minted package.

Using with Git

If you use git to track changes in your thesis (which you should!), the following workflow is recommended:

  1. (Optional) Create remote repository

  2. Clone or create local repository

    • When using a remote repository as per Step 1, create a local clone:

      git clone https://YOUR.GIT.SERVER/git/YOUR_NAME/YOUR_REPO.git
      
    • Otherwise, create a new repository:

      git init
      
  3. Add the thesis template as an alternate remote:

    git remote add template https://github.com/ei-upb/ETthesis.git
    
  4. Pull the template:

    git pull template master
    

Now, you can start with a fresh template, with the following behaviour:

  • Adding commits will add them to your own master.
  • Pushing your changes with git push will push them to your own remote (not the template).
  • Calling git pull template master again will update the template.
  • Updating the template will not overwrite your local changes.
  • As long as you do not change core files like etthesis.cls, no merge conflicts should occur.

About

LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - ei-upb/ETthesis: LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology. · GitHub
Skip to content

Repository files navigation

ETthesis

ETthesis is a LaTeX class and template for academic theses and documents prepared at the Department of Electrical Engineering and Information Technology at Paderborn University, Germany.

Contents

  • etthesis.cls: Document class file, an extension to scrbook. Provides all structure, formatting and processing.
  • thesis.tex: Main file of the exemplary document.
  • custom.sty: Local package for user customization. Contents are suggestions, not required for the class to work.
  • thesis.bib: Bibliography file. Multiple source files are supported.
  • Files in frontmatter, mainmatter, and backmatter: Exemplary content with recommended formatting, e.g. for lists of symbols.

Features

  • Support for different document types
    • Student theses (Bachelor's, Master's)
    • Doctoral theses
    • Student projects and similar ("Projektarbeit", "Studienarbeit")
    • Generic reports (non-thesis)
  • English and German language variants
  • Support for different document states, e.g. "Prüfexemplar" and "Belegexemplar" for doctoral theses
  • Compliance with university, faculty and work group requirements (no guarantees though)
  • Metadata (author name, thesis title etc.) centrally defined in main document
  • Page layout, fonts etc. according to typographical standards
  • Configurable document structure:
    • Title page
    • Problem statement (default for student theses)
    • Preface (default for accepted doctoral theses)
    • Abstract (german and/or english)
    • Table of Contents
    • List of figures
    • List of tables
    • List of abbreviations and symbols
    • (Main content)
    • Bibliography
    • Appendices (if any)
    • CV (for submission variant of doctoral theses)
    • Own publications (for submission variant of doctoral theses)
    • Affirmation of own independent work (default for student theses)
  • Common packages already included, e.g.
    • babel
    • biblatex
    • booktabs
    • hyperref
    • longtable
    • microtype
    • minted (optional)
  • Custom BibLaTeX entry type @norm for citing norms and standards.
    • Supported fields: type, number, title, year, publisher
    • See thesis.bib for an example

Class options

The ETthesis document class supports the following options, which can be given via:

 \documentclass[option1=value1, option2=value2]{etthesis}
  • lang: Template language:
    • german: German version [default]
    • english: English version
  • doctype: Document type:
    • bachelors: Bachelor's thesis [default]
    • dring: Doctoral thesis (Dr.-Ing.)
    • drrernat: Doctoral thesis (Dr. rer. nat.)
    • masters: Master's thesis (M.Sc.)
    • project: Student project ("Projektarbeit")
    • report: Generic report
    • sa: "Studienarbeit"
  • docstate: Document publication state:
    • preliminary: Like submission, but without the official-looking title page.
    • submission: Typeset for submission / grading, e.g. with 1.5x line spacing by default. For doctoral theses, typeset "Prüfexemplar" (see above for details). [default]
    • accepted: Typeset for print / publication, e.g. with single line spacing. For doctoral theses, typeset "Belegexemplar" (see above for details).
  • linespacing: When to use 1.5x line spacing in the document:
    • auto: Use 1.5x line spacing for all submission documents and single spacing for accepted documents.
    • single: Use single line spacing.
    • onehalf: Use 1.5x line spacing.
  • paperformat: Which paper format to use:
    • a4: Use DIN A4 paper format with 12pt font size. [default]
    • a4onesided: Use DIN A4 paper format with 12pt font size, one-sided layout, and no binding correction. Suggested for digital submission.
    • a5: Use DIN A5 paper format with 10pt font size for a more compact layout.
  • preface: Whether to display the preface:
    • auto: Include for accepted doctoral theses only. [default]
    • always: Enable preface.
    • never: Disable preface.
  • problem: Whether to display the problem statement:
    • auto: Include for student theses only. [default]
    • always: Enable problem statement.
    • never: Disable problem statement.
  • abstracts: Whether to display the abstract(s):
    • auto: Include german and english abstract for doctoral theses, none for reports and only an abstract in the document's language for all other document types. [default]
    • one: Enable only the abstract in the document's language.
    • both: Enable both the german and english abstract.
    • none: Disable abstracts.
  • affirmation: Whether to display the affirmation:
    • auto: Include for student theses only. [default]
    • always: Enable affirmation.
    • never: Disable affirmation.
  • singlecitelabel: Toggle cite label format for multi-author sources.
    • false: Use up to three author's initials in label. For Mustermann and Doe, set [MD18]. [default]
    • true: Always use only the first author's name in label. For Mustermann and Doe, set [Mus18].
  • useminted: Toggle package usage for minted.
    • false: Do not include minted, e.g. when using listings instead. [default]
    • true: Automatically include minted package.

Using with Git

If you use git to track changes in your thesis (which you should!), the following workflow is recommended:

  1. (Optional) Create remote repository

  2. Clone or create local repository

    • When using a remote repository as per Step 1, create a local clone:

      git clone https://YOUR.GIT.SERVER/git/YOUR_NAME/YOUR_REPO.git
      
    • Otherwise, create a new repository:

      git init
      
  3. Add the thesis template as an alternate remote:

    git remote add template https://github.com/ei-upb/ETthesis.git
    
  4. Pull the template:

    git pull template master
    

Now, you can start with a fresh template, with the following behaviour:

  • Adding commits will add them to your own master.
  • Pushing your changes with git push will push them to your own remote (not the template).
  • Calling git pull template master again will update the template.
  • Updating the template will not overwrite your local changes.
  • As long as you do not change core files like etthesis.cls, no merge conflicts should occur.

About

LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - ei-upb/ETthesis: LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology. · GitHub
Skip to content

Repository files navigation

ETthesis

ETthesis is a LaTeX class and template for academic theses and documents prepared at the Department of Electrical Engineering and Information Technology at Paderborn University, Germany.

Contents

  • etthesis.cls: Document class file, an extension to scrbook. Provides all structure, formatting and processing.
  • thesis.tex: Main file of the exemplary document.
  • custom.sty: Local package for user customization. Contents are suggestions, not required for the class to work.
  • thesis.bib: Bibliography file. Multiple source files are supported.
  • Files in frontmatter, mainmatter, and backmatter: Exemplary content with recommended formatting, e.g. for lists of symbols.

Features

  • Support for different document types
    • Student theses (Bachelor's, Master's)
    • Doctoral theses
    • Student projects and similar ("Projektarbeit", "Studienarbeit")
    • Generic reports (non-thesis)
  • English and German language variants
  • Support for different document states, e.g. "Prüfexemplar" and "Belegexemplar" for doctoral theses
  • Compliance with university, faculty and work group requirements (no guarantees though)
  • Metadata (author name, thesis title etc.) centrally defined in main document
  • Page layout, fonts etc. according to typographical standards
  • Configurable document structure:
    • Title page
    • Problem statement (default for student theses)
    • Preface (default for accepted doctoral theses)
    • Abstract (german and/or english)
    • Table of Contents
    • List of figures
    • List of tables
    • List of abbreviations and symbols
    • (Main content)
    • Bibliography
    • Appendices (if any)
    • CV (for submission variant of doctoral theses)
    • Own publications (for submission variant of doctoral theses)
    • Affirmation of own independent work (default for student theses)
  • Common packages already included, e.g.
    • babel
    • biblatex
    • booktabs
    • hyperref
    • longtable
    • microtype
    • minted (optional)
  • Custom BibLaTeX entry type @norm for citing norms and standards.
    • Supported fields: type, number, title, year, publisher
    • See thesis.bib for an example

Class options

The ETthesis document class supports the following options, which can be given via:

 \documentclass[option1=value1, option2=value2]{etthesis}
  • lang: Template language:
    • german: German version [default]
    • english: English version
  • doctype: Document type:
    • bachelors: Bachelor's thesis [default]
    • dring: Doctoral thesis (Dr.-Ing.)
    • drrernat: Doctoral thesis (Dr. rer. nat.)
    • masters: Master's thesis (M.Sc.)
    • project: Student project ("Projektarbeit")
    • report: Generic report
    • sa: "Studienarbeit"
  • docstate: Document publication state:
    • preliminary: Like submission, but without the official-looking title page.
    • submission: Typeset for submission / grading, e.g. with 1.5x line spacing by default. For doctoral theses, typeset "Prüfexemplar" (see above for details). [default]
    • accepted: Typeset for print / publication, e.g. with single line spacing. For doctoral theses, typeset "Belegexemplar" (see above for details).
  • linespacing: When to use 1.5x line spacing in the document:
    • auto: Use 1.5x line spacing for all submission documents and single spacing for accepted documents.
    • single: Use single line spacing.
    • onehalf: Use 1.5x line spacing.
  • paperformat: Which paper format to use:
    • a4: Use DIN A4 paper format with 12pt font size. [default]
    • a4onesided: Use DIN A4 paper format with 12pt font size, one-sided layout, and no binding correction. Suggested for digital submission.
    • a5: Use DIN A5 paper format with 10pt font size for a more compact layout.
  • preface: Whether to display the preface:
    • auto: Include for accepted doctoral theses only. [default]
    • always: Enable preface.
    • never: Disable preface.
  • problem: Whether to display the problem statement:
    • auto: Include for student theses only. [default]
    • always: Enable problem statement.
    • never: Disable problem statement.
  • abstracts: Whether to display the abstract(s):
    • auto: Include german and english abstract for doctoral theses, none for reports and only an abstract in the document's language for all other document types. [default]
    • one: Enable only the abstract in the document's language.
    • both: Enable both the german and english abstract.
    • none: Disable abstracts.
  • affirmation: Whether to display the affirmation:
    • auto: Include for student theses only. [default]
    • always: Enable affirmation.
    • never: Disable affirmation.
  • singlecitelabel: Toggle cite label format for multi-author sources.
    • false: Use up to three author's initials in label. For Mustermann and Doe, set [MD18]. [default]
    • true: Always use only the first author's name in label. For Mustermann and Doe, set [Mus18].
  • useminted: Toggle package usage for minted.
    • false: Do not include minted, e.g. when using listings instead. [default]
    • true: Automatically include minted package.

Using with Git

If you use git to track changes in your thesis (which you should!), the following workflow is recommended:

  1. (Optional) Create remote repository

  2. Clone or create local repository

    • When using a remote repository as per Step 1, create a local clone:

      git clone https://YOUR.GIT.SERVER/git/YOUR_NAME/YOUR_REPO.git
      
    • Otherwise, create a new repository:

      git init
      
  3. Add the thesis template as an alternate remote:

    git remote add template https://github.com/ei-upb/ETthesis.git
    
  4. Pull the template:

    git pull template master
    

Now, you can start with a fresh template, with the following behaviour:

  • Adding commits will add them to your own master.
  • Pushing your changes with git push will push them to your own remote (not the template).
  • Calling git pull template master again will update the template.
  • Updating the template will not overwrite your local changes.
  • As long as you do not change core files like etthesis.cls, no merge conflicts should occur.

About

LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' GitHub - ei-upb/ETthesis: LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology. · GitHub
Skip to content

Repository files navigation

ETthesis

ETthesis is a LaTeX class and template for academic theses and documents prepared at the Department of Electrical Engineering and Information Technology at Paderborn University, Germany.

Contents

  • etthesis.cls: Document class file, an extension to scrbook. Provides all structure, formatting and processing.
  • thesis.tex: Main file of the exemplary document.
  • custom.sty: Local package for user customization. Contents are suggestions, not required for the class to work.
  • thesis.bib: Bibliography file. Multiple source files are supported.
  • Files in frontmatter, mainmatter, and backmatter: Exemplary content with recommended formatting, e.g. for lists of symbols.

Features

  • Support for different document types
    • Student theses (Bachelor's, Master's)
    • Doctoral theses
    • Student projects and similar ("Projektarbeit", "Studienarbeit")
    • Generic reports (non-thesis)
  • English and German language variants
  • Support for different document states, e.g. "Prüfexemplar" and "Belegexemplar" for doctoral theses
  • Compliance with university, faculty and work group requirements (no guarantees though)
  • Metadata (author name, thesis title etc.) centrally defined in main document
  • Page layout, fonts etc. according to typographical standards
  • Configurable document structure:
    • Title page
    • Problem statement (default for student theses)
    • Preface (default for accepted doctoral theses)
    • Abstract (german and/or english)
    • Table of Contents
    • List of figures
    • List of tables
    • List of abbreviations and symbols
    • (Main content)
    • Bibliography
    • Appendices (if any)
    • CV (for submission variant of doctoral theses)
    • Own publications (for submission variant of doctoral theses)
    • Affirmation of own independent work (default for student theses)
  • Common packages already included, e.g.
    • babel
    • biblatex
    • booktabs
    • hyperref
    • longtable
    • microtype
    • minted (optional)
  • Custom BibLaTeX entry type @norm for citing norms and standards.
    • Supported fields: type, number, title, year, publisher
    • See thesis.bib for an example

Class options

The ETthesis document class supports the following options, which can be given via:

 \documentclass[option1=value1, option2=value2]{etthesis}
  • lang: Template language:
    • german: German version [default]
    • english: English version
  • doctype: Document type:
    • bachelors: Bachelor's thesis [default]
    • dring: Doctoral thesis (Dr.-Ing.)
    • drrernat: Doctoral thesis (Dr. rer. nat.)
    • masters: Master's thesis (M.Sc.)
    • project: Student project ("Projektarbeit")
    • report: Generic report
    • sa: "Studienarbeit"
  • docstate: Document publication state:
    • preliminary: Like submission, but without the official-looking title page.
    • submission: Typeset for submission / grading, e.g. with 1.5x line spacing by default. For doctoral theses, typeset "Prüfexemplar" (see above for details). [default]
    • accepted: Typeset for print / publication, e.g. with single line spacing. For doctoral theses, typeset "Belegexemplar" (see above for details).
  • linespacing: When to use 1.5x line spacing in the document:
    • auto: Use 1.5x line spacing for all submission documents and single spacing for accepted documents.
    • single: Use single line spacing.
    • onehalf: Use 1.5x line spacing.
  • paperformat: Which paper format to use:
    • a4: Use DIN A4 paper format with 12pt font size. [default]
    • a4onesided: Use DIN A4 paper format with 12pt font size, one-sided layout, and no binding correction. Suggested for digital submission.
    • a5: Use DIN A5 paper format with 10pt font size for a more compact layout.
  • preface: Whether to display the preface:
    • auto: Include for accepted doctoral theses only. [default]
    • always: Enable preface.
    • never: Disable preface.
  • problem: Whether to display the problem statement:
    • auto: Include for student theses only. [default]
    • always: Enable problem statement.
    • never: Disable problem statement.
  • abstracts: Whether to display the abstract(s):
    • auto: Include german and english abstract for doctoral theses, none for reports and only an abstract in the document's language for all other document types. [default]
    • one: Enable only the abstract in the document's language.
    • both: Enable both the german and english abstract.
    • none: Disable abstracts.
  • affirmation: Whether to display the affirmation:
    • auto: Include for student theses only. [default]
    • always: Enable affirmation.
    • never: Disable affirmation.
  • singlecitelabel: Toggle cite label format for multi-author sources.
    • false: Use up to three author's initials in label. For Mustermann and Doe, set [MD18]. [default]
    • true: Always use only the first author's name in label. For Mustermann and Doe, set [Mus18].
  • useminted: Toggle package usage for minted.
    • false: Do not include minted, e.g. when using listings instead. [default]
    • true: Automatically include minted package.

Using with Git

If you use git to track changes in your thesis (which you should!), the following workflow is recommended:

  1. (Optional) Create remote repository

  2. Clone or create local repository

    • When using a remote repository as per Step 1, create a local clone:

      git clone https://YOUR.GIT.SERVER/git/YOUR_NAME/YOUR_REPO.git
      
    • Otherwise, create a new repository:

      git init
      
  3. Add the thesis template as an alternate remote:

    git remote add template https://github.com/ei-upb/ETthesis.git
    
  4. Pull the template:

    git pull template master
    

Now, you can start with a fresh template, with the following behaviour:

  • Adding commits will add them to your own master.
  • Pushing your changes with git push will push them to your own remote (not the template).
  • Calling git pull template master again will update the template.
  • Updating the template will not overwrite your local changes.
  • As long as you do not change core files like etthesis.cls, no merge conflicts should occur.

About

LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - ei-upb/ETthesis: LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology. · GitHub
Skip to content

Repository files navigation

ETthesis

ETthesis is a LaTeX class and template for academic theses and documents prepared at the Department of Electrical Engineering and Information Technology at Paderborn University, Germany.

Contents

  • etthesis.cls: Document class file, an extension to scrbook. Provides all structure, formatting and processing.
  • thesis.tex: Main file of the exemplary document.
  • custom.sty: Local package for user customization. Contents are suggestions, not required for the class to work.
  • thesis.bib: Bibliography file. Multiple source files are supported.
  • Files in frontmatter, mainmatter, and backmatter: Exemplary content with recommended formatting, e.g. for lists of symbols.

Features

  • Support for different document types
    • Student theses (Bachelor's, Master's)
    • Doctoral theses
    • Student projects and similar ("Projektarbeit", "Studienarbeit")
    • Generic reports (non-thesis)
  • English and German language variants
  • Support for different document states, e.g. "Prüfexemplar" and "Belegexemplar" for doctoral theses
  • Compliance with university, faculty and work group requirements (no guarantees though)
  • Metadata (author name, thesis title etc.) centrally defined in main document
  • Page layout, fonts etc. according to typographical standards
  • Configurable document structure:
    • Title page
    • Problem statement (default for student theses)
    • Preface (default for accepted doctoral theses)
    • Abstract (german and/or english)
    • Table of Contents
    • List of figures
    • List of tables
    • List of abbreviations and symbols
    • (Main content)
    • Bibliography
    • Appendices (if any)
    • CV (for submission variant of doctoral theses)
    • Own publications (for submission variant of doctoral theses)
    • Affirmation of own independent work (default for student theses)
  • Common packages already included, e.g.
    • babel
    • biblatex
    • booktabs
    • hyperref
    • longtable
    • microtype
    • minted (optional)
  • Custom BibLaTeX entry type @norm for citing norms and standards.
    • Supported fields: type, number, title, year, publisher
    • See thesis.bib for an example

Class options

The ETthesis document class supports the following options, which can be given via:

 \documentclass[option1=value1, option2=value2]{etthesis}
  • lang: Template language:
    • german: German version [default]
    • english: English version
  • doctype: Document type:
    • bachelors: Bachelor's thesis [default]
    • dring: Doctoral thesis (Dr.-Ing.)
    • drrernat: Doctoral thesis (Dr. rer. nat.)
    • masters: Master's thesis (M.Sc.)
    • project: Student project ("Projektarbeit")
    • report: Generic report
    • sa: "Studienarbeit"
  • docstate: Document publication state:
    • preliminary: Like submission, but without the official-looking title page.
    • submission: Typeset for submission / grading, e.g. with 1.5x line spacing by default. For doctoral theses, typeset "Prüfexemplar" (see above for details). [default]
    • accepted: Typeset for print / publication, e.g. with single line spacing. For doctoral theses, typeset "Belegexemplar" (see above for details).
  • linespacing: When to use 1.5x line spacing in the document:
    • auto: Use 1.5x line spacing for all submission documents and single spacing for accepted documents.
    • single: Use single line spacing.
    • onehalf: Use 1.5x line spacing.
  • paperformat: Which paper format to use:
    • a4: Use DIN A4 paper format with 12pt font size. [default]
    • a4onesided: Use DIN A4 paper format with 12pt font size, one-sided layout, and no binding correction. Suggested for digital submission.
    • a5: Use DIN A5 paper format with 10pt font size for a more compact layout.
  • preface: Whether to display the preface:
    • auto: Include for accepted doctoral theses only. [default]
    • always: Enable preface.
    • never: Disable preface.
  • problem: Whether to display the problem statement:
    • auto: Include for student theses only. [default]
    • always: Enable problem statement.
    • never: Disable problem statement.
  • abstracts: Whether to display the abstract(s):
    • auto: Include german and english abstract for doctoral theses, none for reports and only an abstract in the document's language for all other document types. [default]
    • one: Enable only the abstract in the document's language.
    • both: Enable both the german and english abstract.
    • none: Disable abstracts.
  • affirmation: Whether to display the affirmation:
    • auto: Include for student theses only. [default]
    • always: Enable affirmation.
    • never: Disable affirmation.
  • singlecitelabel: Toggle cite label format for multi-author sources.
    • false: Use up to three author's initials in label. For Mustermann and Doe, set [MD18]. [default]
    • true: Always use only the first author's name in label. For Mustermann and Doe, set [Mus18].
  • useminted: Toggle package usage for minted.
    • false: Do not include minted, e.g. when using listings instead. [default]
    • true: Automatically include minted package.

Using with Git

If you use git to track changes in your thesis (which you should!), the following workflow is recommended:

  1. (Optional) Create remote repository

  2. Clone or create local repository

    • When using a remote repository as per Step 1, create a local clone:

      git clone https://YOUR.GIT.SERVER/git/YOUR_NAME/YOUR_REPO.git
      
    • Otherwise, create a new repository:

      git init
      
  3. Add the thesis template as an alternate remote:

    git remote add template https://github.com/ei-upb/ETthesis.git
    
  4. Pull the template:

    git pull template master
    

Now, you can start with a fresh template, with the following behaviour:

  • Adding commits will add them to your own master.
  • Pushing your changes with git push will push them to your own remote (not the template).
  • Calling git pull template master again will update the template.
  • Updating the template will not overwrite your local changes.
  • As long as you do not change core files like etthesis.cls, no merge conflicts should occur.

About

LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - ei-upb/ETthesis: LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology. · GitHub
Skip to content

Repository files navigation

ETthesis

ETthesis is a LaTeX class and template for academic theses and documents prepared at the Department of Electrical Engineering and Information Technology at Paderborn University, Germany.

Contents

  • etthesis.cls: Document class file, an extension to scrbook. Provides all structure, formatting and processing.
  • thesis.tex: Main file of the exemplary document.
  • custom.sty: Local package for user customization. Contents are suggestions, not required for the class to work.
  • thesis.bib: Bibliography file. Multiple source files are supported.
  • Files in frontmatter, mainmatter, and backmatter: Exemplary content with recommended formatting, e.g. for lists of symbols.

Features

  • Support for different document types
    • Student theses (Bachelor's, Master's)
    • Doctoral theses
    • Student projects and similar ("Projektarbeit", "Studienarbeit")
    • Generic reports (non-thesis)
  • English and German language variants
  • Support for different document states, e.g. "Prüfexemplar" and "Belegexemplar" for doctoral theses
  • Compliance with university, faculty and work group requirements (no guarantees though)
  • Metadata (author name, thesis title etc.) centrally defined in main document
  • Page layout, fonts etc. according to typographical standards
  • Configurable document structure:
    • Title page
    • Problem statement (default for student theses)
    • Preface (default for accepted doctoral theses)
    • Abstract (german and/or english)
    • Table of Contents
    • List of figures
    • List of tables
    • List of abbreviations and symbols
    • (Main content)
    • Bibliography
    • Appendices (if any)
    • CV (for submission variant of doctoral theses)
    • Own publications (for submission variant of doctoral theses)
    • Affirmation of own independent work (default for student theses)
  • Common packages already included, e.g.
    • babel
    • biblatex
    • booktabs
    • hyperref
    • longtable
    • microtype
    • minted (optional)
  • Custom BibLaTeX entry type @norm for citing norms and standards.
    • Supported fields: type, number, title, year, publisher
    • See thesis.bib for an example

Class options

The ETthesis document class supports the following options, which can be given via:

 \documentclass[option1=value1, option2=value2]{etthesis}
  • lang: Template language:
    • german: German version [default]
    • english: English version
  • doctype: Document type:
    • bachelors: Bachelor's thesis [default]
    • dring: Doctoral thesis (Dr.-Ing.)
    • drrernat: Doctoral thesis (Dr. rer. nat.)
    • masters: Master's thesis (M.Sc.)
    • project: Student project ("Projektarbeit")
    • report: Generic report
    • sa: "Studienarbeit"
  • docstate: Document publication state:
    • preliminary: Like submission, but without the official-looking title page.
    • submission: Typeset for submission / grading, e.g. with 1.5x line spacing by default. For doctoral theses, typeset "Prüfexemplar" (see above for details). [default]
    • accepted: Typeset for print / publication, e.g. with single line spacing. For doctoral theses, typeset "Belegexemplar" (see above for details).
  • linespacing: When to use 1.5x line spacing in the document:
    • auto: Use 1.5x line spacing for all submission documents and single spacing for accepted documents.
    • single: Use single line spacing.
    • onehalf: Use 1.5x line spacing.
  • paperformat: Which paper format to use:
    • a4: Use DIN A4 paper format with 12pt font size. [default]
    • a4onesided: Use DIN A4 paper format with 12pt font size, one-sided layout, and no binding correction. Suggested for digital submission.
    • a5: Use DIN A5 paper format with 10pt font size for a more compact layout.
  • preface: Whether to display the preface:
    • auto: Include for accepted doctoral theses only. [default]
    • always: Enable preface.
    • never: Disable preface.
  • problem: Whether to display the problem statement:
    • auto: Include for student theses only. [default]
    • always: Enable problem statement.
    • never: Disable problem statement.
  • abstracts: Whether to display the abstract(s):
    • auto: Include german and english abstract for doctoral theses, none for reports and only an abstract in the document's language for all other document types. [default]
    • one: Enable only the abstract in the document's language.
    • both: Enable both the german and english abstract.
    • none: Disable abstracts.
  • affirmation: Whether to display the affirmation:
    • auto: Include for student theses only. [default]
    • always: Enable affirmation.
    • never: Disable affirmation.
  • singlecitelabel: Toggle cite label format for multi-author sources.
    • false: Use up to three author's initials in label. For Mustermann and Doe, set [MD18]. [default]
    • true: Always use only the first author's name in label. For Mustermann and Doe, set [Mus18].
  • useminted: Toggle package usage for minted.
    • false: Do not include minted, e.g. when using listings instead. [default]
    • true: Automatically include minted package.

Using with Git

If you use git to track changes in your thesis (which you should!), the following workflow is recommended:

  1. (Optional) Create remote repository

  2. Clone or create local repository

    • When using a remote repository as per Step 1, create a local clone:

      git clone https://YOUR.GIT.SERVER/git/YOUR_NAME/YOUR_REPO.git
      
    • Otherwise, create a new repository:

      git init
      
  3. Add the thesis template as an alternate remote:

    git remote add template https://github.com/ei-upb/ETthesis.git
    
  4. Pull the template:

    git pull template master
    

Now, you can start with a fresh template, with the following behaviour:

  • Adding commits will add them to your own master.
  • Pushing your changes with git push will push them to your own remote (not the template).
  • Calling git pull template master again will update the template.
  • Updating the template will not overwrite your local changes.
  • As long as you do not change core files like etthesis.cls, no merge conflicts should occur.

About

LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); GitHub - ei-upb/ETthesis: LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology. · GitHub
Skip to content

Repository files navigation

ETthesis

ETthesis is a LaTeX class and template for academic theses and documents prepared at the Department of Electrical Engineering and Information Technology at Paderborn University, Germany.

Contents

  • etthesis.cls: Document class file, an extension to scrbook. Provides all structure, formatting and processing.
  • thesis.tex: Main file of the exemplary document.
  • custom.sty: Local package for user customization. Contents are suggestions, not required for the class to work.
  • thesis.bib: Bibliography file. Multiple source files are supported.
  • Files in frontmatter, mainmatter, and backmatter: Exemplary content with recommended formatting, e.g. for lists of symbols.

Features

  • Support for different document types
    • Student theses (Bachelor's, Master's)
    • Doctoral theses
    • Student projects and similar ("Projektarbeit", "Studienarbeit")
    • Generic reports (non-thesis)
  • English and German language variants
  • Support for different document states, e.g. "Prüfexemplar" and "Belegexemplar" for doctoral theses
  • Compliance with university, faculty and work group requirements (no guarantees though)
  • Metadata (author name, thesis title etc.) centrally defined in main document
  • Page layout, fonts etc. according to typographical standards
  • Configurable document structure:
    • Title page
    • Problem statement (default for student theses)
    • Preface (default for accepted doctoral theses)
    • Abstract (german and/or english)
    • Table of Contents
    • List of figures
    • List of tables
    • List of abbreviations and symbols
    • (Main content)
    • Bibliography
    • Appendices (if any)
    • CV (for submission variant of doctoral theses)
    • Own publications (for submission variant of doctoral theses)
    • Affirmation of own independent work (default for student theses)
  • Common packages already included, e.g.
    • babel
    • biblatex
    • booktabs
    • hyperref
    • longtable
    • microtype
    • minted (optional)
  • Custom BibLaTeX entry type @norm for citing norms and standards.
    • Supported fields: type, number, title, year, publisher
    • See thesis.bib for an example

Class options

The ETthesis document class supports the following options, which can be given via:

 \documentclass[option1=value1, option2=value2]{etthesis}
  • lang: Template language:
    • german: German version [default]
    • english: English version
  • doctype: Document type:
    • bachelors: Bachelor's thesis [default]
    • dring: Doctoral thesis (Dr.-Ing.)
    • drrernat: Doctoral thesis (Dr. rer. nat.)
    • masters: Master's thesis (M.Sc.)
    • project: Student project ("Projektarbeit")
    • report: Generic report
    • sa: "Studienarbeit"
  • docstate: Document publication state:
    • preliminary: Like submission, but without the official-looking title page.
    • submission: Typeset for submission / grading, e.g. with 1.5x line spacing by default. For doctoral theses, typeset "Prüfexemplar" (see above for details). [default]
    • accepted: Typeset for print / publication, e.g. with single line spacing. For doctoral theses, typeset "Belegexemplar" (see above for details).
  • linespacing: When to use 1.5x line spacing in the document:
    • auto: Use 1.5x line spacing for all submission documents and single spacing for accepted documents.
    • single: Use single line spacing.
    • onehalf: Use 1.5x line spacing.
  • paperformat: Which paper format to use:
    • a4: Use DIN A4 paper format with 12pt font size. [default]
    • a4onesided: Use DIN A4 paper format with 12pt font size, one-sided layout, and no binding correction. Suggested for digital submission.
    • a5: Use DIN A5 paper format with 10pt font size for a more compact layout.
  • preface: Whether to display the preface:
    • auto: Include for accepted doctoral theses only. [default]
    • always: Enable preface.
    • never: Disable preface.
  • problem: Whether to display the problem statement:
    • auto: Include for student theses only. [default]
    • always: Enable problem statement.
    • never: Disable problem statement.
  • abstracts: Whether to display the abstract(s):
    • auto: Include german and english abstract for doctoral theses, none for reports and only an abstract in the document's language for all other document types. [default]
    • one: Enable only the abstract in the document's language.
    • both: Enable both the german and english abstract.
    • none: Disable abstracts.
  • affirmation: Whether to display the affirmation:
    • auto: Include for student theses only. [default]
    • always: Enable affirmation.
    • never: Disable affirmation.
  • singlecitelabel: Toggle cite label format for multi-author sources.
    • false: Use up to three author's initials in label. For Mustermann and Doe, set [MD18]. [default]
    • true: Always use only the first author's name in label. For Mustermann and Doe, set [Mus18].
  • useminted: Toggle package usage for minted.
    • false: Do not include minted, e.g. when using listings instead. [default]
    • true: Automatically include minted package.

Using with Git

If you use git to track changes in your thesis (which you should!), the following workflow is recommended:

  1. (Optional) Create remote repository

  2. Clone or create local repository

    • When using a remote repository as per Step 1, create a local clone:

      git clone https://YOUR.GIT.SERVER/git/YOUR_NAME/YOUR_REPO.git
      
    • Otherwise, create a new repository:

      git init
      
  3. Add the thesis template as an alternate remote:

    git remote add template https://github.com/ei-upb/ETthesis.git
    
  4. Pull the template:

    git pull template master
    

Now, you can start with a fresh template, with the following behaviour:

  • Adding commits will add them to your own master.
  • Pushing your changes with git push will push them to your own remote (not the template).
  • Calling git pull template master again will update the template.
  • Updating the template will not overwrite your local changes.
  • As long as you do not change core files like etthesis.cls, no merge conflicts should occur.

About

LaTeX class and template for theses at the Department of Electrical Engineering and Information Technology.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages