<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>JetBrains PyCharm Blog</title>
	
	<link>http://blog.jetbrains.com/pycharm</link>
	<description>PyCharm — Python &amp; Django IDE built on IntelliJ platform</description>
	<lastBuildDate>Thu, 18 Apr 2013 18:38:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Pycharm" /><feedburner:info uri="pycharm" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>PyCharm 2.7.2 released</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/TcKoOJlo3L4/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/04/pycharm-2-7-2-released/#comments</comments>
		<pubDate>Thu, 18 Apr 2013 18:38:26 +0000</pubDate>
		<dc:creator>Dmitry Jemerov</dc:creator>
				<category><![CDATA[Release Announcements]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=2006</guid>
		<description><![CDATA[At last, the final version of the new bugfix update of PyCharm, version 2.7.2, has been released. Since we&#8217;ve upgraded to a newer version of the IntelliJ Platform (the same one as in IntelliJ IDEA 12.1.1), the full release notes &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/04/pycharm-2-7-2-released/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>At last, the final version of the new bugfix update of PyCharm, version 2.7.2, has been released. Since we&#8217;ve upgraded to a newer version of the IntelliJ Platform (the same one as in IntelliJ IDEA 12.1.1), the <a href="http://confluence.jetbrains.com/display/PYH/PyCharm+2.7.2+Release+Notes">full release notes</a> for this update are rather long. </p>
<p>Just to remind you, some of the highlights are:</p>
<ul>
<li>Bundled <b>File Watchers</b> plugin for automatic transpilation support of languages such as CoffeeScript/TypeScript, SASS/LESS and many others;</li>
<li>Support for <b>Emmet</b>, a new version of Zen Coding, an advanced system for abbreviated typing in HTML and CSS code;</li>
<li>Display of the current line separator for a file in the status bar and the possibility to change it for a single file or for multiple files in the project;</li>
<li>Possibility to tell PyCharm not to add the source and/or content roots of a project to PYTHONPATH;</li>
<li>Support for using the PyCharm console and &#8220;Run manage.py task&#8221; actions with remote interpreters.</li>
</ul>
<p>The new build is available for <a href="http://www.jetbrains.com/pycharm/download/">download</a> on our Web site, as well as for patch-based upgrade if you&#8217;re currently running version 2.7.1 or 2.7.2 RC2.</p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/TcKoOJlo3L4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/04/pycharm-2-7-2-released/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/04/pycharm-2-7-2-released/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=pycharm-2-7-2-released</feedburner:origLink></item>
		<item>
		<title>PyCharm 2.7.2 RC2</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/2TPnSiB8irE/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/04/pycharm-2-7-2-rc2/#comments</comments>
		<pubDate>Tue, 16 Apr 2013 12:33:04 +0000</pubDate>
		<dc:creator>Dmitry Jemerov</dc:creator>
				<category><![CDATA[Early Access Preview]]></category>
		<category><![CDATA[Sales and Promotions]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1990</guid>
		<description><![CDATA[Since the release of PyCharm 2.7.2 RC, while waiting for a couple of important fixes blocking the final 2.7.2 release, we&#8217;ve fixed so much other stuff that we decided to publish another Release Candidate &#8211; PyCharm 2.7.2 RC2. The build &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/04/pycharm-2-7-2-rc2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">Since the release of PyCharm 2.7.2 RC, while waiting for a couple of important fixes blocking the final 2.7.2 release, we&#8217;ve fixed so much other stuff that we decided to publish another Release Candidate &#8211; <strong>PyCharm 2.7.2 RC2</strong>. The build is now available for download on the  <a title="EAP page" href="http://confluence.jetbrains.com/display/PYH/JetBrains+PyCharm+Preview+%28EAP%29">EAP page</a> and as IDE update. You can also check out the <a href="http://confluence.jetbrains.com/display/PYH/PyCharm+129.258+Release+Notes">full release notes</a> for the new build.</p>
<p style="text-align: justify">As usual, your feedback is so much appreciated in <a href="http://youtrack.jetbrains.com/">YouTrack</a>.</p>
<hr />
<p style="text-align: justify"><strong>Earth Day Sale is ongoing</strong></p>
<p style="text-align: justify"><a href="http://blog.jetbrains.com/pycharm/files/2013/04/earthsale.png"><img class="alignright size-full wp-image-1996" src="http://blog.jetbrains.com/pycharm/files/2013/04/earthsale-e1366114213472.png" alt="" width="236" height="151" /></a></p>
<p style="text-align: justify">In the spirit of <strong>Earth Day</strong>, Get up to <strong>50% OFF JetBrains Tools</strong> for personal use and support a good cause. Every personal license bought between April 15th and 22nd helps the environment by saving the endangered <strong>Atlantic Forest of Brazil</strong>.</p>
<p style="text-align: justify"><em><span style="font-size: 16px">Think fast! It’s a </span><a href="http://www.jetbrains.com/specials/">limited-time offer</a><span style="font-size: 16px"> that you don’t want to miss!</span></em></p>
<p style="text-align: justify"><em><span style="font-size: 16px"><em>Develop with Pleasure!</em><br />
<em>PyCharm team</em><br />
</span></em></p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/2TPnSiB8irE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/04/pycharm-2-7-2-rc2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/04/pycharm-2-7-2-rc2/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=pycharm-2-7-2-rc2</feedburner:origLink></item>
		<item>
		<title>PyCharm 2.7.2 Release Candidate</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/8mDX1ELFrIA/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/03/pycharm-2-7-2-release-candidate/#comments</comments>
		<pubDate>Tue, 26 Mar 2013 16:15:21 +0000</pubDate>
		<dc:creator>Dmitry Jemerov</dc:creator>
				<category><![CDATA[Early Access Preview]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1981</guid>
		<description><![CDATA[Today we&#8217;ve released another preview build for PyCharm 2.7.2, and this time we believe it&#8217;s good enough to be called Release Candidate. Along with a bunch of Python specific fixes, the new build bring along a number of platform goodies &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/03/pycharm-2-7-2-release-candidate/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Today we&#8217;ve released another preview build for PyCharm 2.7.2, and this time we believe it&#8217;s good enough to be called Release Candidate. Along with a bunch of <a href="http://youtrack.jetbrains.com/releaseNotes/PY?q=fix+for%3A2.7.2">Python specific fixes</a>, the new build bring along a number of platform goodies such as the possibility to display the current line separators for a file and to change them in the editor status bar. This build also fixes a noteworthy regression in 129.19 which prevented refactorings and Find Usages from working correctly if the file in question was part of the Python interpreter paths. </p>
<p>The new build is available for download on the <a href="http://confluence.jetbrains.com/display/PYH/JetBrains+PyCharm+Preview">EAP page</a>. Unfortunately patch-based upgrade from the previous EAP build is not available; you&#8217;ll need to download the complete installer if you&#8217;re currently running the build 129.19.</p>
<p>As usual, your feedback is welcome in <a href="http://youtrack.jetbrains.com">YouTrack</a>.</p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/8mDX1ELFrIA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/03/pycharm-2-7-2-release-candidate/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/03/pycharm-2-7-2-release-candidate/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=pycharm-2-7-2-release-candidate</feedburner:origLink></item>
		<item>
		<title>Check out the PyCharm 3.0 roadmap</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/OUxWuv5AVrs/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/03/check-out-the-pycharm-3-0-roadmap/#comments</comments>
		<pubDate>Mon, 25 Mar 2013 17:08:51 +0000</pubDate>
		<dc:creator>Dmitry Filippov</dc:creator>
				<category><![CDATA[Conferences & Events]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1960</guid>
		<description><![CDATA[Wow! What a whirlwind the past couple weeks have been! We got back from PyCon 2013 which was conducted in Santa Clara in the middle of March. The conference was so awesome, people so amazing! We are so privileged to &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/03/check-out-the-pycharm-3-0-roadmap/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">Wow! What a whirlwind the past couple weeks have been! We got back from <a href="https://us.pycon.org/2013/">PyCon 2013</a> which was conducted in Santa Clara in the middle of March. The conference was so awesome, people so amazing! We are so privileged to be a part of the community that is setting a standard every day in the Python programming world. We were able to talk to hundreds of people, answer their questions about our company, products, PyCharm itself and collect their valuable feedback. We had a booth in expo hall, participated in development sprints and made the lightning talk about <strong>PyCharm</strong> key features as well. That was awesome experience indeed!</p>
<p style="text-align: justify">Although being busy on the main conference and development sprints days, we have not stopped fixing bugs for released version of PyCharm and implementing new features to the our next very major release of <strong>PyCharm 3.0</strong>.</p>
<p style="text-align: justify">So, now we a very excited to announce the <a href="http://confluence.jetbrains.com/display/PYH/PyCharm+3.0+Roadmap">PyCharm 3.0 Roadmap</a>. The suggested theme for the release is “Intelligence for third-party libraries”. We are really hope you will enjoy these new features are going to be implemented in PyCharm 3.0. As usual, your feedback on them is so much appreciated.</p>
<p>We’d like to thank you all for being with us!<br />
Stay tuned for further updates! And do not forget to:<br />
<em>Develop with Pleasure!</em> <img src='http://blog.jetbrains.com/pycharm/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Sincerely yours PyCharm team:<img src="https://lh6.googleusercontent.com/gNl4KjELzPPPx2snGdm73QEtWSi-AKfTTnR0ow3ZkDYQhNipns2Jh-lvcB66Yyo5x85LjfywyodoGI8AfVWX6iZQDLaC4Mhz9H439E5tkrxE7zvhGWM1L0uWSw" alt="" width="548px;" height="597px;" /></p>
<p style="text-align: justify">P.S. This photo was made in our Jetbrains Saint-Petersburg office. From left to right: Dmitry Trofimov, Yulia Zozulya, Dmitry Filippov, Andrey Vlasovskikh, Dmitry Jemerov, Ekaterina Tuzova.</p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/OUxWuv5AVrs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/03/check-out-the-pycharm-3-0-roadmap/feed/</wfw:commentRss>
		<slash:comments>26</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/03/check-out-the-pycharm-3-0-roadmap/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=check-out-the-pycharm-3-0-roadmap</feedburner:origLink></item>
		<item>
		<title>PyCharm 2.7.2 EAP</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/d8ZOsMamoNE/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/03/pycharm-2-7-2-eap/#comments</comments>
		<pubDate>Thu, 14 Mar 2013 23:15:59 +0000</pubDate>
		<dc:creator>Dmitry Jemerov</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1955</guid>
		<description><![CDATA[Today we&#8217;re released an Early Access Preview of PyCharm 2.7.2, the next minor update for PyCharm. Despite the small increase in version number, there&#8217;s actually a ton of stuff that has changed internally, thanks to the upgrade to a newer &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/03/pycharm-2-7-2-eap/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Today we&#8217;re released an Early Access Preview of PyCharm 2.7.2, the next minor update for PyCharm. Despite the small increase in version number, there&#8217;s actually a ton of stuff that has changed internally, thanks to the upgrade to a newer version of the underlying IntelliJ Platform. </p>
<p>The main things that you can enjoy in the new build is support for <a href="http://emmet.io/">Emmet</a> (a new version of Zen Coding, a powerful abbreviation system for HTML/CSS developers) and <a href="http://blog.jetbrains.com/webide/2013/03/file-watchers-in-webstormphpstorm-6-a-k-a-background-tasks/">File Watchers</a> (a tool for automatic background compilation of CoffeeScript, SASS and other Web languages).</p>
<p>One Python-specific change worth noting is that it&#8217;s now possible to specify in the run configuration settings whether you want PyCharm to include the content roots and/or source roots of your project into PYTHONPATH. Previously PyCharm tried to apply heuristics (which changed between versions) to detect if this was needed, which led to much confusion and projects broken by PyCharm upgrades. Now this behavior is under your control.</p>
<p>The new build of PyCharm is already available at the <a href="http://confluence.jetbrains.com/display/PYH/JetBrains+PyCharm+Preview">EAP page</a>, and the in-IDE update is going to be available in a short while. Note that we&#8217;re not providing detailed release notes for this build; we&#8217;ll have the full list of changes ready by the time of the final 2.7.2 release.</p>
<p>Please give the new build a try, and as usual &#8211; if you run into any issues, please report them to <a href="http://youtrack.jetbrains.com">YouTrack</a>, so that we can fix them before the final 2.7.2 release.</p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/d8ZOsMamoNE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/03/pycharm-2-7-2-eap/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/03/pycharm-2-7-2-eap/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=pycharm-2-7-2-eap</feedburner:origLink></item>
		<item>
		<title>How PyCharm helps you with remote development</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/hFjLKxhiJcM/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/03/how-pycharm-helps-you-with-remote-development/#comments</comments>
		<pubDate>Fri, 08 Mar 2013 15:18:03 +0000</pubDate>
		<dc:creator>Dmitry Filippov</dc:creator>
				<category><![CDATA[Cool Feature]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1946</guid>
		<description><![CDATA[Have you ever wanted to develop a Python or Web application for Linux from your laptop running Windows 7 or MAC OS X? To debug or test your application on different operating systems without ever leaving the IDE? Or just &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/03/how-pycharm-helps-you-with-remote-development/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">Have you ever wanted to develop a Python or Web application for <strong>Linux</strong> from your laptop running <strong>Windows 7</strong> or <strong>MAC OS X</strong>? To debug or test your application on different operating systems without ever leaving the IDE? Or just to run large applications that you develop as a team on a dedicated provisioned environment, rather than on regular workstations? Guess what: all of this is possible with the remote development features already available in <strong>PyCharm</strong>.</p>
<p style="text-align: justify">The central entry point to remote development with PyCharm is the notion of <strong>Remote Interpreters</strong>.</p>
<p style="text-align: justify">You can configure PyCharm to use Python interpreter from a remote host and set it as your project interpreter. Then you can configure your run/debug configurations to run, debug or test your applications on the remote host. The remote host can be a physical remote server, a VM or even a virtualenv environment &#8211; it doesn’t matter. PyCharm has everything you need to work with all types of remote hosts.</p>
<p style="text-align: justify">Actually, most of the Remote Development stuff was already available in previous versions of PyCharm and covered in these nice <a href="http://www.jetbrains.com/pycharm/quickstart/index.html">tutorials</a>. But we never stop working on improving your comfort and user experience, so PyCharm 2.7 gets new additional features.</p>
<p><strong>Vagrant integration</strong></p>
<p><img src="https://lh4.googleusercontent.com/0AS7tzOWGjpLWodBoZ4Y6tBHXExikot4H4ACOthTJ-z0Z8gFFuJIxLoE0nyTfQnmEKjaTBpyIBNsM7JLwG2GSbUqQOvTOzY0BW8s3SDTLGSc6vrSLtr6jQR6nA" alt="" width="266px;" height="76px;" /></p>
<p style="text-align: justify">Native <a href="http://vagrantup.com/">Vagrant</a> integration is now implemented in PyCharm 2.7+. It is supported via the plugin Vagrant that comes already bundled with PyCharm. Vagrant integration makes it much easier to provision and manage your VMs, connect to them over the SSH and automatically configure a remote interpreter and an FTP deployment, if you run your development environment in a VM using Vagrant. All this without leaving the IDE!</p>
<p style="text-align: justify">Before you start working with Vagrant, make sure that the Vagrant plugin is enabled (this is the default). Also make sure that Oracle VirtualBox and Vagrant are installed on your machine.</p>
<p>First, open Settings | Project Settings | Vagrant:<img src="https://lh6.googleusercontent.com/rTCV6lHYGEjFwOwpR81fp9pewRpvfy7-zDjuEC1Ydb8TtUiQcjPqfnII2MpL_yH3qDiRENnpIax-168j8Oi0A5GgluRaYjLFTxv0NvQ4dGX0fUcsMAH_YPga0g" alt="" width="683px;" height="278px;" /></p>
<p>Enter appropriate paths for “Vagrant executable” and “Instance folder,” and then add your first Vagrant Box by clicking the Add (green plus) button:<br />
<img src="https://lh5.googleusercontent.com/rzu4d7tScQAFuFhfCD0prMjtNkbO2_sNky2Bb3YxDHUnBfb1e9X7sQKPqrjZVA95VcPFA_HZjG-ZWaQY6bJSP-e6FNf7SVIgr_zjFw9QKwMe5Wtq91NdVKNVfw" alt="" width="682px;" height="278px;" /></p>
<p>Here, choose a name for your new Vagrant box and provide the Box URL for downloading the template. Click OK to start downloading your VM.<img src="https://lh6.googleusercontent.com/UeHVq8TAY8SE1S7IAsfgZCUXT3jf9n9O24DI5bK78lyRW2yE9QcBO177E_I9kKEbL6_fcOsxC_coFzcCwrmgr-tDQa3hc0qnllf4N7njrAsfi-B4LvH5NWSedA" alt="" width="683px;" height="276px;" /></p>
<p>Good! Now, after this step we have VM downloaded and added to our environment:<img src="https://lh5.googleusercontent.com/SAfTCQUD1Xub3VIWM-UEygcaYSWS6nCZIXqOn49oEx4yMPq2nrVgPpnsF5BcX9P4yNXdksSzcX6hn4h6blT-zWh_w_GEQmAtplX2QDz-22O6YW5DjdAW65QJbQ" alt="" width="684px;" height="277px;" /></p>
<p style="text-align: left">Next, open Tools | Vagrant. You will see the Vagrant menu node containing different commands, which correspond to the standard Vagrant actions:<img src="https://lh4.googleusercontent.com/YIDFyRbfkfGwKT1erDIMf2htRqEZCvsi7GA7hChCuNpajp6mBiWm5gizw9IyerXGz1Snd4bY5LIHIJekP7fcVXTgdxwtdfgIp7mNdjum9hem9YsRuqYWUkuNQg" alt="" width="447px;" height="204px;" /></p>
<p style="text-align: justify">First you need to initialize a Vagrantfile for your project. Select “Init in Project Root” in the menu to automatically create the Vagrantfile, and you will be able to see and modify it like any other file within your project.</p>
<p style="text-align: justify">Now you can start your first VM! To do so, select Tools | Vagrant | Up.<br />
On the bottom of the screen a special console will open showing you the progress and output from Vagrant:</p>
<p style="text-align: justify"><img src="https://lh5.googleusercontent.com/MsswdONpo2dr3NWblEbmyPUNA0bFLHd-YG0F1CyEVKwnOGN_zZ94dmKjC1hNFurhvOL1ZJLhD1O1tzdlZHe0_W9TWmEcTZ2IqhNHQhuDGN3vLinr3UZ0WP9FnA" alt="" width="625px;" height="363px;" /></p>
<p style="text-align: justify">To be able to run your project on the VM or to connect to the VM, you need to configure the remote interpreter.</p>
<p style="text-align: justify">This is done through Settings | Project Settings | Project Interpreter | Python Interpreters. Click the Add button and select “Remote interpreter.” Here you will get the “Configure Remote Python Interpreter” dialog:<br />
<img src="https://lh6.googleusercontent.com/FddcB9rvxDbR-7CducUf7FK6uKElhyHiLCa7CIyVxsu_NoTmqobJAVLbMPAD34rrOPpYXNdY7P7jnhf8gzUjFw_A0Tn-KcS9TGbJlDv37lUFsi2NCo8Diu-yVg" alt="" width="509px;" height="355px;" /></p>
<p style="text-align: justify">You can fill it manually, as for an arbitrary remote host, or just use “Fill from Vagrant config.” Click it &#8211; and voila! All the required fields are filled with your Vagrant box details.</p>
<p style="text-align: justify">After this step the remote interpreter will be added to your project. You can set it as the default project interpreter as well.</p>
<p>From this point on you can execute your project using the remote interpreter on the VM:<img src="https://lh6.googleusercontent.com/Pf8V_fkm6PAZrUBrM3HJgkTrpWSZbvv-cF9IEVzScMpJAgqGOuomHtR7-16Lh6bf5iOpE386S5RmJ6Pu9BikDDsKpDvKv56b8JXFAJlXoxK0RR6iyuobKYXz_A" alt="" width="555px;" height="102px;" /></p>
<p style="text-align: justify">The Vagrant plugin works gracefully with the Vagrantfile. You can manually edit it, and all you need is just to click Tools | Vagrant | Reload for the Vagrant plugin to pick up new settings.</p>
<p>For example you can set up custom path mappings in Vagrantfile:<img src="https://lh6.googleusercontent.com/rpjXz6Utbloa9P87VdvsaOYTMUHNHXyLVNXQsNRgXkqKJ0RuvwtPNH81bM12tEhR5Wxp5DcrxAdmifrR_C-J_7i-bueCqyK8mytk5iCYefk4ucZ0Sz9chdDLLw" alt="" width="610px;" height="49px;" /></p>
<p style="text-align: justify">After the Vagrant Box is reloaded, a mapping will be created and you will see a new shared folder into your project folder.</p>
<p><strong>Integrated SSH console</strong></p>
<p style="text-align: justify">One of the coolest and most useful features is that you can log in to your remote host via SSH and work in its console without leaving PyCharm. To do that, just select Tools | Run SSH Terminal. A console opens on the bottom with the prompt:</p>
<p style="text-align: justify"><img src="https://lh6.googleusercontent.com/4BCbeXTRNhqjYC2m-W7Frf7fpVoymW4Tnf18O8qQuXTLsRlRG-eYvoY_OdKzIktowpncfevDHtkyrdeNjMHkYIqYlQP24TR-BmSL4CvkhZgXccEtXmPkQLLsXQ" alt="" width="597px;" height="211px;" /></p>
<p>Feel free to discover its usability. You can even launch Vim in it:<br />
<img src="https://lh5.googleusercontent.com/UZVOt0ZVzj7pWYbmnfKg3JLLYXjrTG9_pJJJxEz7tzJxWQ8MmQAY_gAnXeN8YekiFhmiNJlU8hHamdGZK7rZ5pSgkALEKTtgAemZv2JkssAb02CAZcM7SVSAIQ" alt="" width="716px;" height="409px;" /></p>
<p style="text-align: justify">As you can see, PyCharm comes with everything but the kitchen sink! So we really hope you’ll enjoy these new enhancements and feel comfortable developing your applications on remote environments. And as always, please report your issues or feature requests to our YouTrack bug-tracker.</p>
<p style="text-align: justify"><em>Develop with Pleasure!</em><br />
<em> PyCharm team</em></p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/hFjLKxhiJcM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/03/how-pycharm-helps-you-with-remote-development/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/03/how-pycharm-helps-you-with-remote-development/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-pycharm-helps-you-with-remote-development</feedburner:origLink></item>
		<item>
		<title>Meet the PyCharm team at PyCon 2013!</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/HUQT2dmZHzc/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/03/meet-the-pycharm-team-at-pycon-2013/#comments</comments>
		<pubDate>Thu, 07 Mar 2013 16:28:20 +0000</pubDate>
		<dc:creator>Dmitry Filippov</dc:creator>
				<category><![CDATA[Conferences & Events]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1940</guid>
		<description><![CDATA[Recently we came back from PyCon Russia 2013. What a nice conference it was. One of our developers, Andrey Vlasovskikh, gave an exciting talk about static analysis in Python code. People really liked the report and asked us a lot &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/03/meet-the-pycharm-team-at-pycon-2013/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img src="https://lh3.googleusercontent.com/UPN9OTcyr5mm_FmL-y3Az0f7FVhLCuD2I5olO1gScXgOvAzlldSqhmvpXQYKwFOtKRMUC3IZhbyp4QMmmF81bYzqbK5mINGRuO5r3vUICtHH7caUZ6bbYutZTg" alt="" width="650px;" height="88px;" /></p>
<p style="text-align: justify">Recently we came back from <a href="http://pycon.ru/">PyCon Russia 2013</a>. What a nice conference it was. One of our developers, <a href="https://twitter.com/vlasovskikh">Andrey Vlasovskikh</a>, gave an exciting talk about static analysis in Python code. People really liked the report and asked us a lot of specific questions. Many were really surprised about how fast and intelligent static analysis is in PyCharm. So we were very happy to get a lot of thanks and positive feedback from our users and even from those who haven’t tried PyCharm. We also raffled off several free PyCharm licenses to happy winners.</p>
<p style="text-align: justify">Now we&#8217;re going to <a href="https://us.pycon.org/2013/">PyCon 2013</a> which takes place in Santa Clara, California, March 13-21.</p>
<p style="text-align: justify">We will have a booth in the Expo Hall, so don’t miss this great opportunity to see PyCharm in action with its latest and greatest, all singing, all dancing features. Join us to learn some tips and tricks for productive development with Python, and meet our Technical Evangelist <a href="https://twitter.com/johnlindquist">John Lindquist</a>, Paul McCabe and members of the <a href="http://www.jetbrains.com/pycharm/">PyCharm</a> development team: <a href="https://twitter.com/intelliyole">Dmitry Jemerov</a>, <a href="https://twitter.com/filippovdmitry">Dmitry Filippov</a> and <a href="https://twitter.com/vlasovskikh">Andrey Vlasovskikh</a>. We will definitely answer all of your questions! Expect some surprises from the Team as well <img src='http://blog.jetbrains.com/pycharm/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p style="text-align: justify">See you soon at PyCon 2013!</p>
<p style="text-align: justify"><em>Develop with Pleasure!</em><br />
<em> PyCharm team</em></p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/HUQT2dmZHzc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/03/meet-the-pycharm-team-at-pycon-2013/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/03/meet-the-pycharm-team-at-pycon-2013/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=meet-the-pycharm-team-at-pycon-2013</feedburner:origLink></item>
		<item>
		<title>PyCharm 2.7.1 and IntelliJ IDEA Python plugin updates are available</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/xZIQeFYshug/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/02/pycharm-2-7-1-and-intellij-idea-python-plugin-updates-are-available/#comments</comments>
		<pubDate>Thu, 28 Feb 2013 17:56:09 +0000</pubDate>
		<dc:creator>Dmitry Filippov</dc:creator>
				<category><![CDATA[Release Announcements]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1926</guid>
		<description><![CDATA[Today we&#8217;ve published PyCharm 2.7.1 update! We&#8217;re continuously working on improving the quality and your user experience with PyCharm, thereby PyCharm 2.7.1 includes a number of essential fixes. The most noticeable areas containing them are: code insight and inspections, editing and &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/02/pycharm-2-7-1-and-intellij-idea-python-plugin-updates-are-available/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">Today we&#8217;ve published <strong>PyCharm 2.7.1</strong> update!<br />
We&#8217;re continuously working on improving the quality and your user experience with PyCharm, thereby <strong>PyCharm 2.7.1</strong> includes a number of essential fixes. The most noticeable areas containing them are: code insight and inspections, editing and refactoring features, debugger and a number of fixes on VCS as well. <span style="font-size: 16px">Note that now PyCharm works correctly with PyPI, which has transferred to https recently. </span></p>
<p style="text-align: justify">We know that most of you have been looking for <strong>IntelliJ IDEA Python plugin</strong> update, because we received a lot of questions about that. Fortunately, it is available now and can be used  with latest <a title="IntelliJ IDEA 12.1" href="http://confluence.jetbrains.com/display/IDEADEV/EAP">IntelliJ IDEA 12.1 EAP</a>. This updated plugin contains the functionality comparable with PyCharm 2.7.1.</p>
<p style="text-align: justify">Check out the <a href="http://confluence.jetbrains.com/display/PYH/PyCharm+2.7.1+Release+Notes">release notes</a> for a full list of fixes.<br />
You can <a title="download" href="http://www.jetbrains.com/pycharm/download/index.html">download</a> the new build from the website or use “Check for updates” feature to update your current version from the IDE.</p>
<p style="text-align: justify">Stay tuned for further updates, and if you encounter some problems with this new update, please report them to YouTrack!</p>
<p style="text-align: justify"><em>Develop with Pleasure!</em><br />
<em> PyCharm team</em></p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/xZIQeFYshug" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/02/pycharm-2-7-1-and-intellij-idea-python-plugin-updates-are-available/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/02/pycharm-2-7-1-and-intellij-idea-python-plugin-updates-are-available/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=pycharm-2-7-1-and-intellij-idea-python-plugin-updates-are-available</feedburner:origLink></item>
		<item>
		<title>Long-awaited PEP 8 checks on the fly, improved doctest support and more in PyCharm 2.7</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/tIRAyCrHyLY/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/02/long-awaited-pep-8-checks-on-the-fly-improved-doctest-support-and-more-in-pycharm-2-7/#comments</comments>
		<pubDate>Thu, 21 Feb 2013 17:51:31 +0000</pubDate>
		<dc:creator>Dmitry Filippov</dc:creator>
				<category><![CDATA[Cool Feature]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1892</guid>
		<description><![CDATA[PyCharm integration with PEP 8 It is not a secret that readability is one of the key features of Python. Indeed, a high level of readability is at the heart of Python’s design, following the recognized fact that code is &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/02/long-awaited-pep-8-checks-on-the-fly-improved-doctest-support-and-more-in-pycharm-2-7/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><em><strong>PyCharm integration with PEP 8</strong></em></p>
<p style="text-align: justify"><img class="alignleft" src="https://lh5.googleusercontent.com/6_lLj82rOnJ57ZTpcVs1RhGWEpBWKjZ4QJXINeCuPnfef3iTecEVarMSPW20SO2mezC4ImQ193aJsafzSPjqJnNh1KZ9F5dHXCRJE7kiS-k0JGqLEYeeEtYoxA" alt="" width="296px;" height="117px;" /><span>It is not a secret that readability is one of the key features of Python. Indeed, a high level of readability is at the heart of Python’s design, following the recognized fact that code is read much more often than it is written. Developers always need to share their code, so it is very important for that code to be easily understood by others. And here come different coding style guides and standards. One of them, </span><a href="http://www.python.org/dev/peps/pep-0008/">PEP 8</a><span>, is the de facto coding style guide for Python.</span></p>
<p style="text-align: justify">PyCharm 2.7 takes care of readability and general beauty of your code. Now it supports continuous checking of your code for PEP 8 compliance on the fly, as you type it in the editor. PyCharm highlights any coding style violations and gives you suggestions, which you can apply instantly with the well known PyCharm quick-fixes:</p>
<p style="text-align: justify"><img class="aligncenter" src="https://lh4.googleusercontent.com/-xOfEPr6-9wAeXoVwNqRoNz6Yr3ysSJjxDrvWnglBWwEVKJdYI-TECf-E6kixjw5SKm7S4pIZ1GpH0s7CpiVADAL3NO4ZyiPO06yhgD7h8u7gVlWOfjn21Frxg" alt="" width="394px;" height="131px;" /></p>
<p><img class="alignright" src="https://lh3.googleusercontent.com/9fJQG-qa3ZYRPeBxW9Jw6ct5hvZ_R13GdLjuJzuPqX90Zae6NuG5PZofVZ1zYCwJWkdTbnSovqcojxsPWHVV7EgHZ5-Bez7ImKOOtf4y6IM9PQ7Dq0meer9E9g" alt="" width="326px;" height="228px;" /><span style="line-height: 26.666667938232422px"> </span></p>
<p style="text-align: justify">Following PEP 8 is a good p<span>ractice, although there are some situations where it is desirable to depart from the standard. The P</span><span>yCharm team respects your freedom of choice, so you can disable specific PEP 8  warnings if you really need to. You can do that with the following quick-fix:</span></p>
<p style="text-align: justify">&nbsp;</p>
<p><span>Or you can completely manage your inspections profile with Settings | Project Settings | Inspections:</span></p>
<p><strong><img src="https://lh4.googleusercontent.com/1mV8t1j0ENWYkh9YNhIAv4pGbIGEog95DPDegzLByGbDOrpTA-SUrFkt--TFUmV8t5exKO9Szg3llFBHykDLjy4RCyExCfE9qN4uSBoOgCIxhX8Xwd1nEOi7qw" alt="" width="610px;" height="445px;" /></strong></p>
<p style="text-align: justify"><strong>Automatic <em>imports optimization</em> in PyCharm</strong></p>
<p style="text-align: justify">Whenever you remove usages, it’s easy to forget to remove the corresponding imports. Now, in addition to standard PEP 8 checks, PyCharm is capable of <strong>optimizing imports</strong>. You no longer have to stop what you are doing, scroll to the top of the file, find the unused imports, and remove them manually.</p>
<p style="text-align: justify">This feature formats the existing import statements, reordering them according to PEP 8, and removes unused ones as well. All you need to do is press Ctrl+Alt+O or go to <span>Code|Optimize imports&#8230;</span></p>
<p><strong><img src="https://lh4.googleusercontent.com/_FkTMvI3e0M_mBhCQKAV-2E6d1i1P-8vw2P8axtDLR0xhcvjimRYBknQODGtybTdUiAoUNrcIFVEJDv9u9FPUU1HvEAVr0NfDT2rdxGibtIh8NeyZpKPqYY_LQ" alt="" width="256px;" height="102px;" /><strong><img src="https://lh3.googleusercontent.com/xasA9ld_UTe9VLt0gUj7u97_OGlx7p8EALmFHPfGmmZZDsIRw0kB1EIBRIOQQzCXBsF35ismWy1Jft_RuLoZBmYe2n_BGdDWm7Wh-wniYaoM4HBTAHgmll_tJQ" alt="" width="66px;" height="60px;" /></strong></strong></p>
<p style="text-align: center"><strong><strong><img class="aligncenter" src="https://lh4.googleusercontent.com/oi7l5a3QdpEgafIGH36dNThoetSIHzNtWCVmebIXX5u-PkhYZ1q7q9DToJdMKXWzlp4B-_pNJPK83e3OAPrucmeZ15Yz-iOpr6fGYdiGgfug329Xm0Wm-j8uSQ" alt="" width="472px;" height="202px;" /></strong></strong></p>
<p><strong><strong><img class="alignright" src="https://lh4.googleusercontent.com/8grXxoF1dfCWEBKPD1-l5TYYP4XtjR21Rby4kEeojXTSm2Q6KR6zx_dVTb1QlEBgT0xLx08Mb8gvLMl_1ZAoubnEcH_Ayji2SyKTUa39vMB7wlKas0nqM6mQdg" alt="" width="257px;" height="116px;" /></strong></strong></p>
<p><strong><strong> </strong></strong></p>
<p><strong><strong> </strong><strong><strong> </strong></strong></strong></p>
<p><strong><strong><strong> </strong></strong></strong></p>
<p><strong><strong><strong> </strong></strong></strong></p>
<div>
<div style="text-align: center">
<p><span><strong><strong><strong><img class="alignright" src="https://lh3.googleusercontent.com/FSt3SrZrWrlshe7lEybNsVDK6m0O2QXDaFi4Npfzj_ayAoc0U4Jt0428W296ixDWd-Fo0FF95soRrZsUX3j8qq9f1eVlqho8VAB1Rk4pPothbtAjGGs-EgHG1Q" alt="" width="72px;" height="110px;" /></strong></strong></strong> </span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
</div>
<div style="text-align: center"><span><br />
</span></div>
<p style="text-align: justify"><em><strong>PyCharm recognizes Python code in your doctests</strong></em></p>
<p style="text-align: justify"><span>There is a nice standard library module called doctests which lets you document your code and write tests for it simultaneously. Now PyCharm recognizes <strong>Python code in your doctests</strong>, and provides syntax highlighting and even code insight for it:</span></p>
</div>
<p><strong><img src="https://lh5.googleusercontent.com/2HtgokQOD5mZf5bOgLn2D08Bh2_9z-_eLjmb3_Gas2ukM3pjKnc8wOmgTmVadgRy_GQ1PRw61BOBK8eW5jAMFflxFfaLqi3drk1LVjaUt1ih33fetSG182zXvw" alt="" width="466px;" height="182px;" /></strong></p>
<p><strong><strong><img src="https://lh4.googleusercontent.com/3wlSLHFwaGyo8BBHI6ih4FToVd2X4LmZ4bcXlTXz_z22tn48UmBM1TYpj0GDfEieVkcKXwubtpdjNLZPaE-ybudIbhmQrR4N4oAjB9x3-fmEKmGrFDe019BJ3A" alt="" width="551px;" height="165px;" /></strong><br />
</strong></p>
<p style="text-align: justify">It correctly recognizes code in doctests even though it has different context. For example, when performing Optimize imports, PyCharm takes care not to remove imports in doctests in case they are required.</p>
<p><em><strong>New general editing features in PyCharm</strong></em></p>
<p>PyCharm 2.7 also includes two minor but neat features:</p>
<ul>
<li>Edit | Fill Paragraph allows you to reflow the current string literal, comment or paragraph in a plain text file, so that lines wrap around and don’t exceed the right margin</li>
<li>Shadowing built-ins is a new inspection that highlights definitions of names that match the names of Python built-in functions:</li>
</ul>
<p style="text-align: center"><strong><img class="aligncenter" src="https://lh4.googleusercontent.com/FLcgaxJRW0leK5ZlsnyyJKRSeGmDrRLXnbmK_LAt_tB_ajY8xz94Rch6kBGcbHbOLIpEBPk-7OUpHNbzIC_KAe10R3QTJkg9HxND91YUxDzGdjFbasdw7LFlvg" alt="" width="352px;" height="56px;" /></strong></p>
<p><em><strong>Unwrap/Remove editing action in PyCharm</strong></em></p>
<p style="text-align: justify"><strong><img class="alignleft" src="https://lh3.googleusercontent.com/3XJ4_1_kqEGOQI0P_clmoSx8HvuWgKnuqT0Duc_XL7rbaUp9MbnHJIvmWwC4xAzSZK0x_pINwCKqoaAH-XiFPGUKjLOXGSOuDAzOK_f8tF_5CB1fH-0VMx7nCQ" alt="" width="269px;" height="92px;" /></strong><span>N</span><span>ow PyCharm supports the Unwrap/Remove action for Python, which provides a quick way to remove a control statement surrounding a block of code. To unwrap or remove a statement, place the caret on the expression and press Ctrl+Shift+Delete or go to Code | Unwrap/Remove. </span></p>
<p style="text-align: justify">PyCharm shows a pop-up window with all actions that are available in the current context:</p>
<p><strong> </strong></p>
<p style="text-align: center"><strong><img class="aligncenter" src="https://lh6.googleusercontent.com/IZXhVf7hUlDyQ06liItZLKm9JGvPQgHun_w0Lsou_2lOEYue1EYvxqrEWXRRj0tB2dnbb8SM4D2tukEHdLP3BdkaDc4CvR0vElnUWgmt-6nPJX8ConGonSCVDA" alt="" width="451px;" height="164px;" /></strong></p>
<p>&nbsp;</p>
<p style="text-align: justify"><span>We’ve also introduced several refactorings and code insight features that you may find interesting. See the <a title="What's new page" href="http://www.jetbrains.com/pycharm/whatsnew/index.html">What&#8217;s new page</a> </span><span>or these blog posts for more detailed descriptions: </span><a href="http://blog.jetbrains.com/pycharm/2013/02/refactoring-enhancements-in-pycharm-2-7/">Refactoring enhancements in PyCharm 2.7</a><span> and </span><a href="http://blog.jetbrains.com/pycharm/2013/02/dynamic-runtime-type-inference-in-pycharm-2-7/">Dynamic runtime type inference in PyCharm 2.7</a><span>.</span></p>
<p style="text-align: justify"><em>Develop with Pleasure!</em><br />
<em> PyCharm team</em></p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/tIRAyCrHyLY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/02/long-awaited-pep-8-checks-on-the-fly-improved-doctest-support-and-more-in-pycharm-2-7/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/02/long-awaited-pep-8-checks-on-the-fly-improved-doctest-support-and-more-in-pycharm-2-7/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=long-awaited-pep-8-checks-on-the-fly-improved-doctest-support-and-more-in-pycharm-2-7</feedburner:origLink></item>
		<item>
		<title>Refactoring enhancements in PyCharm 2.7</title>
		<link>http://feedproxy.google.com/~r/Pycharm/~3/L2d0vx1QsjQ/</link>
		<comments>http://blog.jetbrains.com/pycharm/2013/02/refactoring-enhancements-in-pycharm-2-7/#comments</comments>
		<pubDate>Mon, 18 Feb 2013 14:10:50 +0000</pubDate>
		<dc:creator>Dmitry Filippov</dc:creator>
				<category><![CDATA[Cool Feature]]></category>

		<guid isPermaLink="false">http://blog.jetbrains.com/pycharm/?p=1841</guid>
		<description><![CDATA[PyCharm 2.7 now supports the following new refactoring features: Extract Parameter Extract on substrings Create Parameter quick-fix on unresolved reference Change Method Signature The Extract Parameter refactoring allows you to add a new parameter to a function declaration and update &#8230; <a href="http://blog.jetbrains.com/pycharm/2013/02/refactoring-enhancements-in-pycharm-2-7/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">PyCharm 2.7 now supports the following new refactoring features:</p>
<ul style="text-align: justify">
<li>Extract Parameter</li>
<li>Extract on substrings</li>
<li>Create Parameter quick-fix on unresolved reference</li>
<li>Change Method Signature</li>
</ul>
<p style="text-align: justify">The <strong>Extract Parameter</strong> refactoring allows you to add a new parameter to a function declaration and update the function calls in your project. Use it to put the result of the selected expression into the function argument list.</p>
<p style="text-align: justify">This feature is available to be performed “in-place” by default, or through a dialog.<br />
To perform “in-place” refactoring, highlight an expression or place the caret on it and press Ctrl+Alt+P:</p>
<table style="border: 1px solid #ffffff" border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="border: 1px solid #ffffff">
<p style="text-align: center" dir="ltr"><span style="text-decoration: underline">Before</span></p>
</td>
<td style="border: 1px solid #ffffff">
<p style="text-align: center" dir="ltr"><span style="text-decoration: underline">After</span></p>
</td>
</tr>
<tr>
<td style="border: 1px solid #ffffff"><img class="aligncenter" src="https://lh5.googleusercontent.com/i0jDTiuhjPrmvcD8HMBN9svTdpvhNZm3-eV8kdQo6GccAP8okIo0Nc2a4f-voyzLLmPtn66qQN5c3vdsJQbtsZiGqb7O_8_Bvn6eOa2ddww5afFhMDt4CPeYMw" alt="" width="189px;" height="86px;" /></td>
<td><img class="aligncenter" src="https://lh3.googleusercontent.com/aqe6YI2E0u8Pupq23HGkSqcgULqDm7daiMncjYCJI8vYu6n8OPgtBAWG5BosiuXqimVjCD3uItlSOWUOtizxIa3bu09sI9__0fCA43ljk2v_KzAClC65V_q5fw" alt="" width="268px;" height="106px;" /></td>
</tr>
<tr>
<td style="border: 1px solid #ffffff"><img src="https://lh6.googleusercontent.com/EZhqTXOr7R8t6XWGgJSn4ZNc5DuXt6lzL_oJVJ57LE4pVyuZ_Wv8astjOJrjfPvumJQI9pue2blUKLQFRplDfQdRGsHor1pt51bv9LH-NxT7uQiB1VunAX3vpw" alt="" width="234px;" height="87px;" /></td>
<td style="border: 1px solid #ffffff"><img src="https://lh5.googleusercontent.com/WeO7tmIrK9OnmIgem7lnJJIS6wiuODAFlG-v2d5lPPJU6fdgQEH0pYjkEiXO9-gxPDzmuyiJzEbhaTENAd-Ht396GoRfnDGymGaC_MNtYX4mhTLaTn-o0M-X5A" alt="" width="352px;" height="105px;" /></td>
</tr>
</tbody>
</table>
<p style="text-align: justify"><em>Note: For more details, please see “Extract Parameter” in Help.</em></p>
<p style="text-align: justify">As shown in the example above, now PyCharm is capable of performing the <strong>extract refactorings on substrings</strong>. Now it is possible to use all the extract refactorings, such as extract constant/field/variable/parameter and other, on substrings.  This is supported for:<br />
• parts of strings with no formatting.<br />
• parts of strings with concatenation via &#8220;+&#8221;.<br />
• parts of strings with &#8220;%&#8221; - old-style formatting , including &#8220;%()&#8221;.<br />
• parts of strings with &#8220;str.format()&#8221; &#8211; new-style formatting, including replacement fields.</p>
<p style="text-align: justify">Here is an example of the extract variable on a substring with the new-style formatting:</p>
<p style="text-align: center"><a href="http://blog.jetbrains.com/pycharm/files/2013/02/subs_before.png"><img class="size-full wp-image-1873 aligncenter" src="http://blog.jetbrains.com/pycharm/files/2013/02/subs_before.png" alt="" width="352" height="87" /></a></p>
<p style="text-align: center"><a href="http://blog.jetbrains.com/pycharm/files/2013/02/arrow_down1.jpg"><img class="aligncenter size-full wp-image-1877" src="http://blog.jetbrains.com/pycharm/files/2013/02/arrow_down1.jpg" alt="" width="60" height="56" /></a></p>
<p style="text-align: center"><a href="http://blog.jetbrains.com/pycharm/files/2013/02/subs_after.png"></a><img class="size-full wp-image-1874 aligncenter" src="http://blog.jetbrains.com/pycharm/files/2013/02/subs_after.png" alt="" width="377" height="115" /></p>
<p style="text-align: justify"><span style="font-size: 16px">In case of an unresolved symbol, you can easily apply the </span><strong>Create Parameter</strong><span style="font-size: 16px"> quick-fix for that, making it a parameter of the function.</span></p>
<p style="text-align: justify">Before:<br />
<img src="https://lh3.googleusercontent.com/Wc3v2QX4GCwnCm8ruOj9PJcXm46Y0kOsbdwwxj7gnZnAemSw3uoFtOIu3dTlWCa0syZBeJnTbbBxil5EYtJY47enlNMeM2AiLVqseiAQZFEYIBOvmpyc42fbBg" alt="" width="412px;" height="189px;" /></p>
<p>After:<br />
<img class="alignleft" src="https://lh6.googleusercontent.com/tn_0ytowONNBDH8YiI9AtvscFM2lO9w8JqigK51VTDdjNP30fy_eZCv-xx5oVvzxq56HNvh4a4J0_hoPoLPZ7AxA_Hij4stWWpNJsUwjWmKKRE-dYwvvVBNZaA" alt="" width="293px;" height="105px;" /><em><span style="font-size: 16px;text-align: justify">Note: For more information on quick-fixes, please refer to “Resolving Problems” in Help.</span></em></p>
<p style="text-align: justify">&nbsp;</p>
<p style="text-align: justify">&nbsp;</p>
<p style="text-align: justify"><span style="font-size: 16px">With </span><strong>Change Method Signature</strong><span style="font-size: 16px"> you are able to refactor a signature of the selected method and update its calls in your project.</span></p>
<p style="text-align: justify">To try it, in the editor place the caret on a function name and press Ctrl+F6.<br />
Alternatively, select Refactor &gt; Change Signature from the main menu to open the same dialog:</p>
<p style="text-align: justify"><img src="https://lh6.googleusercontent.com/B1GNdnzSsxObszodd_5q9HBc41KeW7bZTjvmQ4PD4Ur_O778O4ljKL2oDhKlBhf_zIrkh0a7pxFoe8WjNq-qpBOXMU46tH4YKYy4NlfiE5Qkp61uzZBKP_kQsg" alt="" width="569px;" height="498px;" /></p>
<p style="text-align: justify">With this dialog you can:<br />
• Change the function name.<br />
• Add new parameters and remove the existing ones. Note that you can also add a parameter using the dedicated Extract Parameter refactoring.<br />
• Reorder parameters.<br />
• Change parameter names.</p>
<p style="text-align: justify">After applying changes, a new code will be generated with the new signature propagated through the method call hierarchy:</p>
<p style="text-align: justify"><img src="https://lh4.googleusercontent.com/NBJXvKsqratMoeFWMVN5QPUAkICJUiJ5T3Sf-VYmlUYJhu9sjZPiY7LcBDMsl0Kd1Vu5NvTnjbRzMPVEKAXmktrAtnEXT25gFxUzPOWNgRqkCf0e9yo8XDsDWw" alt="" width="559px;" height="125px;" /></p>
<p style="text-align: justify">We hope these new refactoring features will improve your user experience with PyCharm.</p>
<p style="text-align: justify"><em>Develop with pleasure!</em><br />
<em>JetBrains PyCharm Team</em></p>
<img src="http://feeds.feedburner.com/~r/Pycharm/~4/L2d0vx1QsjQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.jetbrains.com/pycharm/2013/02/refactoring-enhancements-in-pycharm-2-7/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://blog.jetbrains.com/pycharm/2013/02/refactoring-enhancements-in-pycharm-2-7/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=refactoring-enhancements-in-pycharm-2-7</feedburner:origLink></item>
	</channel>
</rss>
