AppCode 3.0 EAP opens with an integrated UI Designer and improved Project Settings

Hi everyone!
Spring is already here and, since it’s the time for renewal and growth, we are excited to tell you that the AppCode 3.0 Marocchino EAP is open now. We have prepared quite a lot for this build and are looking forward to telling you about the new features!

Integrated UI Designer
As some of you have already heard, we announced the UI Designer plugin preview last December. Time has passed and it is now fully integrated into AppCode.
UI Designer supports both .xib and .storyboard formats for iOS, OS X support will come later. In the EAP version Designer supports all basic editor features together with the convenient navigation, full component pallet supported by iOS SDK and Auto Layout (for the EAP there is no possibility to create layout constraints manually).
EAP_ui_designer
Please note that if you have already installed UI Designer plugin on your previous AppCode’s version you should uninstall it before AppCode 3.0 EAP installation.


Project settings
The project settings were re-worked to make the UI lightweight and more convenient:
EAP_build_phases
Also, following the top-voted request from our tracker concerning targets management, we have implemented the possibility to add targets in the AppCode.

We’ve just started our work in this direction, and it is still a work in progress. Thus, you can expect more to come very soon!

Code analysis becomes more profound
AppCode now understands your code context better and helps you find potential errors in a more effective way:
EAP_condition_false

Code generation in unit tests
You can now easily create a new test method or setUp/tearDown methods for OCUnit, XCTest, Kiwi or Google Test. Just press Cmd+N in your test class and select whatever you want to be generated. Also, for Kiwi, the corresponding “kiwi”  live template was added. This template helps you create a Kiwi Spec with a simple press of the Tab key:
kiwi_test

For Google Test, you’ll get a simple TEST() macro with the Generate test action (Cmd+N), but after you specify a suite name it will change the macro to a proper one (TEST(),  TEST_F(), TEST_P(), TYPED_TEST(), TYPED_TEST_P()).

To make test-driven development easier, test run schemes are now automatically synchronized between Xcode and AppCode, so you can change any parameter in one of these IDEs and see the result in the other immediately.

Formatter features
For this EAP we have made several improvements to the formatter. First of all, support for macros has been added to the formatter (see OC-5978 and other related issues). Secondly, support for the formatting of C++ code was greatly improved:
EAP_formatting

Keymap changes
Following your numerous requests we fully reworked Xcode keymap used in AppCode to stay closer to the native one and to have less conflicts with Xcode itself.

Also there is one change in Default keymap. For the extract ivar/field action Alt+Cmd+F is used now (instead of Alt+Cmd+I as before) and for the extract define action there is Cmd+Alt+D shortcut now (was Alt+Cmd+F before). We understand that such changes in Default keymap can be painful (especially in the beginning) but this will help us integrate other languages and plugins in a proper and more convenient way in the future.

Multiple carets and selections
Multiple selection allows you to put a cursor in multiple locations in your file and edit them at once. Press Alt+Shift and select the cursor locations with the mouse or press Ctrl+G to add the next occurrence of the current word to the selection and then write code simultaneously in these positions. Autocompletion and live templates will also work for you.
Multiple_carets_inv_colors

Search everywhere
If you have at least some information on what you’re looking for, you can locate the corresponding element using one of the existing navigation features such as Navigate to Class/File/Symbol, Find Action, etc. But what to do if you really want to look for something in every nook and cranny? The answer is to use a new powerful feature called Search Everywhere! To try it, press the magnifying glass icon EAP_search_everywhere_ret on the upper right-hand corner of the window, or invoke it with Double-Shift (hit Shift twice).

Lens mode
Hover the mouse over a warning, error strip or just some section on the scroll bar, and AppCode shows you the source code fragment annotated with the warning or error message.
EAP_lens_mode_ret

Navigate to folder
When navigating to a File (Shift+Cmd+O), you can enter the folder name followed by a slash ‘/’ to go to that folder.
EAP_search_folder_ret

Performance improvements
In addition to the new features, we continued our work on the performance improvements. Processes of building symbols and indexing were optimised.

And that’s not all
And, last but not least, there are a few more improvements available in this EAP version:

  • C++11 support was improved (including initializer lists, raw string literals, variadic templates, type traits).
  • A new log viewer for Git and Mercurial was added. Also, support for Subversion 1.8 (via the native client) has been provided.
  • A new built-in terminal (press Alt+F12 to start) lets you run commands locally or remotely using the SSH protocol.
  • When you use Find in Path, you can choose to search through the code or through the string literals/comments only within the selected scope. And for easier navigation over the items AppCode highlights matches to you.
  • You can import your preferred Xcode color schemes to AppCode now. Just go to Preferences | Editor | Colors & Fonts and click ‘Import from Xcode…’ there.

The whole list of fixed issues can be found in our tracker.

Please, note that system requirements have changed a bit. Minimum supported OS X version is 10.8 and Xcode is 5.0.

You can find the build on our EAP page. Let us know what you think — take part in discussions on the forum, and feel free to file bug reports and suggestions on our issue tracker.

P.S. One last thing we want to mention: AppCode EAP versions now have the code names, so don’t be surprised by a name such as Marocchino. AppCode will use cocoa-based drinks for its EAP names, and so the first one is an Italian variety.
From the practical side this makes it easier to find information on the specific AppCode versions in our blog, so for example, you can search our blog with the tag of Marocchino to find all the posts related to AppCode 3.0.

Develop with pleasure!
The AppCode Team

This entry was posted in Announcement, Early Access Preview and tagged . Bookmark the permalink.

