开始使用Latex写作啦!不过目前处于测试摸索阶段,欢迎提issue~

This commit is contained in:
skyel1u 2018-01-13 23:29:42 +08:00
parent c68ed33d4c
commit bf8f3d4038
62 changed files with 1443 additions and 0 deletions

View File

@ -1,3 +1,4 @@
2018-01-23开始尝试使用Latex写作
2017-12-25开始写 Crypto 部分
2017-12-22250 star 成就达成
2017-12-15中文名“CTF从入门到放弃”

View File

@ -76,5 +76,6 @@
| 章节 | 作者 | 进度 |
| --------------- | --------- | ---- |
| 2.6_idapro.md | Sky3 | 未完成 |
| 开始使用Latex | Sky3 | 未完成 |
| 2.12_burpsuite.md | phantom0301 | 未完成 |
| 1.4.*.md | phantom0301 | 未完成 |

18
tex/README.md Normal file
View File

@ -0,0 +1,18 @@
# 一些使用Latex事项
* 使用开源Latex模板https://github.com/GGolbik/GGLaTeXBookTemplate该模板为GPL 3.0 协议。具体使用以该仓库的README为准。
* 目前还在测试中需各位仍以markdown写作为主。
* 仅在Share Latex上测试已经成功生成PDF文件于build目录看上去还不错细节有待打磨
## 其他
### 字体
为了减小仓库体积fonts文件夹下字体全为空文件可以从以下地址下载并编译使用
- NotoSansCJKsc
- Source: [Google Noto Fonts](https://www.google.com/get/noto/#sans-hans)
- License: [SIL Open Font License, Version 1.1](https://github.com/GGerry/GGLaTeXBookTemplate/blob/master/fonts/NotoSansCJKjp/LICENSE_OFL.txt)
- Roboto
- Source: [Google Fonts](https://fonts.google.com/specimen/Roboto?selection.family=Roboto)
- License: [Apache License 2.0](https://github.com/GGerry/GGLaTeXBookTemplate/blob/master/fonts/Roboto/LICENSE.txt)

View File

@ -0,0 +1,54 @@
% add table of contents entry
\addstarredchapter{\DICTAbbreviations}
% update mark for use of \leftmark and \rightmark
\markboth{\DICTAbbreviations}{\DICTAbbreviations}
\chapter*{\DICTAbbreviations}
% You can enter a short name between the abbreviation and the long form (for example, for I²C). This is necessary for mathematical characters, for example, since only normal characters may be used in the abbreviation. The corresponding call looks like usual: \ac{I2C}, the abbreviation I²C appears in the generated document.
% After \begin{acronym} an expression can be specified in square brackets. After the length of this expression, the indentation of the abbreviations is set. In this case, it is recommended to use the longest abbreviation in order to obtain a uniform indentation for all abbreviations.
\begin{acronym}[Bash]
\acro{KDE}{K Desktop Environment}
\acro{SQL}{Structured Query Language}
\acro{Bash}{Bourne-again shell}
\end{acronym}
% Use in the text
% Here are only the most important examples:
% Outputs the long form with the abbreviation in parentheses for the first use, from then on always the short form.
%--------------------------------------
% \ac{KDE} % K Desktop Environment (KDE)
%--------------------------------------
% Returns the abbreviation.
%--------------------------------------
% \acs{KDE} % KDE
%--------------------------------------
% Outputs the long and short form.
%--------------------------------------
% \acf{KDE} % K Desktop Environment (KDE)
%--------------------------------------
% Only outputs the long form without the short form.
%--------------------------------------
% \acl{KDE} % K Desktop Environment
%--------------------------------------
% Similar to the above commands, the plural can also be displayed accordingly:
%--------------------------------------
% \acp{KDE} % K Desktop Environments (KDEs)
% \acsp{KDE} % KDEs
% \acfp{KDE} % K Desktop Environments (KDEs)
% \aclp{KDE} % K Desktop Environments
%--------------------------------------
% If the plural does not end at -s, you can set it with the following command:
%--------------------------------------
% \acrodefplural{VM}[VMs]{Virtuelle Maschinen}
%--------------------------------------

View File

@ -0,0 +1,33 @@
\RedeclareSectionCommand[tocnumwidth=6em]{section}
\RedeclareSectionCommand[tocnumwidth=6.5em]{subsection}
\RedeclareSectionCommand[tocindent=0em]{section}
\RedeclareSectionCommand[tocindent=2em]{subsection}
\addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
% update mark for use of \leftmark and \rightmark
\markboth{\DICTAppendix}{\DICTAppendix}
\chapter*{\DICTAppendix}
\nomtcrule
\mtcsettitle{minitoc}{\DICTTableOfAppendix}
\setcounter{section}{0}
\addstarredchapter{\DICTAppendix}
\ifthenelse{\equal{\CONFIGEnableTableOfAppendix}{true}}
{
\minitoc % minitoc-Ausgeben
\newpage
}{}
\renewcommand{\thesection}{\DICTAppendix~\Alph{section}}
% include appendix content
%--------------------------------------
\input{base/appendix/appendixcontent}
%--------------------------------------
\addtocontents{toc}{\protect\setcounter{tocdepth}{3}}

View File

@ -0,0 +1,7 @@
% \section{Packed Objects Encoding tables}
% \subsection{Packed Objects Encoding tables}
% \section{Encoding Packed Objects}
% \section{Decoding Packed Objects}

View File

@ -0,0 +1,18 @@
% Use the below command to add references
% \cite{name of reference}
% Required for table of contents
\addstarredchapter{\DICTReferences}
% update mark for use of \leftmark and \rightmark
\markboth{\DICTReferences}{\DICTReferences}
% to avoid the warning: Overfull \hbox
\emergencystretch=1em
% show all entries even the once which are not used
%\nocite{*}
\printbibliography[title={\DICTReferences}
%,heading=bibnumbered
]

View File

@ -0,0 +1,62 @@
% You can find the documentation on ftp://ctan.tug.org/tex-archive/macros/latex/exptl/biblatex/doc/biblatex.pdf
% Article
%
% An article in a journal, magazine, newspaper, or other periodical which forms a
% self-contained unit with its own title. The title of the periodical is given in the
% journaltitle field. If the issue has its own title in addition to the main title of
% the periodical, it goes in the issuetitle field. Note that editor and related
% fields refer to the journal while translator and related fields refer to the article.
@article{exampleArticle,
% Required fields:
author = "Max Mustermann",
title = "Mustertitle - Article",
journaltitle = "Muster Journal",
date = "2017-12-13",
% Optional fields: see documentation
}
% Book
%
% A single-volume book with one or more authors where the authors share credit for
% the work as a whole. This entry type also covers the function of the @inbook type
% of traditional BibTeX, see § 2.3.1 for details
@book{exampleBook,
% Required fields:
author = "Max Mustermann",
title = "Mustertitle - Book",
date = "2017-12-14",
% Optional fields: see documentation
}
% Manual
%
% Technical or other documentation, not necessarily in printed form. The author or
% editor is omissible in terms of § 2.3.2.
@manual{exampleManual,
% Required fields:
author = "Max Mustermann",
title = "Mustertitle - Manual",
date = "2017-12-15",
% Optional fields: see documentation
}
% Online
%
% An online resource. author, editor, and year are omissible in terms of § 2.3.2.
% This entry type is intended for sources such as web sites which are intrinsically
% online resources. Note that all entry types support the url field. For example, when
% adding an article from an online journal, it may be preferable to use the @article
% type and its url field.
@online{exampleOnline,
% Required fields:
author = "Max Mustermann",
title = "Mustertitle - Online",
date = "2017-12-16",
url = "http://example.url",
% Optional fields: see documentation
}

View File

@ -0,0 +1,4 @@
\begin{flushleft}
\copyright~Copyright~\the\year~\DICTDocAuthor
\end{flushleft}
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the author or other organizations.

View File

@ -0,0 +1,4 @@
\begin{flushleft}
\copyright~版权~\the\year~\DICTDocAuthor
\end{flushleft}
Creative Commons license (CC BY-SA 4.0)

View File

@ -0,0 +1,5 @@
\IfFileExists{base/copyright/\CONFIGLanguage}{
\input{base/copyright/\CONFIGLanguage}
}{
Copyright: UNSUPPORTED LANGUAGE ,,\CONFIGLanguage ``
}

View File

@ -0,0 +1,5 @@
\begin{center}
{\Large DISCLAIMER}
\end{center}
This document and the information contained herein is provided on an “As Is” basis and the author disclaims all warranties, express or implied, including but not limited to any warranty that the use of the information herein will not infringe any rights or any implied warranties of merchantability or fitness for a particular purpose.

View File

@ -0,0 +1,5 @@
\begin{center}
{\Large 声明}
\end{center}
本书使用 Creative Commons license (CC BY-SA 4.0)大可随意使用。欢迎来本书的Github页面提交PR.

View File

@ -0,0 +1,5 @@
\IfFileExists{base/disclaimer/\CONFIGLanguage}{
\input{base/disclaimer/\CONFIGLanguage}
}{
DISCLAIMER: UNSUPPORTED LANGUAGE ,,\CONFIGLanguage ``
}

View File

@ -0,0 +1,88 @@
%\ifthenelse{\equal{\CONFIGLanguage}{twoside}}
% {\input{base/headerfooter/twoside}}
% {\input{base/headerfooter/oneside}}
\pagestyle{fancy}
\fancyhf{}
% E for even page
% O for odd page
% L for left side
% C for centered
% R for right side
% set header
%--------------------------------------
\ifthenelse{\equal{\CONFIGOneTwoSided}{oneside}}
{
\fancyhead[L]{\includegraphics[width=5mm]{\IMGHeader}}
\fancyhead[R]{\DICTDocTitle}
\fancyhead[C]{}
}
{
\fancyhead[RE,LO]{\includegraphics[width=5mm]{\IMGHeader}}
\fancyhead[LE,RO]{\DICTDocTitle}
\fancyhead[CE,CO]{}
}
% change header line color
\patchcmd{\headrule}{\hrule}{\color{LightGray}\hrule}{}{}
% show header line
\renewcommand{\headrulewidth}{0.4pt} % set to 0pt if line shall be removed
%--------------------------------------
% set footer
%--------------------------------------
\ifthenelse{\equal{\CONFIGOneTwoSided}{oneside}}
{
\fancyfoot[R]{Page \thepage \hspace{1pt} of \pageref{LastPage}}
\fancyfoot[L]{\DICTDocDate}
\fancyfoot[C]{}
}
{
\fancyfoot[RE,LO]{Page \thepage \hspace{1pt} of \pageref{LastPage}}
\fancyfoot[LE,RO]{\DICTDocDate}
\fancyfoot[CE,CO]{}
}
% change footer line color
\patchcmd{\footrule}{\hrule}{\color{LightGray}\hrule}{}{}
% show footer line
\renewcommand{\footrulewidth}{0.4pt}% default is 0pt
%--------------------------------------
\fancypagestyle{plain}{%
\fancyhf{}
% set header
%--------------------------------------
\ifthenelse{\equal{\CONFIGOneTwoSided}{oneside}}
{
\fancyhead[L]{\includegraphics[width=5mm]{\IMGHeader}}
\fancyhead[R]{\DICTDocTitle}
\fancyhead[C]{}
}
{
\fancyhead[RE,LO]{\includegraphics[width=5mm]{\IMGHeader}}
\fancyhead[LE,RO]{\DICTDocTitle}
\fancyhead[CE,CO]{}
}
%--------------------------------------
% set footer
%--------------------------------------
\ifthenelse{\equal{\CONFIGOneTwoSided}{oneside}}
{
\fancyfoot[R]{Page \thepage \hspace{1pt} of \pageref{LastPage}}
\fancyfoot[L]{\DICTDocDate}
\fancyfoot[C]{}
}
{
\fancyfoot[RE,LO]{Page \thepage \hspace{1pt} of \pageref{LastPage}}
\fancyfoot[LE,RO]{\DICTDocDate}
\fancyfoot[CE,CO]{}
}
}

10
tex/base/index/index.tex Normal file
View File

@ -0,0 +1,10 @@
% use the below command to add index entries
% \index{index name}
% add table of contents entry
\addstarredchapter{\DICTIndex}
% update mark for use of \leftmark and \rightmark
\markboth{\DICTIndex}{\DICTIndex}
\printindex

View File

@ -0,0 +1,11 @@
\setcounter{tocdepth}{3}
% add table of contents entry
\addstarredchapter{\DICTListOfFigures}
\renewcommand{\listfigurename}{\DICTListOfFigures}
\renewcommand{\figurename}{\DICTFigureName}
\listoffigures
% update mark for use of \leftmark and \rightmark
\markboth{\DICTListOfFigures}{\DICTListOfFigures}

View File

@ -0,0 +1,11 @@
\setcounter{tocdepth}{3}
% add table of contents entry
\addstarredchapter{\DICTListOfTables}
\renewcommand{\listtablename}{\DICTListOfTables}
\renewcommand{\tablename}{\DICTTableName}
\listoftables
% update mark for use of \leftmark and \rightmark
\markboth{\DICTListOfTables}{\DICTListOfTables}

View File

@ -0,0 +1,14 @@
\setcounter{tocdepth}{3}
% change listings name below code
\renewcommand{\lstlistingname}{\DICTListingName}
% add table of contents entry
\addstarredchapter{\DICTListOfCodeSnippets}
% List of Listings -> List of Algorithms
\renewcommand{\lstlistlistingname}{\DICTListOfCodeSnippets}
\lstlistoflistings
% update mark for use of \leftmark and \rightmark
\markboth{\DICTListOfCodeSnippets}{\DICTListOfCodeSnippets}

View File

@ -0,0 +1,10 @@
% add table of contents entry
\addstarredchapter{\DICTTableOfContents}
% Rename name of table of contents
\renewcommand\contentsname{\DICTTableOfContents}
% update mark for use of \leftmark and \rightmark
\markboth{\DICTTableOfContents}{\DICTTableOfContents}
\tableofcontents

View File

@ -0,0 +1,37 @@
\pagecolor{brandcolor}
\color{white}
\begin{titlepage}
% doc image
% \begin{figure}[ht]
% \centering
% \includegraphics{\IMGTitlePage}
% \end{figure}
\begin{center}
{\Huge \DICTDocTitle}
\end{center}
\vfill
% \begin{center}
% {\Large by}
% \end{center}
\begin{center}
{\Large \DICTDocAuthor}
\end{center}
\begin{center}
{\Large \DICTDocEmail}
\end{center}
\begin{center}
{\Large \DICTDocDate}
\end{center}
\vspace{5mm}
\end{titlepage}
\pagecolor{white}
\color{black}

Binary file not shown.

14
tex/config/colors.tex Normal file
View File

@ -0,0 +1,14 @@
% Required packages:
% \usepackage{xcolor}
\definecolor{brandcolor}{RGB}{0, 148, 134}
\definecolor{LightGray}{RGB}{235,235,235}
\definecolor{Gray}{RGB}{210,210,210}
\definecolor{Blue}{RGB}{48,129,238}
\definecolor{HyperlinkBlue}{RGB}{0,0,195}
\definecolor{VioletBlue}{RGB}{102,51,153}

33
tex/config/config.tex Normal file
View File

@ -0,0 +1,33 @@
% Define the used document language in ISO 639-1 code
% see for more info https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
%--------------------------------------
\def\CONFIGLanguage{ZH}
%--------------------------------------
\def\CONFIGEnableTitlePage{true} % true or false
\def\CONFIGEnableDisclaimer{true} % true or false
\def\CONFIGEnableCopyright{true} % true or false
\def\CONFIGEnableTableOfContents{true} % true or false
\def\CONFIGEnableListOfFigures{true} % true or false
\def\CONFIGEnableListOfTables{true} % true or false
\def\CONFIGEnableListOfSnippets{true} % true or false
\def\CONFIGEnableListOfAbbreviations{true} % true or false
\def\CONFIGEnableAppendix{true} % true or false
\def\CONFIGEnableTableOfAppendix{true} % true or false
\def\CONFIGEnableReferences{true} % true or false
\def\CONFIGEnableIndex{true} % true or false
% check if document is oneside or twoside
% The type is set in main.tex in \documentclass[...]{...} -> line 2
%--------------------------------------
\makeatletter
\if@twoside
\def\CONFIGOneTwoSided{twoside}
\else
\def\CONFIGOneTwoSided{oneside}
\fi
\makeatother
%--------------------------------------
% Load basic packages for layout
\input{config/layout}

7
tex/config/images.tex Normal file
View File

@ -0,0 +1,7 @@
\def\IMGTitlePage{images/favicon/favicon_white_padding_192.png}
\def\IMGHeader{images/favicon/favicon_32.png}
\def\IMGHeaderColored{images/favicon/favicon_white_32.png}
\def\IMGExampleOne{images/content/ben-kolde-367194.jpg}
\def\IMGExampleTwo{images/content/nate-grant-346782.jpg}

162
tex/config/layout.tex Normal file
View File

@ -0,0 +1,162 @@
\usepackage{ifthen}
% page dimensions
%--------------------------------------
% see https://de.sharelatex.com/learn/Page_size_and_margins
\ifthenelse{\equal{\CONFIGOneTwoSided}{oneside}}
{
\usepackage{geometry}\geometry{
a4paper, % a4 size 210x297 mm
left=35mm,
right=20mm,
top=35mm,
bottom=25mm,
footskip=10mm,
headheight=20mm % required for header
}
}
{
\usepackage{geometry}\geometry{
a4paper, % a4 size 210x297 mm
twoside,
left=35mm,
right=20mm,
top=35mm,
bottom=25mm,
footskip=10mm,
headheight=20mm % required for header
}
}
%--------------------------------------
% reduce chapter margin
\renewcommand*{\chapterheadstartvskip}{\vspace*{0mm}}
% Multi line comments
%--------------------------------------
\usepackage{verbatim}
%--------------------------------------
% font
%--------------------------------------
\usepackage{fontspec}
\setmainfont[ExternalLocation=fonts/Roboto/,
BoldFont = Roboto-Bold.ttf,
ItalicFont = Roboto-Italic.ttf ,
BoldItalicFont = Roboto-BoldItalic.ttf]{Roboto-Regular.ttf}
% language Japanese
%--------------------------------------
\usepackage{xeCJK}
\setCJKmainfont[ExternalLocation=fonts/NotoSansCJKSC/,
BoldFont = NotoSansCJKsc-Bold.otf]{NotoSansCJKsc-Regular.otf}
%--------------------------------------
% set line height/spacing
\renewcommand{\baselinestretch}{1.5}
\ifthenelse{\equal{\CONFIGLanguage}{DE}}
{
% German hyphenation
\usepackage[ngerman]{babel}
\usepackage{csquotes}
}{}
%--------------------------------------
% Remove indentation
%--------------------------------------
\parindent0pt
%-------------------------------------
% Landscape
%--------------------------------------
\usepackage{pdflscape}
%--------------------------------------
% dictionary
%--------------------------------------
\input{dictionary/dictionary}
%--------------------------------------
% colors
%--------------------------------------
\usepackage[table]{xcolor}
\input{config/colors}
%--------------------------------------
% images
%--------------------------------------
\usepackage{graphicx}
% \input{config/images}
%--------------------------------------
% Tables
%--------------------------------------
\usepackage{longtable}
% alternate rowcolors for all long-tables
\let\oldlongtable\longtable
\let\endoldlongtable\endlongtable
%--------------------------------------
% date
%--------------------------------------
\usepackage[yyyymmdd]{datetime}
% format date
\renewcommand{\dateseparator}{--}
%--------------------------------------
% Header & footer
%--------------------------------------
\usepackage{fancyhdr}
\usepackage{lastpage}
\usepackage{etoolbox}
%--------------------------------------
% Enable linking e.g. for table of contents
%--------------------------------------
\usepackage{hyperref}
\urlstyle{rm}
%--------------------------------------
% Listings - e.g. List of code snippets
%--------------------------------------
\usepackage{listings}
% load style
\input{config/lstdefinestyle}
% init file variables
%\input{config/snippets}
%--------------------------------------
% Abbreviations
%--------------------------------------
\usepackage[printonlyused]{acronym}
%--------------------------------------
% Bibliography/References
%--------------------------------------
\usepackage[
backend=biber,
style=numeric,
sorting=ynt
% citestyle=chicago-authordate
]{biblatex}
% define reference resource
\addbibresource{base/bibliography/references.bib}
%--------------------------------------
% Index
%--------------------------------------
\usepackage{imakeidx}
% uncomment to at numbering
%\indexsetup{level=\chapter}
% Activate index commands
\makeindex
%--------------------------------------
% Appendix
%--------------------------------------
\usepackage{appendix}
\usepackage[german]{minitoc}
\usepackage{titletoc}
%--------------------------------------

View File

@ -0,0 +1,150 @@
% Default code style
\lstset{
frame=single,
captionpos=b,
lineskip=0.5em,
xleftmargin=\parindent,
belowskip=0em
}
\lstdefinestyle{customStyleBashDark}{
language=Bash,
numbers=left,%position of line numbers (left/right/none, i.e. no line numbers)
basicstyle=\footnotesize\ttfamily\color[RGB]{255,255,255},%font size/family/etc. for source (e.g. basicstyle=\ttfamily\small)
numberstyle=\color[RGB]{0,0,0},%style used for line-numbers
backgroundcolor=\color[RGB]{33,36,33},%colour for the background. External color or xcolor package needed.
commentstyle=\itshape\color[RGB]{153,153,153},%style of comments in source language.
keywordstyle=\bfseries\color[RGB]{143,217,68},%style of keywords in source language (e.g. keywordstyle=\color{red})
identifierstyle=\color[RGB]{101,197,222},
stringstyle=\color[RGB]{236,118,0},%style of strings in source language
belowcaptionskip=1\baselineskip,%is the vertical space respectively above or below each caption
breaklines=true,%automatic line-breaking
frame=single,%showing frame outside code (none/leftline/topline/bottomline/lines/single/shadowbox)
xleftmargin=\parindent,
showstringspaces=false,
captionpos=b,%position of caption (t/b)
showspaces=false,%emphasize spaces in code (true/false)
showtabs=false,%emphasize tabulators in code (true/false)
tabsize=4,%default tabsize
lineskip=0.5em,
postbreak=\raisebox{0ex}[0ex][0ex]{\ensuremath{\color{VioletBlue}\hookrightarrow\space}}
}
\lstdefinestyle{customStyleBashLight}{
language=Bash,
numbers=left,%position of line numbers (left/right/none, i.e. no line numbers)
basicstyle=\footnotesize\ttfamily\color[RGB]{0,0,0},%font size/family/etc. for source (e.g. basicstyle=\ttfamily\small)
numberstyle=\color[RGB]{0,0,0},%style used for line-numbers
backgroundcolor=\color[RGB]{255,255,255},%colour for the background. External color or xcolor package needed.
commentstyle=\itshape\color[RGB]{52,121,54},%style of comments in source language.
keywordstyle=\bfseries\color[RGB]{138,18,130},%style of keywords in source language (e.g. keywordstyle=\color{red})
identifierstyle=\color[RGB]{0,0,0},
stringstyle=\color[RGB]{0,0,192},%style of strings in source language
belowcaptionskip=1\baselineskip,%is the vertical space respectively above or below each caption
breaklines=true,%automatic line-breaking
frame=shadowbox,%showing frame outside code (none/leftline/topline/bottomline/lines/single/shadowbox)
rulesepcolor=\color{black},
xleftmargin=\parindent,
showstringspaces=false,
captionpos=b,%position of caption (t/b)
showspaces=false,%emphasize spaces in code (true/false)
showtabs=false,%emphasize tabulators in code (true/false)
tabsize=4,%default tabsize
lineskip=0.5em,
postbreak=\raisebox{0ex}[0ex][0ex]{\ensuremath{\color{VioletBlue}\hookrightarrow\space}}
}
\lstdefinestyle{customStyleJavaDark}{
language=Java,
numbers=left,%position of line numbers (left/right/none, i.e. no line numbers)
basicstyle=\footnotesize\ttfamily\color[RGB]{255,255,255},%font size/family/etc. for source (e.g. basicstyle=\ttfamily\small)
numberstyle=\color[RGB]{0,0,0},%style used for line-numbers
backgroundcolor=\color[RGB]{33,36,33},%colour for the background. External color or xcolor package needed.
commentstyle=\itshape\color[RGB]{153,153,153},%style of comments in source language.
keywordstyle=\bfseries\color[RGB]{143,217,68},%style of keywords in source language (e.g. keywordstyle=\color{red})
identifierstyle=\color[RGB]{101,197,222},
stringstyle=\color[RGB]{236,118,0},%style of strings in source language
belowcaptionskip=1\baselineskip,%is the vertical space respectively above or below each caption
breaklines=true,%automatic line-breaking
frame=single,%showing frame outside code (none/leftline/topline/bottomline/lines/single/shadowbox)
xleftmargin=\parindent,
showstringspaces=false,
captionpos=b,%position of caption (t/b)
showspaces=false,%emphasize spaces in code (true/false)
showtabs=false,%emphasize tabulators in code (true/false)
tabsize=4,%default tabsize
lineskip=0.5em,
postbreak=\raisebox{0ex}[0ex][0ex]{\ensuremath{\color{VioletBlue}\hookrightarrow\space}}
}
\lstdefinestyle{customStyleJavaLight}{
language=Java,
numbers=left,%position of line numbers (left/right/none, i.e. no line numbers)
basicstyle=\footnotesize\ttfamily\color[RGB]{0,0,0},%font size/family/etc. for source (e.g. basicstyle=\ttfamily\small)
numberstyle=\color[RGB]{0,0,0},%style used for line-numbers
backgroundcolor=\color[RGB]{255,255,255},%colour for the background. External color or xcolor package needed.
commentstyle=\itshape\color[RGB]{52,121,54},%style of comments in source language.
keywordstyle=\bfseries\color[RGB]{138,18,130},%style of keywords in source language (e.g. keywordstyle=\color{red})
identifierstyle=\color[RGB]{0,0,0},
stringstyle=\color[RGB]{0,0,192},%style of strings in source language
belowcaptionskip=1\baselineskip,%is the vertical space respectively above or below each caption
breaklines=true,%automatic line-breaking
frame=shadowbox,%showing frame outside code (none/leftline/topline/bottomline/lines/single/shadowbox)
rulesepcolor=\color{black},
xleftmargin=\parindent,
showstringspaces=false,
captionpos=b,%position of caption (t/b)
showspaces=false,%emphasize spaces in code (true/false)
showtabs=false,%emphasize tabulators in code (true/false)
tabsize=4,%default tabsize
lineskip=0.5em,
postbreak=\raisebox{0ex}[0ex][0ex]{\ensuremath{\color{VioletBlue}\hookrightarrow\space}}
}
\lstdefinestyle{customStyleHTMLDark}{
language=HTML,
numbers=left,%position of line numbers (left/right/none, i.e. no line numbers)
basicstyle=\footnotesize\ttfamily\color[RGB]{255,255,255},%font size/family/etc. for source (e.g. basicstyle=\ttfamily\small)
numberstyle=\color[RGB]{0,0,0},%style used for line-numbers
backgroundcolor=\color[RGB]{33,36,33},%colour for the background. External color or xcolor package needed.
commentstyle=\itshape\color[RGB]{153,153,153},%style of comments in source language.
keywordstyle=\bfseries\color[RGB]{143,217,68},%style of keywords in source language (e.g. keywordstyle=\color{red})
identifierstyle=\color[RGB]{101,197,222},
stringstyle=\color[RGB]{236,118,0},%style of strings in source language
belowcaptionskip=1\baselineskip,%is the vertical space respectively above or below each caption
breaklines=true,%automatic line-breaking
frame=single,%showing frame outside code (none/leftline/topline/bottomline/lines/single/shadowbox)
xleftmargin=\parindent,
showstringspaces=false,
captionpos=b,%position of caption (t/b)
showspaces=false,%emphasize spaces in code (true/false)
showtabs=false,%emphasize tabulators in code (true/false)
tabsize=4,%default tabsize
lineskip=0.5em,
usekeywordsintag=false,
postbreak=\raisebox{0ex}[0ex][0ex]{\ensuremath{\color{VioletBlue}\hookrightarrow\space}}
}
\lstdefinestyle{customStyleHTMLLight}{
language=HTML,
numbers=left,%position of line numbers (left/right/none, i.e. no line numbers)
basicstyle=\footnotesize\ttfamily\color[RGB]{0,0,0},%font size/family/etc. for source (e.g. basicstyle=\ttfamily\small)
numberstyle=\color[RGB]{0,0,0},%style used for line-numbers
backgroundcolor=\color[RGB]{255,255,255},%colour for the background. External color or xcolor package needed.
commentstyle=\itshape\color[RGB]{52,121,54},%style of comments in source language.
keywordstyle=\bfseries\color[RGB]{138,18,130},%style of keywords in source language (e.g. keywordstyle=\color{red})
stringstyle=\color[RGB]{0,0,238},%style of strings in source language
belowcaptionskip=1\baselineskip,%is the vertical space respectively above or below each caption
breaklines=true,%automatic line-breaking
frame=shadowbox,%showing frame outside code (none/leftline/topline/bottomline/lines/single/shadowbox)
rulesepcolor=\color{black},
xleftmargin=\parindent,
showstringspaces=false,
captionpos=b,%position of caption (t/b)
showspaces=false,%emphasize spaces in code (true/false)
showtabs=false,%emphasize tabulators in code (true/false)
tabsize=4,%default tabsize
lineskip=0.5em,
usekeywordsintag=false,
postbreak=\raisebox{0ex}[0ex][0ex]{\ensuremath{\color{VioletBlue}\hookrightarrow\space}}
}

View File

@ -0,0 +1,21 @@
\input{contents/EN/introduction/introduction}
\newpage
\input{contents/EN/snippets/snippets}
\newpage
\input{contents/EN/useofabbreviations/useofabbreviations}
\newpage
\input{contents/EN/useofbibliography/useofbibliography}
\newpage
\input{contents/EN/useofindex/useofindex}
\newpage
\input{contents/EN/tables/tables}
\newpage
\input{contents/EN/footnotes/footnotes}
\newpage
\input{contents/EN/japanese/japanese}
\newpage
\input{contents/EN/images/images}
\newpage
\input{contents/EN/landscape/landscape}
\newpage
\input{contents/EN/mathematics/mathematics}

View File

@ -0,0 +1,9 @@
\chapter{Footnotes}
one\footnote{\label{foot-1}Footnote 1.}
two\footnote{\label{foot-2}Footnote 2.}
three\footnote{\label{foot-3}Footnote 3.}
four\textsuperscript{\ref{foot-2}}
\section{Example 1}
test

View File

@ -0,0 +1,18 @@
\chapter{Use of Images}
% Required packages: "graphicx", "float"
% See for more info: https://en.wikibooks.org/wiki/LaTeX/Importing_Graphics
\section{Image Area}\index{Image Area}
\subsection{Example Image 1}
\includegraphics[trim = 10mm 60mm 20mm 5mm, clip, height=\linewidth, angle=90]{\IMGExampleOne}
\captionof{figure}{Example Image 1}
\subsection{Example Image 2}
\includegraphics[width=\linewidth]{\IMGExampleTwo}
\captionof{figure}{Example Image 2}
\label{figure:anime}
You can reference images, for instance, the image \ref{figure:anime} shows
an image from \textit{unsplash}

View File

@ -0,0 +1,37 @@
\chapter{Introduction}
this is the first chapter
\section{section}
This is the first section.
\subsection{Subsection}
normal \emph{italic}, \textbf{bold} and \textbf{\emph{bold italic}}.
ä ö ü ß
% Required packages: "csquotes", (optional) "babel"
% bold
{\textbf{Sample Text 0123}}
\\ % italic
{\textit{Sample Text 0123}}
\\ % small caps
{\textsc{Sample Text 0123}}
\\ % sans serif
{\textsf{Sample Text 0123}}
\\ % tiny
{\tiny{Sample Text 0123}}
\\ % normalsize
{\normalsize{Sample Text 0123}}
\\ % huge
{\huge{Sample Text 0123}}
\\ % hiperlink
{\color{HyperlinkBlue}\url{https://de.sharelatex.com/learn/}}
\\
\\
A \rotatebox{90}{B} C
\\
These are special characters: äöüß

View File

@ -0,0 +1,4 @@
\chapter{Japanese - 日本語}
むかし、むかし、ある所におじいさんとおばあさんが住んでいました。おじいさんは山へしば刈りに、おばあさんは川へ洗濯に行きました。すると大きな桃が流れてきました。
「なんと大きな桃じゃろう!家に持って帰ろう。」とおばあさんは背中に担いで帰って行きました。

View File

@ -0,0 +1,6 @@
% Requierd packages: "pdflscape" alternative: lscape
\begin{landscape}
\chapter{Landscape Area}\index{Landscape Area}
\section{Example 1}
This page is in Landscape mode
\end{landscape}

View File

@ -0,0 +1,30 @@
\chapter{Mathematics Area}\index{Mathematics Area}
\section{Example 1}
The well known Pythagorean theorem \(x^2 + y^2 = z^2\) was
proved to be invalid for other exponents.
Meaning the next equation has no integer solutions:
\[ x^n + y^n = z^n \]
An alternative:
\begin{center}
\begin{math}
7+12+x=10
\end{math}
\end{center}
In physics, the mass-energy equivalence is stated
by the equation $E=mc^2$, discovered in 1905 by Albert Einstein.
The mass-energy equivalence is described by the famous equation
$$E=mc^2$$
discovered in 1905 by Albert Einstein.
In natural units ($c$ = 1), the formula expresses the identity
\begin{equation}
E=m
\end{equation}

View File

@ -0,0 +1,21 @@
\section{Bash Light}
\begin{lstlisting}[language=bash, style=customStyleBashLight, caption=Snippet title]
#!/bin/bash
STRING="HELLO WORLD!!!"
echo $STRING
\end{lstlisting}
\section{Bash Dark}
\begin{lstlisting}[language=bash, style=customStyleBashDark, caption=Snippet title]
#!/bin/bash
STRING="HELLO WORLD!!!"
echo $STRING
\end{lstlisting}
\section{Bash Import}
\lstinputlisting[language=bash, style=customStyleBashDark, caption=Snippet title]{\SNIPPETBash}

View File

@ -0,0 +1,51 @@
\section{HTML Light}
\begin{lstlisting}[language=bash, style=customStyleHTMLLight, caption=Snippet title]
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>GGHTMLCodeExample</title>
<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon">
<script>
var variable = 4;
if(variable != null && variable == 4) {
variable++;
variable += 12 * 4 / 3;
document.write(variable);
}
</script>
</head>
<body>
<div><Example HTML/div>
</body>
</html>
\end{lstlisting}
\section{HTML Dark}
\begin{lstlisting}[language=bash, style=customStyleHTMLDark, caption=Snippet title]
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>GGHTMLCodeExample</title>
<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon">
<script>
var variable = 4;
if(variable != null && variable == 4) {
variable++;
variable += 12 * 4 / 3;
document.write(variable);
}
</script>
</head>
<body>
<div><Example HTML/div>
</body>
</html>
\end{lstlisting}
\section{HTML Import}
\lstinputlisting[language=bash, style=customStyleHTMLDark, caption=Snippet title]{\SNIPPETHTML}

View File

@ -0,0 +1,33 @@
\section{Java Light}
\begin{lstlisting}[language=bash, style=customStyleJavaLight, caption=Snippet title]
/**
* HelloWorld.java
*/
public class HelloWorld
{
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
\end{lstlisting}
\section{Java Dark}
\begin{lstlisting}[language=bash, style=customStyleJavaDark, caption=Snippet title]
/**
* HelloWorld.java
*/
public class HelloWorld
{
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
\end{lstlisting}
\section{Java Import}
\lstinputlisting[language=bash, style=customStyleJavaDark, caption=Snippet title]{\SNIPPETJava}

View File

@ -0,0 +1,7 @@
\chapter{Snippets}
\input{contents/EN/snippets/bash}
\input{contents/EN/snippets/html}
\input{contents/EN/snippets/java}

View File

@ -0,0 +1,109 @@
\chapter{Tables}
% alternate rowcolors for all long-tables
\renewenvironment{longtable}{\rowcolors{2}{LightGray}{white}\oldlongtable} {\endoldlongtable}
\begin{longtable}[l]{| p{40mm} | p{105mm} |}
\hline
\rowcolor{Gray}
\textbf{Term} & \textbf{Description}\\
\hline
\endfirsthead
\hline
\rowcolor{Gray}
\textbf{Term} & \textbf{Description}\\
\hline
\endhead
\hiderowcolors
\endfoot
\caption{Table example}\label{table:kysymys}\\
\endlastfoot
\showrowcolors
Lotsoflines & like this like this like this like this like this like this like this like this like this like this like this like this like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
Lots of lines & like this\\
\hline
\end{longtable}
Table \ref{table:kysymys}

View File

@ -0,0 +1,33 @@
\chapter{Use of Abbreviations}
\ac{KDE} % K Desktop Environment (KDE)
\\
\acs{KDE} % KDE
\\
\acf{KDE} % K Desktop Environment (KDE)
\\
\acl{KDE} % K Desktop Environment
\\
\acp{KDE} % K Desktop Environments (KDEs)
\\
\acsp{KDE} % KDEs
\\
\acfp{KDE} % K Desktop Environments (KDEs)
\\
\aclp{KDE} % K Desktop Environments
\\
\ac{SQL}
\\
\acs{SQL}
\\
\acf{SQL}
\\
\acl{SQL}
\\
\acp{SQL}
\\
\acsp{SQL}
\\
\acfp{SQL}
\\
\aclp{SQL}

View File

@ -0,0 +1,9 @@
\chapter{Use of References}
\cite{exampleArticle} Article
\\
\cite{exampleBook} Book
\\
\cite{exampleManual} Manual
\\
\cite{exampleOnline} Online

View File

@ -0,0 +1,3 @@
\chapter{Use of Index}
\index{test index} Test

View File

@ -0,0 +1,21 @@
\input{contents/ZH/introduction/introduction}
%\newpage
% \input{contents/ZH/snippets/snippets}
% \newpage
% \input{contents/ZH/useofabbreviations/useofabbreviations}
% \newpage
% \input{contents/ZH/useofbibliography/useofbibliography}
% \newpage
% \input{contents/ZH/useofindex/useofindex}
% \newpage
% \input{contents/ZH/tables/tables}
% \newpage
% \input{contents/ZH/footnotes/footnotes}
% \newpage
% \input{contents/ZH/japanese/japanese}
% \newpage
% \input{contents/ZH/images/images}
% \newpage
% \input{contents/ZH/landscape/landscape}
% \newpage
% \input{contents/ZH/mathematics/mathematics}

View File

@ -0,0 +1,36 @@
\chapter{前言}
————“与其相信谣言,不如一起学习”。
\section{常见问题}
\begin{itemize}\setlength{\parindent}{2em}
\item 什么是 CTF我为什么要学
CTF 是网络安全技术人员之间进行技术竞技的一种比赛形式,通过学习,可以在法律允许的范围内,快速地了解和掌握相关安全技术。
\item 阅读本书的预备知识是什么?
本书是为初学者准备的,不要求有预备知识,但如果对 Linux 操作系统,对编程有一定了解,肯定会有帮助。
\item 我可以买到纸质版吗?
抱歉,目前没有。除非对纸质书有偏好,你可以自行打印。否则由于内容整体尚未完成,且更新很快,作者更推荐使用电子版。
\item 本书有PDF/epub/mobi格式的吗
没有 epub/mobi 版本。暂时有 pdf可在 GitBook 页面下载这群人正在努力学习Latex的使用以提供更优雅的排版和PDF文件。
\item 我能打印本书或者作为教材教课吗?
太棒了!必须的!本书使用 Creative Commons license (CC BY-SA 4.0),大可随意使用。作为一个开源项目,我们当然希望更多的人了解并参与进来。
\item 本书为何免费,有何目的?
技术类书籍大多赚不到钱,只是作者的兴趣使然,顺便给自己打个广告。
\item 我还有其他问题。
你也可以选择提交issue到本仓库也可以邮件联系我们。
\end{itemize}

View File

@ -0,0 +1,5 @@
\IfFileExists{contents/\CONFIGLanguage/contents}{
\input{contents/\CONFIGLanguage/contents}
}{false-branch
Content: UNSUPPORTED LANGUAGE ,,\CONFIGLanguage ``
}

19
tex/dictionary/EN.tex Normal file
View File

@ -0,0 +1,19 @@
% Global definitions
\def\DICTDocDate{\today}
\def\DICTTableOfContents{Table of Contents}
\def\DICTListOfFigures{List of Figures}
\def\DICTFigureName{Figure}
\def\DICTListOfTables{List of Tables}
\def\DICTTableName{Table}
\def\DICTListOfCodeSnippets{List of Code Snippets}
\def\DICTListingName{Code Snippet}
\def\DICTAbbreviations{List of Abbreviations}
\def\DICTAppendix{Appendix}
\def\DICTTableOfAppendix{Table of Appendix}
\def\DICTReferences{References}
\def\DICTIndex{Index}
% Dict
\def\DICTDocTitle{CTF ALL IN ONE}
\def\DICTDocAuthor{firmianay | Skyel1u | phantom0301}
\def\DICTDocEmail{https://github.com/firmianay/CTF-All-In-One}

19
tex/dictionary/ZH.tex Normal file
View File

@ -0,0 +1,19 @@
% Global definitions
\def\DICTDocDate{\today}
\def\DICTTableOfContents{目录}
\def\DICTListOfFigures{图片列表}
\def\DICTFigureName{图片}
\def\DICTListOfTables{表格列表}
\def\DICTTableName{列表}
\def\DICTListOfCodeSnippets{代码片段列表}
\def\DICTListingName{代码片段}
\def\DICTAbbreviations{缩略短语表}
\def\DICTAppendix{附录}
\def\DICTTableOfAppendix{附录表}
\def\DICTReferences{引用}
\def\DICTIndex{索引}
% Dict
\def\DICTDocTitle{CTF 从入门到放弃}
\def\DICTDocAuthor{ Firmianay | Phantom0301 | Skyel1u}
\def\DICTDocEmail{https://github.com/firmianay/CTF-All-In-One}

View File

@ -0,0 +1,5 @@
\IfFileExists{dictionary/\CONFIGLanguage}{
\input{dictionary/\CONFIGLanguage}
}{
Dictionary: UNSUPPORTED LANGUAGE ,,\CONFIGLanguage ``
}

3
tex/emptypage.tex Normal file
View File

@ -0,0 +1,3 @@
\newpage
\thispagestyle{empty}
\mbox{}

View File

View File

View File

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

175
tex/main.tex Normal file
View File

@ -0,0 +1,175 @@
% The main document in ShareLaTeX is the file which LATEX will be told to compile first. It is the main file of the project, which all other parts (classes, packages, chapters etc.) will be inputted into. By default in ShareLaTeX, the main document will be set to be the document in the project which begins with the \documentclass[...]{...} command.
\documentclass[
a4paper, % a4 size 210x297 mm
12pt,
openany, % required to remove empty page after chapter
oneside % oneside or twoside
]{scrbook}
% initialize basic settings
\input{config/config}
% being document
\begin{document}
%required for appendix
\dominitoc
% adds only page number to page
\pagestyle{plain}
% change page numbering to arabic and start by page 1
\pagenumbering{Roman}
% Title page
%--------------------------------------
\ifthenelse{\equal{\CONFIGEnableTitlePage}{true}}
{
\input{base/titlepage/titlepage}
\setcounter{page}{2}
}{}
%--------------------------------------
% Second page with disclaimer and copyright
%--------------------------------------
% remove page number on this page
\ifthenelse{\equal{\CONFIGEnableDisclaimer}{true}}
{
\thispagestyle{empty}
}{
\ifthenelse{\equal{\CONFIGEnableCopyright}{true}}
{
\thispagestyle{empty}
}{}
}
\ifthenelse{\equal{\CONFIGEnableDisclaimer}{true}}
{
\input{base/disclaimer/disclaimer}
}{}
\ifthenelse{\equal{\CONFIGEnableDisclaimer}{true}}
{
\vfill
}{
\ifthenelse{\equal{\CONFIGEnableCopyright}{true}}
{
\phantom{}
\vfill
}{}
}
\ifthenelse{\equal{\CONFIGEnableCopyright}{true}}
{
\input{base/copyright/copyright}
}{}
\ifthenelse{\equal{\CONFIGEnableDisclaimer}{true}}
{
\newpage
}{
\ifthenelse{\equal{\CONFIGEnableCopyright}{true}}
{
\newpage
}{}
}
%--------------------------------------
% Table of contents
%-------------------------------------
\ifthenelse{\equal{\CONFIGEnableTableOfContents}{true}}
{
%\pagestyle{empty}
\input{base/tableofcontents/tableofcontents}
\newpage
}{}
%--------------------------------------
% List of Figures
%--------------------------------------
\ifthenelse{\equal{\CONFIGEnableListOfFigures}{true}}
{
\input{base/listoffigures/listoffigures}
\newpage
}{}
%--------------------------------------
% List of Tables
%--------------------------------------
\ifthenelse{\equal{\CONFIGEnableListOfTables}{true}}
{
\input{base/listoftables/listoftables}
\newpage
}{}
%--------------------------------------
% List of Listings
%--------------------------------------
\ifthenelse{\equal{\CONFIGEnableListOfSnippets}{true}}
{
\input{base/lstlistoflistings/lstlistoflistings}
\newpage
}{}
%--------------------------------------
% List of Abbreviations
%--------------------------------------
\ifthenelse{\equal{\CONFIGEnableListOfAbbreviations}{true}}
{
\input{base/abbreviations/abbreviations}
\newpage
}{}
%--------------------------------------
% change page numbering to arabic and start by page 1
\pagenumbering{arabic}
% Header & footer
%--------------------------------------
\input{base/headerfooter/headerfooter}
%--------------------------------------
% Content
%--------------------------------------
\input{contents/contents}
%--------------------------------------
% Appendix
%--------------------------------------
\ifthenelse{\equal{\CONFIGEnableAppendix}{true}}
{
\input{base/appendix/appendix}
\ifthenelse{\equal{\CONFIGEnableReferences}{true}}
{
\newpage
}{
\ifthenelse{\equal{\CONFIGEnableIndex}{true}}
{
\newpage
}{}
}
}{}
%--------------------------------------
% References
%-------------------------------------
\ifthenelse{\equal{\CONFIGEnableReferences}{true}}
{
\input{base/bibliography/bibliography}
\ifthenelse{\equal{\CONFIGEnableIndex}{true}}
{
\newpage
}{}
}{}
%--------------------------------------
% Index
%--------------------------------------
\ifthenelse{\equal{\CONFIGEnableIndex}{true}}
{
\input{base/index/index}
}{}
%--------------------------------------
\end{document}