AppCode 2019.2 Help

Work with source code

When you work with code, AppCode ensures that your work is stress-free. It offers various shortcuts and features to help you add, select, copy, move, edit, fold, and save code.

For navigation inside the editor, refer to Editor basics.

Find action

  • If you do not remember a shortcut for the action you want to use, press ⇧⌘A to find any action by name.

You can use the same dialog to find classes, files, or symbols. For more information, refer to Search everywhere.

Toggle read-only attribute of a file

If a file is read-only, it is marked with the closed lock icon the Locked icon in the status bar, in its editor tab, or in the Project Tool Window. If a file is writable, it is marked with the open lock icon the Unlocked icon in the Status bar.

  1. Open file in the editor or select it in the Project tool window.

  2. Do one of the following:

    • From the main menu, select File | Make File Read-only, or File | Make File Writable.

    • Click the lock icon in the status bar.

If a read-only status is set by a version control system, it's suggested that you use AppCode version control integration features. For more information, see Version control.

Select code constructs

  • In the editor, place the caret at the item you want to select and press ⌥↑/ ⌥↓ to extend or shrink your selection.

    For example, in a plain text file, the selection starts within the whole word then extends to the sentence, paragraph, and so on.

  • If you need just to highlight your braces, place the caret immediately after the block closing brace/bracket or before the block opening brace/bracket.

Select code according to capitalization

  1. In the Preferences dialog (⌘,), go to Editor | General | Smart Keys.

  2. Select the Use "CamelHumps" words checkbox.

If you want to use double-click when selecting according to capitalization, make sure that the Honor CamelHumps words... checkbox is selected on the Editor | General page of the Preferences dialog (⌘,).

Select occurrences

You can quickly locate all occurrences of the selected element in a file, make multiple selection, or select the next or the previous occurrences.

  • To select multiple occurrences in a file, make the initial selection of your code, then press ⌃G. Press the same key to find the next occurrence.

    Alternatively, keeping ⇧⌥ pressed, double-click or drag over the text you want to add to the selection.

  • To select all occurrences in the file, press ⌃⌘G.

  • To move the caret to the next or the previous occurrence, press ⌘G or ⇧⌘G respectively.

Copy and paste code

You can use the standard shortcuts to copy ⌘C and paste ⌘V any selected code fragment. If nothing is selected, AppCode automatically copies the whole line where the caret is located.

By default, when you paste anything in the editor, AppCode performs "smart" paste, for example, pasting multiple lines in comments will automatically add the appropriate markers to the lines you are pasting. If you need to paste just plain text, press ⌥⇧⌘V.

  • Place the caret at a line or a symbol and press ⌥⇧⌘C/⌘V.

  • AppCode keeps track of everything you copy to the clipboard. To paste from history, press ⇧⌘V. In the dialog that opens, select your entry and click Paste.

  • You can configure the depth of the clipboard stack.

    In the Preferences dialog (⌘,), go to Editor | General. In the Limits section, in the Maximum number of contents to keep in clipboard field, specify the number of entries. When the specified number is exceeded, the oldest entry is removed from the list.

Lines of code

AppCode offers several useful shortcuts for manipulating code lines.

  • To add a line after the current one, press ⇧⏎. AppCode moves the caret to the next line.

  • To add a line before the current one, press ⌥⌘⏎. AppCode moves the caret to the previous line.

  • To duplicate a line, press ⌘D.

  • To delete a line, place the caret at the line you need and press ⌘⌫.

  • To join lines, place the caret at the line to which you want to join the other lines and press ⌃⇧J. Keep pressing the keys until all the needed elements are joined.

    You can also join string literals, a field or variable declaration, and a statement. Note that AppCode checks the code style settings and eliminates unwanted spaces and redundant characters.

  • To split string literals into two parts, press .

  • To comment a line of code, place the caret at the appropriate line and press ⌘/.

  • To move a line up or down, press ⌥⇧↑ or ⌥⇧↓ respectively.

  • To remove a line of code, press ⌘⌫.

  • To move (swap) an XML or HTML tag attribute to the left or to the right, place the caret at it, or select it and press ⌥⇧⌘← for left or ⌥⇧⌘→ for right.

