sed '/pattern/{p;s/pattern/replacement/}' input_fileExplanation:
/pattern/: This specifies the pattern that identifies the line you want to duplicate and modify.{p;s/pattern/replacement/}: This is a group of commands enclosed within {}.
| renderables: | |
| - | |
| type: Page | |
| identifier: page | |
| label: Form | |
| renderables: | |
| - | |
| defaultValue: '' | |
| type: Text | |
| identifier: name |
| <?php | |
| $tt = GeneralUtility::makeInstance(\TYPO3\CMS\Core\TimeTracker\TimeTracker::class); | |
| $tt->start(); | |
| // Expensive operation here | |
| $tt->finish(); | |
| // Print the runtime between start and finish in milliseconds. |
| <?php | |
| /* | |
| TYPO3 12+ | |
| Registration in Services.yaml | |
| See https://docs.typo3.org/m/typo3/reference-coreapi/12.4/en-us/ApiOverview/Events/Events/Backend/ModifyPageLayoutContentEvent.html | |
| */ | |
| declare(strict_types=1); |
| /* This modifies the outer part of the CKeditor */ | |
| /*********** TYPO3 12 + 13 ******************/ | |
| :root { | |
| /* Bigger preview panels in RTEs styles dropdown! */ | |
| --ck-style-panel-button-width: 200px !important; | |
| --ck-style-panel-button-height: 100px !important; | |
| } | |
| /* Broader dropdowns */ | |
| .ck.ck-dropdown.ck-style-dropdown .ck-button.ck-dropdown__button .ck-button__label { width: 18em; } |
| Berechnung und Zuweisung zu neuer Variable: | |
| ✗ {imageWidth / 2.24 -> f:variable(name: 'imageHeight')} | |
| ✓ {f:variable(name:'imageHeight', value:'{imageWidth / 2.71}')} | |
| Casting | |
| ✗ {imageHeight as integer -> f:variable(name:'imageHeight')} | |
| ✓ {f:variable(name:'imageHeight',value:'{imageHeight as integer}')} |
| t3version() { | |
| [[ -z "$1" ]] && echo "Specify new version parameter!" && return | |
| extEmconf=$(git ls-files *ext_emconf.php) | |
| if [ ! -z "$extEmconf" ]; then | |
| sed -i "s/'version'\(\s*\)=>\(\s*\)'\(.*\)',/'version'\1=>\2'$1',/" $extEmconf | |
| git add $extEmconf | |
| echo "Updated version in all ext_emconf.php's" | |
| fi | |
| packageJson=$(git ls-files *package.json) | |
| if [ ! -z "$packageJson" ]; then |
| <?php | |
| public function myAction() | |
| { | |
| $contentElement = $this->configurationManager->getContentObject()->data; | |
| $this->view->assign('record', $contentElement); | |
| } |
| # Scan for LLL keys that are not being directly accessed (anymore) | |
| # Called like this: t3-lll-scan packages/my_ext/*.xlf | |
| t3-lll-scan() { | |
| files=$(git ls-files $1) | |
| for file in $files | |
| do | |
| echo "Processing file: $file" | |
| labels=$(sed -n -e 's/^\s\+<trans-unit id="\([^"]\+\)".\+$/\1/p' $file) | |
| for label in $labels | |
| do |
| editor: | |
| config: | |
| disallowedContent: { | |
| 'h3 h4 h5': { | |
| classes: 'ce-align-left,ce-align-right,ce-align-center' | |
| } | |
| } |