all: add monografia base
Pedro Lucas Porcellis porcellis@eletrotupi.com · 5 months ago
ed726136fa378111ee66403cff68c2c912ac700e Browse filesParents
c6d61c3Changed files
9
Additions
+2431
Deletions
0
/dev/null → monografia/Makefile
1 +
JOBNAME = monografia
2 +
LATEX = pdflatex
3 +
BIBTEX = bibtex
4 +
FLAGS = -interaction=nonstopmode -halt-on-error
5 +
6 +
.PHONY: all clean distclean
7 +
8 +
all: $(JOBNAME).pdf
9 +
10 +
# Full build: tex → bibtex → tex → tex
11 +
$(JOBNAME).pdf: $(JOBNAME).tex $(JOBNAME).bib
12 +
$(LATEX) $(FLAGS) $(JOBNAME)
13 +
$(BIBTEX) $(JOBNAME)
14 +
$(LATEX) $(FLAGS) $(JOBNAME)
15 +
$(LATEX) $(FLAGS) $(JOBNAME)
16 +
17 +
clean:
18 +
rm -f $(JOBNAME).aux \
19 +
$(JOBNAME).bbl \
20 +
$(JOBNAME).blg \
21 +
$(JOBNAME).log \
22 +
$(JOBNAME).out \
23 +
$(JOBNAME).toc \
24 +
$(JOBNAME).lof \
25 +
$(JOBNAME).lot \
26 +
$(JOBNAME).lol
27 +
28 +
distclean: clean
29 +
rm -f $(JOBNAME).pdf
30 +
/dev/null → monografia/abnt.bst
1 +
%==============================================================================
2 +
% abnt.bst
3 +
% Estilo BibTeX de formatação de referências bibliográficas no padrão ABNT
4 +
%
5 +
% UFRGS TeX Users Group
6 +
% Informatics Institute --- UFRGS
7 +
% Porto Alegre, Brazil
8 +
% http://www.inf.ufrgs.br/utug
9 +
% Discussion list: utug-l@inf.ufrgs.br
10 +
%
11 +
% $Id: abnt.bst,v 5.6 2003/03/03 00:17:46 avila Exp $
12 +
%
13 +
% Copyright (C) 2001-2002 UFRGS TeX Users Group
14 +
%
15 +
% This program is free software; you can redistribute it and/or modify
16 +
% it under the terms of the GNU General Public License as published by
17 +
% the Free Software Foundation; either version 2 of the License, or
18 +
% (at your option) any later version.
19 +
%
20 +
% This program is distributed in the hope that it will be useful,
21 +
% but WITHOUT ANY WARRANTY; without even the implied warranty of
22 +
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 +
% GNU General Public License for more details.
24 +
%
25 +
% You should have received a copy of the GNU General Public License
26 +
% along with this program; if not, write to the Free Software
27 +
% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
28 +
%==============================================================================
29 +
30 +
%==============================================================================
31 +
% Definição dos campos das entradas
32 +
%==============================================================================
33 +
ENTRY
34 +
{
35 +
author
36 +
editor
37 +
title
38 +
booktitle
39 +
chapter
40 +
pages
41 +
address
42 +
publisher
43 +
year
44 +
journal
45 +
month
46 +
number
47 +
edition
48 +
howpublished
49 +
institution
50 +
key
51 +
note
52 +
organization
53 +
school
54 +
series
55 +
type
56 +
volume
57 +
url
58 +
urldate
59 +
}
60 +
{}
61 +
{
62 +
label
63 +
year.char
64 +
}
65 +
66 +
INTEGERS {i j n}
67 +
STRINGS {s t last.label last.year.char current.letter names new.pages}
68 +
69 +
%==============================================================================
70 +
% Definicao dos nomes dos meses
71 +
%==============================================================================
72 +
MACRO {jan} {"Jan."}
73 +
MACRO {feb} {"Feb."}
74 +
MACRO {mar} {"Mar."}
75 +
MACRO {apr} {"Apr."}
76 +
MACRO {may} {"May"}
77 +
MACRO {jun} {"June"}
78 +
MACRO {jul} {"July"}
79 +
MACRO {aug} {"Aug."}
80 +
MACRO {sep} {"Sept."}
81 +
MACRO {oct} {"Oct."}
82 +
MACRO {nov} {"Nov."}
83 +
MACRO {dec} {"Dec."}
84 +
85 +
%==============================================================================
86 +
% Definicao de strings usados na elaboracao das referencias
87 +
%==============================================================================
88 +
FUNCTION {str:mastersthesis} {"Disserta{\c{c}}{\~a}o (Mestrado em Ci{\^e}ncia da Computa{\c{c}}{\~a}o)"}
89 +
FUNCTION {str:phdthesis} {"Tese (Doutorado em Ci{\^e}ncia da Computa{\c{c}}{\~a}o)"}
90 +
FUNCTION {str:chapter} {"Cap."}
91 +
92 +
%==============================================================================
93 +
% Definicao das abreviaturas padrao
94 +
%==============================================================================
95 +
MACRO {acmcs} {"ACM Computing Surveys"}
96 +
MACRO {acta} {"Acta Informatica"}
97 +
MACRO {cacm} {"Communications of the ACM"}
98 +
MACRO {ibmjrd} {"IBM Journal of Research and Development"}
99 +
MACRO {ibmsj} {"IBM Systems Journal"}
100 +
MACRO {ieeese} {"IEEE Transactions on Software Engineering"}
101 +
MACRO {ieeetc} {"IEEE Transactions on Computers"}
102 +
MACRO {ieeetcad}
103 +
{"IEEE Transactions on Computer-Aided Design of Integrated Circuits"}
104 +
MACRO {ipl} {"Information Processing Letters"}
105 +
MACRO {jacm} {"Journal of the ACM"}
106 +
MACRO {jcss} {"Journal of Computer and System Sciences"}
107 +
MACRO {scp} {"Science of Computer Programming"}
108 +
MACRO {sicomp} {"SIAM Journal on Computing"}
109 +
MACRO {tocs} {"ACM Transactions on Computer Systems"}
110 +
MACRO {tods} {"ACM Transactions on Database Systems"}
111 +
MACRO {tog} {"ACM Transactions on Graphics"}
112 +
MACRO {toms} {"ACM Transactions on Mathematical Software"}
113 +
MACRO {toois} {"ACM Transactions on Office Information Systems"}
114 +
MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"}
115 +
MACRO {tcs} {"Theoretical Computer Science"}
116 +
117 +
%==============================================================================
118 +
% Exibe warning quando um campo ``required'' esta' faltando. Recebe na pilha o
119 +
% tipo do campo.
120 +
%==============================================================================
121 +
FUNCTION {show.missing.field.warning}
122 +
{
123 +
"Falta o campo " swap$ " em " cite$ * * * warning$
124 +
}
125 +
126 +
%==============================================================================
127 +
% Funcoes logicas
128 +
%==============================================================================
129 +
FUNCTION {not}
130 +
{
131 +
{ #0 }
132 +
{ #1 }
133 +
if$
134 +
}
135 +
136 +
FUNCTION {and}
137 +
{
138 +
'skip$
139 +
{ pop$ #0 }
140 +
if$
141 +
}
142 +
143 +
FUNCTION {or}
144 +
{
145 +
{ pop$ #1 }
146 +
'skip$
147 +
if$
148 +
}
149 +
150 +
FUNCTION {is.numeric.char}
151 +
{
152 +
#1 #1 substring$
153 +
duplicate$ "" =
154 +
{pop$ #0}
155 +
{
156 +
duplicate$ chr.to.int$ #47 >
157 +
swap$ chr.to.int$ #58 <
158 +
and
159 +
}
160 +
if$
161 +
}
162 +
163 +
FUNCTION {is.uppercase.char}
164 +
{
165 +
#1 #1 substring$
166 +
duplicate$ "" =
167 +
{pop$ #0}
168 +
{
169 +
duplicate$ chr.to.int$ #64 >
170 +
swap$ chr.to.int$ #91 <
171 +
and
172 +
}
173 +
if$
174 +
}
175 +
176 +
%==============================================================================
177 +
% Escreve no arquivo o comando que gera o item
178 +
%
179 +
% Parm:
180 +
% um string com a formatacao do item
181 +
%==============================================================================
182 +
FUNCTION {write.item}
183 +
{
184 +
"\bibitem[" label * "]{" * cite$ * "} " *
185 +
swap$ *
186 +
write$ newline$ newline$
187 +
}
188 +
189 +
%==============================================================================
190 +
% Separa o titulo em titulo e sub-titulo, empilhando o sub-titulo e o titulo,
191 +
% nessa ordem
192 +
%
193 +
% Parm:
194 +
% o titulo
195 +
%==============================================================================
196 +
FUNCTION {extract.subtitle}
197 +
{
198 +
#1 'i :=
199 +
200 +
duplicate$
201 +
i #1 substring$
202 +
{
203 +
duplicate$ ":" = not
204 +
swap$ "" = not
205 +
and
206 +
}
207 +
{
208 +
#1 i + 'i :=
209 +
duplicate$
210 +
i #1 substring$
211 +
} while$
212 +
213 +
duplicate$ i #999 substring$
214 +
swap$
215 +
#1 i #1 - substring$
216 +
}
217 +
218 +
%==============================================================================
219 +
% Separa a primeira palavra do texto, empilhando o resto e a palavra, nessa
220 +
% ordem
221 +
%
222 +
% Parm:
223 +
% o texto
224 +
%==============================================================================
225 +
FUNCTION {extract.first.word}
226 +
{
227 +
#1 'i :=
228 +
229 +
duplicate$
230 +
i #1 substring$
231 +
{
232 +
duplicate$ " " = not
233 +
swap$ "" = not
234 +
and
235 +
}
236 +
{
237 +
#1 i + 'i :=
238 +
duplicate$
239 +
i #1 substring$
240 +
} while$
241 +
242 +
duplicate$ i #999 substring$
243 +
swap$
244 +
#1 i #1 - substring$
245 +
}
246 +
247 +
%==============================================================================
248 +
% Enfatiza um string
249 +
%
250 +
% Parm:
251 +
% o string
252 +
%==============================================================================
253 +
FUNCTION {emphasize}
254 +
{
255 +
"\textbf{" swap$ * "}" *
256 +
}
257 +
258 +
%==============================================================================
259 +
% Adiciona um texto (se nao-empty$) ja' formatado ao item, separando-o por
260 +
% ponto.
261 +
% Ex.: NOME. Titulo. data. ano.
262 +
%
263 +
% Parm:
264 +
% um string representando o item (pode ser vazio, para iniciar o item)
265 +
% o texto a ser adicionado
266 +
%==============================================================================
267 +
FUNCTION {add.to.item}
268 +
{
269 +
duplicate$ empty$
270 +
'pop$
271 +
{
272 +
swap$
273 +
duplicate$ empty$
274 +
'skip$
275 +
{" " *}
276 +
if$
277 +
swap$ add.period$ *
278 +
}
279 +
if$
280 +
}
281 +
282 +
%==============================================================================
283 +
% Adiciona um item (se nao-empty$) a uma lista do tipo "a, b, c, ..."
284 +
%
285 +
% Parm:
286 +
% um string representando a lista (pode ser vazio, para criar uma lista)
287 +
% o item a ser adicionado
288 +
%==============================================================================
289 +
FUNCTION {add.to.list}
290 +
{
291 +
duplicate$ empty$
292 +
'pop$
293 +
{
294 +
swap$
295 +
duplicate$ empty$
296 +
'skip$
297 +
{", " *}
298 +
if$
299 +
swap$ *
300 +
}
301 +
if$
302 +
}
303 +
304 +
%==============================================================================
305 +
% Adiciona um nome a uma lista de nomes (separados por ponto-e-virgula)
306 +
%
307 +
% Parm:
308 +
% um string representando a lista (pode ser vazio, para criar uma lista)
309 +
% o nome a ser adicionado
310 +
%==============================================================================
311 +
FUNCTION {add.to.namelist}
312 +
{
313 +
swap$
314 +
duplicate$ empty$
315 +
'skip$
316 +
{"; " *}
317 +
if$
318 +
swap$ *
319 +
}
320 +
321 +
%==============================================================================
322 +
% Formata uma lista de nomes.
323 +
%
324 +
% Parm:
325 +
% os nomes a serem formatados
326 +
%==============================================================================
327 +
FUNCTION {format.names}
328 +
{
329 +
duplicate$ num.names$ 'n :=
330 +
#1 'i :=
331 +
"" 'names :=
332 +
333 +
{i n #1 + <}
334 +
{
335 +
duplicate$ duplicate$ i "{ll}{~jj}" format.name$
336 +
duplicate$ "others" =
337 +
n #4 >
338 +
i #2 =
339 +
and
340 +
or
341 +
{
342 +
pop$ pop$ names " et~al." *
343 +
n 'i :=
344 +
}{
345 +
"u" change.case$ swap$
346 +
i "{, ff}{~vv}" format.name$ *
347 +
names swap$ add.to.namelist
348 +
} if$ 'names :=
349 +
#1 i + 'i :=
350 +
} while$
351 +
pop$
352 +
names
353 +
duplicate$ #-1 #1 substring$ "." = {
354 +
#-2 global.max$ substring$
355 +
"\@." *
356 +
}
357 +
'skip$
358 +
if$
359 +
}
360 +
361 +
%==============================================================================
362 +
% Formata uma lista de sobrenomes.
363 +
%
364 +
% Parm:
365 +
% os nomes a serem formatados
366 +
%==============================================================================
367 +
FUNCTION {format.family.names}
368 +
{
369 +
duplicate$ num.names$ 'n :=
370 +
#1 'i :=
371 +
"" 'names :=
372 +
373 +
{i n #1 + <}
374 +
{
375 +
duplicate$ i "{ll}{~jj}" format.name$
376 +
duplicate$ "others" =
377 +
n #3 >
378 +
i #2 =
379 +
and
380 +
or
381 +
{
382 +
pop$ names " et~al." *
383 +
n 'i :=
384 +
}{
385 +
"u" change.case$
386 +
names swap$ add.to.namelist
387 +
} if$ 'names :=
388 +
#1 i + 'i :=
389 +
} while$
390 +
pop$
391 +
names
392 +
}
393 +
394 +
%==============================================================================
395 +
% Formata uma lista de sobrenomes com todos os autores.
396 +
%
397 +
% Parm:
398 +
% os nomes a serem formatados
399 +
%==============================================================================
400 +
FUNCTION {format.family.names.all}
401 +
{
402 +
duplicate$ num.names$ 'n :=
403 +
#1 'i :=
404 +
"" 'names :=
405 +
406 +
{i n #1 + <}
407 +
{
408 +
duplicate$ i "{ll}{~jj}" format.name$
409 +
duplicate$ "others" =
410 +
{
411 +
pop$ names " et~al." *
412 +
n 'i :=
413 +
}{
414 +
"u" change.case$
415 +
names swap$ add.to.namelist
416 +
} if$ 'names :=
417 +
#1 i + 'i :=
418 +
} while$
419 +
pop$
420 +
names
421 +
}
422 +
423 +
%==============================================================================
424 +
% Formata um titulo (pode ser `title' ou `booktitle')
425 +
%
426 +
% Parm:
427 +
% um valor (0 ou 1) que indica se a formatacao deve ser enfatizada ou nao
428 +
% um string com o titulo a ser formatado
429 +
%==============================================================================
430 +
FUNCTION {format.title}
431 +
{
432 +
swap$ {
433 +
extract.subtitle emphasize swap$ *
434 +
}{
435 +
skip$
436 +
} if$
437 +
}
438 +
439 +
%==============================================================================
440 +
% Retorna a indicacao de paginas ajustada para ter dois tracos (`--') se a
441 +
% entrada so' tiver um.
442 +
%==============================================================================
443 +
FUNCTION {get.adjusted.pages}
444 +
{
445 +
#1 'i :=
446 +
"" 'new.pages :=
447 +
pages #1 #1 substring$
448 +
{duplicate$ "" = not}
449 +
{
450 +
duplicate$ "-" =
451 +
pages i #1 - #1 substring$ "-" = not
452 +
and
453 +
pages i #1 + #1 substring$ "-" = not
454 +
and
455 +
{"-" *}
456 +
'skip$
457 +
if$
458 +
new.pages swap$ * 'new.pages :=
459 +
#1 i + 'i :=
460 +
pages i #1 substring$
461 +
} while$
462 +
pop$
463 +
new.pages
464 +
}
465 +
466 +
%==============================================================================
467 +
% Coloca a primeira palavra do titulo em letras maiusculas e o resto em
468 +
% minusculas. Esta funcao e' usada para gerar referencias cuja entrada e' pelo
469 +
% titulo.
470 +
%==============================================================================
471 +
FUNCTION {format.entrytitle}
472 +
{
473 +
#0 title format.title
474 +
extract.first.word "u" change.case$
475 +
swap$ *
476 +
}
477 +
478 +
%==============================================================================
479 +
% Converte a edicao literal ("First", "Second", etc., que é o padrão indicado
480 +
% no manual do BibTeX) para o algarismo correspondente. Recebe na pilha o
481 +
% string e devolve o numero.
482 +
%==============================================================================
483 +
FUNCTION {convert.to.number}
484 +
{
485 +
duplicate$ "First" =
486 +
{pop$ "1"}
487 +
{duplicate$ "Second" =
488 +
{pop$ "2"}
489 +
{duplicate$ "Third" =
490 +
{pop$ "3"}
491 +
{duplicate$ "Fourth" =
492 +
{pop$ "4"}
493 +
{duplicate$ "Fifth" =
494 +
{pop$ "5"}
495 +
{duplicate$ "Sixth" =
496 +
{pop$ "6"}
497 +
{duplicate$ "Seventh" =
498 +
{pop$ "7"}
499 +
{duplicate$ "Eighth" =
500 +
{pop$ "8"}
501 +
{duplicate$ "Ninth" =
502 +
{pop$ "9"}
503 +
{duplicate$ "Tenth" =
504 +
{pop$ "10"}
505 +
{skip$
506 +
} if$
507 +
} if$
508 +
} if$
509 +
} if$
510 +
} if$
511 +
} if$
512 +
} if$
513 +
} if$
514 +
} if$
515 +
} if$
516 +
}
517 +
518 +
%=========================================================================
519 +
% Formatacao dos campos. Se o campo nao existir a funcao devolve um string
520 +
% vazio.
521 +
%==============================================================================
522 +
FUNCTION {format.author}
523 +
{
524 +
author empty$
525 +
{""}
526 +
{author format.names}
527 +
if$
528 +
}
529 +
530 +
FUNCTION {format.editor}
531 +
{
532 +
editor empty$
533 +
{""}
534 +
{editor format.names "~(Ed.)" *}
535 +
if$
536 +
}
537 +
538 +
FUNCTION {format.edition}
539 +
{
540 +
edition empty$
541 +
{""}
542 +
{edition convert.to.number ".ed." *}
543 +
if$
544 +
}
545 +
546 +
FUNCTION {format.volume}
547 +
{
548 +
volume empty$
549 +
{""}
550 +
{"v." volume *}
551 +
if$
552 +
}
553 +
554 +
FUNCTION {format.number}
555 +
{
556 +
number empty$
557 +
{""}
558 +
{"n." number *}
559 +
if$
560 +
}
561 +
562 +
FUNCTION {format.month}
563 +
{
564 +
month empty$
565 +
{""}
566 +
{month}
567 +
if$
568 +
}
569 +
570 +
FUNCTION {format.address}
571 +
{
572 +
address empty$
573 +
{""}
574 +
{address}
575 +
if$
576 +
}
577 +
578 +
FUNCTION {format.publisher}
579 +
{
580 +
type$ "mastersthesis" =
581 +
type$ "phdthesis" =
582 +
or
583 +
{
584 +
school empty$
585 +
{""}
586 +
{school}
587 +
if$
588 +
}{
589 +
type$ "techreport" =
590 +
{
591 +
institution empty$
592 +
{""}
593 +
{institution}
594 +
if$
595 +
}{
596 +
publisher empty$
597 +
{""}
598 +
{publisher}
599 +
if$
600 +
} if$
601 +
} if$
602 +
}
603 +
604 +
FUNCTION {format.year}
605 +
{
606 +
year empty$
607 +
{""}
608 +
{year}
609 +
if$
610 +
}
611 +
612 +
FUNCTION {format.chapter}
613 +
{
614 +
chapter empty$
615 +
{""}
616 +
{
617 +
type empty$
618 +
{str:chapter}
619 +
{type "~" *}
620 +
if$
621 +
chapter *
622 +
}
623 +
if$
624 +
}
625 +
626 +
FUNCTION {format.pages}
627 +
{
628 +
pages empty$
629 +
{""}
630 +
{"p." get.adjusted.pages *}
631 +
if$
632 +
}
633 +
634 +
FUNCTION {format.totalpages}
635 +
{
636 +
pages empty$
637 +
{""}
638 +
{pages "p." *}
639 +
if$
640 +
}
641 +
642 +
FUNCTION {format.note}
643 +
{
644 +
note empty$
645 +
{""}
646 +
{note}
647 +
if$
648 +
}
649 +
650 +
FUNCTION {format.month.year}
651 +
{
652 +
month empty$
653 +
{year}
654 +
{month "~" * year *}
655 +
if$
656 +
}
657 +
658 +
FUNCTION {format.type}
659 +
{
660 +
type empty$
661 +
'skip$
662 +
{pop$ type}
663 +
if$
664 +
}
665 +
666 +
FUNCTION {format.howpublished}
667 +
{
668 +
howpublished empty$
669 +
{""}
670 +
{howpublished}
671 +
if$
672 +
}
673 +
674 +
FUNCTION {format.series}
675 +
{
676 +
series empty$
677 +
{""}
678 +
{series}
679 +
if$
680 +
}
681 +
682 +
FUNCTION {format.parenthised.number}
683 +
{
684 +
number empty$ {
685 +
""
686 +
}{
687 +
"(" number * ")" *
688 +
} if$
689 +
}
690 +
691 +
%==============================================================================
692 +
% As seguintes funcoes adicionam um item a uma lista passada na pilha.
693 +
%==============================================================================
694 +
FUNCTION {add.address} {format.address add.to.list}
695 +
FUNCTION {add.publisher} {format.publisher add.to.list}
696 +
FUNCTION {add.year} {format.year add.to.list}
697 +
FUNCTION {add.chapter} {format.chapter add.to.list}
698 +
FUNCTION {add.edition} {format.edition add.to.list}
699 +
FUNCTION {add.volume} {format.volume add.to.list}
700 +
FUNCTION {add.number} {format.number add.to.list}
701 +
FUNCTION {add.month} {format.month add.to.list}
702 +
FUNCTION {add.totalpages} {format.totalpages add.to.list}
703 +
FUNCTION {add.pages} {format.pages add.to.list}
704 +
FUNCTION {add.note} {format.note add.to.list}
705 +
FUNCTION {add.month.year} {format.month.year add.to.list}
706 +
FUNCTION {add.howpublished} {format.howpublished add.to.list}
707 +
708 +
FUNCTION {format.urldate} {
709 +
urldate empty$
710 +
{""}
711 +
{"Acesso em: " urldate *}
712 +
if$
713 +
}
714 +
715 +
FUNCTION {format.url} {
716 +
url empty$
717 +
{""}
718 +
{"Dispon{\'\i}vel em: <" url * ">" *}
719 +
if$
720 +
}
721 +
722 +
723 +
%==============================================================================
724 +
% Converte virgula para dois-pontos; usado na formatacao do publisher de
725 +
% proceedings e inproceedings, que normalmente levam tambem o local de publi-
726 +
% cao; no padrao ABNT essa separacao deve ser por dois-pontos.
727 +
% Recebe o string original e devolve o novo.
728 +
%==============================================================================
729 +
FUNCTION {comma.to.colon}
730 +
{
731 +
's :=
732 +
"" 't :=
733 +
#1 'i :=
734 +
{s i #1 substring$ "" = not}
735 +
{
736 +
s i #1 substring$ duplicate$ "," =
737 +
{pop$ t ":" * 't :=}
738 +
{t swap$ * 't :=}
739 +
if$
740 +
i #1 + 'i :=
741 +
} while$
742 +
t
743 +
}
744 +
745 +
%
746 +
% localiza a posicao do primeiro caractere maiusculo
747 +
% recebe o string, devolve a posicao
748 +
%
749 +
FUNCTION {find.first.uppercase.char}
750 +
{
751 +
's :=
752 +
#1 'j :=
753 +
#1 'i :=
754 +
{
755 +
s i #1 substring$ 't :=
756 +
t "" = not
757 +
t is.uppercase.char not
758 +
and
759 +
}
760 +
{
761 +
i #1 + 'i :=
762 +
t "\" = not
763 +
t "{" = not
764 +
and
765 +
t "}" = not
766 +
and
767 +
{i 'j :=}
768 +
'skip$
769 +
if$
770 +
} while$
771 +
t "" =
772 +
{#1}
773 +
{j}
774 +
if$
775 +
}
776 +
777 +
%
778 +
% extrai o primeiro numero que aparece no string passado na pilha,
779 +
% retornando-o; se nao ha' numero, retorna ""
780 +
%
781 +
FUNCTION {extract.first.number}
782 +
{
783 +
's :=
784 +
"" 't :=
785 +
#1 'i :=
786 +
{
787 +
s i #1 substring$
788 +
duplicate$ is.numeric.char not
789 +
swap$ "" = not
790 +
and
791 +
}
792 +
{
793 +
i #1 + 'i :=
794 +
} while$
795 +
{s i #1 substring$ is.numeric.char}
796 +
{
797 +
t s i #1 substring$ * 't :=
798 +
i #1 + 'i :=
799 +
} while$
800 +
t
801 +
}
802 +
803 +
%
804 +
% divide um string em dois
805 +
% recebe o string e a posicao
806 +
% devolve a primeira e a segunda parte
807 +
FUNCTION {split.string}
808 +
{
809 +
swap$ 's :=
810 +
duplicate$
811 +
s swap$ #1 swap$ #1 - substring$
812 +
swap$ s swap$ global.max$ substring$
813 +
}
814 +
815 +
%
816 +
% recebe o titulo original e devolve, na ordem, o tipo de proceedings e o
817 +
% restante do titulo
818 +
%
819 +
FUNCTION {extract.proceedings.type}
820 +
{
821 +
's :=
822 +
type empty$ not
823 +
{type s}
824 +
{"dummy"
825 +
pop$ s #1 #11 substring$ duplicate$ "Proceedings" =
826 +
{s #12 global.max$ substring$}{
827 +
pop$ s #1 #5 substring$ duplicate$ "Proc." =
828 +
{pop$ "Proceedings" s #6 global.max$ substring$}{
829 +
pop$ s #1 #22 substring$ duplicate$ "Conference Proceedings" =
830 +
{pop$ "Proceedings" s #23 global.max$ substring$}{
831 +
pop$ s #1 #6 substring$ duplicate$ "Annals" =
832 +
{s #7 global.max$ substring$}{
833 +
pop$ s #1 #5 substring$ duplicate$ "Actas" =
834 +
{s #6 global.max$ substring$}{
835 +
pop$ s #1 #5 substring$ duplicate$ "Anais" =
836 +
{s #6 global.max$ substring$}{
837 +
pop$ s #1 #6 substring$ duplicate$ "Anales" =
838 +
{s #7 global.max$ substring$}{
839 +
pop$ s #1 #8 substring$ duplicate$ "Memorias" =
840 +
{s #9 global.max$ substring$}{
841 +
pop$ s #1 #22 substring$ duplicate$ "Trabajos Seleccionados" =
842 +
{s #23 global.max$ substring$}{
843 +
pop$ s #1 #11 substring$ duplicate$ "Tagungsband" =
844 +
{s #12 global.max$ substring$}
845 +
{pop$ "Proceedings" s} if$
846 +
} if$
847 +
} if$
848 +
} if$
849 +
} if$
850 +
} if$
851 +
} if$
852 +
} if$
853 +
} if$
854 +
} if$
855 +
} if$
856 +
}
857 +
858 +
%==============================================================================
859 +
% Converte um booktitle do tipo "Proc. of XXX" no padrao ABNT
860 +
% Recebe na pilha o titulo original
861 +
% Devolve na pilha, na ordem:
862 +
% - o tipo de publicacao
863 +
% - o titulo ja' formatado (em maiusculas e com a edicao)
864 +
%==============================================================================
865 +
FUNCTION {process.proceedings.booktitle}
866 +
{
867 +
extract.proceedings.type
868 +
duplicate$ find.first.uppercase.char split.string "u" change.case$
869 +
swap$ extract.first.number
870 +
duplicate$ empty$
871 +
'pop$
872 +
{", " swap$ * * "." *}
873 +
if$
874 +
}
875 +
876 +
%==============================================================================
877 +
% Estas funcoes formatam partes comuns a varios tipos de referencia.
878 +
%==============================================================================
879 +
FUNCTION {format.publication}
880 +
{
881 +
""
882 +
address empty$
883 +
{
884 +
"[S.l."
885 +
format.publisher empty$
886 +
{":~s.n.]" *}
887 +
{"]: " format.publisher * *}
888 +
if$ add.year add.to.item
889 +
}
890 +
{
891 +
format.address
892 +
format.publisher empty$
893 +
{": [s.n.]" *}
894 +
{": " format.publisher * *}
895 +
if$ add.year add.to.item
896 +
}
897 +
if$
898 +
}
899 +
900 +
FUNCTION {format.proceedings.publication}
901 +
{
902 +
publisher empty$
903 +
{"[S.l.:~s.n.]"}
904 +
{publisher comma.to.colon}
905 +
if$ add.year
906 +
}
907 +
908 +
FUNCTION {format.misc.publication}
909 +
{
910 +
address empty$
911 +
publisher empty$
912 +
and
913 +
{""}
914 +
{format.publication}
915 +
if$
916 +
}
917 +
918 +
FUNCTION {format.series.info}
919 +
{
920 +
"(" format.series *
921 +
add.volume ")" *
922 +
}
923 +
924 +
FUNCTION {format.complementary.data.with.totalpages}
925 +
{
926 +
"" format.totalpages add.to.item
927 +
""
928 +
series empty$
929 +
{add.volume add.number add.to.item}
930 +
{add.number add.to.item format.series.info add.to.item}
931 +
if$
932 +
}
933 +
934 +
FUNCTION {format.complementary.data.with.page.range}
935 +
{
936 +
""
937 +
series empty$
938 +
{add.volume add.number add.pages}
939 +
{"" add.number add.pages add.to.item format.series.info add.to.item}
940 +
if$
941 +
}
942 +
943 +
%
944 +
% esta funcao recebe o titulo a ser formatado
945 +
%
946 +
FUNCTION {format.proceedings.booktitle}
947 +
{
948 +
process.proceedings.booktitle "" swap$ add.year add.address add.to.item
949 +
swap$ "{\ldots}" * emphasize " " swap$ * *
950 +
}
951 +
952 +
%==============================================================================
953 +
% Formatacao das entradas
954 +
%==============================================================================
955 +
FUNCTION {article}
956 +
{
957 +
""
958 +
format.author add.to.item
959 +
#0 title format.title add.to.item
960 +
journal emphasize
961 +
address empty$ {
962 +
"[S.l.]" add.to.list
963 +
}{
964 +
add.address
965 +
} if$
966 +
add.volume add.number add.pages add.month.year add.to.item
967 +
format.note add.to.item
968 +
969 +
write.item
970 +
}
971 +
972 +
FUNCTION {book}
973 +
{
974 +
""
975 +
editor empty$
976 +
{format.author}
977 +
{format.editor}
978 +
if$ add.to.item
979 +
#1 title format.title add.to.item
980 +
format.edition add.to.item
981 +
format.publication add.to.item
982 +
format.complementary.data.with.totalpages add.to.item
983 +
format.note add.to.item
984 +
985 +
write.item
986 +
}
987 +
988 +
FUNCTION {inbook}
989 +
{
990 +
""
991 +
editor empty$
992 +
{format.author}
993 +
{format.editor}
994 +
if$ add.to.item
995 +
#1 title format.title add.to.item
996 +
format.edition add.to.item
997 +
format.publication add.to.item
998 +
format.complementary.data.with.page.range add.to.item
999 +
format.note add.to.item
1000 +
1001 +
write.item
1002 +
}
1003 +
1004 +
FUNCTION {incollection}
1005 +
{
1006 +
""
1007 +
format.author add.to.item
1008 +
#0 title format.title add.to.item
1009 +
"In:"
1010 +
editor empty$
1011 +
'skip$
1012 +
{format.editor add.to.item}
1013 +
if$
1014 +
#1 booktitle format.title add.to.item add.to.item
1015 +
format.edition add.to.item
1016 +
format.publication add.to.item
1017 +
format.complementary.data.with.page.range add.to.item
1018 +
format.note add.to.item
1019 +
1020 +
write.item
1021 +
}
1022 +
1023 +
FUNCTION {inproceedings}
1024 +
{
1025 +
""
1026 +
format.author add.to.item
1027 +
#0 title format.title add.to.item
1028 +
" In: " booktitle format.proceedings.booktitle * *
1029 +
format.proceedings.publication add.to.item
1030 +
format.complementary.data.with.page.range add.to.item
1031 +
format.note add.to.item
1032 +
1033 +
write.item
1034 +
}
1035 +
1036 +
FUNCTION {manual}
1037 +
{
1038 +
""
1039 +
author empty$
1040 +
{format.entrytitle add.to.item}
1041 +
{
1042 +
format.author add.to.item
1043 +
#1 title format.title add.to.item
1044 +
}
1045 +
if$
1046 +
1047 +
format.edition add.to.item
1048 +
format.publication add.to.item
1049 +
format.complementary.data.with.totalpages add.to.item
1050 +
format.note add.to.item
1051 +
1052 +
write.item
1053 +
}
1054 +
1055 +
FUNCTION {mastersthesis}
1056 +
{
1057 +
""
1058 +
format.author add.to.item
1059 +
#1 title format.title add.to.item
1060 +
format.year add.to.item
1061 +
format.totalpages add.to.item
1062 +
str:mastersthesis format.type " --- " * format.publisher *
1063 +
add.address add.to.item
1064 +
format.note add.to.item
1065 +
format.parenthised.number add.to.item
1066 +
1067 +
write.item
1068 +
}
1069 +
1070 +
FUNCTION {misc}
1071 +
{
1072 +
""
1073 +
author empty$
1074 +
{
1075 +
title empty$
1076 +
'skip$
1077 +
{format.entrytitle add.to.item}
1078 +
if$
1079 +
}
1080 +
{
1081 +
format.author add.to.item
1082 +
title empty$
1083 +
'skip$
1084 +
{#1 title format.title add.to.item}
1085 +
if$
1086 +
}
1087 +
if$
1088 +
1089 +
format.misc.publication add.to.item
1090 +
format.complementary.data.with.totalpages add.to.item
1091 +
format.note add.howpublished add.to.item
1092 +
1093 +
format.url add.to.item
1094 +
format.urldate add.to.item
1095 +
1096 +
write.item
1097 +
}
1098 +
1099 +
FUNCTION {phdthesis}
1100 +
{
1101 +
""
1102 +
format.author add.to.item
1103 +
#1 title format.title add.to.item
1104 +
format.year add.to.item
1105 +
format.totalpages add.to.item
1106 +
str:phdthesis format.type " --- " * format.publisher *
1107 +
add.address add.to.item
1108 +
format.note add.to.item
1109 +
format.parenthised.number add.to.item
1110 +
1111 +
write.item
1112 +
}
1113 +
1114 +
FUNCTION {proceedings}
1115 +
{
1116 +
""
1117 +
title format.proceedings.booktitle *
1118 +
format.proceedings.publication add.to.item
1119 +
format.complementary.data.with.page.range add.to.item
1120 +
format.note add.to.item
1121 +
1122 +
write.item
1123 +
}
1124 +
1125 +
FUNCTION {techreport}
1126 +
{
1127 +
""
1128 +
format.author add.to.item
1129 +
#1 title format.title add.to.item
1130 +
format.publication add.to.item
1131 +
type empty$
1132 +
{""}
1133 +
{type}
1134 +
if$ add.note add.to.item
1135 +
format.parenthised.number add.to.item
1136 +
1137 +
write.item
1138 +
}
1139 +
1140 +
FUNCTION {booklet} {misc}
1141 +
FUNCTION {unpublished} {misc}
1142 +
FUNCTION {default.type} {misc}
1143 +
1144 +
%==============================================================================
1145 +
% Inicializa algumas variaveis globais
1146 +
%==============================================================================
1147 +
FUNCTION {init}
1148 +
{
1149 +
"" 'last.label :=
1150 +
"b" 'current.letter :=
1151 +
}
1152 +
1153 +
%==============================================================================
1154 +
% Retorna na pilha o string a ser usado para a ordenacao das entradas.
1155 +
%==============================================================================
1156 +
FUNCTION {get.sortstring}
1157 +
{
1158 +
author empty$ not {format.author " AAA" *}{
1159 +
editor empty$ not {format.editor " AAA" *}{
1160 +
title empty$ not {title}{
1161 +
note empty$ not {note}{
1162 +
key empty$ not {key}{
1163 +
"???"
1164 +
} if$
1165 +
} if$
1166 +
} if$
1167 +
} if$
1168 +
} if$
1169 +
1170 +
type$ "inbook" =
1171 +
booktitle empty$ not
1172 +
and
1173 +
{
1174 +
booktitle title = not
1175 +
{pop$ title}
1176 +
'skip$
1177 +
if$
1178 +
}
1179 +
'skip$
1180 +
if$
1181 +
1182 +
type$ "proceedings" = {
1183 +
pop$
1184 +
title process.proceedings.booktitle
1185 +
swap$ pop$
1186 +
}
1187 +
'skip$
1188 +
if$
1189 +
purify$ "l" change.case$
1190 +
}
1191 +
1192 +
%==============================================================================
1193 +
% Define as ``keys'' para ordenacao
1194 +
%==============================================================================
1195 +
FUNCTION {set.sortkeys}
1196 +
{
1197 +
get.sortstring
1198 +
format.year *
1199 +
#1 entry.max$ substring$
1200 +
#1 global.max$ substring$
1201 +
'sort.key$ :=
1202 +
}
1203 +
1204 +
%==============================================================================
1205 +
% Ajusta os labels, adicionando letras minusculas aos labels de mesmo autor e
1206 +
% ano
1207 +
%==============================================================================
1208 +
FUNCTION {adjust.label}
1209 +
{
1210 +
last.label
1211 +
label 'last.label :=
1212 +
label = {
1213 +
current.letter 'year.char :=
1214 +
current.letter chr.to.int$
1215 +
#1 + int.to.chr$
1216 +
'current.letter :=
1217 +
}{
1218 +
"" 'year.char :=
1219 +
"b" 'current.letter :=
1220 +
} if$
1221 +
}
1222 +
FUNCTION {reverse.adjust.label}
1223 +
{
1224 +
last.year.char "b" = {
1225 +
"a" 'year.char :=
1226 +
}
1227 +
'skip$
1228 +
if$
1229 +
year.char 'last.year.char :=
1230 +
}
1231 +
1232 +
%==============================================================================
1233 +
% Retorna na pilha o string a ser usado para a construcao do label. Quase sempre
1234 +
% sera' o sobrenome do primeiro autor, mas para alguns tipos de referencia pode
1235 +
% ser o editor, a entidade ou o titulo
1236 +
%==============================================================================
1237 +
FUNCTION {get.labelstring}
1238 +
{
1239 +
author empty$ not
1240 +
{author format.family.names}
1241 +
{
1242 +
editor empty$ not
1243 +
{editor format.family.names}
1244 +
{
1245 +
title empty$ not
1246 +
{title "u" change.case$}
1247 +
{
1248 +
key empty$ not
1249 +
{key}
1250 +
{"???"}
1251 +
if$
1252 +
}
1253 +
if$
1254 +
}
1255 +
if$
1256 +
}
1257 +
if$
1258 +
1259 +
type$ "inbook" =
1260 +
booktitle empty$ not
1261 +
and
1262 +
{
1263 +
booktitle title = not
1264 +
{pop$ title "u" change.case$}
1265 +
'skip$
1266 +
if$
1267 +
}
1268 +
'skip$
1269 +
if$
1270 +
}
1271 +
1272 +
%==============================================================================
1273 +
% Retorna na pilha o string a ser usado para a construcao do label. Quase sempre
1274 +
% sera' o sobrenome do primeiro autor, mas para alguns tipos de referencia pode
1275 +
% ser o editor, a entidade ou o titulo
1276 +
%
1277 +
% esta versao retorna os nomes completos
1278 +
%==============================================================================
1279 +
FUNCTION {get.labelstring.all}
1280 +
{
1281 +
author empty$ not
1282 +
{author format.family.names.all}
1283 +
{
1284 +
editor empty$ not
1285 +
{editor format.family.names.all}
1286 +
{
1287 +
title empty$ not
1288 +
{title "u" change.case$}
1289 +
{
1290 +
key empty$ not
1291 +
{key}
1292 +
{"???"}
1293 +
if$
1294 +
}
1295 +
if$
1296 +
}
1297 +
if$
1298 +
}
1299 +
if$
1300 +
1301 +
type$ "inbook" =
1302 +
booktitle empty$ not
1303 +
and
1304 +
{
1305 +
booktitle title = not
1306 +
{pop$ title "u" change.case$}
1307 +
'skip$
1308 +
if$
1309 +
}
1310 +
'skip$
1311 +
if$
1312 +
}
1313 +
1314 +
%==============================================================================
1315 +
% Construção dos labels
1316 +
%==============================================================================
1317 +
FUNCTION {prepare.label.sorting}
1318 +
{
1319 +
get.labelstring.all format.year *
1320 +
duplicate$ 'label := 'sort.key$ :=
1321 +
}
1322 +
FUNCTION {make.label}
1323 +
{
1324 +
get.labelstring
1325 +
"(" *
1326 +
year empty$ {
1327 +
"????"
1328 +
}{
1329 +
year year.char *
1330 +
} if$ *
1331 +
")" *
1332 +
get.labelstring.all *
1333 +
#1 entry.max$ substring$
1334 +
#1 global.max$ substring$
1335 +
'label :=
1336 +
}
1337 +
1338 +
%==============================================================================
1339 +
% Inicia a definicao das referencias
1340 +
%==============================================================================
1341 +
FUNCTION {begin.bib}
1342 +
{
1343 +
preamble$ empty$
1344 +
'skip$
1345 +
{preamble$ write$ newline$ newline$}
1346 +
if$
1347 +
"\begin{thebibliography}{\hspace{\parindent}}" write$ newline$
1348 +
newline$
1349 +
}
1350 +
1351 +
%==============================================================================
1352 +
% Termina a definicao das referencias
1353 +
%==============================================================================
1354 +
FUNCTION {end.bib}
1355 +
{
1356 +
"\end{thebibliography}" write$ newline$
1357 +
}
1358 +
1359 +
%==============================================================================
1360 +
% main()
1361 +
%==============================================================================
1362 +
READ
1363 +
EXECUTE {init}
1364 +
ITERATE {prepare.label.sorting}
1365 +
SORT
1366 +
ITERATE {adjust.label}
1367 +
REVERSE {reverse.adjust.label}
1368 +
ITERATE {make.label}
1369 +
ITERATE {set.sortkeys}
1370 +
SORT
1371 +
EXECUTE {begin.bib}
1372 +
ITERATE {call.type$}
1373 +
EXECUTE {end.bib}
1374 +
monografia/images/if.pdf
added/dev/null → monografia/images/if.pdf
Binary file
/dev/null → monografia/images/tsi.png
Binary file
/dev/null → monografia/images/xitsu.png
Binary file
/dev/null → monografia/monografia.bib
1 +
@article{barber:92,
2 +
title={Too much of a good thing: light can be bad for photosynthesis},
3 +
author={Barber, James and Andersson, Bertil},
4 +
journal={Trends in biochemical sciences},
5 +
volume={17},
6 +
number={2},
7 +
pages={61--66},
8 +
year={1992},
9 +
publisher={Elsevier},
10 +
address={Cambridge, MA, USA},
11 +
},
12 +
13 +
@article{silva:18,
14 +
title={Ambientações messiânicas: Um estudo acerca das idiocrassias},
15 +
author={Silva, Luís Eduardo Talavera Pereira and Martins, Luisa Helena Madureira and Yang, Qu and Wang, Kim},
16 +
journal={Pesquisas Estrambólicas},
17 +
volume={20},
18 +
number={1},
19 +
pages={101--106},
20 +
year={2018},
21 +
publisher={Yegsidra},
22 +
address={São Paulo, SP, Brasil},
23 +
},
24 +
25 +
@misc{site:15,
26 +
title={Meu website},
27 +
author={Giovane Torres},
28 +
url={https://gdotorres.github.io},
29 +
urldate={26 de outubro de 2018},
30 +
}
/dev/null → monografia/monografia.pdf
Binary file
/dev/null → monografia/monografia.tex
1 +
\documentclass[tcc,capa,table]{textsi}
2 +
3 +
\usepackage[brazilian]{babel} % Linguagem do documento: Português-brasileiro
4 +
\usepackage[utf8]{inputenc} % Codificação do arquivo .tex. IMPORTANTE: O arquivo deve ser salvo utilizando a codificação UTF-8 para mostrar corretamente os caracteres!
5 +
\usepackage[T1]{fontenc} % Permite que se faça cópia do texto do PDF de maneira correta, usando a codificação de fonte T1
6 +
7 +
% Alguns pacotes disponíveis no latex para adição e manipulação de elementos do documento
8 +
\usepackage{array,booktabs}
9 +
\usepackage{enumitem}
10 +
\usepackage{listings}
11 +
\usepackage{makecell}
12 +
\usepackage{graphicx,subfigure}
13 +
\usepackage{multirow}
14 +
\usepackage{xcolor}
15 +
\usepackage{pdfpages}
16 +
\usepackage{lipsum}
17 +
\graphicspath{{images/}}
18 +
19 +
% Título do trabalho
20 +
\title{orbit - Um aplicativo para rastrear flutuações de humor para pessoas com TAB}
21 +
22 +
% Autor do trabalho. Primeiro argumento: Último sobrenome; Segundo argumento: Restante do nome
23 +
\author{Porcellis}{Pedro Lucas Porcellis}
24 +
25 +
% Orientador do trabalho. Primeiro argumento (opcional): titulação do orientador. Segundo argumento (obrigatório): Último sobrenome; Terceiro argumento (obrigatório): Restante do nome
26 +
\advisor[Prof.~Me.]{Torres}{Giovane de Oliveira}
27 +
28 +
% Instituição do orientador do trabalho.
29 +
\instituicaoadvisor{IFSul}
30 +
31 +
% Descomente a linha abaixo se tens co-orientador. Segue o mesmo formato do orientador do trabalho.
32 +
%\coadvisor[Prof.~Dr.]{Aguiar}{Marilton Sanchotene de}
33 +
34 +
% Descomente a linha abaixo se tens colaborador. Segue o mesmo formato do orientador do trabalho.
35 +
%\collaborator[Prof.~Dr.]{Aguiar}{Marilton Sanchotene de}
36 +
37 +
% Membro 1 da banca. Um argumento único, contendo titulação e nome completo.
38 +
\membroi{Prof.~Dr. Fulano de Souza e Silva}
39 +
% Instituição do membro 1 da banca.
40 +
\instituicaomembroi{UFI}
41 +
42 +
% Membro 2 da banca. Segue o mesmo formato que o membro 1.
43 +
\membroii{Prof. Dr. Sicrano Silveira Rosa}
44 +
% Instituição do membro 2 da banca.
45 +
\instituicaomembroii{UFPG}
46 +
47 +
% Descomente se tens um terceiro membro na banca. Membro 3 da banca. Segue o mesmo formato que o membro 1.
48 +
\membroiii{Prof. Dr. Beltrano Pereira Tavares}
49 +
% Descomente se tens um terceiro membro na banca. Instituição do membro 3 da banca.
50 +
\instituicaomembroiii{UFCR}
51 +
52 +
% Palavras-chave do trabalho desenvolvido.
53 +
\keyword{Reuso de traços}
54 +
\keyword{Arquiteturas ARM}
55 +
\keyword{Desempenho}
56 +
57 +
\begin{document}
58 +
59 +
% Descomente se você tem orientadora, e não orientador.
60 +
%\renewcommand{\advisorname}{\orientadora}
61 +
62 +
% Descomente se você tem coorientadora, e não orientador.
63 +
%\renewcommand{\coadvisorname}{\coorientadora}
64 +
65 +
% Faz com que o título apareça
66 +
\maketitle
67 +
68 +
\sloppy
69 +
70 +
% Ficha catalográfica e folha de aprovação
71 +
\fichacatalografica
72 +
\folhadeaprovacao
73 +
74 +
%Opcional - dedicatória
75 +
\begin{dedicatoria}
76 +
Texto da Dedicatória
77 +
\end{dedicatoria}
78 +
79 +
%Opcional - agradecimentos
80 +
\begin{agradecimentos}
81 +
Texto dos Agradecimentos
82 +
\end{agradecimentos}
83 +
84 +
%Opcional - epígrafe
85 +
\begin{epigrafe}
86 +
"Texto da Epígrafe" \\
87 +
Autor da Epígrafe
88 +
\end{epigrafe}
89 +
90 +
% Resumo em língua vernácula (a que você está escrevendo o documento)
91 +
\begin{abstract}
92 +
Texto do resumo. Deve conter de 150 a 500 palavras.
93 +
\end{abstract}
94 +
95 +
% Resumo em língua estrangeira
96 +
\begin{englishabstract}%
97 +
{Palavras-chave em inglês}
98 +
Texto do resumo, em inglês.
99 +
\end{englishabstract}
100 +
101 +
%Lista de Figuras
102 +
\listoffigures
103 +
104 +
%Lista de Tabelas
105 +
\listoftables
106 +
107 +
%lista de abreviaturas e siglas
108 +
\begin{listofabbrv}{SN1} % <- Insira aqui a maior sigla da sua lista de siglas.
109 +
% O conteúdo dentro dos colchetes é a sigla, e o texto ao lado é o seu significado
110 +
\item[SN1] Sigla Número 1
111 +
\end{listofabbrv}
112 +
113 +
%Sumario
114 +
\tableofcontents
115 +
116 +
% Chapter é a seção primária do documento. Toda vez que é chamado este comando, uma quebra de página é adicionada;
117 +
\chapter{Seção Primária (\textit{chapter})}
118 +
119 +
\lipsum[1]
120 +
121 +
% Section é a seção secundária do documento. O restante é auto explicativo..
122 +
\section{Seção Secundária (\textit{section})}
123 +
124 +
\lipsum[1-2]
125 +
126 +
\subsection{Seção Terciária (\textit{subsection})}
127 +
128 +
\lipsum[1]
129 +
130 +
\subsubsection{Seção Quaternária (\textit{subsubsection})}
131 +
132 +
\lipsum[1]
133 +
134 +
\paragraph{Seção Quinária (\textit{paragraph})}
135 +
136 +
Exemplo de citação padrão~\cite{barber:92}. Uma outra citação~\cite{silva:18}. \lipsum[1-3]
137 +
138 +
Isso pode ser visto na Figura~\ref{fig:xitsu}.
139 +
140 +
\begin{figure}[!h]
141 +
\centering
142 +
\caption{Xitsu}
143 +
\label{fig:xitsu}
144 +
\includegraphics[scale=2]{xitsu.png}
145 +
\source{Xitsu}
146 +
\end{figure}
147 +
148 +
Outra coisa~\cite{site:15}
149 +
150 +
\bibliography{monografia}
151 +
\bibliographystyle{abnt}
152 +
153 +
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
154 +
155 +
% NÃO MEXER - RELACIONADO À FORMATAÇÃO DE ANEXOS/APÊNDICES
156 +
\makeatletter%
157 +
\renewcommand*{\@seccntformat}[1]{\csname the#1\endcsname\hspace{0.2cm}}%
158 +
\makeatother%
159 +
160 +
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
161 +
162 +
% Adiciona um apêndice
163 +
\append{Inverno}
164 +
165 +
% Adiciona um anexo
166 +
\annex{Verão}
167 +
168 +
\end{document}
/dev/null → monografia/textsi.cls
1 +
%==============================================================================
2 +
% Identificação
3 +
%==============================================================================
4 +
\def\currversion{3/5/2014}
5 +
6 +
\typeout{^^J^^J
7 +
--------------------------------------------------^^J
8 +
CLASSE textsi^^J
9 +
Formatação de Documentos LaTeX do TSI^^J
10 +
--------------------------------------------------^^J
11 +
Agradecimentos^^J
12 +
Marilton Aguiar, pela Classe de Formatação de Documentos LaTeX da UFPEL^^J
13 +
Rafael Krolow, pelo esqueleto de Template para o Documento LaTeX par o TSI^^J
14 +
--------------------------------------------------^^J
15 +
Desenvolvimento por Giovane de Oliveira Torres (ggiovaneotorres@gmail.com)^^J
16 +
--------------------------------------------------^^J
17 +
Versão: \currversion^^J
18 +
--------------------------------------------------^^J^^J}
19 +
20 +
\NeedsTeXFormat{LaTeX2e}
21 +
\ProvidesClass{textsi}[\currversion]
22 +
23 +
%==============================================================================
24 +
% Declaração de opções
25 +
%==============================================================================
26 +
27 +
% Órgãos para o cabeçalho do título.
28 +
29 +
\newcommand{\ministerio}[1]{\gdef\@ministerio{#1}}
30 +
\ministerio{Minist{\'e}rio da Educa\c c{\~a}o}
31 +
32 +
\newcommand{\secretaria}[1]{\gdef\@secretaria{#1}}
33 +
\secretaria{Secretaria de Educa\c c{\~a}o Profissional e Tecnol{\'o}gica}
34 +
35 +
\newcommand{\instituto}[1]{\gdef\@instituto{#1}}
36 +
\instituto{Instituto Federal Sul-Rio-Grandense}
37 +
38 +
\newcommand{\campus}[1]{\gdef\@campus{#1}}
39 +
\campus{C{\^a}mpus Pelotas}
40 +
41 +
\newcommand{\thecurso}[1]{\gdef\@thecurso{#1}}
42 +
\thecurso{Curso Superior de Tecnologia em Sistemas para Internet}
43 +
44 +
\newcommand{\documento}[1]{\gdef\@documento{#1}}
45 +
\newcommand{\tipodocumento}[1]{\gdef\@tipodocumento{#1}}
46 +
\newcommand{\descricaodocumento}[1]{\gdef\@descricaodocumento{#1}}
47 +
48 +
% Para a folha de aprovação
49 +
50 +
\newcommand{\instituicaoadvisor}[1]{\gdef\@instituicaoadvisor{#1}}
51 +
52 +
\newcommand{\membroi}[1]{\gdef\@membroi{#1}}
53 +
\newcommand{\membroii}[1]{\gdef\@membroii{#1}}
54 +
\newcommand{\membroiii}[1]{\gdef\@membroiii{#1}}
55 +
56 +
\newcommand{\instituicaomembroi}[1]{\gdef\@instituicaomembroi{#1}}
57 +
\newcommand{\instituicaomembroii}[1]{\gdef\@instituicaomembroii{#1}}
58 +
\newcommand{\instituicaomembroiii}[1]{\gdef\@instituicaomembroiii{#1}}
59 +
60 +
% Para o texto
61 +
62 +
\newcommand{\source}[1]{\\ Fonte: #1}
63 +
64 +
% Opções
65 +
66 +
\DeclareOption{tcc}{
67 +
\documento{Trabalho de Conclus{\~a}o de Curso}
68 +
\tipodocumento{Trabalho de Conclus{\~a}o de Curso (\@nomecurso) -- \@unidade}
69 +
\descricaodocumento{Trabalho de Conclus{\~a}o de Curso apresentado como requisito parcial {\`a} obten\c c{\~a}o ao t{\'i}tulo de tecn{\'o}logo em Sistemas para Internet do Instituto Federal Sul-Rio-Grandense}
70 +
}
71 +
72 +
\newcommand{\capa}[1]{\gdef\@capa{#1}}
73 +
\DeclareOption{capa}{\capa{1}}
74 +
75 +
\newcommand{\nocipinfo}[1]{\gdef\@nocipinfo{#1}}
76 +
\DeclareOption{nocipinfo}{\nocipinfo{1}}
77 +
78 +
\DeclareOption{english}{\@englishtrue\OptionNotUsed}\newif\if@english
79 +
\DeclareOption{oneside}{\AtEndOfClass{\@twosidefalse}\OptionNotUsed}
80 +
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}}
81 +
\ProcessOptions
82 +
\relax
83 +
84 +
%==============================================================================
85 +
% Herança da classe `report' e inclusão de pacotes e arquivos necessários
86 +
%==============================================================================
87 +
\LoadClass[12pt,a4paper,oneside]{report}
88 +
89 +
\RequirePackage[english,brazilian]{babel}
90 +
\RequirePackage{ulem}
91 +
\RequirePackage{lastpage}
92 +
\RequirePackage{indentfirst}
93 +
\RequirePackage{natbib}
94 +
\RequirePackage{chngcntr}
95 +
\RequirePackage{eso-pic}
96 +
\RequirePackage{color}
97 +
\RequirePackage{setspace}
98 +
\RequirePackage{geometry}
99 +
100 +
\geometry{top=3cm,right=2cm,left=3cm,bottom=2cm}
101 +
102 +
\definecolor{laranjaufpel}{rgb}{1,0.6,0}
103 +
\definecolor{verdeufpel}{rgb}{0.09,0.7,0.44}
104 +
\definecolor{azulufpel}{rgb}{0.07,0.49,0.72}
105 +
\definecolor{cinzaufpel}{rgb}{0.85,0.85,0.85}
106 +
107 +
%
108 +
% definições para textos em português
109 +
%
110 +
\@namedef{captionsbrazilian}{%
111 +
\def\bibname{Refer{\^e}ncias}%
112 +
\def\abstractname{Resumo}%
113 +
\def\appendixname{Ap{\^e}ndice}%
114 +
\def\contentsname{Sum{\'a}rio}%
115 +
\def\listfigurename{Lista de Ilustra\c{c}{\~o}es}%
116 +
\def\listtablename{Lista de Tabelas}%
117 +
\def\figurename{Figura}%
118 +
\def\tablename{Tabela}%
119 +
\def\advisorname{Orientador}%
120 +
\def\coadvisorname{Coorientador}%
121 +
\def\collaboratorname{Colaborador}%
122 +
\def\listabbrvname{Lista de Abreviaturas e Siglas}%
123 +
\def\listsymbolname{Lista de S{\'\i}mbolos}%
124 +
\def\annexname{Anexo}%
125 +
\def\keywordsname{Palavras-chave}%
126 +
}
127 +
128 +
\@namedef{datebrazilian}{%
129 +
\def\monthname{%
130 +
\ifcase\month\or%
131 +
janeiro\or fevereiro\or mar{\c{c}}o\or abril\or maio\or junho\or
132 +
julho\or agosto\or setembro\or outubro\or novembro\or dezembro%
133 +
\fi%
134 +
}%
135 +
\def\ei@date{\@publyear}%
136 +
% \def\ei@date{\@publmonth\ de~\@publyear}%
137 +
}
138 +
139 +
%
140 +
% definições para textos em inglês
141 +
%
142 +
\@namedef{captionsenglish}{%
143 +
\def\bibname{References}%
144 +
\def\abstractname{Abstract}%
145 +
\def\appendixname{Appendix}%
146 +
\def\contentsname{Contents}%
147 +
\def\listfigurename{List of Figures}%
148 +
\def\listtablename{List of Tables}%
149 +
\def\figurename{Figure}%
150 +
\def\tablename{Table}%
151 +
\def\advisorname{Advisor}%
152 +
\def\coadvisorname{Coadvisor}%
153 +
\def\collaboratorname{Collaborator}%
154 +
\def\listabbrvname{List of Abbreviations and Acronyms}%
155 +
\def\listsymbolname{List of Symbols}%
156 +
\def\annexname{Annex}%
157 +
\def\keywordsname{Keywords}%
158 +
}
159 +
160 +
\@namedef{dateenglish}{%
161 +
\def\monthname{%
162 +
\ifcase\month\or%
163 +
January\or February\or March\or April\or May\or June\or July\or
164 +
August\or September\or October\or November\or December%
165 +
\fi%
166 +
}%
167 +
\def\ei@date{\@publyear}%
168 +
% \def\ei@date{\@publmonth~\@publyear}%
169 +
}
170 +
171 +
\if@english%
172 +
\selectlanguage{english}%
173 +
\AtBeginDocument{\selectlanguage{english}}%
174 +
\fi
175 +
176 +
%==============================================================================
177 +
% O uso de fonte Arial, 12 pt, é mandatório
178 +
%==============================================================================
179 +
\renewcommand*\familydefault{\sfdefault}%
180 +
\renewcommand{\rmdefault}{phv}%
181 +
\renewcommand{\sfdefault}{phv}
182 +
183 +
% Definição do espaçamento de texto
184 +
\setlength{\baselineskip}{1.5cm}
185 +
186 +
%==============================================================================
187 +
% Numeração das páginas
188 +
%==============================================================================
189 +
\def\ps@texufpel{%
190 +
\let\@oddfoot\@empty%
191 +
\let\@evenfoot\@empty%
192 +
\def\@oddhead{\hspace*{\fill}{\small\thepage}}%
193 +
\def\@evenhead{\hspace*{\fill}{\small\thepage}}%
194 +
}
195 +
196 +
\pagestyle{empty}%
197 +
\let\ps@plain\ps@empty
198 +
199 +
%==============================================================================
200 +
% Definição de autor(es), orientador e co-orientador
201 +
%==============================================================================
202 +
\newcounter{ei@authorcount}
203 +
\renewcommand{\author}[2]{
204 +
\addtocounter{ei@authorcount}{1}
205 +
\expandafter\gdef\csname @author\alph{ei@authorcount}last\endcsname{#1}
206 +
\expandafter\gdef\csname @author\alph{ei@authorcount}first\endcsname{#2}
207 +
\expandafter\gdef\csname @author\alph{ei@authorcount}\endcsname{#2 #1}
208 +
}
209 +
210 +
\newcounter{ei@advisorcount}
211 +
\DeclareRobustCommand{\advisor}[3][]{
212 +
\addtocounter{ei@advisorcount}{1}
213 +
\expandafter\gdef\csname @advisor\alph{ei@advisorcount}last\endcsname{#2}
214 +
\expandafter\gdef\csname @advisor\alph{ei@advisorcount}first\endcsname{#3}
215 +
\expandafter\gdef\csname @advisor\alph{ei@advisorcount}\endcsname{#1~#3 #2}
216 +
}
217 +
218 +
\newcounter{ei@coadvisorcount}
219 +
\DeclareRobustCommand{\coadvisor}[3][]{
220 +
\addtocounter{ei@coadvisorcount}{1}
221 +
\expandafter\gdef\csname @coadvisor\alph{ei@coadvisorcount}last\endcsname{#2}
222 +
\expandafter\gdef\csname @coadvisor\alph{ei@coadvisorcount}first\endcsname{#3}
223 +
\expandafter\gdef\csname @coadvisor\alph{ei@coadvisorcount}\endcsname{#1~#3 #2}
224 +
}
225 +
226 +
\newcounter{ei@collaboratorcount}
227 +
\DeclareRobustCommand{\collaborator}[3][]{
228 +
\addtocounter{ei@collaboratorcount}{1}
229 +
\expandafter\gdef\csname @collaborator\alph{ei@collaboratorcount}last\endcsname{#2}
230 +
\expandafter\gdef\csname @collaborator\alph{ei@collaboratorcount}first\endcsname{#3}
231 +
\expandafter\gdef\csname @collaborator\alph{ei@collaboratorcount}\endcsname{#1~#3 #2}
232 +
}
233 +
234 +
235 +
%==============================================================================
236 +
% Definição das palavras-chave (máx. 10)
237 +
%==============================================================================
238 +
\newcounter{kwcounter}
239 +
\newcommand{\keyword}[1]{
240 +
\addtocounter{kwcounter}{1}
241 +
\expandafter\gdef\csname keyw\alph{kwcounter}\endcsname{#1}
242 +
}
243 +
244 +
\newcommand{\@cipkw}{%
245 +
\@ifundefined{keywa}{}{1.~\expandafter\MakeUppercase\keywa\@. }%
246 +
\@ifundefined{keywb}{}{2.~\expandafter\MakeUppercase\keywb\@. }%
247 +
\@ifundefined{keywc}{}{3.~\expandafter\MakeUppercase\keywc\@. }%
248 +
\@ifundefined{keywd}{}{4.~\expandafter\MakeUppercase\keywd\@. }%
249 +
\@ifundefined{keywe}{}{5.~\expandafter\MakeUppercase\keywe\@. }%
250 +
\@ifundefined{keywf}{}{6.~\expandafter\MakeUppercase\keywf\@. }%
251 +
\@ifundefined{keywg}{}{7.~\expandafter\MakeUppercase\keywg\@. }%
252 +
\@ifundefined{keywh}{}{8.~\expandafter\MakeUppercase\keywh\@. }%
253 +
\@ifundefined{keywi}{}{9.~\expandafter\MakeUppercase\keywi\@. }%
254 +
\@ifundefined{keywj}{}{10.~\expandafter\MakeUppercase\keywj\@. }%
255 +
}
256 +
257 +
\newcommand{\@abstractkw}{%
258 +
\@ifundefined{keywa}{}{\expandafter\MakeUppercase\keywa}%
259 +
\@ifundefined{keywb}{}{, \keywb}%
260 +
\@ifundefined{keywc}{}{, \keywc}%
261 +
\@ifundefined{keywd}{}{, \keywd}%
262 +
\@ifundefined{keywe}{}{, \keywe}%
263 +
\@ifundefined{keywf}{}{, \keywf}%
264 +
\@ifundefined{keywg}{}{, \keywg}%
265 +
\@ifundefined{keywh}{}{, \keywh}%
266 +
\@ifundefined{keywi}{}{, \keywi}%
267 +
\@ifundefined{keywj}{}{, \keywj}%
268 +
}
269 +
270 +
%==============================================================================
271 +
% Redefinição da data (para ter mês e ano separados)
272 +
%==============================================================================
273 +
\renewcommand{\date}[2]{
274 +
\gdef\@publmonth{#1}
275 +
\gdef\@publyear{#2}
276 +
}
277 +
\date{\monthname}{\number\year}
278 +
279 +
%==============================================================================
280 +
% Definição padrão da folha de rosto.
281 +
% Os dados específicos do tipo de trabalho (dissertação, tese, etc.) são
282 +
% informados definindo-se o comando \titlepagespecificinfo. Veja os
283 +
% arquivos .def incluídos com a classe.
284 +
%==============================================================================
285 +
286 +
\newlength{\titlepagewinwidth}\setlength{\titlepagewinwidth}{95mm}
287 +
\newlength{\titlepagewinheight}\setlength{\titlepagewinheight}{64mm}
288 +
\newlength{\titlepagewinvoffset}\setlength{\titlepagewinvoffset}{112mm}
289 +
290 +
\newcommand{\location}[2]{
291 +
\gdef\@city{#1}
292 +
\gdef\@state{#2}
293 +
}
294 +
295 +
\location{Pelotas}{RS}
296 +
297 +
\renewcommand{\maketitle}{
298 +
\@ifundefined{@capa}{%
299 +
\begin{titlepage}
300 +
\thetitlepage
301 +
\end{titlepage}
302 +
\clearpage
303 +
\setcounter{page}{1}
304 +
}{%
305 +
\begin{titlepage}
306 +
\thecoverpage
307 +
\newpage
308 +
\thetitlepage
309 +
\end{titlepage}
310 +
\clearpage
311 +
\setcounter{page}{2}
312 +
}
313 +
}
314 +
315 +
\newcommand{\thecoverpage}{%
316 +
\noindent%
317 +
\parbox[b]{0.1\textwidth}{%
318 +
\hspace{-2cm}%
319 +
\includegraphics[width=3cm]{if}%
320 +
}%
321 +
\noindent%
322 +
\parbox[b]{0.8\textwidth}{%
323 +
\centering%
324 +
\vskip 1cm%
325 +
\MakeUppercase{\textbf{\@ministerio}}\\%
326 +
\MakeUppercase{\textbf{\@secretaria}}\\%
327 +
\MakeUppercase{\textbf{\@instituto}}\\%
328 +
\MakeUppercase{\textbf{\@campus}}\\%
329 +
\MakeUppercase{\textbf{\@thecurso}}\\%
330 +
%\@unidade\\%
331 +
%\@ifundefined{@nomecurso}{\@programa}{Curso de \@nomecurso}\\%
332 +
\vskip 1cm%
333 +
%\@documento\\%
334 +
%\vskip 1cm%
335 +
}%
336 +
\parbox[b][][t]{0.1\textwidth}{%
337 +
\includegraphics[scale=0.175]{tsi.png}%
338 +
}%
339 +
\noindent%
340 +
\vskip 1cm%
341 +
\noindent%
342 +
\parbox[b]{\textwidth}{%
343 +
\centering%
344 +
\vskip .5cm%
345 +
\textbf{{\@authora}\\
346 +
\@ifundefined{@authorb}{}{\@authorb\\}%
347 +
\@ifundefined{@authorc}{}{\@authorc\\}%
348 +
\@ifundefined{@authord}{}{\@authord\\}}%
349 +
\vskip .5cm%
350 +
}%
351 +
\vskip 3cm%
352 +
\noindent%
353 +
\parbox[b]{\textwidth}{%
354 +
\centering%
355 +
\vskip .5cm%
356 +
\textbf{\@title}
357 +
\vskip .5cm%
358 +
}%
359 +
\vskip 3cm%
360 +
\noindent%
361 +
\parbox[b]{\textwidth}{%
362 +
\centering%
363 +
\vskip .5cm%
364 +
\textbf{\@documento}
365 +
\vskip .5cm%
366 +
}%
367 +
\vfill%
368 +
\noindent%
369 +
\parbox[b]{\textwidth}{%
370 +
\centering%
371 +
\vskip .1cm%
372 +
\textbf{\@city}\\
373 +
\textbf{\ei@date}%
374 +
\vskip .1cm%
375 +
}%
376 +
}
377 +
378 +
\newcommand{\thetitlepage}{%
379 +
\noindent%
380 +
\parbox[b]{\textwidth}{%
381 +
\centering%
382 +
\@authora\\
383 +
\@ifundefined{@authorb}{}{\@authorb\\}%
384 +
\@ifundefined{@authorc}{}{\@authorc\\}%
385 +
\@ifundefined{@authord}{}{\@authord\\}%
386 +
\vskip 5cm%
387 +
{\textbf{\@title}}%
388 +
}
389 +
\vskip 8cm%
390 +
%\@ifundefined{titlepagespecificinfo}{}{%
391 +
\hspace*{\fill}\makebox[.5\textwidth][l]{%
392 +
\parbox[b]{8.5cm}{%
393 +
\@descricaodocumento%
394 +
\@ifundefined{@advisora}{}{%
395 +
\vskip 1cm%
396 +
\hspace{-0.25cm}
397 +
\begin{tabular}{lp{.3675\textwidth}}
398 +
\@ifundefined{@advisora}{}{
399 +
\@ifundefined{@advisorb}{\advisorname:}{\advisorname es:} &
400 +
\@ifundefined{@advisora}{}{\@advisora\\}
401 +
\@ifundefined{@advisorb}{}{\ &}
402 +
\@ifundefined{@advisorb}{}{\@advisorb\\}
403 +
\@ifundefined{@advisorc}{}{\ &}
404 +
\@ifundefined{@advisorc}{}{\@advisorc\\}
405 +
\@ifundefined{@advisord}{}{\ &}
406 +
\@ifundefined{@advisord}{}{\@advisord\\}}
407 +
\@ifundefined{@coadvisora}{}{
408 +
\@ifundefined{@coadvisorb}{\coadvisorname:}{\coadvisorname es:} &
409 +
\@ifundefined{@coadvisora}{}{\@coadvisora\\}
410 +
\@ifundefined{@coadvisorb}{}{\ &}
411 +
\@ifundefined{@coadvisorb}{}{\@coadvisorb\\}
412 +
\@ifundefined{@coadvisorc}{}{\ &}
413 +
\@ifundefined{@coadvisorc}{}{\@coadvisorc\\}
414 +
\@ifundefined{@coadvisord}{}{\ &}
415 +
\@ifundefined{@coadvisord}{}{\@coadvisord\\}}
416 +
\@ifundefined{@collaboratora}{}{
417 +
\@ifundefined{@collaboratorb}{\collaboratorname:}{\collaboratorname es:} &
418 +
\@ifundefined{@collaboratora}{}{\@collaboratora\\}
419 +
\@ifundefined{@collaboratorb}{}{\ &}
420 +
\@ifundefined{@collaboratorb}{}{\@collaboratorb\\}
421 +
\@ifundefined{@collaboratorc}{}{\ &}
422 +
\@ifundefined{@collaboratorc}{}{\@collaboratorc\\}
423 +
\@ifundefined{@collaboratord}{}{\ &}
424 +
\@ifundefined{@collaboratord}{}{\@collaboratord\\}}
425 +
\end{tabular}
426 +
}
427 +
}
428 +
}%
429 +
\vfill%
430 +
%}%
431 +
\vfill%
432 +
\centerline{\@city}%
433 +
\centerline{\ei@date}%
434 +
}
435 +
436 +
\newcommand{\folhadeaprovacao}{%
437 +
\clearpage%
438 +
\noindent%
439 +
\parbox[b]{\textwidth}{%
440 +
\centering%
441 +
\MakeUppercase{\@authora}\\%
442 +
\vskip 5cm%
443 +
\textbf{\MakeUppercase{\@title}}\\%
444 +
\vskip 4cm%
445 +
}
446 +
\hspace*{\fill}\makebox[.5\textwidth][l]{%
447 +
\parbox[b]{8.5cm}{%
448 +
\@descricaodocumento%
449 +
\@ifundefined{@advisora}{}{%
450 +
\vskip 1cm%
451 +
\hspace{-0.3cm}
452 +
\begin{tabular}{lp{.3675\textwidth}}
453 +
\@ifundefined{@advisora}{}{
454 +
\@ifundefined{@advisorb}{\advisorname:}{\advisorname es:} &
455 +
\@ifundefined{@advisora}{}{\@advisora\\}
456 +
\@ifundefined{@advisorb}{}{\ &}
457 +
\@ifundefined{@advisorb}{}{\@advisorb\\}
458 +
\@ifundefined{@advisorc}{}{\ &}
459 +
\@ifundefined{@advisorc}{}{\@advisorc\\}
460 +
\@ifundefined{@advisord}{}{\ &}
461 +
\@ifundefined{@advisord}{}{\@advisord\\}}
462 +
\@ifundefined{@coadvisora}{}{
463 +
\@ifundefined{@coadvisorb}{\coadvisorname:}{\coadvisorname es:} &
464 +
\@ifundefined{@coadvisora}{}{\@coadvisora\\}
465 +
\@ifundefined{@coadvisorb}{}{\ &}
466 +
\@ifundefined{@coadvisorb}{}{\@coadvisorb\\}
467 +
\@ifundefined{@coadvisorc}{}{\ &}
468 +
\@ifundefined{@coadvisorc}{}{\@coadvisorc\\}
469 +
\@ifundefined{@coadvisord}{}{\ &}
470 +
\@ifundefined{@coadvisord}{}{\@coadvisord\\}}
471 +
\@ifundefined{@collaboratora}{}{
472 +
\@ifundefined{@collaboratorb}{\collaboratorname:}{\collaboratorname es:} &
473 +
\@ifundefined{@collaboratora}{}{\@collaboratora\\}
474 +
\@ifundefined{@collaboratorb}{}{\ &}
475 +
\@ifundefined{@collaboratorb}{}{\@collaboratorb\\}
476 +
\@ifundefined{@collaboratorc}{}{\ &}
477 +
\@ifundefined{@collaboratorc}{}{\@collaboratorc\\}
478 +
\@ifundefined{@collaboratord}{}{\ &}
479 +
\@ifundefined{@collaboratord}{}{\@collaboratord\\}}
480 +
\end{tabular}
481 +
}
482 +
}
483 +
}
484 +
\vskip 1cm%
485 +
\hspace{-0.75cm}
486 +
\parbox[b]{\textwidth}{%
487 +
\centering
488 +
Aprovado pela banca examinadora em: \uline{\hspace{0.75cm}}/\uline{\hspace{0.75cm}}/\uline{\hspace{1.5cm}}
489 +
}
490 +
\vfill%
491 +
\hspace{-0.75cm}
492 +
\parbox[b]{\textwidth}{%
493 +
\centering%
494 +
~\uline{\hspace{0.75\textwidth}}~\\%
495 +
\@advisora~-~\@instituicaoadvisor\\%
496 +
\@ifundefined{orientadora}{Prof.\textordmasculine}{Prof.\textordfeminine}~\advisorname%
497 +
\@ifundefined{@membroi}{}{
498 +
\vskip 0.5cm%
499 +
~\uline{\hspace{0.75\textwidth}}~\\%
500 +
\@membroi~-~\@instituicaomembroi\\%
501 +
Membro titular\\%
502 +
}
503 +
\@ifundefined{@membroii}{}{
504 +
\vskip 0.5cm%
505 +
~\uline{\hspace{0.75\textwidth}}~\\%
506 +
\@membroii~-~\@instituicaomembroii\\%
507 +
Membro titular\\%
508 +
}
509 +
\@ifundefined{@membroiii}{}{
510 +
\vskip 0.5cm%
511 +
~\uline{\hspace{0.75\textwidth}}~\\%
512 +
\@membroiii~-~\@instituicaomembroiii\\%
513 +
Membro titular\\%
514 +
}
515 +
}
516 +
}
517 +
518 +
%==============================================================================
519 +
% Ajuste do sumário (nada indentado)
520 +
%==============================================================================
521 +
522 +
% Nível do sumário
523 +
\setcounter{tocdepth}{4}
524 +
525 +
\newlength{\ei@chapnumindent}\setlength{\ei@chapnumindent}{1em}
526 +
527 +
\renewcommand*{\l@chapter}[2]{
528 +
\addpenalty{-\@highpenalty}
529 +
\vskip -1ex \@plus\p@
530 +
\setlength\@tempdima{1.5em}
531 +
\begingroup
532 +
\parindent \z@ \rightskip \@pnumwidth
533 +
\parfillskip -\@pnumwidth
534 +
\leavevmode\bfseries\sffamily
535 +
\advance\leftskip\@tempdima
536 +
\hskip -\leftskip
537 +
\@dottedtocline{0}{0em}{\ei@chapnumindent}{\MakeUppercase{#1}}{#2}
538 +
\penalty\@highpenalty
539 +
\endgroup
540 +
}
541 +
\renewcommand*{\l@section}[2]
542 +
{\@dottedtocline{1}{0em}{1.8em}{\MakeUppercase{#1}}{\hss #2}}
543 +
544 +
\renewcommand*{\l@subsection}[2]{\@dottedtocline{2}{0em}{2.5em}{\textbf{#1}}{#2}}
545 +
546 +
\renewcommand*{\l@subsubsection}[2]{\@dottedtocline{3}{0em}{3.5em}{\textit{#1}}{#2}}
547 +
548 +
\renewcommand*{\l@paragraph}[2]{\@dottedtocline{4}{0em}{4.25em}{\uline{#1}}{#2}}
549 +
550 +
\newif\if@aftertoc
551 +
\@aftertocfalse
552 +
\renewcommand{\tableofcontents}{%
553 +
\chapter*{\contentsname}
554 +
\@starttoc{toc}\@aftertoctrue%
555 +
}
556 +
557 +
%
558 +
% Anexos e apêndices
559 +
%
560 +
561 +
% Seção anexo
562 +
\newcounter{annex}% add counter
563 +
\renewcommand\theannex{\annexname~\@Alph\c@annex \space --}
564 +
565 +
\newcommand*\l@annex[2]{
566 +
\addpenalty{-\@highpenalty}
567 +
\vskip -1ex \@plus\p@
568 +
\setlength\@tempdima{1.5em}
569 +
\begingroup
570 +
\parindent \z@ \rightskip \@pnumwidth
571 +
\parfillskip -\@pnumwidth
572 +
\leavevmode\bfseries\sffamily
573 +
\advance\leftskip\@tempdima
574 +
\hskip -\leftskip
575 +
\@dottedtocline{0}{0em}{5.75em}{\MakeUppercase{#1}}{#2}
576 +
\penalty\@highpenalty
577 +
\endgroup
578 +
}
579 +
580 +
\newcommand\annexmark[1]{} % define header/footer
581 +
\newcommand\annex{
582 +
\clearpage%
583 +
\vspace*{90pt}%
584 +
\@startsection{annex}{0}{0pt}{0pt}{42pt}{\centering\reset@font\ei@chapterfont\sffamily\bfseries\MakeUppercase}%
585 +
}
586 +
587 +
% Seção apêndice
588 +
\newcounter{append}% add counter
589 +
\renewcommand\theappend{\appendixname~\@Alph\c@append \space --}
590 +
591 +
\newcommand*\l@append[2]{
592 +
\addpenalty{-\@highpenalty}
593 +
\vskip -1ex \@plus\p@
594 +
\setlength\@tempdima{1.5em}
595 +
\begingroup
596 +
\parindent \z@ \rightskip \@pnumwidth
597 +
\parfillskip -\@pnumwidth
598 +
\leavevmode\bfseries\sffamily
599 +
\advance\leftskip\@tempdima
600 +
\hskip -\leftskip
601 +
\@dottedtocline{0}{0em}{7.25em}{\MakeUppercase{#1}}{#2}
602 +
\penalty\@highpenalty
603 +
\endgroup
604 +
}
605 +
606 +
\newcommand\appendmark[1]{} % define header/footer
607 +
\newcommand\append{
608 +
\clearpage%
609 +
\vspace*{90pt}%
610 +
\@startsection{append}{0}{0pt}{0pt}{42pt}{\centering\reset@font\ei@chapterfont\sffamily\bfseries\MakeUppercase}%
611 +
}
612 +
613 +
%==============================================================================
614 +
% Definição das listas de abreviaturas e siglas e de símbolos
615 +
%==============================================================================
616 +
\newenvironment{listofabbrv}[1]{
617 +
\chapter*{\listabbrvname}
618 +
\begin{list}{\textbf{??}}{%
619 +
\settowidth{\labelwidth}{#1}%
620 +
\setlength{\labelsep}{1em}%
621 +
\setlength{\itemindent}{0mm}%
622 +
\setlength{\leftmargin}{\labelwidth}%
623 +
\addtolength{\leftmargin}{\labelsep}%
624 +
\setlength{\rightmargin}{0mm}%
625 +
\setlength{\itemsep}{.1\baselineskip}%
626 +
\renewcommand{\makelabel}[1]{\makebox[\labelwidth][l]{##1}}%
627 +
}
628 +
}{
629 +
\end{list}
630 +
}
631 +
632 +
\newenvironment{listofsymbols}[1]{
633 +
\chapter*{\listsymbolname}
634 +
\begin{list}{\textbf{??}}{%
635 +
\settowidth{\labelwidth}{#1}%
636 +
\setlength{\labelsep}{1em}%
637 +
\setlength{\itemindent}{0mm}%
638 +
\setlength{\leftmargin}{\labelwidth}%
639 +
\addtolength{\leftmargin}{\labelsep}%
640 +
\setlength{\rightmargin}{0mm}%
641 +
\setlength{\itemsep}{.1\baselineskip}%
642 +
\renewcommand{\makelabel}[1]{\makebox[\labelwidth][l]{##1}}%
643 +
}
644 +
}{
645 +
\end{list}
646 +
}
647 +
648 +
%==============================================================================
649 +
% Resumo (abstract) e Abstract (englishabstract)
650 +
%==============================================================================
651 +
\renewenvironment{abstract}{%
652 +
\chapter*{\abstractname}
653 +
}{%
654 +
\par\vskip 0.5cm%
655 +
\noindent\textbf{\keywordsname:} \@abstractkw.
656 +
}
657 +
658 +
\newenvironment{englishabstract}[1]{%
659 +
\if@openright\cleardoublepage\else\clearpage\fi%
660 +
\gdef\@englishkeywords{#1}%
661 +
\iflanguage{english}{
662 +
\begin{otherlanguage}{brazilian}
663 +
}{
664 +
\begin{otherlanguage}{english}
665 +
}
666 +
\chapter*{\abstractname}
667 +
}{
668 +
\par\vskip 0.5cm%
669 +
\noindent\textbf{\keywordsname:} \@englishkeywords.
670 +
\end{otherlanguage}
671 +
}
672 +
673 +
%==============================================================================
674 +
% Formatação dos capítulos.
675 +
% Os comandos \@chapter e \@schapter são redefinidos para que a
676 +
% numeração de páginas seja correta (deve aparecer somente a partir do
677 +
% primeiro capítulo do texto, mas não nas páginas iniciais de
678 +
% capítulos).
679 +
% Os comandos \@makechapterhead e \@makeschapterhead fazem a
680 +
% formatação dos títulos propriamente ditos.
681 +
%==============================================================================
682 +
\newcommand{\ei@chapterfont}{\@setfontsize\Large{16}{20}}
683 +
\def\@chapapp{}
684 +
685 +
\def\@chapter[#1]#2{%
686 +
\onehalfspacing
687 +
\refstepcounter{chapter}%
688 +
\addcontentsline{toc}{chapter}{\protect\numberline{\@chapapp\thechapter}#1}%
689 +
\addtocontents{lof}{\protect\addvspace{10\p@}}%
690 +
\addtocontents{lot}{\protect\addvspace{10\p@}}%
691 +
\pagestyle{texufpel}\let\ps@plain\ps@texufpel%
692 +
\@makechapterhead{#2}\@afterheading%
693 +
}
694 +
695 +
\def\@makechapterhead#1{%
696 +
\vspace*{90pt}%
697 +
\reset@font\noindent{\ei@chapterfont\sffamily\textbf{\@chapapp\thechapter\hspace{1em}\MakeUppercase{#1}}\par}%
698 +
\addvspace{42pt}%
699 +
\thispagestyle{empty}%
700 +
}
701 +
702 +
\def\@schapter#1{%
703 +
\if@aftertoc\addcontentsline{toc}{chapter}{#1}\fi%
704 +
\addtocontents{lof}{\protect\addvspace{10\p@}}%
705 +
\addtocontents{lot}{\protect\addvspace{10\p@}}%
706 +
\@makeschapterhead{#1}\@afterheading%
707 +
}
708 +
709 +
\def\@makeschapterhead#1{%
710 +
\vspace*{90pt}%
711 +
\reset@font\centerline{\ei@chapterfont\sffamily\textbf{\MakeUppercase{#1}}}%
712 +
\addvspace{42pt}%
713 +
}
714 +
715 +
%==============================================================================
716 +
% Formatação das seções
717 +
%==============================================================================
718 +
\setcounter{secnumdepth}{4}
719 +
720 +
\renewcommand{\section}{%
721 +
\@startsection{section}{1}{0pt}{18pt}{9pt}{\reset@font\large\MakeUppercase}
722 +
}
723 +
724 +
\renewcommand{\subsection}{%
725 +
\@startsection{subsection}{2}{0pt}{12pt}{6pt}{\reset@font\bfseries}
726 +
}
727 +
728 +
\renewcommand{\subsubsection}{%
729 +
\@startsection{subsubsection}{3}{0pt}{12pt}{6pt}{\reset@font\itshape}
730 +
}
731 +
732 +
\renewcommand{\paragraph}{%
733 +
\@startsection{paragraph}{4}{0pt}{12pt}{6pt}{\reset@font\uline}
734 +
}
735 +
736 +
\renewcommand{\subparagraph}{%
737 +
\@startsection{subparagraph}{5}{0pt}{1ex}{-1em}{\reset@font\bfseries}
738 +
}
739 +
740 +
%==============================================================================
741 +
% Formatação das legendas
742 +
%==============================================================================
743 +
\renewcommand{\thefigure}{\@arabic\c@figure}
744 +
\renewcommand{\thetable}{\@arabic\c@table}
745 +
746 +
\counterwithout{figure}{chapter}
747 +
\counterwithout{equation}{chapter}
748 +
\counterwithout{table}{chapter}
749 +
750 +
%==============================================================================
751 +
% Redefinição do conteúdo das listas de figuras e tabelas
752 +
%==============================================================================
753 +
\newif\if@captionlisting\@captionlistingtrue
754 +
\long\def\@caption#1[#2]#3{%
755 +
\par
756 +
\if@captionlisting%
757 +
\addcontentsline{\csname ext@#1\endcsname}{#1}%
758 +
{\protect\numberline{\csname fnum@#1\endcsname}{\ignorespaces #2}}%
759 +
\fi%
760 +
\begingroup
761 +
\@parboxrestore
762 +
\if@minipage
763 +
\@setminipage
764 +
\fi
765 +
\normalsize
766 +
\@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
767 +
\endgroup%
768 +
}
769 +
770 +
\renewcommand*{\l@figure}{\@dottedtocline{1}{0em}{5.5em}}
771 +
\let\l@table\l@figure
772 +
773 +
%==============================================================================
774 +
% Redefinição do formato de citações longas
775 +
%==============================================================================
776 +
\renewenvironment{quote}{%
777 +
\small%
778 +
\begin{list}{}{\setlength{\leftmargin}{40mm}\item\relax}
779 +
}{%
780 +
\end{list}
781 +
}
782 +
783 +
%==============================================================================
784 +
% Ajuste do formato das citações e referências
785 +
%==============================================================================
786 +
\setlength{\bibhang}{0pt}
787 +
\let\cite\citep
788 +
789 +
%
790 +
% Definições de seções restantes.
791 +
%
792 +
793 +
% Ficha catalográfica: Uma página temporária, somente indicando que é necessário ter a ficha catalográfica
794 +
795 +
\newcommand{\fichacatalografica}{%
796 +
\clearpage%
797 +
\mbox{}%
798 +
\vfill
799 +
\begin{center}
800 +
\textbf{Insira AQUI a ficha catalogr\'afica\\(solicitada na p\'agina da biblioteca)}
801 +
\end{center}
802 +
\vfill%
803 +
}
804 +
805 +
% Seção de agradecimentos
806 +
807 +
\newenvironment{agradecimentos}{%
808 +
\chapter*{Agradecimentos}%
809 +
}{%
810 +
}
811 +
812 +
% Seção de dedicatória
813 +
814 +
\newenvironment{dedicatoria}{%
815 +
\clearpage%
816 +
\mbox{}\vfill\begin{flushright}%
817 +
}{%
818 +
\end{flushright}%
819 +
}
820 +
821 +
% Seção de epígrafe
822 +
823 +
\newenvironment{epigrafe}{%
824 +
\clearpage%
825 +
\mbox{}\vfill\begin{flushright}%
826 +
}{%
827 +
\end{flushright}%
828 +
}
829 +