PHPStorm Classic Mode

So, one of the most annoying things IN MY LIFE has been when JetBrains started adding all of this random AI Assistant autocompletes to their IDE’s. I know I’m not alone, because there are even tickets like this one, How to Shut Off All this AI Crap?.

It’s not that I’m anti-AI – I’m anti-Intrusion. When I’m driving the car, I get to drive the car, not the AI Assistant. Unfortunately, the way JetBrains is adding AI into it’s editor feels very intrusive. And, also unfortunately, it’s a slog to go through all of the IDE settings to try and find every single little thing that needs to be turned off.

Luckily, you don’t need to! JetBrains has added some files that will allow you to selectively use AI tools. My favorite is dropping a .noai file in your project root. It’s easy to do, navigate to your project root in Powershell and run touch .noai. That’s it, all you need is an empty file to disable all the AI stuff in PHPStorm.

Now you can get back to PHPStorm Classic mode. LFG? Molten Core? … oops wrong classic mode.

But what about Junie?

That’s a valid question. Like I said, I’m not anti-AI. I actually like the coding agents, I’ve found them extremely helpful in certain circumstances. So, I wondered, will .noai disable all coding agents? Nope! It won’t. As of this writing .noai will disable the AI Assistant features in the IDE – but you can still use the Junie agent window. I don’t know if that’s an oversight or not, I actually recently heard that the Junie agent window is going away as they consolidate underneath the AI Assistant chat window.

The Better Junie Option (imo)

The better option, in my opinion, is to just use the Junie CLI. It’s currently in beta, and appears very usable from my testing. It’s integrated with your current JetBrains AI pricing model, so if you pay to use Junie within your IDE, then you are paying to use the CLI tool as well. I’ve found that I can open my own custom terminal, or use the built in IDE terminal, and open Junie via CLI. This gives me the best of both worlds, a powerful IDE and a powerful coding agent. I can use both when I want.

Not Quite .noai

Despite .noai working in most circumstances, I’m noticing little bits of AI crop back up. For example, inline Code Completion. I’m wanting classic intellisense, but JetBrains is giving me inline completion using cloud and local models. I had expected this to not happen, and indeed thought it wasn’t happening. But today, as I’m coding, I noticed phpstorm giving me ghosted AI completion hints. So, I navigated to phpstorm settings Editor > General > Code Completion > Inline and unchecked the Enable inline completion using language models: option.

.noai seems to have no effect on this setting

Capturing Animated GIFS on Linux with Spectacle

OK. Honestly, I’m just dropping a quick one in here because it’s necessary. You can easily capture Animated GIFS, Screen Recordings, Animated PNGS on Linux with KDE Spectacle.

Background

Here’s the deal. Windows 10 be complaining that it’s End-of-Life and it won’t run on my laptop anymore and they need me to update my hardware. You know what OS doesn’t need me to update my hardware? That’s right, it’s Linux. So I went ahead and dropped Fedora KDE Plasma Desktop on my laptop and it’s working great. I used Kubuntu years ago and I’m super impressed at how far Linux has come along. There’s pretty much a Linux alternative to all the tools I use, not to mention that a lot of the tools I use are Linux native anyways.

The one thing that I couldn’t quite replicate is ShareX on Linux. I used ShareX on Windows to do the following things:

  1. Capture screenshots
  2. Capture screen recordings

And that’s it. I don’t use any sharing features. Try as I may, I couldn’t find something that would allow me to do that easily in KDE. I tried Flameshot, and it’s pretty cool, but I found it’s not quite as good as what I’m used to with ShareX. My experience is that opening flameshot basically took a screenshot of what’s on my screen and then tried to give me a selection tool. But the way it worked was it offset all my screens so just opening Flameshot made everything on my screen look different.

There’s also a very promising ShareX fork called SnapX. It looks pretty cool, basically like ShareX but for everywhere! However, it’s still very much in active development and I didn’t feel like trying to beta test the tool.

Solution

Enter Spectacle. Yeah, I know what you’re thinking. That’s just a simple screenshot tool, it’s not going to check off both your boxes. But, here’s the thing. It does check off both boxes. The docs don’t tell you about it, nothing published seems to say anything about it, but the ability to capture both a screenshot and a screen recording is legit right there in the interface for Spectacle. (I’ll go ahead and drop in a super grainy picture of my monitor to illustrate).

See – it’s right there. Spectacle gives you the opportunity to take a screenshot or a screen recording, right there with sweet rectangular selection, window, or fullscreen options.

How can you save animated gifs or png’s though? You just need to set that as the output format in Spectacle’s settings. The way I accessed that is by clicking the Options button just to the right of “New Recording” (see above uber grainy screenshot of monitor). From there you can navigate to Video Saving. Right next to the Filename text field there is a file type dropdown. Your options are WebM/VP9, MP4/H.264, Animated WebP (better than GIF), and GIF (compatible, but inefficient). Sweet right?

Important Note: Screenshots are stored in your Pictures/Screenshots folder and screen recordings are stored in your Videos/Screencasts folder.

Here’s a list of the keyboard shortcuts available to use.

KDE Spectacle – Screenshot & Recording Keyboard Shortcuts

Global keyboard shortcuts available in KDE Spectacle for screenshots and screen recording.
Action Global Shortcut Global Alternate
Capture Active Window Meta+Print
Capture Current Monitor Shift+Print
Capture Entire Desktop Meta+Shift+Print
Capture Rectangular Region Meta+Shift+Print
Capture Selected Window Meta+Ctrl+Print
Launch Spectacle Print Meta+Shift+S
Launch Spectacle without capturing
Start/Stop Region Recording Meta+Shift+R Meta+R
Start/Stop Screen Recording Meta+Alt+R
Start/Stop Window Recording Meta+Ctrl+R

Proof

A Screenshot taken with Spectacle
A Screen recording taken with Spectacle
An Animated GIF taken with Spectacle

Final Thoughts

While it was frustrating to find this tool, and that it doesn’t seem to be documented main stream – it’s awesome that it exists and it’s built in to KDE! Props to the Spectacle team.

Get the word out, you can screen capture and screen record right from Spectacle. The tool is awesome 💥