Code statements

Move statements

  • In the editor, place the caret at the needed statement and press ⇧⌘↑ to move a statement up or ⇧⌘↓ to move a statement down. AppCode moves the selected statement performing a syntax check.

Complete current statement

  • In the editor, press ⇧⌘⏎. AppCode inserts the required trailing comma automatically in structs, slices, and other composite literals. The caret is moved to the position where you can start typing the next statement.

Unwrap or remove statement

  1. Place the caret at the expression you want to remove or unwrap.

  2. Press ⇧⌘⌦.

    AppCode shows a popup with all actions available in the current context. To make it easier to distinguish between statements to be extracted and statements to be removed, AppCode uses different background colors.

    Select a statement to unwrap
  3. Select an action and press .

    Unwrapping result

Code fragments

  • Move and copy code fragments by dragging them in the editor.

    • To move a code fragment, select it and drag the selection to the target location.

    • To copy a code selection, keeping pressed, drag it to the target location.

    The drag functionality is enabled by default. To disable it, in the Preferences dialog (⌘,), go to Editor | General and clear the Enable Drag'n'Drop functionality in editor checkbox in the Mouse section.

  • To toggle between the upper and lower case for the selected code fragment, press ⇧⌘U.

    Note that when you apply the toggle case action to the CamelCase name format, AppCode converts the name to the lower case.

  • To comment or uncomment a code fragment, select it and press ⌥⌘/.

    To configure settings for commenting behavior, use options in the Comment Code section, on the Code Generation tab located in the language-specific pages under Preferences | Editor | Code Style.

Multiple carets

You can edit multiple lines simultaneously. For example, you can add comment markers to multiple lines, or remove some characters in several occurrences of a word.

  • To add or remove multiple carets, press and hold and click at the next location of the caret.

  • To delete all added carets, press .

  • You can make a multiple selection of code in columns. To enable or disable the column selection mode, press ⇧⌘8 or use the context menu of the editor.

    This mode is helpful when you want to edit several lines of code simultaneously. Place the caret at a symbol you need and either drag it up or down, or select a block of code and press the specified shortcut to achieve the same result.

    You can change the behavior of the caret move when you press ⌥+Arrows. The default behavor is to move the caret to the end of the current word. To change this setting, open settings ⌘, and navigate to Editor | General. In the Caret Movement section, select an appropriate behavior from the list.

Inline hints

Use inline hints to make your code readable and easier to understand. AppCode can show hints on variable types, thrown errors, and parameter names.

Type hints

Type hints show types of variables declared without explicit type annotation.

To show the type hints in the open file, make sure the editor is in focus and select View | Active Editor | Show Type Hints from the main menu.

To show the type hints in all files, in the Preferences dialog (⌘,), go to Editor | General | Appearance and select the Show Swift type hints checkbox. This setting will be applied to all Swift files in all your projects.

Swift type hints shown

If you want to add an explicit type to the variable declaration, place the caret at the variable, press ⌥⏎, and select the Add explicit type intention action:

Add explicit type intention action

If this intention action is unavailable, enable it in Preferences | Editor | Intentions | Swift.

Error hints

Error hints appear next to function/method declarations and calls and show all the errors functions/methods can throw.

To show the error hints in the open file, make sure the editor is in focus and select View | Active Editor | Show Type Hints from the main menu.

To show the error hints in all files, in the Preferences dialog (⌘,), go to Editor | General | Appearance and select the Show Swift type hints checkbox. This setting will be applied to all Swift files in all your projects.

Swift error hints shown

