IntelliJ – Bitkorn Blog https://blog.bitkorn.de Developer Zeugz Wed, 18 Jan 2023 06:47:08 +0000 de-DE hourly 1 https://wordpress.org/?v=6.3.1 IntelliJ Zeug https://blog.bitkorn.de/intellij-zeug/ Sun, 18 Dec 2022 15:29:01 +0000 https://blog.bitkorn.de/?p=1170 Editor => Code Style => Hard wrap at: 150 columns ‚usage‘ code hint Settings => Editor => Inlay Hints => Code Vision => Usages]]> Hard Wrap

Den Hard Wrap (rechter senkrechter Strich im Code Fenster) einstellen oder aus machen: Settings => Editor => Code Style => Hard wrap at: 150 columns

‚usage‘ code hint

Settings => Editor => Inlay Hints => Code Vision => Usages

]]>
PhpStorm sassc arguments https://blog.bitkorn.de/phpstorm-sassc-arguments/ Sat, 15 Aug 2020 16:52:26 +0000 http://blog.bitkorn.de/?p=839 Per default steht in den Einstellungen von Tools/FileWatcher/ein-FileWatcher-edit/Arguments:

$FileName$:$FileNameWithoutExtension$.css

Dort sind die beiden Filenames durch einen Doppelpunkt getrennt. Das ergibt folgenden Fehler – wenn mann sassc benutzt –

/usr/bin/sassc style.scss:style.css
Internal Error: File to read not found or unreadable: style.scss:style.css

Statt Doppelpunkt ein Leerzeichen und es funzt.

]]>
MySQL serverTimezone invalid timezone https://blog.bitkorn.de/mysql-server-timezone-invalid/ Tue, 31 Mar 2020 10:40:37 +0000 http://blog.bitkorn.de/?p=750 DataGrip meldet:

Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually.

Wie die Meldung sagt, geht man zu Preferences (der DB Verbindung) und dort zum Advanced Tab. In der Liste sucht man ’serverTimezone‘ und setzt sie auf UTC …NICHT utc!

DBeaver meldet:

The server time zone value 'CEST' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.

Der Wert ‚CEST‘ ist von der Meldung erfunden 🙂
In DBeaver sieht es ähnlich aus mit der Lösung. In den Einstellungen für die MySQL Verbindung unter dem Reiter ‚Treibereigenschaften‘ den Key ’serverTimezone‘ auf ‚UTC‘ setzen.

]]>
PHPStorm Xdebug (2 und 3) https://blog.bitkorn.de/phpstorm-xdebug/ Thu, 28 Nov 2019 11:51:00 +0000 http://blog.bitkorn.de/?p=671 PhpStorm IDE & Xdebug 2

Wie ermögliche ich einfaches Debuggen mit Xdebug und PhpStorm?

Zuerst legt man eine eigene php.ini (yourname.user.ini) in /etc/php/ an. Diese muss in allen installierten PHP Versionen verlinkt (z.B. /etc/php/7.4/apache2/conf.d/yourname.user.ini) sein. Bsw. für PHP 7.4 in der Konsole einen symbolischen Link auf unsere eigene php.ini machen:

sudo ln -s /etc/php/yourname.user.ini /etc/php/7.4/apache2/conf.d/yourname.user.ini

Xdebug Teil der yourname.user.ini:

[Xdebug]
zend_extension=xdebug.so
xdebug.remote_enable=true
xdebug.remote_autostart=true
xdebug.remote_port=9000
xdebug.idekey=PHPSTORM

Dann Xdebug installieren und den Server neu starten:

sudo apt install php-xdebug
sudo systemctl restart apache2

Jetzt ist Xdebug und PHP bereit um gemeinsam mit PhpStorm zu debuggen 🙂

PhpStorm Settings

In PhpStorm unter Settings => Languages & Frameworks => PHP => Debug sind die Einstellungen für das Debuggen. Außer den Einstellungen, an denen ich nichts ändern musste, gibt es eine Möglichkeit die Xdebug Server Konfiguration zu validieren …also, ob alles OK ist zum Debuggen mit PhpStorm.

PhpStorm debugging

In PhpStorm den Hörer (zwei rechts neben dem Käfer) klicken! Dank der Xdebug Einstellung xdebug.remote_autostart=1 kann man jeden PHP Request debuggen.

Xdebug 3.x

Auf der Xdebug Seite gibt es einen Upgrade Guide.

Xdebug: Step Debugging

Die PhpStorm Version muss mindestens 2020.3 sein.

Xdebug Teil meiner yourname.user.ini:

