Hello!
This post, of course, about AppCode 2018.1. But no, this time it is also about the first update. We have a lot of new and useful things, all in pictures under the cut.
We have implemented support for most of Swift 4.1:
Swift 4.0 we basically did in AppCode 2017.3. If you are interested in how we are moving towards a brighter future of Swift 4.2 and 5.0 support, subscribe to this ticket and its next steps .
Here it is worth explaining with an example. If UIKit
is connected, then CoreGraphics
and Dispatch
, for example, are automatically connected. All symbols from these libraries must be available. Logic dictates that both modules must be explicitly imported somewhere inside UIKit
. But if we just recursively go through the whole tree of modules connected to UIKit
, we will not find any imports.
Why? Because all of them are connected in the UIKit
version on Objective-C, and in Swift they are forwarded implicitly. AppCode builds autocompletion and navigation based on the symbol tree - there are no required characters - there is no autocompletion or navigation for such libraries without explicit import. I think you can not even explain how much it is reflected in the work of the IDE.
In this release, we corrected everything:
Along the way, we improved auto-completion navigation for some third-party libraries (for example, Firebase
and PureLayout).
At the heart of RxSwift is the construction described here . In AppCode 2018.1, we learned how to handle it correctly, which brought happy auto-completion and navigation to happy users:
Some of the problems remain , we continue to work on them. To everyone who helped us on the #appcode-users
channel in the RxSwift slake , - thanks!
Made the correct and convenient display of tests:
Implemented navigation to a specific place in the test:
For Objective-C, we haven’t done the same thing yet , restarting failed tests cannot be done yet. But for the usual tests on XCTest , as well as Kiwi , Catch , Boost.Test and Google Test, this feature works, along with a bunch of others .
Added some new settings in Preferences | Editor | Code Style | Swift | Code Generation for formatting comments:
Corrected the display of multi-line comments in the Quick Documentation ( F1
) popup:
Improved Objective-C / Swift translation:
Class
and SEL
/ IMP
, generic pointers and some types of parameters from here from Objective-C to Swift.We also accelerated the work of Go to class / symbol in projects with mixed code and finally fixed the problems with OCMock .
You can read about improvements in C / C ++ support in the post @ anastasiak2512 in the C ++ language support section, there are almost no differences in this part between AppCode and CLion.
While the post was being written, AppCode 2018.1.1 was released. It added support for Xcode header maps , which automatically made the construction of symbols for the mass of projects (in particular, for those generated using BUCK ) more correct.
In Xcode 9, we added wireless debugging, and in AppCode 2018.1 we supported it. Now, if you configure the device in Xcode, AppCode will also show it and allow you to debug it and launch the application.
Added settings for location simulation in Run / Debug Configurations :
Implemented support for changing location when launching and debugging applications:
Supported settings for user-defined places:
Began to automatically process .gpx
files as XML:
The project tree in AppCode had two display modes:
Files view greatly facilitates the work with the project. You need to change some README.md
or script - switched, opened, edited, returned to writing code. Given the number of plug-ins for different languages, it is convenient.
Project and Files is a special case of Project Scopes , which make it possible to filter out an arbitrary subset of project files. For example, to display only a part of the files in the Project view or to limit the scope of the inspection / search operation.
Now most standard filters can be used in the AppCode:
In Preferences | Appearance & Behavior | Scopes can create your own filters:
In Preferences | Appearance & Behavior | File Colors for each filter, you can set your own color when displayed in the Files mode :
In this release, worked the most obvious:
If you have ideas for improvements for each of the items, you should immediately create a ticket in our tracker and apply to it your settings exported using File → Export Settings ...
if
/ else
, do
/ while
, for
, switch
control constructs in Objective-C / C / C ++ ( ⇧⌘.
).That's all. Downloading - here , bugs - to the tracker , general questions are the easiest to raise right here in the comments!
Source: https://habr.com/ru/post/353468/
All Articles