If a method that you call has several implementations/overrides, AppCode will display hints for all known errors that can be thrown in these implementations/overrides. Moreover, in some implementations, the thrown errors can be unknown at compile time. In this case, the sign appears in the error hint.

The down arrow next to the error name indicates that the error is thrown not in the method's body but in a method's override or implementation.

Parameter hints

Parameter hints show the names of parameters in methods and functions. By default, these hints are enabled and shown only for values that are literals or function expressions but not for named objects.

To hide the parameter hints, in the Preferences dialog (⌘,), go to Editor | General | Appearance and clear the Show parameter name hints checkbox.

To configure the parameter hints, in the Preferences dialog (⌘,), go to Editor | General | Appearance. Click Configure next to the Show parameter name hint checkbox (the checkbox is selected by default). In the dialog that opens, configure parameter settings and click OK.

Parameter hints shown

Configure the hints appearance

You can change the way the error and type hints in Swift look like.

  1. In the Preferences dialog (⌘,), go to Editor | Color Scheme | Swift.

  2. Find Inline hints | Error hint or Inline hints | Type hint in the list. Adjust the parameters you want to change, such as foreground and background colors, effects and so on. In the preview, you can see how the hints will look like.

Code folding

Folded code fragments are shown as shaded ellipses (Folded fragment). If a folded code fragment contains errors, AppCode highlights the fragment in red.

To configure the default code folding behavior, in the Preferences dialog (⌘,), go to Editor | General | Code Folding.

Expand or collapse code elements

  • To fold or unfold a code fragment, press ⌘-/⌘+. AppCode folds or unfolds the current code fragment, for example, a single method.

  • To collapse or expand all code fragments, press ⇧⌘-/⇧⌘+.

    AppCode collapses or expands all fragments within the selection, or, if nothing is selected, all fragments in the current file, for example, all methods in a file.

  • To collapse or expand code recursively, press ⌥⌘-/⌥⌘+. AppCode collapses or expands the current fragment and all its subordinate regions within that fragment.

  • To collapse or expand doc comments in the current file, in the main menu select Code | Folding | Expand doc comments/Collapse doc comments.

  • To collapse or expand a custom code selection, press ⌘..

    You can fold or unfold any manually selected regions in code.

Fold or unfold nested fragments

  • To expand the current fragment and all the nested fragments, press ⌘⌨ *, 1. You can expand the current fragment up to the specified nesting level (from 1 to 5).

  • To expand all the collapsed fragments in the file, press ⌥⌘⌨ *, 1. You can expand the collapsed fragments up to the specified nesting level (from 1 to 5).

Use the Surround With action

You can collapse or expand code using the Surround With action.

  1. In the editor, select a code fragment and press ⌥⌘T.

  2. In the popup menu, select <editor-fold...> Comments or region...endregion Comments.

  3. If you need, name your custom region and collapse or expand the created region as usual ⌘-/⌘+.

  4. Press ⌥⌘. to navigate to the created custom region.

Disable code folding outline

You can disable the code folding outline that appears on the left gutter.

  1. In the Preferences dialog (⌘,), go to Editor | General | Code Folding.

  2. Clear the Show code folding outline checkbox.

Autosave

AppCode automatically saves changes that you make in your files. Saving is triggered by various events, such as compiling, running, debugging, performing version control operations, closing a file or a project, or quitting the IDE. Most of the actual events are predefined and cannot be configured, but you can be sure that changes will not be lost as you work.

Configure autosave behavior

  1. In the Preferences dialog (⌘,), go to Appearance and Behavior | System Settings.

  2. Under Synchronization, configure the following options:

    • Save files on frame deactivation (when you switch to a different application)

    • Save files automatically if application is idle for N seconds

Mark files with unsaved changes

  1. In the Preferences dialog (⌘,), go to Editor | General | Editor Tabs.

  2. Select the Mark modified tabs with asterisk checkbox.

Revert changes

Last modified: 10 October 2019