Editing

Editing

Learning resources when writing code in the IDE's editor.

With our IDEs, you can edit your code quickly and efficiently with a range of shortcuts to help you.

See Also

tip

Expand and Collapse Code
Quickly view specific parts of a class by expanding or collapsing code

tip

Move Statement
Move a statement up or down

tip

Grammar Checking with Grazie
Use Grazie to check grammar in regular text.

tip

Test Regular Expressions in the IDE
WebStorm helps test regular expressions on the fly.

JetBrains Blog

How to improve code quality in game development with Qodana and Unity
Game development with Qodana and Unity

tip

Optimize imports
Remove unused imports from your code

tip

Rename bookmark
Rename an existing bookmark

tip

CamelCase in code completion
Use CamelCase in code completion

tip

Postfix Completion
Postfix completion allows you to keep typing forwards, it minimises the amount of time you spend moving the cursor around while you're coding.

tip

Surround with
Surround your code with common programming constructs

tip

Creating code
IntelliJ IDEA will help create code for you

tip

Live Templates
Use Live Templates to auto-complete common code structures for you

tip

Related problems
Use IntelliJ IDEA's inlay hints to navigate to Related Problems

tip

Using regex
Using language injection to work with Regex

tip

Using SQL
Using language injection to work with SQL

tip

Gutter icons
Information about your code in the gutter icons

tip

Parameter information
Finding the parameter type

tip

Problem window
Problems tool window

tip

Scrollbars
Information about your code in the scrollbars

tip

Clipboard history
Paste a subset or multiple entries from your recent history

tip

Extend Selection
Extend and shrink selection

tip

Go to Next Error
Quickly move to the next (or previous) error or warning in the file.

tip

Inlay hints
Inlay hints provide additional information about your code

tip

Context Actions
Use Alt+Enter to show available context actions

playlist

Highlights of GoLand 2023.3
Explore key features and enhancements in GoLand 2023.3.

tip

Focus on your code
Focus on your code window

tip

Improve Code Readability and Navigation
Discover how to manage code visibility with code folding in Go

tip

Create a function in another package
Type a non-existing function name and generate its implementation in a package of your choice

tip

Empower your `Printf`-like functions with coding assistance
Provide hints and highlights for message formats in custom `Printf`-like functions

tip

Use collection initializers
Update and initialize items in old collection declarations

tip

Rename refactoring
Would a variable by any other name read as clearly?

tip

Extract method refactoring
Split and Organize code into DRY, discrete units.

tip

Inline method refactoring
Replace usages of a function with its implementation.

tutorial

Solution-Wide Analysis
Find and resolve code issues in your projects.

Part of tutorial

Exploring Code Analysis Results
Find code quality issues that matter and need your attention.

Part of tutorial

Fixing Warnings and Errors
Automatically resolve inspections using quick fixes.

Part of tutorial

What is Solution-Wide Analysis?
An introduction to Solution-Wide Analysis in ReSharper and Rider.

tutorial

Creating Games With Unity - Scripting Logic With Rider
JetBrains Rider is the best scripting editor for Unity – let's find out why!

tutorial

Creating Games With Unreal Editor and JetBrains Rider
JetBrains Rider is the best scripting editor for Unity – let's find out why!

Part of tutorial

Debugging Unity games
Suspend execution and inspect variables. Use pausepoints to visually inspect your scene.

Part of tutorial

Generate code
Rider helps with boiler-plate code, code completion, and more.

Part of tutorial

Inspections and quick-fixes for Unity code
Rider helps you write better code, faster.

Part of tutorial

Keyboard shortcuts - Shift+Shift and Alt+Enter
The two keyboard shortcuts that get you places!

Part of tutorial

Editing, code completion, inspections
Let's explore what the coding experience is like!

Part of tutorial

Working with Blueprints
Navigate back-and-forth between code an blueprints, find usages, ...

tutorial

Design and Manage Scenes With RiderFlow
We'll walk you through the best tips for RiderFlow to help speed up your Unity development!

Part of tutorial

Getting Started with Rider for Unity
What is Rider? And how to start using it with Unity?

Part of tutorial

Adding assets to a scene
The scene view management toolbar can search assets that you can use in your scene.

Part of tutorial

Code Editing
Dive deeper into code with the smart editor in Unity!

