Browse Source

Feat: Import all old stuff

DEV
Bertrand Benjamin 1 year ago
parent
commit
76a4e19baf
300 changed files with 15589 additions and 0 deletions
  1. +102
    -0
      Makefile
  2. +47
    -0
      content/pages/Enseignements.rst
  3. +103
    -0
      content/pages/Workflows.rst
  4. +12
    -0
      content/pages/about.rst
  5. +36
    -0
      content/pages/home.rst
  6. +103
    -0
      develop_server.sh
  7. +73
    -0
      fabfile.py
  8. +5
    -0
      notes
  9. +98
    -0
      pelicanconf.py
  10. +24
    -0
      publishconf.py
  11. +11
    -0
      requirements.txt
  12. +59
    -0
      theme/.gitignore
  13. +13
    -0
      theme/.travis.yml
  14. +56
    -0
      theme/CHANGELOG.md
  15. +22
    -0
      theme/LICENSE
  16. +87
    -0
      theme/README.md
  17. +1
    -0
      theme/docs/CNAME
  18. +9
    -0
      theme/docs/README.md
  19. +172
    -0
      theme/docs/blog/archives.html
  20. +313
    -0
      theme/docs/blog/author/alexandre-vicenzi.html
  21. +159
    -0
      theme/docs/blog/authors.html
  22. +159
    -0
      theme/docs/blog/categories.html
  23. +313
    -0
      theme/docs/blog/category/news.html
  24. +188
    -0
      theme/docs/blog/feeds/all.atom.xml
  25. +188
    -0
      theme/docs/blog/feeds/news.atom.xml
  26. +221
    -0
      theme/docs/blog/flex-pelican-theme-update-1-1-1.html
  27. +226
    -0
      theme/docs/blog/flex-pelican-theme-update-1-1.html
  28. +225
    -0
      theme/docs/blog/flex-pelican-theme-update-1-2-0.html
  29. +238
    -0
      theme/docs/blog/flex-pelican-theme-update-2-0.html
  30. +236
    -0
      theme/docs/blog/flex-pelican-theme-update-2-1.html
  31. +218
    -0
      theme/docs/blog/flex-pelican-theme-update-2-2.html
  32. +302
    -0
      theme/docs/blog/flex-pelican-theme.html
  33. BIN
      theme/docs/blog/images/flex-screenshot.png
  34. +312
    -0
      theme/docs/blog/index.html
  35. +155
    -0
      theme/docs/blog/pages/about.html
  36. +155
    -0
      theme/docs/blog/pages/contact.html
  37. +313
    -0
      theme/docs/blog/tag/pelican.html
  38. +313
    -0
      theme/docs/blog/tag/python.html
  39. +313
    -0
      theme/docs/blog/tag/theme.html
  40. +160
    -0
      theme/docs/blog/tags.html
  41. +4
    -0
      theme/docs/blog/theme/font-awesome/css/font-awesome.min.css
  42. BIN
      theme/docs/blog/theme/font-awesome/fonts/FontAwesome.otf
  43. BIN
      theme/docs/blog/theme/font-awesome/fonts/fontawesome-webfont.eot
  44. +685
    -0
      theme/docs/blog/theme/font-awesome/fonts/fontawesome-webfont.svg
  45. BIN
      theme/docs/blog/theme/font-awesome/fonts/fontawesome-webfont.ttf
  46. BIN
      theme/docs/blog/theme/font-awesome/fonts/fontawesome-webfont.woff
  47. BIN
      theme/docs/blog/theme/font-awesome/fonts/fontawesome-webfont.woff2
  48. BIN
      theme/docs/blog/theme/img/cc/by-nc-nd.png
  49. BIN
      theme/docs/blog/theme/img/cc/by-nc-sa.png
  50. BIN
      theme/docs/blog/theme/img/cc/by-nc.png
  51. BIN
      theme/docs/blog/theme/img/cc/by-nd.png
  52. BIN
      theme/docs/blog/theme/img/cc/by-sa.png
  53. BIN
      theme/docs/blog/theme/img/cc/by.png
  54. BIN
      theme/docs/blog/theme/img/profile.png
  55. +1
    -0
      theme/docs/blog/theme/img/profile_license.txt
  56. +60
    -0
      theme/docs/blog/theme/pygments/abap.css
  57. +1
    -0
      theme/docs/blog/theme/pygments/abap.min.css
  58. +44
    -0
      theme/docs/blog/theme/pygments/algol.css
  59. +1
    -0
      theme/docs/blog/theme/pygments/algol.min.css
  60. +44
    -0
      theme/docs/blog/theme/pygments/algol_nu.css
  61. +1
    -0
      theme/docs/blog/theme/pygments/algol_nu.min.css
  62. +61
    -0
      theme/docs/blog/theme/pygments/arduino.css
  63. +1
    -0
      theme/docs/blog/theme/pygments/arduino.min.css
  64. +66
    -0
      theme/docs/blog/theme/pygments/autumn.css
  65. +1
    -0
      theme/docs/blog/theme/pygments/autumn.min.css
  66. +52
    -0
      theme/docs/blog/theme/pygments/borland.css
  67. +1
    -0
      theme/docs/blog/theme/pygments/borland.min.css
  68. +39
    -0
      theme/docs/blog/theme/pygments/bw.css
  69. +1
    -0
      theme/docs/blog/theme/pygments/bw.min.css
  70. +69
    -0
      theme/docs/blog/theme/pygments/colorful.css
  71. +1
    -0
      theme/docs/blog/theme/pygments/colorful.min.css
  72. +69
    -0
      theme/docs/blog/theme/pygments/default.css
  73. +1
    -0
      theme/docs/blog/theme/pygments/default.min.css
  74. +69
    -0
      theme/docs/blog/theme/pygments/emacs.css
  75. +1
    -0
      theme/docs/blog/theme/pygments/emacs.min.css
  76. +69
    -0
      theme/docs/blog/theme/pygments/friendly.css
  77. +1
    -0
      theme/docs/blog/theme/pygments/friendly.min.css
  78. +78
    -0
      theme/docs/blog/theme/pygments/fruity.css
  79. +1
    -0
      theme/docs/blog/theme/pygments/fruity.min.css
  80. +69
    -0
      theme/docs/blog/theme/pygments/github.css
  81. +1
    -0
      theme/docs/blog/theme/pygments/github.min.css
  82. +34
    -0
      theme/docs/blog/theme/pygments/igor.css
  83. +1
    -0
      theme/docs/blog/theme/pygments/igor.min.css
  84. +70
    -0
      theme/docs/blog/theme/pygments/lovelace.css
  85. +1
    -0
      theme/docs/blog/theme/pygments/lovelace.min.css
  86. +69
    -0
      theme/docs/blog/theme/pygments/manni.css
  87. +1
    -0
      theme/docs/blog/theme/pygments/manni.min.css
  88. +70
    -0
      theme/docs/blog/theme/pygments/monokai.css
  89. +1
    -0
      theme/docs/blog/theme/pygments/monokai.min.css
  90. +69
    -0
      theme/docs/blog/theme/pygments/murphy.css
  91. +1
    -0
      theme/docs/blog/theme/pygments/murphy.min.css
  92. +78
    -0
      theme/docs/blog/theme/pygments/native.css
  93. +1
    -0
      theme/docs/blog/theme/pygments/native.min.css
  94. +72
    -0
      theme/docs/blog/theme/pygments/paraiso-dark.css
  95. +1
    -0
      theme/docs/blog/theme/pygments/paraiso-dark.min.css
  96. +72
    -0
      theme/docs/blog/theme/pygments/paraiso-light.css
  97. +1
    -0
      theme/docs/blog/theme/pygments/paraiso-light.min.css
  98. +68
    -0
      theme/docs/blog/theme/pygments/pastie.css
  99. +1
    -0
      theme/docs/blog/theme/pygments/pastie.min.css
  100. +66
    -0
      theme/docs/blog/theme/pygments/perldoc.css

+ 102
- 0
Makefile View File