33 Responses to AppCode 3.0 EAP opens with an integrated UI Designer and improved Project Settings

  1. Jennifer says:

    Any C++14/C++1y features, such as generic lambda’s?

  2. Andrei says:

    God it will be awesome to port the Designer to Android!

  3. Andrea says:

    Installed EAP 3.0 after removing the UI Designer plugin from 2.5.5, but in EAP it keeps asking me if I want to updated it, it downloads a “AppCode UI Designer 131.646″ but the update button never disappears and everytime I check for updates it downloads the UI Designer again..
    Any idea?

    • Anastasia Kazakova says:

      Oh yes, thanks. We will fix it now.
      And you can go to Preferences | Plugins | Browse repositories… | Manage repositories… and delete the link to xml you’ll find there.

  4. Stewart says:

    At last- The UI Designer is here :-) . Though, one comment – using the Darcula theme, the UI Designer looks very ugly – I’d rather use XCode for UI at the moment. I’m sure things will improve.

    Hopefully the CoreData modelling isn’t too far off in the future?

    Although CoreData isn’t supported, its a shame AppCode doesn’t have the DB Browser, despite this being a core platform feature ( IntelliJ / PyCharm etc). I find myself using other tools to view SQLite and Oracle DBs… be more convenient being able to use AppCode.

    Overall, XCode 3.0 looks great!!

    • Anastasia Kazakova says:

      We have several issues around core data support in our tracker. And the debugger already supports it.
      Finally it’s EAP time so any issues, comments etc. in our tracker are very welcome. We’ll try to cope with as much as we can till the release time.

  5. Andrew Shmig says:

    Awesome news!
    Guys, you r great! Thanks!

  6. tom says:

    Is there a way to zoom in/out while in the storyboard designer?

  7. Noah says:

    Glad to see the huge list of improvements and fixes! Looking forward to trying it out!

  8. Nikolaus Heger says:

    Why only support for auto-layout? That’s usually the first thing I turn off in XCode – I find it causes more trouble / complications than it’s worth. Also I have a lot of views that need programmatic layout and that doesn’t work with auto layout. I also have a lot of physics effects – not sure these would work with auto layout either…

    • Anastasia Kazakova says:

      You can also switch the Auto Layout in AppCode off. Go to the first element in the Component Tree called Document. It has “Use Autolayout” setting.
      Future plans are to support more options for manual constrains.

      • nikolaus heger says:

        Oh, in that case, that’s all I need.

        Not daring to install the EAP yet, I need a production version at the moment… ;)

  9. Mark Johnes says:

    Hey, jetbrains team, are you on NZT? No seriously whatever you guys have been smoking since 2011, can you please share it with us. ALL of ur tools are the best to date better then the ones of multinationals.

  10. pythoneer says:

    How far is your progress on the C++ IDE version. As i can recall this is developed in parallel to the AppCode product line. I am waiting for this so long :D

    I really love your products, all of them ;)

    • Anastasia Kazakova says:

      We are working on the C++ IDE – running private previews, processing feedback and so on. So at this point we can only ask you to wait patiently.

      • Jennifer Kuiper says:

        I signed up for this preview, but I haven’t seen any build so far. I use OSX. Maybe that’s the issue.

        • Anastasia Kazakova says:

          Jennifer, what makes you think the issue is in OS X? Have you seen our overview of the current C/C++ IDE’s status: http://blog.jetbrains.com/objc/2014/02/jetbrains-c-ide-status-update-and-video-report/?
          We’ve filtered you out unfortunately because your build and debugger are unsupported for now, so you won’t be able to even open your project. Will have them implemented hopefully in further releases.

          • Jennifer Kuiper says:

            Anastasia,
            What does it mean that “my and debugger are unsupported for now”? Is it that Clang that is the problem right now? (build tool and debugger?)

          • Anastasia Kazakova says:

            Sorry for the misprint. I meant the build system. You filled the GNU Make and C++ IDE supports CMake only for now. Moreover CMake files are the project files for the IDE so to open a project in the IDE one should have them. LLDB is smaller issue but still only GDB 7.6+ is supported.

  11. Lee Laborczfalvi says:

    Have been using the new EAP for a few days now, apart from some minor glitches around static code analysis it works great. The new built in terminal feature is awesome -perforce, code, and terminal all in one app – fantastic. Also great that the app doesn’t need to restart between theme changes.

  12. Chris says:

    AppCode 3.0 and still no split pane…

    …a few of us live on in hope, join us:
    youtrack.jetbrains.com/issue/OC-2581

  13. Stefan says:

    On my Machine the new AppCode EAP is really slow especially on code completion.
    Anyone else with this problems?

  14. Abe says:

    Hi
    Congratulations on v3!

    I would like some advice please:

    I am not used to either Xcode or Appcode keymaps. BUT I plan to become VERY used to one. Question is, which one? Should i learn the default Appcode keymap, and then make changes to the Xcode map to correspond, or should I use the Xcode keymap in AppCode? I want to learn ONCE and then thats it. This is a fork in the road for me, a new developer, and whilst I know that Appcode is the right tool for much of my work, I dont know enough to choose at this point. Help please!

    • Anastasia Kazakova says:

      You can either learn AppCode keymap and stay in AppCode all the time (and we hope develop with pleasure in it), or learn Xcode keymap and use it in both AppCode and Xcode efficiently. The keymap choice is up to you fully, they are both full-function and convenient.

      • Abe says:

        Thanks for the advice.

        It seems that there are times, like now (Xcode 6 + Swift etc) that one needs to go back to Xcode. So I am thinking that to standardise on the Xcode Key-mappings might be the best.

        PS Keep making Appcode AWESOME. Its your most important product. WHY?

        Simple, when it is some clearly amazing, APPLE will BUY JB for $ Billions.

        Not so if you make your other IDE’s great.

        If you guys are as smart in business as you are at programming, then you already know this: AppCode is your flagship product and it is here is Appcode that you should be more than just great!!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">