Part of tutorial

Hierarchy, bookmarks and camera presets
Find your way through complex scenes.

Part of tutorial

Introducing RiderFlow
What is RiderFlow? And where to find it?

Part of tutorial

Replace Assets
Replace assets on your scene. It's like refactoring, but visually!

playlist

New Features in GoLand 2023.1
A selection of useful features from GoLand 2022.3.

tip

Vulnerability checker
Analyze your codebase and highlight known vulnerabilities in go.mod

tip

Convert between different types of strings
Convert strings that are surrounded by backticks to double-quoted ones and vice-versa

tip

Intention action to convert integers to strings
Convert an integer to a string by using the `strconv.Itoa()` call

tip

Create inspections with regular expressions
Use regular expressions to create your own search and replace inspections

tip

Implement an interface
Implement unexported interfaces by pressing Ctrl + I

tip

Rename generic receivers along with a generic struct
Rename generic receivers along with a generic struct

tip

C# 11 - Required Keyword
Introducing the required keyword for fields and properties.

tip

Duplicate lines
Duplicate the current line or a selected block

tip

C# 11 - Raw strings
There is no escape!

tip

Create New Files and Folders
Use the New popup to add files and folders faster.

tip

Add New Dependencies
WebStorm can help you add a new dependency.

tip

Using Code Snippets
How to use the built-in code snippets in WebStorm.

tip

Comment Out Code
Quickly comment/uncomment blocks and lines.

tip

Add console.log Faster
Use Postfix Completion to quickly add console.log.

tip

Convert to async Function
Quickly convert a function that returns a Promise to an async function.

tip

Create Arrow Functions in One Click
WebStorm can help you add arrow functions to your code.

tip

Check CSS Properties
How to review the related CSS docs in WebStorm.

tip

Disable ESLint Rules for Current Line
How to temporarily disable an ESLint rule in WebStorm.

tip

Explore Shortcuts the Easy Way
How to see all WebStorm's shortcuts.

tip

Enable Font Ligatures
How to use ligatures in your font in WebStorm.

tip

Improve Code Readability
How to enable method separators to make it easier to read your code in WebStorm.

tip

Editing Code with Multiple Cursors
How to use multiple cursors to code faster.

tip

Optimize Imports
Quickly remove any unused imports and more.

tip

Remove Tags Faster
How to quickly remove HTML tags in WebStorm.

tip

Open New Projects Quickly
How to use drag and drop to open a new project in WebStorm.

tip

Replace with Template String
How to replace a regular string with a template literal in WebStorm.

tip

Simplify Boolean Expression
How to simplify a complex boolean expression in WebStorm.

tip

Show CSS Color Preview
How to display a CSS color in the background in WebStorm.

tip

Quickly Sort Lines
Sort lines of code in your editor alphabetically.

tip

See VCS Changed Lines In Gutter
Quickly spot which parts of your file have changed since the last commit.

tip

Generate 'go.work' for a project
Generate 'go.work' by using the context menu or a quick-fix with 'replace' directives

tip

Generate tests for generic functions
Use a shortcut to generate test files for your generic functions.

tip

Integrated Go Playground
You can format and share your code, change the Go version, and run your code using the Go playground server.

tip

Go doc comments in quick documentation
Support for links, lists, and new headings in doc comments.

YouTube

F# for Performance Critical Code
Matthew Crews

YouTube

ASP.NET Basics for Experts
Layla Porter

tip

Highlighted commands in the terminal
IntelliJ IDEA highlights terminal commands you can run in IntelliJ IDEA

tip

Inspections Widget
The top-right corner of your editor shows you information about the state of your class

tip

View supertype and subtype hierarchy
You can view supertypes and subtypes in the hierarchy

tip

Code Completion for the Stream API
IntelliJ IDEA can add the stream() call for us

tip

Different viewing modes for your code
IntelliJ IDEA has lots of different ways for you to view your code depending on your requirements

tip

Changing the font size in the editor
Use a keyboard shortcut to change the font size in the editor.

tip

Convert empty interfaces to `any`
Check and replace empty interfaces that are used as types or type constraints.

tip

Delete a type parameter with an empty parameter list
Type parameters with empty parameter lists are reported as errors, but you have a quick-fix to put it right.

tip

