Skip to content

Instantly share code, notes, and snippets.

Claus Due NamelessCoder

Block or report user

Report or block NamelessCoder

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@NamelessCoder
NamelessCoder / FluidSequencerSyntax.md
Last active May 29, 2019
Fluid syntax possibilities with new Sequencer
View FluidSequencerSyntax.md

simple open+close non-active tag in root context:

  • <tag>x</tag>

simple open+close non-active tag with hardcoded attribute in root context:

  • <tag attr="foo">x</tag>

simple open+close non-active tag with object accessor attribute value in root context:

View IdeaContentTypesApi.md

Idea: Content Types API for TYPO3

This brief aims to outline an idea I had for TYPO3: an API for registering various content types that can then be used by editors. Currently we have a multitude of different ways such content types can be achieved, even with sub-types for plugins and sub-sub-types in the form of Extbase-based plugins.

It would make sense to have a common API for all this.

First part of solution: autoloaded configuration file returning objects

@NamelessCoder
NamelessCoder / injectionmethods.md
Last active Dec 6, 2018
Why you should never use @Inject in TYPO3 Extbase
View injectionmethods.md

This mini-article describes the methods of dependency injection, what each method implies in terms of both performance and simplicity.

  1. Constructor injection

This method is half manual and quite well known. Declare your classes' dependencies as constructor and pass the dependencies when you construct your instances. This approach completely skips the automation around detection of injections - but performs the best of all methods.

@NamelessCoder
NamelessCoder / LexerBasedFluid.md
Last active Jun 25, 2018
Research into Lexer-based Fluid tokenisation for improved syntax
View LexerBasedFluid.md

The following are examples of new syntax capabilities that will/may become possible if switching Fluid away from regular expression parsing, to a lexer yielding a stream of tokens that can then be parsed to become a Fluid "syntax tree".

The lexer is a research project, in progress, but nearing completion. I plan to combine it with a "streaming node parser" which only processes the tokens it must, as opposed to processing everything like the current Fluid parser does.

Some of these already work - most of them are being researched

@NamelessCoder
NamelessCoder / Menu.html
Last active May 13, 2018
Rendering manual menus with VHS
View Menu.html
<div xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
<!-- By setting the "as" argument, we create a new variable accessible inside tag content -->
<v:page.menu as="myMenuVariable">
<ol class="mySpecialMenu">
<f:for each="{myMenuVariable}" as="menuPage">
<li>
<!-- A few key properties are added on {menuPage} for user friendliness -->
<!-- These are: "linktext", "link", "active", "current", "hasSubPages" -->
<f:if condition="{menuPage.current}">
@NamelessCoder
NamelessCoder / AdditionalConfiguration.php
Created Mar 12, 2017
Using namelesscoder/typo3-cms-multilevel-cache
View AdditionalConfiguration.php
<?php
/*
* Demonstrates how to configure `namelesscoder/typo3-cms-multilevel-cache` for
* added L1 (runtime) and L2 (memcached) caches on existing database-backed caches.
*
* Tip: if your site changes frequently, consider assigning a low expiration time
* on the "default_memcached" cache configuration.
*/
View GridTCA.md
@NamelessCoder
NamelessCoder / content-page-vision.md
Last active Jan 10, 2018
My vision for TYPO3 content/page integrations
View content-page-vision.md

My vision for TYPO3 content/page integrations

Estimated 15 minute read

Continuing from my vision for Fluid I'd like to describe another vision related to it. Where the first article is mainly about what we could do with the Fluid template engine outside of TYPO3, this article focuses on what we can do with it in TYPO3. It assumes the previous vision was realised.

The vision can be summarised as follows:

We should have a way to drop-in replace and add content templates, instead of requiring massive amounts of boilerplate configuration/code. And we should have a method for managing nested content which is provided by the core itself.

@NamelessCoder
NamelessCoder / TheTYPO3PSR6CacheAdventure.md
Created Jun 6, 2017
Mini-article about how I am replacing the TYPO3 caching framework with PSR-6 / Doctrine caches
View TheTYPO3PSR6CacheAdventure.md

Dear reader,

This is a small article to explain the vision and strategy for replacing the TYPO3 caches with a PSR-6 implementation. In the article I will explain the background of caches in TYPO3, the similarity it has to the PSR-6 standard, and the strategy for replacing such a vital component with as few problems as possible.

Current status: framework is almost entirely replaced and the vision described here is being prepared as merge requests.

Note, I have intentionally put the references to chosen framework last in this article. Please read the article before you check the foot note references - that way you will keep in mind all my decisions when reading the capabilities of the

@NamelessCoder
NamelessCoder / install_typo3_62_ft3.sh
Last active Jan 13, 2017
Bash script to install TYPO3 6.2 LTS (dev) and FluidTYPO3 extensions (dev)
View install_typo3_62_ft3.sh
#!/usr/bin/env bash
# phase one: core install
# Pro tip: edit the script and use this repository instead to try out the
# codename "Awesome Ocelot" project - which should be even faster than the
# bare 6.2 core: https://github.com/NamelessCoder/TYPO3.CMS.git
# Live demo of "Awesome Ocelot" is at http://staging.namelesscoder.net
git clone https://github.com/TYPO3/TYPO3.CMS.git --depth 1
You can’t perform that action at this time.