[Xdebug]
# zend_extension=xdebug.so # steht in der 20-xdebug.ini
# xdebug.mode=debug # xdebug 3.x - muss direkt in die 20-xdebug.ini | php.ini
xdebug.client_host=localhost # xdebug 3.x
xdebug.client_port=9003 # xdebug 3.x
xdebug.start_with_request=yes # xdebug 3.x
# xdebug.idekey=PHPSTORM # muss direkt in die 20-xdebug.ini | php.ini
# xdebug.discover_client_host=1 # muss direkt in die 20-xdebug.ini | php.ini

Eine Leerzeile am Ende, sonst: PHP: syntax error, unexpected TC_STRING in

Der xdebug.client_port (9003) muss auch in PhpStorm unter Settings => Languages & Frameworks => PHP => Debug gesetzt sein.

In PhpStorm unter Settings => Languages & Frameworks => PHP => Debug – und dort oben im Punkt eins „validate“ klicken. Da muss der richtige Pfad gesetzt sein (Laminas /public).

Ob der IDE Key gesetzt ist – mit phpinfo() gucken.

PhpStorm – Configure Xdebug

Das Browser Plugin XDebug muss den richtigen key (xdebug.idekey=PHPSTORM) konfiguriert haben.

Xdebug Log:
In die xdebug.ini:

xdebug.log="/home/allapow/xdebug.log"

…das File muss existieren und beschreibbar sein.

Die komplette xdebug.ini:

zend_extension=xdebug.so
xdebug.mode=debug
xdebug.idekey=PHPSTORM
xdebug.log="/home/allapow/xdebug.log"
# xdebug.show_error_trace = 1
xdebug.discover_client_host=1 # important

WICHTIG als boolean Wert funktioniert „yes“ | „true“ nicht – stattdessen muss „1“ benutzt werden (siehe Code Beispiele).

CLI

Um CLI Programme zu debuggen, muss eine Linux Umgebungsvariable gesetzt sein:

export XDEBUG_SESSION=1

…siehe Xdebug Doku.

Wirklich funktionieren tut es mit (xdebug 2):

export XDEBUG_CONFIG="remote_enable=1 remote_mode=req remote_host=127.0.0.1 remote_port=9000 remote_connect_back=0"

…siehe PhpStorm Hilfe.

In PHPStorm muss zusätzlich noch – wie immer beim Debuggen – der Käfer-Hörer geklickt werden.

]]>
___jb_tmp___ (permission denied) https://blog.bitkorn.de/___jb_tmp___-permission-denied/ Fri, 13 Sep 2019 05:49:29 +0000 http://blog.bitkorn.de/?p=644 Settings => Appearance & Behavior => System Settings => use „safe write“ (save changes to a temporary file first) …da den haken weg machen.]]> File => Settings => Appearance & Behavior => System Settings => use „safe write“ (save changes to a temporary file first)

…da den haken weg machen.

]]>
IntelliJ column/block selection https://blog.bitkorn.de/intellij-column-block-selection/ Fri, 02 Nov 2018 06:21:35 +0000 http://blog.t-brieskorn.de/?p=513 Schnell etwas in column/block selection: mittlere Maustaste und los selektieren.

column/block selection Modus umschalten: SHIFT + ALT + Einfügen

]]>
IntelliJ line or block comment on german keyboard https://blog.bitkorn.de/intellij-line-or-block-comment-on-german-keyboard/ Sun, 12 Nov 2017 09:28:00 +0000 http://blog.t-brieskorn.de/?p=326 Settings -> Keymap -> nach ‚comment‘ suchen Dort ein Doppelklick auf ein […]]]> Mit deutschen, vielleicht auch anderen, Tastaturen hat IntelliJ ein Problem.
Die Line Comment & Block Comment Shortcuts
STRG + Schrägstrich
STRG + UMSCHALT + Schrägstrich
scheinen nicht zu funktionieren.

Grund ist, dass IntelliJ statt Schrägstrich die Sieben nimmt (gleiche Taste).

Schortcuteinstellungen: File -> Settings -> Keymap -> nach ‚comment‘ suchen
Dort ein Doppelklick auf ein Shortcut öffnet das Kontextmenü. Wenn man dor einen Shortcut hinzu fügen möchte kann man das mit dem Schrägstrich und der Sieben testen.

Weil Jetbrains das Problem scheinbar noch nicht gelöst hat, gibt es eine „versteckte“ Info bei den Schortcuteinstellungen. Dort steht für die beiden Comment Funktionen zusätzlich zum Shortcut STRG + Schrägstrich noch STRG + NumPad / wie auch zu STRG + UMSCHALT + Schrägstrich noch STRG + UMSCHALT + NumPad /. Das soll heißen, dass man den Schrägstrich auf dem NumPad nehmen kann. Auf meiner Tastatur (Fujitsu KB520) ist der Schrägstrich das Geteilt Zeichen (÷).

Kurz:
STRG + ÷
STRG + UMSCHALT + ÷
funktioniert.

]]>