Quick Documentation
View documentation for any symbol without interrupting your workflow.

tip

Navigate to the last edited location
Move around the files you're working on quickly with keyboard shortcuts

tip

Determining the return type of expression
Type Info is very helpful on a per-expression basis

tip

Edit a document in IntelliJ IDEA LightEdit Mode
Use IntelliJ IDEA’s text editing features without creating or opening a dedicated project.

tip

Inject a language
Language injections let you work with pieces of code in other languages embedded in your code.

tip

Pattern Matching for Switch
Available in preview from Java 17

Part of tutorial

Client-side templating with Mustache and HTMX
Generate HTML on the client, based on JSON

Part of tutorial

HTMX cascading selects
One thing leads to another

Part of tutorial

Hello, HTMX!
No series is complete without a "Hello, World" sample

Part of tutorial

Server-powered modals with HTMX
Create modal dialogs on the server

Part of tutorial

HTMX state management
Maintaining state across requests

Part of tutorial

Typeahead search with HTMX
Live updates based on your search query

Part of tutorial

Infinite scrolling with HTMX
Streaming infinite content to your users

Part of tutorial

Introduction
Giving context to HTMX

Part of tutorial

Out-of-band swaps with HTMX
Swap and replace any HTML element

Part of tutorial

Polling to get recent updates
Retrieve updated information from the server

Part of tutorial

ASP.NET Core Razor TagHelpers for HTMX
Simplify integration of HTMX in ASP.NET Core apps

Part of tutorial

Real-world shopping cart and conclusion
See all HTMX techniques come together

Part of tutorial

Server-sent events for realtime updates
Send messages to clients in realtime

Part of tutorial

Server-side validation, client-side feel
Validate models on the server, display results on the client

Part of tutorial

Shortcut keys for web applications
Add keyboard shortcuts to make your web an app

Part of tutorial

Tabs, tabs, and more tabs with HTMX
Asynchronous rendering of tabs on the server

Part of tutorial

What is HTMX?
Understanding the spirit of the HTMX library

tip

Move Line
Start a new line below or above your current line with the correct indentation.

tip

In editor doc rendering
You can render Javadocs directly in the editor including HTML tags, images and links.

tip

Resolve Merge Conflicts in VCS
Use VCS options in IntelliJ IDEA to resolve merge conflicts visually in the editor

tip

Fill Paragraph for Go Comments
Ensure that comments have the width you like.

tip

Write SQL queries using popular database packages
Work with SQL queries and get completion and other features automatically.

tip

Declare a targeted Go version in go.mod
The IDE is aware of targeted Go versions

tip

Improved display of attached projects
Work with multiple projects at once from the same IDE window

tip

Quick documentation for keys in Dockerfiles and docker-compose.yaml files
Learn about what the keys mean, find out how to use them, or what values they accept

tip

Go 1.17: Convert slice to array pointer
With Go 1.17, it is possible to covert a slice to an array pointer

tip

Load go.mod changes manually
Take control of when go.mod files are refreshed

tip

Create a Scratch file from selection
Create scratches faster and get the contents you want to test pre-populated

tip

Remove empty scratches automatically
Let the IDE handle the cleanup after testing your ideas

tip

Run gofmt after the builtin formatter
Ensure that your code is always formatted with gofmt.

tip

Select the builtin Terminal cursor shape
Make the terminal your own, with the cursor shape you want

tip

Detect unused dependencies in go.mod files
Cleanup go.mod files and keep them lean

tip

Live Template for arrow function
Create arrow functions quicker thanks to builtin customizable templates

tip

Support for TypeScript types in JSDoc
Give the IDE new powers thanks to TypeScript-based types

tip

Reload browser pages on save
Work on your frontend then switch to the browser to see how it looks like

tip

Join Lines
Join lines of code together

tip

Paste a clipboard image file into markdown
You can paste a PNG image from the clipboard directly into a markdown file

tip

Paste a clipboard image onto the Project Window
If you have an image on your clipboard you can paste it straight into the Project Window

tip

Smart Completion
Get type aware completion in your code

tip

Continuous Testing
Run your tests in the background, while you code.

tip

Preview Source Code
Introduce variables the way you like!

tip

Quickly Check Symbol Type
Here's how to get information about the type of a symbol.

tip

