diff --git a/docs/commit_messages.txt b/docs/commit_messages.txt
index ff36829b6e4723961e0af6bb51cf108515a701d1..178b4d0cf0616b0acb58613d7183cfce10a55850 100644
--- a/docs/commit_messages.txt
+++ b/docs/commit_messages.txt
@@ -42,6 +42,36 @@ configure.ac:
 	--enable-tests=yes, if check is present, and like --enable-tests=no
 	otherwise.
 
+.gitlab-ci.yml:
+	This package uses a gitlab repository for version control and
+	also has some ci jobs. The package is setup, as the files
+	generated via autoreconf are not included in the vcs. Then the
+	package is compiled and tested. Furthermore, a release is
+	created and uploaded. It is accompanied by a tag naming this
+	nightly release. Note, that adding a tag triggers the pipeline
+	again, which would result in an error, as a release with the
+	same name can't be added twice. This is prevented with an
+	execution rule.
+	These releases are manually deleted from time to time, as they
+	take up space.
+	For uploading and creating the release, the tar-name is needed.
+	That's why for this there are separate shell scripts in which
+	configure substitutes some variables.
+
+	Note, that separating the work into different stages, using a
+	makefile, to determine what should be compiled, using git and
+	gitlab's behaviour, doesn't always works as intended. The
+	library used to be always recompiled, even if it has already
+	been compiled in the previous stage, because on git checkout,
+	which is done at every stage, the files get the timestamp of
+	the checkout-time, but the already build files, coming from
+	artifacts, have older times, thus resulting in a recompilation.
+	This is fixed with setting the timestamp of every file to the
+	last change git knows of.
+
+	Actually some bugs were already found due to testing the
+	package in another environment.
+
 main.c:
 	As this project is about a library, a main.c would not be
 	expected. It contains a small demo program using the library.
@@ -347,6 +377,47 @@ Fragment:
 	missing, as it depends on still not implemented functionality
 	of SH_Text.
 
+
+	The TextFragment is used to implement the text between and
+	outside html tags. Currently, it is still very rudimentary in,
+	that it doesn't support any operations at all and just has a
+	function to expose a internal text.
+	While this function is necessary to manipulate the content of a
+	TextFragment, the TextFragment should abstract the semantics of
+	Text. While simple wrapper functions for appending are to be
+	added, methods purely manipulating the text, i.e. relying on
+	the text's contents, wont get wrapper functions. Thus this
+	function is still needed until a more sophisticated approach is
+	implemented.
+	Some basic text functionality is already supported via wrapper
+	functions.
+	Note that wrapper functions aren't tested in unit tests.
+
+	When a newline is encountered in the text, a <br /> is inserted
+	and for wrap mode also a newline and an indent is inserted.
+	Note, that the indent is still missing at the front where it
+	can't be inserted yet as SH_Text is still lacking basic
+	functionality.
+
+
+	The html generation for both TextFragment and NodeFragment
+	combined is tested. As the encoding semantics of the
+	TextFragments are neither defined nor implemented, some tests
+	are marked as XFAIL.
+
+
+	What is still missing is the proper treatment of embed text.
+	This should be indented and breaked at 72/79/80. Also newlines
+	and special chars should be replaced on generation, maybe also
+	giving some way of preventing XSS. Regarding the NodeFragment
+	there should be some adjustments to further adjust the styling,
+	which of course should also be reflected by TextFragment. This
+	should also include the generation of self-closing tags.
+	Furthermore the html generation should be based on a single
+	text object, to which is added to. This will later on also
+	enable to directly send generated parts over the network while
+	still generating some data.
+
 Validator:
 	Validator serves as an syntax checker, i.e. it can be requested
 	whether a tag is allowed.
@@ -458,6 +529,33 @@ Text:
 	is returned.
 
 
+	It was tried to implement the text in terms of multiple text
+	segments.
+
+	While it would be preferable, it doesn't seam to be possible to
+	abstract over the internals of text_segment. That's why only
+	some basic functionality is moved, but whether more is to
+	follow, is not known yet.
+
+	A text_segment allocates memory in terms of chunks, this is now
+	also done, when created from a string, but this means that we
+	can't rely on strdup any more, as it takes care of the
+	allocation. Calling malloc ourselves shouldn't be such an
+	overhead as at least glibc's strdup performs the exact same
+	steps. Actually we should be spare a strlen call now, so it
+	should be more performant.
+
+	The copy_and_replace function replaces a single character with
+	a string, while copying. This may be replaced by an elaborate
+	function as manipulating a text normally means that
+	manipulating is deferred until needed, which this function
+	contradicts to.
+
+
+	Also there is the concept of a text mark.
+	A mark will be used to point to a specific location inside of a
+	text. Currently it can't do anything and isn't even used.
+
 Tests:
 	Tests are done using check, allowing to integrate the tests
 	into the GNU Autotools.
diff --git a/sefht.geany b/sefht.geany
index 7dda934d610937d345c7fb8cf35ab6acd55bb99d..8a2303e201d17e02c00b441385086d3e278a384b 100644
--- a/sefht.geany
+++ b/sefht.geany
@@ -34,7 +34,7 @@ FILE_NAME_1=134;None;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2F
 FILE_NAME_2=1737;Sh;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fconfigure.ac;0;8
 FILE_NAME_3=73;Make;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2FMakefile.am;0;8
 FILE_NAME_4=19;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Fmain.c;0;8
-FILE_NAME_5=23257;None;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fdocs%2Fcommit_messages.txt;0;8
+FILE_NAME_5=3555;None;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fdocs%2Fcommit_messages.txt;0;8
 FILE_NAME_6=1867;Make;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2FMakefile.am;0;8
 FILE_NAME_7=18;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fcms.c;0;8
 FILE_NAME_8=18;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fcms.h;0;8