[3.8] bpo-39136: Fixed typos (GH-17720)

funtion -> function; configuraton -> configuration; defintitions -> definitions;
focusses -> focuses; necesarily -> necessarily; follwing -> following;
Excape -> Escape,

(cherry picked from commit 6c7bb38ff2799ac218e6df598b2b262f89e2bc1e)
diff --git a/Doc/c-api/init.rst b/Doc/c-api/init.rst
index 155edba..81cb4f8 100644
--- a/Doc/c-api/init.rst
+++ b/Doc/c-api/init.rst
@@ -1181,7 +1181,7 @@
 the main interpreter has unique process-global responsibilities like signal
 handling.  It is also responsible for execution during runtime initialization and
 is usually the active interpreter during runtime finalization.  The
-:c:func:`PyInterpreterState_Main` funtion returns a pointer to its state.
+:c:func:`PyInterpreterState_Main` function returns a pointer to its state.
 
 You can switch between sub-interpreters using the :c:func:`PyThreadState_Swap`
 function. You can create and destroy them using the following functions:
diff --git a/Doc/c-api/init_config.rst b/Doc/c-api/init_config.rst
index 6b16b5b..79a8815 100644
--- a/Doc/c-api/init_config.rst
+++ b/Doc/c-api/init_config.rst
@@ -757,7 +757,7 @@
         PyConfig config;
         PyConfig_InitPythonConfig(&config);
 
-        /* Set the program name before reading the configuraton
+        /* Set the program name before reading the configuration
            (decode byte string from the locale encoding).
 
            Implicitly preinitialize Python. */
diff --git a/Doc/faq/programming.rst b/Doc/faq/programming.rst
index 9d45765..70b11d6 100644
--- a/Doc/faq/programming.rst
+++ b/Doc/faq/programming.rst
@@ -1019,7 +1019,7 @@
 remember before diving further:
 
 * Performance characteristics vary across Python implementations.  This FAQ
-  focusses on :term:`CPython`.
+  focuses on :term:`CPython`.
 * Behaviour can vary across operating systems, especially when talking about
   I/O or multi-threading.
 * You should always find the hot spots in your program *before* attempting to
diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt
index e829bc9..0baec81 100644
--- a/Lib/idlelib/NEWS.txt
+++ b/Lib/idlelib/NEWS.txt
@@ -6,7 +6,7 @@
 bpo-38943: Fix autocomplete windows not always appearing on some
 systems.  Patch by Johnny Najera.
 
-bpo-38944: Excape key now closes IDLE completion windows.  Patch by
+bpo-38944: Escape key now closes IDLE completion windows.  Patch by
 Johnny Najera.
 
 bpo-38862: 'Strip Trailing Whitespace' on the Format menu removes extra
diff --git a/Lib/tkinter/tix.py b/Lib/tkinter/tix.py
index d9c097a..ac54550 100644
--- a/Lib/tkinter/tix.py
+++ b/Lib/tkinter/tix.py
@@ -1890,7 +1890,7 @@
         containing the current size setting of the given column.  When
         option-value pairs are given, the corresponding options of the
         size setting of the given column are changed. Options may be one
-        of the follwing:
+        of the following:
               pad0 pixels
                      Specifies the paddings to the left of a column.
               pad1 pixels
@@ -1915,7 +1915,7 @@
         When no option-value pair is given, this command returns a list con-
         taining the current size setting of the given row . When option-value
         pairs are given, the corresponding options of the size setting of the
-        given row are changed. Options may be one of the follwing:
+        given row are changed. Options may be one of the following:
               pad0 pixels
                      Specifies the paddings to the top of a row.
               pad1 pixels