Generate constructors and accessor methods
We can quickly generate common code constructs such as Constructors and Get and Set methods

tip

Generate Overrides for equals(), hashCode() and toString()
We can generate the code to override the equals and hashCode methods

tip

Add new fields to struct types from JSON
Add new fields in your API objects with a copy-paste

tip

Add keys to struct field tags
Quickly add JSON, XML, or custom keys to all struct fields

tip

Change struct tag style
Quickly change from different styles the struct tags

tip

Create missing struct types with all fields
Prototype your code then worry about creating the types

tip

Create getters and setters for struct fields
Generate the support code to access fields indirectly, via getters and setters

tip

Support for go:embed directive
Embed files and folders into your binaries with no external tool

tip

Convert JSON to Go types via copy-paste
Converting a JSON response to a Go type has never been faster than this

tip

Quickly handle errors in Go
Handling errors is essential in any application

YouTube

C# Source Generators in Action
Andrey Dyatlov

YouTube

Embracing gRPC in .NET
Irina Scurtu

tip

Evaluate JSON Path expressions
Use IntelliJ IDEA to check if your JSON Path expression are correct.

tip

Convert class to record
Use inspections to convert classes to Java 16 records

tip

Convert from Record
Use quick intentions to convert a record to a class

Part of tutorial

Code Formatting
Format and reformat code for consistency in your solution.

Part of tutorial

Additional Tools
There's more in ReSharper! Architecture diagrams, localization manager, build tools, ...

Part of tutorial

Introduction
Introduction to the ReSharper Essentials series.

Part of tutorial

Shortcuts, Editing and Code Completion
Let's dive into the most important productivity shortcuts, editing, and code completion.

tip

Add Names to Call Arguments in Kotlin
Use quick intentions to add names to call arguments

tip

Adjust Code Style
Use quick intentions to adjust your code

tip

Copy to, or create a Scratch File
Scratch files persist across all versions of IntelliJ IDEA

tip

Create an Editor Fold
Create an editor fold to hide parts of your class

tip

Enable Soft Wrap
Using soft-wraps makes some languages easier to display

tip

Find Next Word
Find next word and highlight all instances

tip

Kotlin Code Completion
Use code and statement completion to write code faster

tip

Move Line
Move a line throughout your class

tip

Create New Class
Quickly add new classes to your project

tip

Put Kotlin Arguments on Separate Lines
Use quick intentions to improve the readability of your code

tip

Remove Explicit Type in Kotlin
Use quick intentions to remove explicit types

tip

Run in Current Context
Run just a file or a script

tip

Show Virtual Whitespace
Add virtual whitespace to the bottom of a file

tip

Highlight code and surround it with brackets or quotes
Surround code with brackets and quotes

tip

Add Remaining Branches in Kotlin
Use quick intentions to generate code automatically

tip

Better time format in completion
Use the commonly known date/time formatting strings while writing time formatting in Go

tip

Go 1.16: retract directive
Retract specific versions of your modules

tip

Live Template to create a for loop in benchmark functions
Benchmark loops are repetitive, so let the IDE handle this for you

tip

Live Template to write benchmark function
Write benchmarks quicker thanks to the builtin bench live template.

tip

Perform simple math in Search Everywhere
Quickly perform simple math operations from the comfort of your IDE.

tip

Tailwind CSS support
Enjoy working with Tailwind CSS from the comfort of your IDE.

tip

Detect variable shadowing while writing Go code
Easily spot where you shadow variables that you did not intend to

tip

Support for Vue.js 3
Upgrade to using the latest Vue.js version knowing your IDE will be there to help you.

tip

Live Template to create test function
Write tests faster thanks to the builtin func Test live template.

Part of tutorial

Coding Assistance
Find out how Rider helps you write better code, faster.

tip

Adding Fields To a Struct
Let your IDE add constructor arguments to your instance.

tip

Add Line After/Before
Smart-add a line, from the middle of a line, after or before the current line.

tip

Generate Imports While Typing
Avoid interruption by letting GoLand generate your imports as you type.

tip

Move Block Up/Down Using Keyboard
Use the keyboard to move a line or selection up or down in your file.

tip

Optimize Imports
Automate the organizing and cleaning up of your Go imports with Optimize Imports.

tip

