.. _`processing.options`:

**************************************
 Configuring the Processing Framework
**************************************

.. only:: html

   .. contents::
      :local:
      
The Processing Options menu (:menuselection:`Settings--> Options -->`
:guilabel:`Processing` tab) allows you to configure how algorithms work.
Configuration parameters are structured in separate blocks that you can
select on the left-hand side of the dialog.

The :guilabel:`General` block contains a number of interesting parameters.

* :guilabel:`Default output raster layer extension` is by default ``tif``
* :guilabel:`Default output vector layer extension` is by default ``gpkg``
* :guilabel:`Invalid features filtering`
* :guilabel:`Keep dialog open after running algorithm`. Once an algorithm
  has finished execution and its output layers are loaded into the QGIS
  project, the algorithm dialog is closed. If you want to keep it open
  (to run the algorithm again with different parameters, or to better
  check the output that is written to the log tab), check this option.
* :guilabel:`Max Threads`
* :guilabel:`Output folder`
* :guilabel:`Pre-execution script` and :guilabel:`Post-execution script`.
  These parameters point to files that contain scripts written using the
  processing scripting functionality, explained in the section covering
  scripting and the console.
* :guilabel:`Prefer output filename for layer names`.
  The name of each resulting layer created by an algorithm is defined by
  the algorithm itself.
  In some cases, a fixed name might be used, meaning that the same output
  name will be used, no matter which input layer is used.
  In other cases, the name might depend on the name of the input layer or
  some of the parameters used to run the algorithm.
  If this checkbox is checked, the name will be taken from the output
  filename instead.
  Notice that, if the output is saved to a temporary file, the filename
  of this temporary file is usually a long and meaningless one intended
  to avoid collision with other already existing filenames.
* :guilabel:`Results group name`.
  If you want to obtain all processing result layers in a group in the
  :guilabel:`Layers` panel, set a group name for this parameter. The group
  may exist already or not. QGIS will add all output layers to such a group.
  By default, this parameter is empty, so all output layers are added to 
  different places in the :guilabel:`Layers` panel, depending on the item
  that is active when running an algorithm.
  Note that output layers will be loaded to the :guilabel:`Layers` panel 
  only if :guilabel:`Open output file after running algorithm` is checked 
  in the algorithm dialog.
* :guilabel:`Show algorithms with known issues`
* :guilabel:`Show layer CRS definition in selection boxes`
* :guilabel:`Show tooltip when there are disabled providers`
* :guilabel:`Style for line layers`, :guilabel:`Style for point layers`,
  :guilabel:`Style for polygons layers` and
  :guilabel:`Style for raster layers` are used for setting the default
  rendering style for output layers (that is, layers generated by
  processing algorithms).
  Just create the style you want using QGIS, save it to a file, and then
  enter the path to that file in the settings so the algorithms can use
  it.
  Whenever a layer is loaded by Processing and added to the QGIS canvas,
  it will be rendered with that style.
  
  Rendering styles can be configured individually for each algorithm and
  each one of its outputs.
  Just right-click on the name of the algorithm in the toolbox and
  select :guilabel:`Edit rendering styles for outputs`.
  You will see a dialog like the one shown next.

  .. _figure_rendering_styles:

  .. figure:: img/rendering_styles.png
     :align: center

     Rendering Styles

  Select the style file (:file:`.qml`) that you want for each output
  and press :guilabel:`OK`.
* :guilabel:`Temporary output folder path`
* :guilabel:`Warn before executing if parameter CRS's do not match`

You will also find a block for algorithm :guilabel:`Providers`.
Each entry in this block contains an :guilabel:`Activate` item that you
can use to make algorithms appear or not in the toolbox.
Some algorithm providers have their own configuration items, which will
be explained when covering particular algorithm providers.