<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Notizen on besserentwickeln.de</title><link>https://besserentwickeln.de/note/</link><description>Recent content in Notizen on besserentwickeln.de</description><generator>Hugo -- gohugo.io</generator><language>de</language><copyright>Philipp Tuchardt</copyright><lastBuildDate>Tue, 21 Jan 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://besserentwickeln.de/note/index.xml" rel="self" type="application/rss+xml"/><item><title>Shopware 6 Subscriber Beispiel</title><link>https://besserentwickeln.de/n/shopware-6-subscriber-beispiel/</link><pubDate>Tue, 21 Jan 2025 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/shopware-6-subscriber-beispiel/</guid><description>&lt;p>Pfad: &lt;code>MyTheme/src/Subscriber/ProductListingSubscriber.php&lt;/code>&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-php" data-lang="php">&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;?&lt;/span>&lt;span class="nx">php&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">namespace&lt;/span> &lt;span class="nx">MyTheme\Subscriber&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">use&lt;/span> &lt;span class="nx">Shopware\Core\Content\Product\Events\ProductListingCriteriaEvent&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">use&lt;/span> &lt;span class="nx">Symfony\Component\EventDispatcher\EventSubscriberInterface&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">class&lt;/span> &lt;span class="nc">ProductListingSubscriber&lt;/span> &lt;span class="k">implements&lt;/span> &lt;span class="nx">EventSubscriberInterface&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">public&lt;/span> &lt;span class="k">static&lt;/span> &lt;span class="k">function&lt;/span> &lt;span class="nf">getSubscribedEvents&lt;/span>&lt;span class="p">()&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="k">array&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="p">[&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">ProductListingCriteriaEvent&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="na">class&lt;/span> &lt;span class="o">=&amp;gt;&lt;/span> &lt;span class="s1">&amp;#39;onProductListingCriteria&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">public&lt;/span> &lt;span class="k">function&lt;/span> &lt;span class="nf">onProductListingCriteria&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">ProductListingCriteriaEvent&lt;/span> &lt;span class="nv">$event&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="nx">void&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nv">$criteria&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nv">$event&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="na">getCriteria&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nv">$criteria&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="na">addAssociation&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;properties&amp;#39;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>Pfad: &lt;code>src/Resources/config/services.xml&lt;/code>&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-xml" data-lang="xml">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&amp;lt;?xml version=&amp;#34;1.0&amp;#34; ?&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;container&lt;/span> &lt;span class="na">xmlns=&lt;/span>&lt;span class="s">&amp;#34;http://symfony.com/schema/dic/services&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="na">xmlns:xsi=&lt;/span>&lt;span class="s">&amp;#34;http://www.w3.org/2001/XMLSchema-instance&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="na">xsi:schemaLocation=&lt;/span>&lt;span class="s">&amp;#34;http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd&amp;#34;&lt;/span>&lt;span class="nt">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;services&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;service&lt;/span> &lt;span class="na">id=&lt;/span>&lt;span class="s">&amp;#34;MyTheme\Subscriber\ProductListingSubscriber&amp;#34;&lt;/span> &lt;span class="na">public=&lt;/span>&lt;span class="s">&amp;#34;true&amp;#34;&lt;/span>&lt;span class="nt">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;tag&lt;/span> &lt;span class="na">name=&lt;/span>&lt;span class="s">&amp;#34;kernel.event_subscriber&amp;#34;&lt;/span>&lt;span class="nt">/&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;/service&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;/services&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;/container&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>Nicht vergessen, den Cache zu leeren :)&lt;/p></description></item><item><title>Twig If-Bedingung kurz geschrieben</title><link>https://besserentwickeln.de/n/twig-if-bedingung-kurz-geschrieben/</link><pubDate>Tue, 21 Jan 2025 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/twig-if-bedingung-kurz-geschrieben/</guid><description>&lt;p>Lange Version&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-twig" data-lang="twig">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">{%&lt;/span> &lt;span class="k">if&lt;/span> &lt;span class="nv">category.translated.customFields.my_custom_field&lt;/span> &lt;span class="k">or&lt;/span> &lt;span class="nv">category.translated.customFields.my_custom_field&lt;/span> &lt;span class="o">!=&lt;/span> &lt;span class="kp">false&lt;/span> &lt;span class="cp">%}&lt;/span>&lt;span class="x">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>Kurze Version&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-twig" data-lang="twig">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">{{&lt;/span> &lt;span class="nv">category.translated.customFields.my_custom_field&lt;/span> &lt;span class="o">??&lt;/span> &lt;span class="kp">false&lt;/span> &lt;span class="o">?&lt;/span> &lt;span class="s1">&amp;#39;foo&amp;#39;&lt;/span> &lt;span class="o">:&lt;/span> &lt;span class="s1">&amp;#39;bar&amp;#39;&lt;/span> &lt;span class="cp">}}&lt;/span>&lt;span class="x">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Twig: Block aus Datei einbinden</title><link>https://besserentwickeln.de/n/twig-block-aus-datei-einbinden/</link><pubDate>Fri, 17 Jan 2025 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/twig-block-aus-datei-einbinden/</guid><description>&lt;p>Beispiel&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-twig" data-lang="twig">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">{{&lt;/span> &lt;span class="nb">block&lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="s1">&amp;#39;my_cool_block&amp;#39;&lt;/span>&lt;span class="o">,&lt;/span> &lt;span class="s1">&amp;#39;@Storefront/path/to/my/file.html.twig&amp;#39;&lt;/span>&lt;span class="o">)&lt;/span> &lt;span class="cp">}}&lt;/span>&lt;span class="x">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>WordPress schnell mit DDEV installieren</title><link>https://besserentwickeln.de/n/wordpress-schnell-mit-ddev-installieren/</link><pubDate>Tue, 18 Oct 2022 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/wordpress-schnell-mit-ddev-installieren/</guid><description>&lt;p>Einen tollen &lt;a class="link" href="https://muench.dev/post/2021/12/mal-eben-schnell-mit-ddev-wordpress-installieren/" target="_blank" rel="noopener"
>Link&lt;/a> gefunden, während ich im Web nach einem Bug gesucht habe.&lt;/p></description></item><item><title>Unterverzeichnis finden</title><link>https://besserentwickeln.de/n/unterverzeichnis-finden/</link><pubDate>Sun, 21 Aug 2022 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/unterverzeichnis-finden/</guid><description>&lt;p>Nach einem bestimmten Unterverzeichnis im aktuellen Verzeichnis suchen&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">find -type d -name &amp;#39;DirectoryName&amp;#39;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>Mit Wildcard&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">find -type d -name &amp;#39;DirectoryNameWithWildCard*&amp;#39;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>HTML - Details Tag</title><link>https://besserentwickeln.de/n/html-details-tag/</link><pubDate>Wed, 27 Jul 2022 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/html-details-tag/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">&amp;lt;details&amp;gt;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &amp;lt;summary&amp;gt;Epcot Center&amp;lt;/summary&amp;gt;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &amp;lt;p&amp;gt;Epcot ist ein Themenpark im Walt Disney World Resort mit spannenden Attraktionen, internationalen Pavillons, preisgekröntem Feuerwerk und saisonalen Sonderveranstaltungen.&amp;lt;/p&amp;gt;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&amp;lt;/details&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Shopware 6: Alle Produkte schnell indexieren</title><link>https://besserentwickeln.de/n/shopware-6-alle-produkte-schnell-indexieren/</link><pubDate>Fri, 15 Jul 2022 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/shopware-6-alle-produkte-schnell-indexieren/</guid><description>&lt;p>Indexiert nur den Lagerbestand des Produkts und überspringt alles andere, um einmalig alle Produkte zu sichern.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-shell" data-lang="shell">&lt;span class="line">&lt;span class="cl">bin/console dal:refresh:index --skip&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;theme.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;flow.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;newsletter_recipient.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;customer.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;landing_page.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;media.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;media_folder.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;media_folder_configuration.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;payment_method.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product_stream.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product_stream_mapping.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;rule.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;sales_channel.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;category.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;promotion.exclusion&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;promotion.indexer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.inheritance&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.variant-listing&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.child-count&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.search-keyword&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.stream&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.rating-averaget&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.cheapest-price&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.category-denormalizer&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.many-to-many-id-field&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;product.seo-url&amp;#34;&lt;/span>,&lt;span class="s2">&amp;#34;netzp.blogpost.indexer&amp;#34;&lt;/span> --use-queue
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>dcraw CR2 Batch-Verarbeitung</title><link>https://besserentwickeln.de/n/dcraw-cr2-batch-verarbeitung/</link><pubDate>Tue, 21 Jun 2022 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/dcraw-cr2-batch-verarbeitung/</guid><description>&lt;p>Ich habe schon zweimal danach gesucht, deshalb speichere ich das hier ab. Mit folgendem Befehl kannst du alle Raws (CR2) im aktuellen Verzeichnis in JPG umwandeln.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-shell" data-lang="shell">&lt;span class="line">&lt;span class="cl">&lt;span class="k">for&lt;/span> filename in *.CR2&lt;span class="p">;&lt;/span> &lt;span class="k">do&lt;/span> dcraw -c -w &lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="nv">$filename&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span> &lt;span class="p">|&lt;/span> cjpeg -quality &lt;span class="m">90&lt;/span> &amp;gt; &lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="nv">$filename&lt;/span>&lt;span class="s2">.jpg&amp;#34;&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="nb">echo&lt;/span> &lt;span class="nv">$filename&lt;/span> &lt;span class="k">done&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="k">done&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Dump erstellen, gzip und alles löschen, was älter als 3 Tage ist</title><link>https://besserentwickeln.de/n/dump-erstellen-gzip-und-alles-l%C3%B6schen-was-%C3%A4lter-als-3-tage-ist/</link><pubDate>Wed, 08 Jun 2022 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/dump-erstellen-gzip-und-alles-l%C3%B6schen-was-%C3%A4lter-als-3-tage-ist/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-shell" data-lang="shell">&lt;span class="line">&lt;span class="cl">mysqldump -h localhost -u &lt;span class="nv">$MYSQL_USER&lt;/span> -p&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="nv">$MYSQL_PASSWORD&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span> --no-tablespaces &lt;span class="nv">$MYSQL_TABLE&lt;/span> &lt;span class="p">|&lt;/span> gzip &amp;gt; dump-&lt;span class="nv">$CI_COMMIT_TAG&lt;/span>.gz &lt;span class="o">&amp;amp;&amp;amp;&lt;/span> ls -t &lt;span class="p">|&lt;/span> sed -e &lt;span class="s1">&amp;#39;1,3d&amp;#39;&lt;/span> &lt;span class="p">|&lt;/span> xargs -d &lt;span class="s1">&amp;#39;\n&amp;#39;&lt;/span> rm
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>SSH Key</title><link>https://besserentwickeln.de/n/ssh-key/</link><pubDate>Wed, 08 Jun 2022 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/ssh-key/</guid><description>&lt;p>Dank des &lt;a class="link" href="https://www.youtube.com/watch?v=qvdlLTyUJ5I" target="_blank" rel="noopener"
>Talks&lt;/a> von &lt;a class="link" href="https://martin.leyrer.priv.at/" target="_blank" rel="noopener"
>Martin Leyrer&lt;/a> werden meine SSH-Keys jetzt so generiert:&lt;/p>
&lt;p>&lt;code>ssh-keygen -t ed25519 -a 420 -f ~/.ssh/id_ed25519 -C &amp;quot;foo@ba.de&amp;quot;&lt;/code>&lt;/p></description></item><item><title>Shopware 5 Snippet in Variable</title><link>https://besserentwickeln.de/n/shopware-5-snippet-in-variable/</link><pubDate>Mon, 20 Dec 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/shopware-5-snippet-in-variable/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-smarty" data-lang="smarty">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">{&lt;/span>&lt;span class="nf">s&lt;/span> &lt;span class="na">name&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;DetailBuyInfoNotAvailable&amp;#34;&lt;/span> &lt;span class="na">namespace&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;frontend/detail/buy&amp;#34;&lt;/span> &lt;span class="na">assign&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;snippetDetailBuyInfoNotAvailable&amp;#34;&lt;/span>&lt;span class="cp">}{&lt;/span>&lt;span class="nf">/s&lt;/span>&lt;span class="cp">}&lt;/span>&lt;span class="x">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Styling zum Head hinzufügen</title><link>https://besserentwickeln.de/n/styling-zum-head-hinzuf%C3%BCgen/</link><pubDate>Thu, 25 Nov 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/styling-zum-head-hinzuf%C3%BCgen/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="kr">const&lt;/span> &lt;span class="nx">addStyle&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">()&lt;/span> &lt;span class="p">=&amp;gt;&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kr">const&lt;/span> &lt;span class="nx">style&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">document&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">createElement&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;style&amp;#39;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">document&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">head&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">append&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">style&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">styleString&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">=&amp;gt;&lt;/span> &lt;span class="nx">style&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">textContent&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">styleString&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">})();&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Icon-Farbe eines img mit src ändern</title><link>https://besserentwickeln.de/n/icon-farbe-eines-img-mit-src-%C3%A4ndern/</link><pubDate>Wed, 29 Sep 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/icon-farbe-eines-img-mit-src-%C3%A4ndern/</guid><description>&lt;p>Da Hugo direktes HTML hier nicht mag. Statt des iFrames jetzt ein
&lt;a class="link" href="https://codepen.io/sosuke/pen/Pjoqqp" target="_blank" rel="noopener"
>Link zum Codepen&lt;/a>.&lt;/p></description></item><item><title>PHP CLI memory_limit</title><link>https://besserentwickeln.de/n/php-cli-memory_limit/</link><pubDate>Wed, 29 Sep 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/php-cli-memory_limit/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-shell" data-lang="shell">&lt;span class="line">&lt;span class="cl">php -d &lt;span class="nv">memory_limit&lt;/span>&lt;span class="o">=&lt;/span>512M
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Geary (via Flatpak) zwingen, das GNOME-Theme zu verwenden</title><link>https://besserentwickeln.de/n/geary-via-flatpak-zwingen-das-gnome-theme-zu-verwenden/</link><pubDate>Mon, 09 Aug 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/geary-via-flatpak-zwingen-das-gnome-theme-zu-verwenden/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-shell" data-lang="shell">&lt;span class="line">&lt;span class="cl">flatpak override --user --filesystem&lt;span class="o">=&lt;/span>~/.themes:ro org.gnome.Geary
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>For-Loop</title><link>https://besserentwickeln.de/n/for-loop/</link><pubDate>Fri, 02 Jul 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/for-loop/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="kd">let&lt;/span> &lt;span class="nx">i&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="nx">el&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">logoInner&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">length&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="nx">i&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="nx">el&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="nx">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">element&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="nx">i&lt;/span>&lt;span class="p">].&lt;/span>&lt;span class="nx">innerHTML&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s1">&amp;#39;Bing&amp;#39;&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>JavaScript ausführen, nachdem die Seite vollständig geladen ist</title><link>https://besserentwickeln.de/n/javascript-ausf%C3%BChren-nachdem-die-seite-vollst%C3%A4ndig-geladen-ist/</link><pubDate>Fri, 25 Jun 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/javascript-ausf%C3%BChren-nachdem-die-seite-vollst%C3%A4ndig-geladen-ist/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">window&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">addEventListener&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;load&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kd">function&lt;/span>&lt;span class="p">(){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// ....
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="p">});&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>&lt;a class="link" href="https://stackoverflow.com/questions/807878/how-to-make-javascript-execute-after-page-load" target="_blank" rel="noopener"
>Quelle&lt;/a>&lt;/p></description></item><item><title>Gute Regex-Testseite</title><link>https://besserentwickeln.de/n/gute-regex-testseite/</link><pubDate>Wed, 31 Mar 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/gute-regex-testseite/</guid><description>&lt;p>Mir persönlich gefällt &lt;a class="link" href="https://regexr.com/" target="_blank" rel="noopener"
>Regexr&lt;/a>&lt;/p></description></item><item><title>CSS :is() und :where()</title><link>https://besserentwickeln.de/n/css-is-und-where/</link><pubDate>Tue, 16 Mar 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/css-is-und-where/</guid><description>&lt;p>Pseudoklassen, die ich häufiger verwenden sollte:&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">/* Wählt jeden Absatz innerhalb eines header-, main-
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">oder footer-Elements aus, der gerade gehovert wird */
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">:is(header, main, footer) p:hover {
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">color: red;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">cursor: pointer;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">}
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">/* Das Obige ist gleichbedeutend mit dem Folgenden */
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">header p:hover,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">main p:hover,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">footer p:hover {
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">color: red;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">cursor: pointer;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>&lt;a class="link" href="https://developer.mozilla.org/de/docs/Web/CSS/:is" target="_blank" rel="noopener"
>Quelle&lt;/a>&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">/* Wählt jeden Absatz innerhalb eines header-, main-
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> oder footer-Elements aus, der gerade gehovert wird */
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">:where(header, main, footer) p:hover {
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> color: red;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> cursor: pointer;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">}
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">/* Das Obige ist gleichbedeutend mit dem Folgenden */
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">header p:hover,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">main p:hover,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">footer p:hover {
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> color: red;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> cursor: pointer;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>&lt;a class="link" href="https://developer.mozilla.org/de/docs/Web/CSS/:where" target="_blank" rel="noopener"
>Quelle&lt;/a>&lt;/p></description></item><item><title>String in Datei finden</title><link>https://besserentwickeln.de/n/string-in-datei-finden/</link><pubDate>Mon, 04 Jan 2021 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/string-in-datei-finden/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-shell" data-lang="shell">&lt;span class="line">&lt;span class="cl">grep -rnw &lt;span class="s1">&amp;#39;/path/to/somewhere/&amp;#39;&lt;/span> -e &lt;span class="s1">&amp;#39;pattern&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Shopware 6 – composer: command not found</title><link>https://besserentwickeln.de/n/shopware-6-composer-command-not-found/</link><pubDate>Wed, 28 Oct 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/shopware-6-composer-command-not-found/</guid><description>&lt;p>Ok, ganz einfach. Ich speichere das hier, weil ich es schon zweimal vergessen habe:&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-shell" data-lang="shell">&lt;span class="line">&lt;span class="cl">php composer.phar install
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Homebrew: Grafische Software installieren</title><link>https://besserentwickeln.de/n/homebrew-grafische-software-installieren/</link><pubDate>Thu, 02 Jul 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/homebrew-grafische-software-installieren/</guid><description>&lt;p>&lt;strong>Suchen&lt;/strong>&lt;/p>
&lt;blockquote>
&lt;p>brew cask search name&lt;/p>&lt;/blockquote>
&lt;p>&lt;strong>Installieren&lt;/strong>&lt;/p>
&lt;blockquote>
&lt;p>brew cask install name&lt;/p>&lt;/blockquote>
&lt;p>&lt;strong>Deinstallieren&lt;/strong>&lt;/p>
&lt;blockquote>
&lt;p>brew cask search name&lt;/p>&lt;/blockquote></description></item><item><title>Grundlegende Docker-Befehle</title><link>https://besserentwickeln.de/n/grundlegende-docker-befehle/</link><pubDate>Wed, 17 Jun 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/grundlegende-docker-befehle/</guid><description>&lt;p>Container starten:&lt;/p>
&lt;p>&lt;code>docker-compose up&lt;/code>&lt;/p>
&lt;p>Container stoppen:&lt;/p>
&lt;p>&lt;code>docker-compose down&lt;/code>&lt;/p>
&lt;p>Alle laufenden Container beenden:&lt;/p>
&lt;p>&lt;code>docker kill $(docker ps -q)&lt;/code>&lt;/p></description></item><item><title>Eingabe muss eine Zahl enthalten</title><link>https://besserentwickeln.de/n/eingabe-muss-eine-zahl-enthalten/</link><pubDate>Mon, 15 Jun 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/eingabe-muss-eine-zahl-enthalten/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="kd">function&lt;/span> &lt;span class="nx">validateStreet&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">e&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kr">const&lt;/span> &lt;span class="nx">streetNotice&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">document&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">getElementById&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;streetnotice&amp;#39;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kd">let&lt;/span> &lt;span class="nx">currentvalue&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">e&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">value&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kd">let&lt;/span> &lt;span class="nx">outputvalue&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">currentvalue&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">search&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sr">/\d/g&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">outputvalue&lt;/span> &lt;span class="o">===&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">streetNotice&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">style&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">display&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;block&amp;#34;&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span> &lt;span class="k">else&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">streetNotice&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">style&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">display&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;none&amp;#34;&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>&lt;a class="link" href="https://codepen.io/PT1602/pen/MWKjYqY" target="_blank" rel="noopener"
>Codepen&lt;/a>&lt;/p></description></item><item><title>Destructuring Assignment</title><link>https://besserentwickeln.de/n/destructuring-assignment/</link><pubDate>Tue, 02 Jun 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/destructuring-assignment/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="kr">const&lt;/span> &lt;span class="nx">temps&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="nx">yesterday&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="mi">70&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="nx">today&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="mi">71&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="nx">tomorrow&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="mi">72&lt;/span>&lt;span class="p">};&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kr">const&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="nx">today&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="nx">highToday&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="nx">tomorrow&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="nx">highTomorrow&lt;/span>&lt;span class="p">}&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">temps&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Zahl aus String extrahieren</title><link>https://besserentwickeln.de/n/zahl-aus-string-extrahieren/</link><pubDate>Fri, 29 May 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/zahl-aus-string-extrahieren/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="kd">let&lt;/span> &lt;span class="nx">txt&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;4br4k 4d4br4&amp;#34;&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kd">let&lt;/span> &lt;span class="nx">num&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">txt&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">replace&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sr">/\D/g&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s2">&amp;#34;&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">console&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">log&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">num&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>&lt;a class="link" href="https://codepen.io/PT1602/pen/zYvVyLB" target="_blank" rel="noopener"
>CodePen&lt;/a>&lt;/p></description></item><item><title>Windows 10 Einstellungen öffnen sich nicht</title><link>https://besserentwickeln.de/n/windows-10-einstellungen-%C3%B6ffnen-sich-nicht/</link><pubDate>Mon, 25 May 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/windows-10-einstellungen-%C3%B6ffnen-sich-nicht/</guid><description>&lt;p>Dies in der Eingabeaufforderung ausführen:&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-shell" data-lang="shell">&lt;span class="line">&lt;span class="cl">PowerShell -ExecutionPolicy Unrestricted -Command &lt;span class="s2">&amp;#34;&amp;amp; {&lt;/span>&lt;span class="nv">$manifest&lt;/span>&lt;span class="s2"> = (Get-AppxPackage *immersivecontrolpanel*).InstallLocation + &amp;#39;\AppxManifest.xml&amp;#39; ; Add-AppxPackage -DisableDevelopmentMode -Register &lt;/span>&lt;span class="nv">$manifest&lt;/span>&lt;span class="s2">}&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Ubuntu: MOV zu MP4</title><link>https://besserentwickeln.de/n/ubuntu-mov-zu-mp4/</link><pubDate>Sun, 29 Mar 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/ubuntu-mov-zu-mp4/</guid><description>&lt;p>&lt;code>ffmpeg -i input.mov -codec copy output.mp4&lt;/code>&lt;/p></description></item><item><title>Regex und .match()</title><link>https://besserentwickeln.de/n/regex-und-.match/</link><pubDate>Wed, 11 Mar 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/regex-und-.match/</guid><description>&lt;p>Gestern etwas mit Regex und der match-Funktion gearbeitet. &lt;a class="link" href="https://codepen.io/PT1602/pen/KKpZpRQ" target="_blank" rel="noopener"
>Link&lt;/a> zum Codepen.&lt;/p></description></item><item><title>Prüfen, ob eine URL einen String aus einem Array enthält</title><link>https://besserentwickeln.de/n/pr%C3%BCfen-ob-eine-url-einen-string-aus-einem-array-enth%C3%A4lt/</link><pubDate>Wed, 04 Mar 2020 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/pr%C3%BCfen-ob-eine-url-einen-string-aus-einem-array-enth%C3%A4lt/</guid><description>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="kd">let&lt;/span> &lt;span class="nx">contains&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="kc">false&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kr">const&lt;/span> &lt;span class="nx">array&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="s1">&amp;#39;imprint&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s1">&amp;#39;data-protection&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s1">&amp;#39;terms-of-use&amp;#39;&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kr">const&lt;/span> &lt;span class="nx">currentUrl&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s1">&amp;#39;/imprint&amp;#39;&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">toUpperCase&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// mit window.location.href ersetzen
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">array&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">forEach&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kd">function&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">item&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kd">let&lt;/span> &lt;span class="nx">currentItem&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">item&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">toUpperCase&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">currentUrl&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">includes&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">currentItem&lt;/span>&lt;span class="p">))&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">contains&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="kc">true&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">});&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">console&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">log&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">contains&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>&lt;a class="link" href="https://codepen.io/PT1602/pen/QWbKxQg" target="_blank" rel="noopener"
>CodePen&lt;/a>&lt;/p></description></item><item><title>Docker Container mit ID exists unknown</title><link>https://besserentwickeln.de/n/docker-container-mit-id-exists-unknown/</link><pubDate>Tue, 05 Nov 2019 00:00:00 +0000</pubDate><guid>https://besserentwickeln.de/n/docker-container-mit-id-exists-unknown/</guid><description>&lt;p>Alle vorhandenen Docker-Container mit folgendem Befehl entfernen:&lt;/p>
&lt;p>&lt;code>docker container rm -v&lt;/code>&lt;/p>
&lt;p>Liste der aktuellen Container abrufen:&lt;/p>
&lt;p>&lt;code>docker ps -a&lt;/code>&lt;/p>
&lt;p>Bestimmte Container entfernen:&lt;/p>
&lt;p>&lt;code>docker container rm &amp;lt;container-id&amp;gt;&lt;/code>&lt;/p></description></item></channel></rss>