Quick Documentation
View arguments and documentation without interrupting your flow.

tip

Install and import
While typing a symbol, let GoLand install it and generate the import.

tip

Reformat Code
Tell GoLand to clean up indentation and other code style in your file.

tip

Split Screen Without Tabs
Get your code and tests side-by-side without using tabs.

tutorial

.NET Localization
Localization and the art of reaching more users

Part of tutorial

Localizing ASP.NET Applications
Working with Cultures, Resources, & ASP.NET

Part of tutorial

Localization Basics
Working with Cultures, Resources, & Apps

tip

Add Carets to End of Lines
Use a shortcut to add carets at the end of each selected line.

tip

Add Placeholder Text in Seconds
Use the power of Emmet to add some lorem ipsum faster.

tip

Create New Type Alias
Use a code refactoring to swiftly create a new type alias.

tip

Extract Ruleset
Use an intention to quickly extract a ruleset in your stylesheet file.

tip

Make JSDoc Comments More Readable
Render documentation comments right in the editor.

Part of tutorial

NuGet Tool Window in Rider
Working with NuGet, including search with typos, CamelHumps, Update All, and more!

Part of tutorial

Introduction
Introduction to the Rider Essentials series.

Part of tutorial

Shortcuts, Editing, and Completion in Rider
Where to start? Let's learn the two most important shortcuts, editing, and code completion.

tip

Get Help with Random Data
Let the Randomness plugin generate some data for you.

tip

Extract Type Alias
Learn how to extract a type alias in your TypeScript code.

tip

Check Browser Compatibility in CSS
Let WebStorm warn you about unsupported CSS properties.

tip

Check Documentation in JavaScript
Hover over a symbol or use a shortcut to quickly review documentation.

tip

Move Elements Left and Right
Quickly swap functions parameters, attributes in tags, and more.

tip

Using Surround With
Learn how to surround items with braces, brackets, or quotation marks in JSON.

tip

Switch CSS Color Format on the Fly
Converting from HEX to RGB and other formats can be done real quick with WebStorm.

tip

Complete Current Statement
Add trailing commas or braces and move the cursor with a single keystroke

tip

Create Reusable Code Snippets
Save time by reusing blocks of code with custom code snippets.

tip

Select Code Fragment
Select a code fragment without a single click.

tip

Complete Current Statement
Add curly braces and move the cursor with a single keystroke.

tip

Change Quote Style for CSS
Configure whether double or single quotes should be used.

tip

Working with Scratch Files
Create scratches to make notes or work with code outside of the project context.

tip

Deleting Lines
Delete a line of code without using the mouse.

tip

Duplicating Lines
Duplicate a line of code with a shortcut.

tip

Putting Several Lines Together
Quickly join lines or blocks of code.

tip

Fix Code Formatting
Learn how to fix code formatting on the fly.

tip

Moving Lines in JSON
Get help with commas when moving lines up and down in JSON.

tip

Using Language Injections
Swiftly inject a piece of code in a different language.

tip

Get Completion for Libraries from CDN
Find out how to get completion suggestions for libraries like Bootstrap.

tip

Paste Recent Items
Access your clipboard history and add any items from there to your code.

tip

Preview Images
Preview images on the go from the Project view.

tip

Transform Existing Expression into Another One
Quickly transform an existing expression into another one using Tab.

tip

See All Available Refactorings in One Place
Use the Refactor This popup to look up all refactorings available in the current context.

tip

Review Errors in Code
WebStorm shows all errors and warnings in your file.

tip

Renaming Files
Rename a file to make it match the name of a class.

tip

Deleting File Safely
Learn how to delete a file safely.

tip

Enabling Soft Wraps
Wrap lines to eliminate the need of scrolling horizontally in order to see overly long lines.

tip

Syntax Highlighting for Other Languages
Look through PHP, Python, and other files in WebStorm.

tip

Add Reminders to Fix Something
Add a TODO or Fixme comment to remind yourself of fixing something in your code.

tip

See Information about Packages
Check the description and the latest version of a package in package.json.

tip

Autocomplete Django Settings Strings
Use autocomplete when typing a string in the apps section of your settings file.

tip

Avoid Property Mixup
WebStorm helps avoid mixing up properties.

tip

Compute Constant Values
Let WebStorm do math for you.

tip