@ -0,0 +1,102 @@
PY?=python3
PELICAN?=pelican
PELICANOPTS=
BASEDIR=$(CURDIR)
INPUTDIR=$(BASEDIR)/content
OUTPUTDIR=$(BASEDIR)/output
CONFFILE=$(BASEDIR)/pelicanconf.py
PUBLISHCONF=$(BASEDIR)/publishconf.py
FTP_HOST=localhost
FTP_USER=anonymous
FTP_TARGET_DIR=/
SSH_HOST=localhost
SSH_CONF=Embrevade
SSH_TARGET_DIR=/var/docker/opytex.org/www/
S3_BUCKET=my_s3_bucket
CLOUDFILES_USERNAME=my_rackspace_username
CLOUDFILES_API_KEY=my_rackspace_api_key
CLOUDFILES_CONTAINER=my_cloudfiles_container
DROPBOX_DIR=~/Dropbox/Public/
GITHUB_PAGES_BRANCH=gh-pages
SRC_ENS=~/Cours/Prof/Enseignements/
SRC_EXCLUDE=--exclude '*/Archive' --exclude '*/tools' --exclude '.git' --exclude '.gitignore' --exclude '*/__pycache__' --exclude '*/config.py' --exclude '*/reflections' --exclude '*/Notes' --exclude '*/notes' --exclude '*/.*' --exclude '*/Makefile' --exclude '2012-2013' --exclude '2013-2014' --exclude '2014-2015' --exclude 'Clipart' --exclude "Shombos" --exclude 'Divers'
DEBUG ?= 0
ifeq ($(DEBUG), 1)
PELICANOPTS += -D
endif
help:
@echo 'Makefile for a pelican Web site '
@echo ' '
@echo 'Usage: '
@echo ' make html (re)generate the web site '
@echo ' make clean remove the generated files '
@echo ' make regenerate regenerate files upon modification '
@echo ' make publish generate using production settings '
@echo ' make serve [PORT=8000] serve site at http://localhost:8000'
@echo ' make devserver [PORT=8000] start/restart develop_server.sh '
@echo ' make stopserver stop local server '
@echo ' make ssh_upload upload the web site via SSH '
@echo ' make rsync_upload upload the web site via rsync+ssh '
@echo ' make dropbox_upload upload the web site via Dropbox '
@echo ' make ftp_upload upload the web site via FTP '
@echo ' make s3_upload upload the web site via S3 '
@echo ' make cf_upload upload the web site via Cloud Files'
@echo ' make github upload the web site via gh-pages '
@echo ' '
@echo 'Set the DEBUG variable to 1 to enable debugging, e.g. make DEBUG=1 html'
@echo ' '
html:
$(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
clean:
[ ! -d $(OUTPUTDIR) ] || rm -rf $(OUTPUTDIR)
regenerate:
$(PELICAN) -r $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
serve:
ifdef PORT
cd $(OUTPUTDIR) && $(PY) -m pelican.server $(PORT)
else
cd $(OUTPUTDIR) && $(PY) -m pelican.server
endif
devserver:
ifdef PORT
$(BASEDIR)/develop_server.sh restart $(PORT)
else
$(BASEDIR)/develop_server.sh restart
endif
stopserver:
kill -9 `cat pelican.pid`
kill -9 `cat srv.pid`
@echo 'Stopped Pelican and SimpleHTTPServer processes running in background.'
publish:
$(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(PUBLISHCONF) $(PELICANOPTS)
ssh_upload: publish
scp -r $(OUTPUTDIR)/* $(SSH_CONF):$(SSH_TARGET_DIR)
rsync_upload: publish
rsync -e "ssh" -P -rvzc --delete --exclude "pymath" --exclude "opytex" $(OUTPUTDIR)/ $(SSH_CONF):$(SSH_TARGET_DIR) --cvs-exclude
#import_year:
# rsync -rv --delete $(SRC_EXCLUDE) --delete-excluded --include '*/' --include '*' --prune-empty-dirs $(SRC_ENS)/Archive/$$year/ $(INPUTDIR)/Enseignements/$$year
import_ens:
rsync -av --delete $(SRC_EXCLUDE) --delete-excluded --include '*/' --include '*' --prune-empty-dirs $(SRC_ENS) $(INPUTDIR)/Enseignements/
.PHONY: html help clean regenerate serve devserver publish ssh_upload rsync_upload dropbox_upload ftp_upload s3_upload cf_upload github import_ens

+ 47
- 0
content/pages/Enseignements.rst View File

@ -0,0 +1,47 @@
Tout sur les cours
##################
:date: 2016-01-23
:modified: 2016-01-24
:authors: Benjamin Bertrand
:summary: Résumé sur ma façon d'enseigner
:save_as: Enseignements/index.html
Les années qui s'écoulent
=========================
- `2014/2015 <./2014-2015>`_
- `2015/2016 <./2015-2016>`_
- `2016/2017 <./2016-2017>`_
- `2017/2018 <./2017-2018>`_
- `2018/2019 <./2018-2019>`_
Mes outils pour faire mes cours
===============================
- `Zoologie des workflows <Divers/Workflows.html>`_
- `Outils Latex <tools/>`_
Méthodes, pratiques et inspirations
===================================
En classe, j’aime me souvenir de cette phrase *Plus le professeur travaille, moins l’élève travaille*. Je crois que l’élève doit, le plus possible, **faire** et pas seulement écouter. Ainsi, l’élève est source de contenu pour faire avancer le cours. Il n’attend pas passivement que la bonne parole du prof lui soit donnée.
J’ai donc abandonné le cahier de cours au profit d’un **cahier de bord**, où l’avancée et les résultats trouvés par la classe sont inscrits. Les théorèmes ne pouvant plus être donnés, ils sont découverts par la classe et, quand c’est possible, démontrés. En relisant ce cahier, l’élève peut refaire le cheminement qui nous a permis de trouver un résultat. Il a donc à nouveau la possibilité de **comprendre** et plus seulement d’apprendre.
Pour que cela soit possible, il me faut choisir avec attention chaque activité. Elle a besoin d’être fractale ou riche. C’est à dire dotée de plusieurs niveaux de lecture. Chaque élève doit avoir la possibilité de faire quelque chose. Certains comprendront le sens profond de l’activité tandis que d’autres pourront simplement revoir et solidifier des acquis. L’activité elle-même apporte de la **différenciation**.
Comme exemple, je donnerais l’activité de découverte de `cosinus <./2017-2018/3e/Geometrie/Triangle_rectangle/>`_ . Elle permet de construire des triangles, de revoir la notion d’angle, de manipuler le rapporteur, de spiraler sur la notion d’agrandissement, de remobiliser les notions de proportionnalité, de définir le cosinus et enfin de ne pas enfermer ce cosinus dans une seule formule.
Ce genre d’activité, exigeante pour les élèves, peut difficilement se faire sur une heure complète. C’est pourquoi, mes heures de classe sont découpées en 2 ou 3 parties distinctes.
Une partie peut être dédiée à la découverte d’une notion et la suivante à la consolidation d’une notion dans un autre domaine. Ainsi les élèves ne restent pas toute l’heure en situation d’échec et ont, à chaque cours, l’opportunité de montrer qu’ils savent faire des choses. De plus, cette organisation étale d’avantage dans le temps l’apprentissage d’une notion pour la rendre plus pérenne.
Certains thèmes sont traités tout au long de l’année à raison d’une heure par semaine. C’est le cas du calcul littéral et de la programmation avec Scratch. Au collège, nous avons désormais accès à la salle informatique une heure par semaine. J’en profite pour travailler régulièrement la programmation avec Scratch au travers de **projets** à réaliser en équipe. La progression sur l’année est spiralée. L’objectif étant d’avoir fait le tour du programme aux vacances de Noël et ensuite, de revoir et d’approfondir les notions. Cette organisation me laisse le temps de tester plusieurs approches et de désamorcer les problèmes.
L’organisation de la classe a aussi été transformée afin de tirer profit de plus de diversité. Les élèves sont amenés à travailler individuellement, en groupe et en plénière. À chaque mode d’organisation son support. Quand les élèves travaillent individuellement, ils utilisent leur **cahier de recherche**. En groupe, les traces collectives sont inscrites dans le **cahier de groupe**. Et enfin, les plénières aboutissent généralement à une trace écrite dans le **cahier de bord**. Les cahiers de groupe sont ramassés à chaque fin d’heure pour que je puisse préparer la plénière de mise en commun et utiliser les productions d’élèves.
Ma pratique et mes cours sont très largement inspirés du livre Les maths ensemble et pour chacun. Je m’inspire aussi de ce que font `Christian den Hartigh <https://pedagogieagile.com/>`_ , `Dan Meyer <http://mrmeyer.com/>`_ ou encore `Arnaud Durand et Julien Durand <http://mathix.org/>`_.

+ 103
- 0
content/pages/Workflows.rst View File

@ -0,0 +1,103 @@
À bas le bon vieux: Classe -> eleve -> classe
#############################################
:date: 2018-07-07
:modified: 2018-07-07
:authors: Benjamin Bertrand
:category: Autres
:summary: Zoologie des workflows rencontrés, expérimentés ou imaginé pour la classe.
:save_as: Enseignements/Divers/Workflows.html
Ici j'essaie de faire une zoologie des façons de travailler que j'ai pu rencontrer, expérimenter ou imaginé. J'espère qu'elle va s'aggrandir avec le temps. J'espérais que cette première énumération m'aiderai à en découvrir d'autre, raté pour le moment..!
L'ancien
========
Le seul l'unique l'indetrônable, le workflow que l'on a tous subit dans notre scolarité.
Pleinière -> Seul -> Pleinière
**Description**: Le prof ecrit le cours (propriété/théorème, exemples), les élèves font les exercices seul dans leur coin (le plus grand silence est imposé) et enfin une correction est donnée au tableau (par les élèves ou le prof).
**Variantes**: Avant le cours, une activité d'introduction ou des révisions sont proposés aux élèves.
Le cours discuté
================
On écrit le cours en posant des micros questions aux élèves. On a donc des micro boucles du genre
Pleinière -> Seul -> Pleinière -> Seul ...
**Description**: Ce cours se fait à partir d'une alternance entre le prof qui fait avancer le cours et les élèves qui réfléchissent sur des temps plutôt court à des questions. Un veritable dialogue entre classe et l'enseignant s'organise.
Le classique
============
Celui là est celui qu'on utilise le plus souvent
Seul -> Groupe -> Pleinière
**Description**: Une activité est donnée au élèves. Ils commencent à plancher dessus seul (sans interactions avec les autres élèves ou avec l'enseignant). Quand ils semblent tous se l'être appropriée (signal de l'enseignant), un travail de groupe démarre. Il se termine sur une production de groupe. Enfin, l'enseignant séléctionne quelques productions pour en faire un bilan en pleinière où la classe toute ensemble reprend les productions les critiques et les améliore pour laisser finalement une trace "parfaite" (point de vue de la classe) sur le cahier de bord.
**Variantes**:
- Avant le travail individuel, il peut être interessant de faire une lecture collective de l'activité pour s'assurer que tout le monde à le vocabulaire ou les notions traitées (à Mayotte c'est la problématique permanante).
- Pour sortir du syndrome de la page blanche, on peut fixer le temps de sortie du travail individuel uniquement une fois que tous les élèves ont commencé à écrire quelque chose d'interessant sur leur cahier de recherche.
- Le temps de travail de groupe peut être coupé par des rapides retours en pleinières pour que les groupes les plus avancés partagent leurs découvertes (surtout celles non terminées).
- Il peut être interessant de changer la composition des groupes surtout vers la fin. Les élèves devront alors expliquer ce qui avait été découvert dans leur ancien groupe et integrer les découvertes des autres groupes.
- Dans le même style, on peut designer un temps où des butineurs (un par équipe) va pouvoir aller voir (sans moyen de prendre de notes) les autres groupes.
- La pleinière peut aussi être annimée par les élèves eux même qui viendront expliquer leur travail aux autres.
DMTC
====
J'aime ce workflow quand il s'ajit de faire faire des taches complexes aux élèves.
Seul -> Groupe -> Seul
**Description**: L'activité débute comme *le classique*. Les élèves décrouvrent le sujet, font leurs première expérimentations puis commencent le travail de groupe. Par contre au lieu de faire un pleinière de mise en commun, les élèves terminent la rédaction seul à la maison. Le but c'est que les difficultés techniques aient été résoluent en classe et avec l'aide des autres et que le travail de rédaction, de représentation (...) soit fait individuellement.
**Variantes**:
- Pour la partie Seul et Groupe, on retrouve les même que pour le *classique*.
- Dan Meyer dans ses 3acts proposent que les élèves cherchent eux même la question et les informations dont ils voudraient avoir accès avant le travail individuel. Cette étape peut être faire sous forme d'un petit *cours discuté*.
La TC prépréparé
================
Le workflow précendent est particulièrement difficile à mettre en place avec les petites classes (6e, 5e). On peut alors plutôt expérimenter celui là
Pleinière -> Pleinière -> individuel/groupe
**Description**: L'activité est donnée relativement en avance. À chaque cours on en parle en pleinière et les élèves sont invités la commencer. Ensuite, on faire l'activité en classe, individuellement ou en groupe.
Je n'ai jamais expérimenté ce workflow mais je sais que Maxime Dupont en était adepte (en espérant ne pas l'avoir trop dénaturé) et arrivait à faire des choses interessantes avec.
La technique/le bachotage
=========================
Workflow parfait pour les séances de travail technique ou les séances de révisions.
Seul -> Groupe -> Seul -> Groupe ...
**Description**: Une série d'exercices techniques est données. Les élèves planchent individuellement dessus. Quand les membres du groupe en ont fait quelques uns, ils mettent leurs résultats en commun et discute des différences constatés pour aboutir à la réponse "parfaite". Si un point de désaccord n'arrive pas à trouver consensus, une correction est sur le bureau qu'ils penvent consulter. Pendant ce genre de scéance, l'enseignant doit être peu solicité, c'est lui qui décide qui il veut voir.
**Variantes**: Organisation du travail avec un kanban. Les élèves y indiquent ce qu'ils prévoient de travailler et là où ils en sont.
Pair à pair
===========
Workflow trop peu exploité. Les élèves produisent des documents à destinations des autres élèves.
Seul -> Groupe -> Seul
**Description**: Les élèves font un premier exercice seul (ou en suivant n'importe quel workflow). Puis en groupe, ils doivent produire un ou plusieurs exercices du même type avec la correction. Les exercices produits sont redonnés aux autres élèves.
On peut demander aux groupes de produire plusieurs exercices du même type mais de difficultés différentes.
**Variantes**:
- Dire aux élèves que le meileur exercice (pas forcement le plus dure) sera dans la prochaine évaluation.
- Echange de travaux de reproduction/codage géométrique.

+ 12
- 0
content/pages/about.rst View File

@ -0,0 +1,12 @@
À propos
########
:date: 2015-05-16
:modified: 2015-05-16
:slug: about
:authors: Benjamin Bertrand
:summary: À propos de l'auteur.
:save_as: about.html
Une petite présentation de ... moi!

+ 36
- 0
content/pages/home.rst View File

@ -0,0 +1,36 @@
Karibu Opytex
##############
:date: 2015-05-16
:modified: 2015-05-16
:slug: index
:authors: Benjamin Bertrand
:summary: Page d'accueil
:save_as: index.html
`Mes cours </Enseignements/>`_
===============================
Ce site regroupe tout ce que j'ai pu écrire pour mes cours de math au collège et au lycée. Vous y trouverez des notes de cours (souvent incomplètes), des fiches d'exercices, des devoirs et quelques réflexions ou commentaires à leur sujet.
`Opytex </opytex>`_
=======================
Outil en ligne de commande pour générer puis compiler des fichiers latex.
J'utilise ce programme essentiellement pour produire des DM aléatoirement avec, quand c'est possible, leur correction (utilise pyMath). En voici un exemple: `DM_15_12_09 <Enseignements/3e/DM/DM_15_12_09/all_DM_15_12_09.pdf>`_.
Voir `la documentation de Opytex </opytex>`_ .
Et `ici <http://opytex.org/Enseignements/3e/DM/DM_15_12_09/>`_ pour des explications sur la création de ces sujets.
Dans la pratique, OpyTex utilise `Jinja2 <http://jinja.pocoo.org/>`_ pour inclure python dans des documents en latex.
`pyMath </pymath>`_
=====================
pyMath est un ensemble de modules écrits en Python qui vise à faciliter et automatiser la conception d'exercices de math et leur correction.
C'est le moteur qui va permettre à `Opytex </opytex>`_ de manipuler les données créées pour faire ces exercices. Il est capable de créer aléatoirement des expressions (calculs de fractions, polynômes, expressions littérales...), des données statistiques, de les simplifier et de faire des calculs avec.
À la différence d'un logiciel de calcul formel classique (comme `sympy <sympy.org>`_), pyMath va non seulement être capable de simplifier des calculs mais surtout d'expliquer comme un élève les étapes qui permettent d'arriver au résultat.

+ 103
- 0
develop_server.sh View File

@ -0,0 +1,103 @@
#!/usr/bin/env bash
##
# This section should match your Makefile
##
PY=${PY:-python3}
PELICAN=${PELICAN:-pelican}
PELICANOPTS=
BASEDIR=$(pwd)
INPUTDIR=$BASEDIR/content
OUTPUTDIR=$BASEDIR/output
CONFFILE=$BASEDIR/pelicanconf.py
###
# Don't change stuff below here unless you are sure
###
SRV_PID=$BASEDIR/srv.pid
PELICAN_PID=$BASEDIR/pelican.pid
function usage(){
echo "usage: $0 (stop) (start) (restart) [port]"
echo "This starts Pelican in debug and reload mode and then launches"
echo "an HTTP server to help site development. It doesn't read"
echo "your Pelican settings, so if you edit any paths in your Makefile"
echo "you will need to edit your settings as well."
exit 3
}
function alive() {
kill -0 $1 >/dev/null 2>&1
}
function shut_down(){
PID=$(cat $SRV_PID)
if [[ $? -eq 0 ]]; then
if alive $PID; then
echo "Stopping HTTP server"
kill $PID
else
echo "Stale PID, deleting"
fi
rm $SRV_PID
else
echo "HTTP server PIDFile not found"
fi
PID=$(cat $PELICAN_PID)
if [[ $? -eq 0 ]]; then
if alive $PID; then
echo "Killing Pelican"
kill $PID
else
echo "Stale PID, deleting"
fi
rm $PELICAN_PID
else
echo "Pelican PIDFile not found"
fi
}
function start_up(){
local port=$1
echo "Starting up Pelican and HTTP server"
shift
$PELICAN --debug --autoreload -r $INPUTDIR -o $OUTPUTDIR -s $CONFFILE $PELICANOPTS &
pelican_pid=$!
echo $pelican_pid > $PELICAN_PID
cd $OUTPUTDIR
$PY -m pelican.server $port &
srv_pid=$!
echo $srv_pid > $SRV_PID
cd $BASEDIR
sleep 1
if ! alive $pelican_pid ; then
echo "Pelican didn't start. Is the Pelican package installed?"
return 1
elif ! alive $srv_pid ; then
echo "The HTTP server didn't start. Is there another service using port" $port "?"
return 1
fi
echo 'Pelican and HTTP server processes now running in background.'
}
###
# MAIN
###
[[ ($# -eq 0) || ($# -gt 2) ]] && usage
port=''
[[ $# -eq 2 ]] && port=$2
if [[ $1 == "stop" ]]; then
shut_down
elif [[ $1 == "restart" ]]; then
shut_down
start_up $port
elif [[ $1 == "start" ]]; then
if ! start_up $port; then
shut_down
fi
else
usage
fi

+ 73
- 0
fabfile.py View File

@ -0,0 +1,73 @@
from fabric.api import *
import fabric.contrib.project as project
import os
import sys
import SimpleHTTPServer
import SocketServer
# Local path configuration (can be absolute or relative to fabfile)
env.deploy_path = 'output'
DEPLOY_PATH = env.deploy_path
# Remote server configuration
production = 'root@localhost:22'
dest_path = '/var/www'
# Rackspace Cloud Files configuration settings
env.cloudfiles_username = 'my_rackspace_username'
env.cloudfiles_api_key = 'my_rackspace_api_key'
env.cloudfiles_container = 'my_cloudfiles_container'
def clean():
if os.path.isdir(DEPLOY_PATH):
local('rm -rf {deploy_path}'.format(**env))
local('mkdir {deploy_path}'.format(**env))
def build():
local('pelican -s pelicanconf.py')
def rebuild():
clean()
build()
def regenerate():
local('pelican -r -s pelicanconf.py')
def serve():
os.chdir(env.deploy_path)
PORT = 8000
class AddressReuseTCPServer(SocketServer.TCPServer):
allow_reuse_address = True
server = AddressReuseTCPServer(('', PORT), SimpleHTTPServer.SimpleHTTPRequestHandler)
sys.stderr.write('Serving on port {0} ...\n'.format(PORT))
server.serve_forever()
def reserve():
build()
serve()
def preview():
local('pelican -s publishconf.py')
def cf_upload():
rebuild()
local('cd {deploy_path} && '
'swift -v -A https://auth.api.rackspacecloud.com/v1.0 '
'-U {cloudfiles_username} '
'-K {cloudfiles_api_key} '
'upload -c {cloudfiles_container} .'.format(**env))
@hosts(production)
def publish():
local('pelican -s publishconf.py')
project.rsync_project(
remote_dir=dest_path,
exclude=".DS_Store",
local_dir=DEPLOY_PATH.rstrip('/') + '/',
delete=True,
extra_opts='-c',
)

+ 5
- 0
notes View File

@ -0,0 +1,5 @@
# Importer tous les fichier rst
rsync -rv --del --exclude 'Archive' --exclude 'tools/skeleton' --exclude 'tools/Other' --include '*/' --include '*.rst' --exclude '*' --prune-empty-dirs /media/documents/Cours/Prof/Enseignements content/Cours/
# Ajouter une nouvelle année
Éditer pelicanconf.py pour ajouter une entrée dans links

+ 98
- 0
pelicanconf.py View File

@ -0,0 +1,98 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*- #
from __future__ import unicode_literals
AUTHOR = 'Benjamin Bertrand'
SITENAME = 'OpyTex'
SITETITLE = 'OpyTex'
SITESUBTITLE = "Des cours de maths, d'info et un peu de réfléxions personnelles."
#SITEURL = 'opytex.org'
SITEURL = ''
CC_LICENSE_COMMERCIAL = True
CC_LICENSE = True
PATH = 'content'
TIMEZONE = 'Europe/Paris'
DEFAULT_LANG = 'fr'
# theme
THEME = "./theme/"
USE_GOOGLE_FONTS = False
# Pages, articles and static
PAGE_PATHS = ['pages']
#ARTICLE_PATHS = ['pages/Enseignement', 'Blog']
ARTICLE_PATHS = ['Enseignements']
STATIC_PATHS = ['./']
INDEX_SAVE_AS = 'blog_index.html'
# Menu
MAIN_MENU = True
DISPLAY_PAGES_ON_MENU = False
DISPLAY_CATEGORIES_ON_MENU = False
MENUITEMS = [
('Opytex', "/opytex/"),
("pyMath", "/pymath/"),
("Enseignement", "/Enseignements"),
#('blog', '/blog_index.html'),
('À propos', "/about.html"),
('Archives', "/archives.html"),
]
# Feed generation is usually not desired when developing
FEED_ALL_ATOM = None
CATEGORY_FEED_ATOM = None
TRANSLATION_FEED_ATOM = None
AUTHOR_FEED_ATOM = None
AUTHOR_FEED_RSS = None
# Blogroll
LINKS = (
('2018/2019', "/Enseignements/2018-2019"),
('2017/2018', "/Enseignements/2017-2018"),
('2016/2017', "/Enseignements/2016-2017"),
('2015/2016', "/Enseignements/2015-2016"),
)
# Social widget
#SOCIAL = (('You can add links in your config file', '#'),
# )
DEFAULT_PAGINATION = 20
# Date
SHOW_DATE_MODIFIED = True
ARTICLE_ORDER_BY = "modified"
DISPLAY_ARTICLE_INFO_ON_INDEX = True
# Uncomment following line if you want document-relative URLs when developing
#RELATIVE_URLS = True
BOOTSTRAP_THEME = "flatly"
PLUGIN_PATHS = ['./plugins', './pelican-plugins']
PLUGINS = ['hierarchy',
'tag_cloud',
"list_files",
"render_math",
"always_modified",
]
READERS = {"html": None}
# hierarchy plugin config
ARTICLE_URL = 'Enseignements/{slug}/'
ARTICLE_SAVE_AS = 'Enseignements/{slug}/index.html'
#SLUGIFY_SOURCE = 'basename'
ARTICLE_NAVIGATION = True
TAGS_URL = "tags.html"
DISPLAY_TAGS_INLINE = True
DISPLAY_CATEGORIES_ON_SIDEBAR = True

+ 24
- 0
publishconf.py View File

@ -0,0 +1,24 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*- #
from __future__ import unicode_literals
# This file is only used if you use `make publish` or
# explicitly specify it as your config file.
import os
import sys
sys.path.append(os.curdir)
from pelicanconf import *
SITEURL = 'opytex.org'
RELATIVE_URLS = True
FEED_ALL_ATOM = 'feeds/all.atom.xml'
CATEGORY_FEED_ATOM = 'feeds/%s.atom.xml'
DELETE_OUTPUT_DIRECTORY = True
# Following items are often useful when publishing
#DISQUS_SITENAME = ""
#GOOGLE_ANALYTICS = ""

+ 11
- 0
requirements.txt View File

@ -0,0 +1,11 @@
blinker==1.4
docutils==0.13.1
feedgenerator==1.9
Jinja2==2.9.6
MarkupSafe==1.0
pelican==3.7.1
Pygments==2.2.0
python-dateutil==2.6.0
pytz==2017.2
six==1.10.0
Unidecode==0.4.20

+ 59
- 0
theme/.gitignore View File

@ -0,0 +1,59 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
# C extensions
*.so
# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
*.egg-info/
.installed.cfg
*.egg
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*,cover
tests/output
# Django stuff:
*.log
# Sphinx documentation
docs/_build/
# PyBuilder
target/
venv
# NPM
node_modules

+ 13
- 0
theme/.travis.yml View File

@ -0,0 +1,13 @@
language: python
python:
- "2.7"
- "3.4"
- "3.5"
- "3.6"
install:
- pip install pelican markdown
before_script:
- git clone https://github.com/getpelican/pelican-plugins plugins
script: pelican -s tests/pelicanconf.py
notifications:
email: false

+ 56
- 0
theme/CHANGELOG.md View File

@ -0,0 +1,56 @@
## 2.2.0
- Update Pygments - New themes available!
- Fix code highlight [#125](https://github.com/alexandrevicenzi/Flex/pull/125)
- New social icons
- Remove duoshuo integration [#139](https://github.com/alexandrevicenzi/Flex/pull/139)
- Other small bug fixes
This version includes de, en, es, es_ES, et, fa_IR, fr, hu_HU, it, nl_NL, pl_PL, pt_BR, ru, tr_TR, zh_CN translations.
## 2.1.0
- Italian translation [#60](https://github.com/alexandrevicenzi/Flex/issues/60)
- Hungarian transltion [#59](https://github.com/alexandrevicenzi/Flex/issues/59)
- Russian transltion [#58](https://github.com/alexandrevicenzi/Flex/issues/58)
- [Google AdSense support](https://github.com/alexandrevicenzi/Flex/issues/47)
## 2.0.0
- [Minute read like Medium](https://github.com/alexandrevicenzi/Flex/issues/48) (via plugin)
- [Theme translations](https://github.com/alexandrevicenzi/Flex/wiki/Translation-support)
- Updated font-awesome
- Changed `Cover` metadata to use relative path
This version includes de, fr and pt_BR translations.
Special thanks to @marcelhuth.
## 1.2.0
- [Update font-awesome](https://github.com/alexandrevicenzi/Flex/issues/31)
- [Added browser color configuration](https://github.com/alexandrevicenzi/Flex/pull/34)
- [Related posts](https://github.com/alexandrevicenzi/Flex/pull/27)
- [More Pygments Styles](https://github.com/alexandrevicenzi/Flex/issues/38)
- [Add StatusCake RUM support](https://github.com/alexandrevicenzi/Flex/issues/16)
## 1.1.1
- [Bug in CSS with placement of "Newer Posts" button](https://github.com/alexandrevicenzi/Flex/issues/21)
- [Posts preview on main page](https://github.com/alexandrevicenzi/Flex/issues/14)
- [Strip HTML tags from title](https://github.com/alexandrevicenzi/Flex/pull/25)
- [Added style for reddit social link](https://github.com/alexandrevicenzi/Flex/pull/23)
## 1.1.0
- [Allow custom CSS stylesheets to override the default one](https://github.com/alexandrevicenzi/Flex/pull/9)
- [Add Windows-specific font variants](https://github.com/alexandrevicenzi/Flex/pull/8)
- [Move the "tagged" bullet inside the conditional](https://github.com/alexandrevicenzi/Flex/pull/7)
- [Add stack-overflow to supported social icons](https://github.com/alexandrevicenzi/Flex/pull/6)
- [Use THEME_STATIC_DIR for asset URL's](https://github.com/alexandrevicenzi/Flex/pull/5)
- [show summary for articles in index.html](https://github.com/alexandrevicenzi/Flex/pull/4)
- [Fixed email icon bug](https://github.com/alexandrevicenzi/Flex/pull/3)
## 1.0.0
First release.

+ 22
- 0
theme/LICENSE View File

@ -0,0 +1,22 @@
The MIT License (MIT)
Copyright (c) 2015 Alexandre Vicenzi
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

+ 87
- 0
theme/README.md View File

@ -0,0 +1,87 @@
# Flex [![Build Status](https://travis-ci.org/alexandrevicenzi/Flex.svg?branch=master)](https://travis-ci.org/alexandrevicenzi/Flex) [![Dependency Status](https://david-dm.org/alexandrevicenzi/Flex.svg)](https://david-dm.org/alexandrevicenzi/Flex) [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/alexandre-vicenzi/flex?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
The minimalist [Pelican](http://blog.getpelican.com/) theme.
## Notes
- **DO NOT** send any questions to my personal email, they are **IGNORED**. If you have questions open an issue.
- This theme is not under development anymore, it's stable and has a lot of features. This means that new requests (not bug fixes) will be discussed and have lower priorities.
- If you want a version of this theme to Jekyll or Hugo open an issue and let's discuss it.
## Features
- Mobile First
- Responsive
- Semantic
- SEO Best Practices
- Open Graph
- Rich Snippets (JSON-LD)
- Related Posts (via [plugin](https://github.com/getpelican/pelican-plugins/tree/master/related_posts) or AddThis)
- Minute read (via [plugin](https://github.com/getpelican/pelican-plugins/tree/master/post_stats)) (new in 2.0)
- [Multiple Code Highlight Styles](https://github.com/alexandrevicenzi/Flex/wiki/Code-Highlight)
- [Translation Support](https://github.com/alexandrevicenzi/Flex/wiki/Translations) (new in 2.0)
## Integrations
- [AddThis](http://www.addthis.com/) Share Buttons and Related Posts
- [Disqus](https://disqus.com/)
- [Gauges Analytics](http://get.gaug.es/)
- [Google AdSense](https://www.google.com.br/adsense/start/) (new in 2.1.0)
- [Google Analytics](https://www.google.com/analytics/web/)
- [Google Tag Manager](https://www.google.com/tagmanager/)
- [Piwik Analytics](http://piwik.org/)
- [StatusCake](https://www.statuscake.com/)
## Plugins Support
- [Github Corners](https://github.com/tholman/github-corners) (new in 2.2.0)
- [I18N Sub-sites](https://github.com/getpelican/pelican-plugins/tree/master/i18n_subsites) (new in 2.0)
- [Minute read](https://github.com/getpelican/pelican-plugins/tree/master/post_stats) (new in 2.0)
- [Related Posts](https://github.com/getpelican/pelican-plugins/tree/master/related_posts)
- [Representative image](https://github.com/getpelican/pelican-plugins/tree/master/representative_image) (new in 2.2.0)
- [Neighbors](https://github.com/getpelican/pelican-plugins/tree/master/neighbors) (new in 2.2.0)
## Install
The best way to install is over [pelican-themes](https://github.com/getpelican/pelican-themes).
The alternative way is to clone this repository. The `master` branch is stable and is safe to checkout, but I would recommend you to checkout a tag branch.
## Donate
Are you using this theme? Support bug fixes and new features.
[Click here](https://www.alexandrevicenzi.com/donate) to donate.
## Documentation
The documentation covers most of the settings available and how to use this theme.
If something is missing or broken you can open a PR or fix the documentation by yourself.
[Flex Wiki](https://github.com/alexandrevicenzi/Flex/wiki)
## Live example
You can see how this theme looks like at [http://flex.alxd.me/blog/](http://flex.alxd.me/blog/).
The code is available in this project under `docs` folder.
## Contributing
**ALWAYS** open an issue before sending a PR.
Discuss the problem/feature that you want to code.
After discussing, send a PR with your changes.
As always, if you want something that only makes sense to you, fork Flex and create a new theme.
## Translations
Translate this theme to new languages at [Transifex](https://www.transifex.com/alexandrevicenzi/flex-pelican/).
![Translations](https://github.com/alexandrevicenzi/Flex/blob/master/translations/translation_chart.png)
Read more about [Translation Support](https://github.com/alexandrevicenzi/Flex/wiki/Translations) in the Wiki.
## License
MIT

+ 1
- 0
theme/docs/CNAME View File

@ -0,0 +1 @@
flex.alxd.me

+ 9
- 0
theme/docs/README.md View File

@ -0,0 +1,9 @@
# Flex Blog Example
## Build
`pelican -s pelicanconf.py`
## Publish
`pelican -s publishconf.py`

+ 172
- 0
theme/docs/blog/archives.html View File

@ -0,0 +1,172 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="HandheldFriendly" content="True" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="robots" content="index, follow" />
<link href="https://fonts.googleapis.com/css?family=Source+Code+Pro|Source+Sans+Pro:300,400,400i,700" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/stylesheet/style.min.css">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/pygments/monokai.min.css">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/font-awesome/css/font-awesome.min.css">
<link href="http://flex.alxd.me/blog/static/custom.css" rel="stylesheet">
<link href="http://flex.alxd.me/blog/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Flex Atom">
<!-- Google Analytics -->
<script type="text/javascript">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-55543164-6', 'auto');
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->
<!-- Chrome, Firefox OS and Opera -->
<meta name="theme-color" content="#333333">
<!-- Windows Phone -->
<meta name="msapplication-navbutton-color" content="#333333">
<!-- iOS Safari -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<!-- Microsoft EDGE -->
<meta name="msapplication-TileColor" content="#333333">
<meta name="author" content="Alexandre Vicenzi" />
<meta name="description" content="Flex - The minimalist Pelican theme." />
<meta property="og:site_name" content="Flex"/>
<meta property="og:type" content="blog"/>
<meta property="og:title" content="Flex"/>
<meta property="og:description" content="Flex - The minimalist Pelican theme."/>
<meta property="og:locale" content="en_US"/>
<meta property="og:url" content="http://flex.alxd.me/blog"/>
<title>Flex &ndash; Archives
</title>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-6625957038449899",
enable_page_level_ads: true
});
</script>
</head>
<body>
<aside>
<div>
<a href="http://flex.alxd.me/blog">
<img src="http://flex.alxd.me/blog/theme/img/profile.png" alt="Flex" title="Flex">
</a>
<h1><a href="http://flex.alxd.me/blog">Flex</a></h1>
<p>The minimalist Pelican theme</p>
<nav>
<ul class="list">
<li><a href="http://flex.alxd.me/blog/pages/about.html#about">About</a></li>
<li><a href="http://flex.alxd.me/blog/pages/contact.html#contact">Contact</a></li>
</ul>
</nav>
<ul class="social">
<li><a class="sc-github" href="https://github.com/alexandrevicenzi/Flex" target="_blank"><i class="fa fa-github"></i></a></li>
<li><a class="sc-rss" href="/blog/feeds/all.atom.xml" target="_blank"><i class="fa fa-rss"></i></a></li>
</ul>
</div>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads-aside"
data-ad-client="ca-pub-6625957038449899"
data-ad-slot="8752710348"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</aside>
<main>
<nav>
<a href="http://flex.alxd.me/blog"> Home
</a>
<a href="/archives.html">Archives</a>
<a href="/categories.html">Categories</a>
<a href="/tags.html">Tags</a>
<a href="http://flex.alxd.me/blog/feeds/all.atom.xml"> Atom
</a>
</nav>
<article class="single">
<header>
<h1> Archives
</h1>
</header>
<div>
<dl>
<dt>June 24, 2018</dt>
<dd><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-2.html">Flex 2.2.0</a></dd>
<dt>November 16, 2016</dt>
<dd><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-1.html">Flex 2.1.0</a></dd>
<dt>September 13, 2016</dt>
<dd><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-0.html">Flex 2.0</a></dd>
<dt>June 10, 2016</dt>
<dd><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-2-0.html">Flex 1.2.0</a></dd>
<dt>February 27, 2016</dt>
<dd><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-1-1.html">Flex 1.1.1</a></dd>
<dt>October 07, 2015</dt>
<dd><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-1.html">Flex 1.1.0</a></dd>
<dt>July 22, 2015</dt>
<dd><a href="http://flex.alxd.me/blog/flex-pelican-theme.html">Flex: Responsive Pelican theme</a></dd>
</dl>
</div>
</article>
<footer>
<p>
&copy; 2018 - This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a>
</p>
<p> Powered by <a href="http://getpelican.com" target="_blank">Pelican</a> - <a href="https://github.com/alexandrevicenzi/flex" target="_blank">Flex</a> theme by <a href="http://alexandrevicenzi.com" target="_blank">Alexandre Vicenzi</a>
</p><p>
<a rel="license"
href="http://creativecommons.org/licenses/by-sa/4.0/"
target="_blank">
<img alt="Creative Commons License"
title="Creative Commons License"
style="border-width:0"
src="https://i.creativecommons.org/l/by-sa/4.0/80x15.png"
width="80"
height="15"/>
</a>
</p> </footer>
</main>
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-55adbb025d4f7e55" async="async"></script>
<script type="application/ld+json">
{
"@context" : "http://schema.org",
"@type" : "Blog",
"name": " Flex ",
"url" : "http://flex.alxd.me/blog",
"image": "",
"description": "Flex - The minimalist Pelican theme."
}
</script>
</body>
</html>

+ 313
- 0
theme/docs/blog/author/alexandre-vicenzi.html View File

@ -0,0 +1,313 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="HandheldFriendly" content="True" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="robots" content="index, follow" />
<link href="https://fonts.googleapis.com/css?family=Source+Code+Pro|Source+Sans+Pro:300,400,400i,700" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/stylesheet/style.min.css">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/pygments/monokai.min.css">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/font-awesome/css/font-awesome.min.css">
<link href="http://flex.alxd.me/blog/static/custom.css" rel="stylesheet">
<link href="http://flex.alxd.me/blog/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Flex Atom">
<!-- Google Analytics -->
<script type="text/javascript">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-55543164-6', 'auto');
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->
<!-- Chrome, Firefox OS and Opera -->
<meta name="theme-color" content="#333333">
<!-- Windows Phone -->
<meta name="msapplication-navbutton-color" content="#333333">
<!-- iOS Safari -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<!-- Microsoft EDGE -->
<meta name="msapplication-TileColor" content="#333333">
<meta name="author" content="Alexandre Vicenzi" />
<meta name="description" content="Flex - The minimalist Pelican theme." />
<meta property="og:site_name" content="Flex"/>
<meta property="og:type" content="blog"/>
<meta property="og:title" content="Flex"/>
<meta property="og:description" content="Flex - The minimalist Pelican theme."/>
<meta property="og:locale" content="en_US"/>
<meta property="og:url" content="http://flex.alxd.me/blog"/>
<title>Flex &ndash; Posts by Alexandre Vicenzi
:</title>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-6625957038449899",
enable_page_level_ads: true
});
</script>
</head>
<body>
<aside>
<div>
<a href="http://flex.alxd.me/blog">
<img src="http://flex.alxd.me/blog/theme/img/profile.png" alt="Flex" title="Flex">
</a>
<h1><a href="http://flex.alxd.me/blog">Flex</a></h1>
<p>The minimalist Pelican theme</p>
<nav>
<ul class="list">
<li><a href="http://flex.alxd.me/blog/pages/about.html#about">About</a></li>
<li><a href="http://flex.alxd.me/blog/pages/contact.html#contact">Contact</a></li>
</ul>
</nav>
<ul class="social">
<li><a class="sc-github" href="https://github.com/alexandrevicenzi/Flex" target="_blank"><i class="fa fa-github"></i></a></li>
<li><a class="sc-rss" href="/blog/feeds/all.atom.xml" target="_blank"><i class="fa fa-rss"></i></a></li>
</ul>
</div>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads-aside"
data-ad-client="ca-pub-6625957038449899"
data-ad-slot="8752710348"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</aside>
<main>
<nav>
<a href="http://flex.alxd.me/blog"> Home
</a>
<a href="/archives.html">Archives</a>
<a href="/categories.html">Categories</a>
<a href="/tags.html">Tags</a>
<a href="http://flex.alxd.me/blog/feeds/all.atom.xml"> Atom
</a>
</nav>
<article>
<header>
<h2><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-2.html#flex-pelican-theme-update-2-2">Flex 2.2.0</a></h2>
<p>
Posted on June 24, 2018 in <a href="http://flex.alxd.me/blog/category/news.html">News</a>
</p>
</header>
<div>
<p><a href="https://github.com/alexandrevicenzi/Flex">Flex theme</a> 2.2.0 comes with bug fixes and improvements.</p>
<p>There are new Pygments templates and also a few code highlight fixes. There's also new social icons.</p>
<p>Version 2.2.0 also comes with new translations. You can see available translations <a href="https://github.com/alexandrevicenzi/Flex/wiki/Translations">here</a>.</p>
<p>Hope you enjoy this version.</p>
<br>
<a class="btn" href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-2.html#flex-pelican-theme-update-2-2"> Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-1.html#flex-pelican-theme-update-2-1">Flex 2.1.0</a></h2>
<p>
Posted on November 16, 2016 in <a href="http://flex.alxd.me/blog/category/news.html">News</a>
</p>
</header>
<div>
<p><a href="https://github.com/alexandrevicenzi/Flex">Flex theme</a> 2.1.0 comes with features that I was delaying for so long.</p>
<p>Flex 2.1.0 adds support for Google AdSense.</p>
<p>If you choose wisely, ads are a way to win some money, but if not, you may loose your users due to excessive use of ads …</p>
<br>
<a class="btn" href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-1.html#flex-pelican-theme-update-2-1"> Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-0.html#flex-pelican-theme-update-2-0">Flex 2.0</a></h2>
<p>
Posted on September 13, 2016 in <a href="http://flex.alxd.me/blog/category/news.html">News</a>
</p>
</header>
<div>
<p><a href="https://github.com/alexandrevicenzi/Flex">Flex theme</a> 2.0 comes with new features.
In fact there are two new features.</p>
<p>The biggest change is localization support.
Yes, Flex now can be translated into your language.
You can read about <a href="https://github.com/alexandrevicenzi/Flex/wiki/Translations">here</a>.</p>
<p>The biggest challege was to create a way to translate without breaking old versions.
If …</p>
<br>
<a class="btn" href="http://flex.alxd.me/blog/flex-pelican-theme-update-2-0.html#flex-pelican-theme-update-2-0"> Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-2-0.html#flex-pelican-theme-update-1-2-0">Flex 1.2.0</a></h2>
<p>
Posted on June 10, 2016 in <a href="http://flex.alxd.me/blog/category/news.html">News</a>
</p>
</header>
<div>
<p><a href="https://github.com/alexandrevicenzi/Flex">Flex theme</a> received some new features. Version 1.2.0 include new features and some updates.</p>
<p>For developers there are new color styles for your code. For general purpose there is RUM support, related posts and browser color configuration.</p>
<ul>
<li><a href="https://github.com/alexandrevicenzi/Flex/issues/31">Update font-awesome</a></li>
<li><a href="https://github.com/alexandrevicenzi/Flex/pull/34">Added browser color configuration</a></li>
<li><a href="https://github.com/alexandrevicenzi/Flex/pull/27">Related posts</a></li>
<li><a href="https://github.com/alexandrevicenzi/Flex/issues/38">More Pygments Styles …</a></li></ul>
<br>
<a class="btn" href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-2-0.html#flex-pelican-theme-update-1-2-0"> Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-1-1.html#flex-pelican-theme-update-1-1-1">Flex 1.1.1</a></h2>
<p>
Posted on February 27, 2016 in <a href="http://flex.alxd.me/blog/category/news.html">News</a>
</p>
</header>
<div>
<p>Today, <a href="https://github.com/alexandrevicenzi/Flex">Flex theme</a> received a small update.</p>
<p>Some bugs are now fixed. I think the most important fixes are:</p>
<ul>
<li><a href="https://github.com/alexandrevicenzi/Flex/issues/21">Bug in CSS with placement of "Newer Posts" button</a></li>
<li><a href="https://github.com/alexandrevicenzi/Flex/issues/14">Posts preview on main page</a></li>
</ul>
<p>Hope you enjoy this theme.</p>
<br>
<a class="btn" href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-1-1.html#flex-pelican-theme-update-1-1-1"> Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-1.html#flex-pelican-theme-update-1-1">Flex 1.1.0</a></h2>
<p>
Posted on October 07, 2015 in <a href="http://flex.alxd.me/blog/category/news.html">News</a>
</p>
</header>
<div>
<p>I've made the <a href="https://github.com/alexandrevicenzi/Flex">Flex theme</a> a time ago. For my surprise, many people are using it. I feel thankful for this.</p>
<p>So, after some new blogs with this theme, I got issues and PRs on GitHub from these new users. This weekend I had some free time and I release …</p>
<br>
<a class="btn" href="http://flex.alxd.me/blog/flex-pelican-theme-update-1-1.html#flex-pelican-theme-update-1-1"> Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="http://flex.alxd.me/blog/flex-pelican-theme.html#flex-pelican-theme">Flex: Responsive Pelican theme</a></h2>
<p>
Posted on July 22, 2015 in <a href="http://flex.alxd.me/blog/category/news.html">News</a>
</p>
</header>
<div>
<p>I just start a new fresh blog using <a href="http://getpelican.com">Pelican</a>. Sometimes choosing a theme for a new site is something difficult that takes time.</p>
<p>In the Pelican <a href="http://www.pelicanthemes.com/">theme gallery</a>, I couldn't find anything that I really liked to feet all my needs. So in the first time of the history, I …</p>
<br>
<a class="btn" href="http://flex.alxd.me/blog/flex-pelican-theme.html#flex-pelican-theme"> Continue reading
</a>
</div>
</article>
<div class="pagination">
</div>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads-responsive"
data-ad-client="ca-pub-6625957038449899"
data-ad-slot="1124188687"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
<footer>
<p>
&copy; 2018 - This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a>
</p>
<p> Powered by <a href="http://getpelican.com" target="_blank">Pelican</a> - <a href="https://github.com/alexandrevicenzi/flex" target="_blank">Flex</a> theme by <a href="http://alexandrevicenzi.com" target="_blank">Alexandre Vicenzi</a>
</p><p>
<a rel="license"
href="http://creativecommons.org/licenses/by-sa/4.0/"
target="_blank">
<img alt="Creative Commons License"
title="Creative Commons License"
style="border-width:0"
src="https://i.creativecommons.org/l/by-sa/4.0/80x15.png"
width="80"
height="15"/>
</a>
</p> </footer>
</main>
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-55adbb025d4f7e55" async="async"></script>
<script type="application/ld+json">
{
"@context" : "http://schema.org",
"@type" : "Blog",
"name": " Flex ",
"url" : "http://flex.alxd.me/blog",
"image": "",
"description": "Flex - The minimalist Pelican theme."
}
</script>
</body>
</html>

+ 159
- 0
theme/docs/blog/authors.html View File

@ -0,0 +1,159 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="HandheldFriendly" content="True" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="robots" content="index, follow" />
<link href="https://fonts.googleapis.com/css?family=Source+Code+Pro|Source+Sans+Pro:300,400,400i,700" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/stylesheet/style.min.css">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/pygments/monokai.min.css">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/font-awesome/css/font-awesome.min.css">
<link href="http://flex.alxd.me/blog/static/custom.css" rel="stylesheet">
<link href="http://flex.alxd.me/blog/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Flex Atom">
<!-- Google Analytics -->
<script type="text/javascript">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-55543164-6', 'auto');
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->
<!-- Chrome, Firefox OS and Opera -->
<meta name="theme-color" content="#333333">
<!-- Windows Phone -->
<meta name="msapplication-navbutton-color" content="#333333">
<!-- iOS Safari -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<!-- Microsoft EDGE -->
<meta name="msapplication-TileColor" content="#333333">
<meta name="author" content="Alexandre Vicenzi" />
<meta name="description" content="Flex - The minimalist Pelican theme." />
<meta property="og:site_name" content="Flex"/>
<meta property="og:type" content="blog"/>
<meta property="og:title" content="Flex"/>
<meta property="og:description" content="Flex - The minimalist Pelican theme."/>
<meta property="og:locale" content="en_US"/>
<meta property="og:url" content="http://flex.alxd.me/blog"/>
<title>Flex &ndash; Authors
</title>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-6625957038449899",
enable_page_level_ads: true
});
</script>
</head>
<body>
<aside>
<div>
<a href="http://flex.alxd.me/blog">
<img src="http://flex.alxd.me/blog/theme/img/profile.png" alt="Flex" title="Flex">
</a>
<h1><a href="http://flex.alxd.me/blog">Flex</a></h1>
<p>The minimalist Pelican theme</p>
<nav>
<ul class="list">
<li><a href="http://flex.alxd.me/blog/pages/about.html#about">About</a></li>
<li><a href="http://flex.alxd.me/blog/pages/contact.html#contact">Contact</a></li>
</ul>
</nav>
<ul class="social">
<li><a class="sc-github" href="https://github.com/alexandrevicenzi/Flex" target="_blank"><i class="fa fa-github"></i></a></li>
<li><a class="sc-rss" href="/blog/feeds/all.atom.xml" target="_blank"><i class="fa fa-rss"></i></a></li>
</ul>
</div>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads-aside"
data-ad-client="ca-pub-6625957038449899"
data-ad-slot="8752710348"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</aside>
<main>
<nav>
<a href="http://flex.alxd.me/blog"> Home
</a>
<a href="/archives.html">Archives</a>
<a href="/categories.html">Categories</a>
<a href="/tags.html">Tags</a>
<a href="http://flex.alxd.me/blog/feeds/all.atom.xml"> Atom
</a>
</nav>
<article class="single">
<header>
<h1> Authors
</h1>
</header>
<div>
<ul class="list">
<li><a href="http://flex.alxd.me/blog/author/alexandre-vicenzi.html">Alexandre Vicenzi</a> (7)</li>
</ul>
</div>
</article>
<footer>
<p>
&copy; 2018 - This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a>
</p>
<p> Powered by <a href="http://getpelican.com" target="_blank">Pelican</a> - <a href="https://github.com/alexandrevicenzi/flex" target="_blank">Flex</a> theme by <a href="http://alexandrevicenzi.com" target="_blank">Alexandre Vicenzi</a>
</p><p>
<a rel="license"
href="http://creativecommons.org/licenses/by-sa/4.0/"
target="_blank">
<img alt="Creative Commons License"
title="Creative Commons License"
style="border-width:0"
src="https://i.creativecommons.org/l/by-sa/4.0/80x15.png"
width="80"
height="15"/>
</a>
</p> </footer>
</main>
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-55adbb025d4f7e55" async="async"></script>
<script type="application/ld+json">
{
"@context" : "http://schema.org",
"@type" : "Blog",
"name": " Flex ",
"url" : "http://flex.alxd.me/blog",
"image": "",
"description": "Flex - The minimalist Pelican theme."
}
</script>
</body>
</html>

+ 159
- 0
theme/docs/blog/categories.html View File

@ -0,0 +1,159 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="HandheldFriendly" content="True" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="robots" content="index, follow" />
<link href="https://fonts.googleapis.com/css?family=Source+Code+Pro|Source+Sans+Pro:300,400,400i,700" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/stylesheet/style.min.css">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/pygments/monokai.min.css">
<link rel="stylesheet" type="text/css" href="http://flex.alxd.me/blog/theme/font-awesome/css/font-awesome.min.css">
<link href="http://flex.alxd.me/blog/static/custom.css" rel="stylesheet">
<link href="http://flex.alxd.me/blog/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Flex Atom">
<!-- Google Analytics -->
<script type="text/javascript">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-55543164-6', 'auto');
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->
<!-- Chrome, Firefox OS and Opera -->
<meta name="theme-color" content="#333333">
<!-- Windows Phone -->
<meta name="msapplication-navbutton-color" content="#333333">
<!-- iOS Safari -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<!-- Microsoft EDGE -->
<meta name="msapplication-TileColor" content="#333333">
<meta name="author" content="Alexandre Vicenzi" />
<meta name="description" content="Flex - The minimalist Pelican theme." />
<meta property="og:site_name" content="Flex"/>
<meta property="og:type" content="blog"/>
<meta property="og:title" content="Flex"/>
<meta property="og:description" content="Flex - The minimalist Pelican theme."/>
<meta property="og:locale" content="en_US"/>
<meta property="og:url" content="http://flex.alxd.me/blog"/>
<title>Flex &ndash; Categories
</title>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-6625957038449899",
enable_page_level_ads: true
});
</script>
</head>
<body>
<aside>
<div>
<a href="http://flex.alxd.me/blog">
<img src="http://flex.alxd.me/blog/theme/img/profile.png" alt="Flex" title="Flex">
</a>
<h1><a href="http://flex.alxd.me/blog">Flex</a></h1>
<p>The minimalist Pelican theme</p>
<nav>
<ul class="list">
<li><a href="http://flex.alxd.me/blog/pages/about.html#about">About</a></li>
<li><a href="http://flex.alxd.me/blog/pages/contact.html#contact">Contact</a></li>
</ul>
</nav>
<ul class="social">
<li><a class="sc-github" href="https://github.com/alexandrevicenzi/Flex" target="_blank"><i class="fa fa-github"></i></a></li>
<li><a class="sc-rss" href="/blog/feeds/all.atom.xml" target="_blank"><i class="fa fa-rss"></i></a></li>
</ul>
</div>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads-aside"
data-ad-client="ca-pub-6625957038449899"
data-ad-slot="8752710348"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</aside>
<main>
<nav>
<a href="http://flex.alxd.me/blog"> Home
</a>
<a href="/archives.html">Archives</a>
<a href="/categories.html">Categories</a>
<a href="/tags.html">Tags</a>
<a href="http://flex.alxd.me/blog/feeds/all.atom.xml"> Atom
</a>
</nav>
<article class="single">
<header>
<h1> Categories
</h1>
</header>
<div>
<ul class="list">
<li><a href="http://flex.alxd.me/blog/category/news.html">News</a> (7)</li>
</ul>
</div>
</article>
<footer>
<p>
&copy; 2018 - This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a>
</p>
<p> Powered by <a href="http://getpelican.com" target="_blank">Pelican</a> - <a href="https://github.com/alexandrevicenzi/flex" target="_blank">Flex</a> theme by <a href="http://alexandrevicenzi.com" target="_blank">Alexandre Vicenzi</a>
</p><p>
<a rel="license"
href="http://creativecommons.org/licenses/by-sa/4.0/"
target="_blank">
<img alt="Creative Commons License"
title="Creative Commons License"
style="border-width:0"
src="https://i.creativecommons.org/l/by-sa/4.0/80x15.png"
width="80"
height="15"/>
</a>
</p> </footer>
</main>
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-55adbb025d4f7e55" async="async"></script>
<script type="application/ld+json">
{
"@context" : "http://schema.org",
"@type" : "Blog",
"name": " Flex ",
"url" : "http://flex.alxd.me/blog",
"image": "",
"description": "Flex - The minimalist Pelican theme."
}
</script>
</body>
</html>