Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update doc about IDE file link format #6944

Merged
merged 1 commit into from
Sep 21, 2016
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 31 additions & 20 deletions reference/configuration/framework.rst
Original file line number Diff line number Diff line change
Expand Up @@ -204,21 +204,20 @@ ide

**type**: ``string`` **default**: ``null``

If you're using an IDE like TextMate or Mac Vim, then Symfony can turn all
of the file paths in an exception message into a link, which will open that
file in your IDE.
Symfony can turn file paths seen in dumps and exception messages into links
that will open in your preferred text editor or IDE.

Symfony contains preconfigured URLs for some popular IDEs, you can set them
using the following keys:
Since every developer uses a different IDE, the recommended way to enable this
feature is to configure it on a system level. This can be done by setting the
``xdebug.file_link_format`` option in your ``php.ini`` configuration file.

* ``textmate``
* ``macvim``
* ``emacs``
* ``sublime``
Alternatively, you can use this ``ide`` configuration key.

You can also specify a custom URL string. If you do this, all percentage
signs (``%``) must be doubled to escape that character. For example, if
you use PHPstorm on the Mac OS platform, you will do something like:
In both cases, the expected configuration value is a URL template that contains an
``%f`` where the file path is expected and ``%l`` for the line number. When using
the ``ide`` configuration key, percentages signs (``%``) must be escaped by
doubling them. For example, if you use PHPstorm on the Mac OS platform, you will
do something like:

.. configuration-block::

Expand Down Expand Up @@ -250,16 +249,28 @@ you use PHPstorm on the Mac OS platform, you will do something like:

.. tip::

If you're on a Windows PC, you can install the `PhpStormProtocol`_ to
be able to use this.
When running your app in a container or in a virtual machine, you can tell
Symfony to map files from the guest to the host by changing their prefix.
This map should be specified at the end of the URL template after a ``#``
using JSON-like key/values::

// /path/to/guest/.../file will be opened
// as /path/to/host/.../file on the host
// and /foo/.../file as /bar/.../file also
'myide://%f:%l#"/path/to/guest/":"/path/to/host/","/foo/":"/bar/"...'

.. versionadded:: 3.2
Guest to host mappings were introduced in Symfony 3.2.

.. tip::

Symfony contains preconfigured URLs for some popular IDEs, you can set them
using the following values: ``textmate``, ``macvim``, ``emacs`` or ``sublime``.

Of course, since every developer uses a different IDE, it's better to set
this on a system level. This can be done by setting the ``xdebug.file_link_format``
in the ``php.ini`` configuration to the URL string.
.. tip::

If you don't use Xdebug, another way is to set this URL string in the
``SYMFONY__TEMPLATING__HELPER__CODE__FILE_LINK_FORMAT`` environment variable.
If any of these configurations values are set, the ``ide`` option will be ignored.
If you're on a Windows PC, you can install the `PhpStormProtocol`_ to
be able to use this.

.. _reference-framework-test:

Expand Down