Convert to Arrow Function
Quickly convert a function to a variable holding an arrow function.

tip

Quickly Look Up Parameters
Get help when completing function parameters.

tip

Move Function to File
Extract a function into a separate file.

tip

Rename Closing Tag
Let the IDE mirror changes to a tag name.

tip

Introducing Variables
Introduce variables the way you like!

tip

Occurrence Selection
Poor man’s manipulation to the rescue!

tip

Expand/Shrink Selection
One more chance to leave your mouse aside!

tip

Surround with Emmet
Quickly surround a selection with rich markup using the Emmet toolkit.

tip

Compare with clipboard
Compare text, files or directories and even use the clipboard contents

tip

Custom Structure tags
Add custom tags to any fields from structures

tip

Expanding/shrinking selection
Select portions of code that you need to, faster

tip

Generate a test for an element
Automate test generation

tip

Implement an interface
Implementing an interface is a common task that Go programmers need to do

tip

Multiple selections
Select multiple items faster

tip

Paste from history
Paste from the clipboard even if it's not the last item you copied into it

tip

Select all occurrences in a file
Quickly select all occurrences of a piece of text in the current file

tip

Speed typing
Quickly navigate to or filter any list of items in the IDE

tip

Structure tags
Quickly add tags to any fields from structures

tip

Switch to the editor
Get the focus back to the editor regardless what is currently focused

playlist

Editing Tips & Tricks
Know everything there is to know about editing code.

tip

Iterating Collections
There's no faster way to iterate!

tip

Cleanup Namespaces
Fix all unused namespaces right from where you are!

tip

Formatting code in columns
Easily read common code in column-style layout!

tip

C# 8 Support
Master all the C# 8 language features!

tip

Move Code
Move code the smart way!

tip

JSON schema support
The best way to work with JSON and YAML files!

tip

Settings Layers
Save settings to the scope you need them!

tip

Search Anywhere
Start typing anywhere to search!

tip

Unity Support
Write smarter C# for Unity!

tip

Code Completion in Language Injections
See how to use code completion inside strings and other places

tip

Completion with the Tab key
A small, but handy feature that makes it a little easier to complete symbol names.

tip

Completion for non-imported Go Modules
Import a module even if it was imported or used in your project

tip

Exclude items from auto-imports and completion
Exclude certain paths from auto-import and completion

tip

Live Templates
Add your own completion items via code snippets

tip

View Parameter Info
Quickly see function arguments and argument types.

playlist

42 Tips and Tricks
Become an IDE champ with these bite-sized tips and tricks.

tip

Split Screen Without Tabs
Get your code and tests side-by-side without resorting to tabs.

tip

Run From Keyboard
Use the keyboard to select and run a run configuration.

tip

Enable vim keybindings with IdeaVim plugin
Use the same keybindings from vim with a PlugIn

tip

Adding Fields In a Constructor
Let your IDE add constructor arguments to your instance.

tip

Rename Symbol
Change a variable name, class name, or other symbol, across the project.

tip

Rename a File and Its References
Change your mind on a file name and the IDE makes all the changes for you.

tip

Move Block Up/Down Using Keyboard
Use the keyboard to move a line or selection up or down in your file.

tip

View Parameter Info
Quickly see function arguments and argument types.

tip

Quick Documentation
View arguments and documentation without interrupting your flow.

tip

Make and Extend Selection Using Keyboard
Use the keyboard to select blocks of code then extend/shrink the selection.

tip

Add Line After/Before
Smart-add a line, from the middle of a line, after or before the current line.

tip

Generate Imports While Typing
Avoid interruption by letting PyCharm generate your imports as you type.

tip

Optimize Imports
Automate the organizing and cleaning up of your Python imports with Optimize Imports.

tip

Reformat Code
Tell PyCharm to clean up indentation and other code style in your file.

tip

Parsed f-string expressions
Bracket completion and syntax highlighting for f-string evaluated expressions.

tip

LiveEdit HTML and CSS
With the LiveEdit plugin, open HTML and CSS in Chrome, over HTTP, and see updates as you save.

tip

One Import Per Line Preference
Tell PyCharm to put each import on a separate line when it cleans up your imports.

tip

Better Autocomplete Results in Angular Templates
Narrow the universe of Angular template completions to those that matter.