Linux Cheatsheet

find `$pwd` -name '*.$DATEIENDUNG' -exec echo rm -rv {} \; // Dateien mit bestimmter Dateiendung löschen

du --max-depth=1 -h // Datei/Verzeichnisgrößen ermitteln

find -mtime +30 `$pwd` -exec echo rm -rv {} \; // Dateien älter als 30 Tage löschenCode-Sprache: PHP (php)

VSCode Fonts anpassen

  1. Download and install both FiraCode and FlottFlott (or another cursive alternative if you want)
  2. Install VSCode Extension: Custom CSS and JS Loader
  3. Save styles.css on your desktop
  4. Update the User settings (settings.json) in VSCode. (note: don’t forget to change the path “ vscode_custom_css.imports”)
  5. Ctrl + CMD + P -> Reload Custom JS and CSS
// Place your settings in this file to overwrite the default settings
{
    "editor.fontFamily": "Fira Code",
    "editor.fontLigatures": true,   
    "vscode_custom_css.imports": ["file:///Users/zamamoha/Desktop/styles.css"]
}   Code-Sprache: JSON / JSON mit Kommentaren (json)

styles.css

.type.storage,.type.storage.declaration, .storage.class.modifier {
  font-family: 'flottflott';
  font-size: 1.7em;
}

.type.storage.arrow.function {
  font-family: 'Fira Code'
}

.decorator.name, .decorator.punctuation:not(.block), .import.keyword {
    font-family: 'flottflott';
    font-size: 1.7em;
    color: #68f39b!important;
}
.attribute-name {
    font-family: 'flottflott';
    font-size: 1.5em;
}

.html.quoted.double {
    color: #a6f3a6!important;
}
.comment {
	color: #c5c5fd!important;
}
.comment:not(.punctuation) {
    font-family: flottflott;
    font-size: 1.5em;
}Code-Sprache: CSS (css)

Quelle: https://medium.com/@zamamohammed/multiple-fonts-alternative-to-operator-mono-in-vscode-7745b52120a0

Gulp – primordials is not defined

Beim Ausführen von Gulp erscheint folgende Fehlermeldung

primordials is not defined

Problem ist das Gulp 3 und NodeJS > 10 nicht miteinander kompatibel sind.

Dafür gibt es einen Workaround.

  1. Im Verzeichnis der package.json eine Datei npm-shrinkwrap.json anlegen
  2. In der Datei folgenden Eintrag hinterlegen
  3. npm install ausführen
  4. gulp sollte wieder funktionieren
 {
      "dependencies": {
        "graceful-fs": {
            "version": "4.2.2"
         }
      }
    }Code-Sprache: JSON / JSON mit Kommentaren (json)

Quelle: https://stackoverflow.com/questions/55921442/how-to-fix-referenceerror-primordials-is-not-defined-in-node-js#60921145

useImperativeHandle

Wenn eine Funktion einer Unterkomponente in einer Elternkomponente ausgeführt werden soll sollte man diesen Hook verwenden.

Beispiel: In einer Komponente wird ein Formular als Kindkomponente eingebettet. Der Submitbutton liegt aber in der Elternkomponente. Die Submitmethode liegt in der Childkomponente.

In der Childkomponente wird die auszuführende Funktion in den Hook einbettet:

useImperativeHandle(ref, () => ({
        submitForm() {
          console.log('sendForm');
        },
      }))Code-Sprache: JavaScript (javascript)

Dafür muss die Komponente über forwardRef befähigt werden, als Referenz aufgerufen werden zu können:

const AddressForm = forwardRef((props, ref) => {Code-Sprache: JavaScript (javascript)

Die Komponente wird dann wie folgt in die Elternkomponente eingebettet:

<AddressForm ref={addressFormRef} />Code-Sprache: HTML, XML (xml)

In der Elternkomponente kann dann beim Klick auf den Button die Funktion über die Referenz auf die Komponente aufgerufen werden:

const _onSubmit = () => {
        addressFormRef.current.submitForm();
    }Code-Sprache: JavaScript (javascript)

Hinweis: Wenn die Unterkomponente mit der Redux-Funktion connect verbunden ist, dann muss im connect als Option forwardRef: true mitgegeben werden:

export default connect(mapStateToProps, null, null, { forwardRef: true })(AddressForm)Code-Sprache: JavaScript (javascript)

https://reactjs.org/docs/hooks-reference.html#useimperativehandle

E-Mail Konfiguration

IMAP-Einstellungen

Posteingangsserver (IMAP) fenomedia.de

Port/Sicherheit 993 + SSL/TLS

Authentifizierung Verschlüsseltes Passwort

Benutzername user@fenomedia.de

SMTP-Einstellungen

Postausgangsserver (SMTP) fenomedia.de

Port/Sicherheit 465 + SSL/TLS

Authentifizierung Verschlüsseltes Passwort

Benutzername user@fenomedia.de