diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py
index 7c6b128e42b411b609016fdee16e6a91419657d9..5fb93dba82e6ca8c5491c0a5f78be592dbe7e33c 100755
--- a/io_scene_gltf2/__init__.py
+++ b/io_scene_gltf2/__init__.py
@@ -1175,7 +1175,7 @@ class GLTF_AddonPreferences(bpy.types.AddonPreferences):
 
     settings_node_ui : bpy.props.BoolProperty(
             default= False,
-            description="Displays glTF Settings node in Shader Editor (Menu Add > Ouput)"
+            description="Displays glTF Settings node in Shader Editor (Menu Add > Output)"
             )
 
 
diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_channels.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_channels.py
index 98ae8b8268ddab71637eacc46c73f15cb01f24c4..3e67f1f70be82d08c6141d0e4866d35aeddebb1b 100755
--- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_channels.py
+++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_channels.py
@@ -37,7 +37,7 @@ def gather_animation_channels(obj_uuid: int,
     if blender_action.use_frame_range is True:
         bake_range_start = blender_action.frame_start
         bake_range_end = blender_action.frame_end
-        force_range = True # keyframe_points is read-only, we cant restrict here
+        force_range = True # keyframe_points is read-only, we can't restrict here
     else:
         groups = __get_channel_groups(blender_action, blender_object, export_settings)
         # Note: channels has some None items only for SK if some SK are not animated
diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_animations.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_animations.py
index 20a919dc82867af3cc7c3858dff790addd854e20..a3a7a4c2645fd438f3a39baeafc01c733b611bfd 100755
--- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_animations.py
+++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_animations.py
@@ -64,7 +64,7 @@ def gather_animations(  obj_uuid: int,
         # No TRS animation are found for this object.
         # But we need to bake, in case we export selection
         # (Only when force sampling is ON)
-        # If force sampling is OFF, can lead to inconsistant export anyway
+        # If force sampling is OFF, can lead to inconsistent export anyway
         if export_settings['gltf_selected'] is True and blender_object.type != "ARMATURE" and export_settings['gltf_force_sampling'] is True:
             channels = __gather_channels_baked(obj_uuid, export_settings)
             if channels is not None:
diff --git a/io_scene_obj/import_obj.py b/io_scene_obj/import_obj.py
index d41e72f8767c5a3049fb5217eba86c9a20388c23..63c4d0e13100b47828f3a7a5a07cd63ed51b142d 100644
--- a/io_scene_obj/import_obj.py
+++ b/io_scene_obj/import_obj.py
@@ -584,7 +584,7 @@ def create_mesh(new_objects,
         len_face_vert_loc_indices = len(face_vert_loc_indices)
 
         if len_face_vert_loc_indices == 1:
-            faces.pop(f_idx)  # cant add single vert faces
+            faces.pop(f_idx)  # can't add single vert faces
 
         # Face with a single item in face_vert_nor_indices is actually a polyline!
         elif face_is_edge(face):
@@ -979,7 +979,7 @@ def load(context,
 
         # when there are faces that end with \
         # it means they are multiline-
-        # since we use xreadline we cant skip to the next line
+        # since we use xreadline we can't skip to the next line
         # so we need to know whether
         context_multi_line = b''
 
diff --git a/io_scene_x3d/import_x3d.py b/io_scene_x3d/import_x3d.py
index 6d13bb7928e512adac1a928409949042cbddd787..228e050705801ecf21a23de65d6b12738a137c19 100644
--- a/io_scene_x3d/import_x3d.py
+++ b/io_scene_x3d/import_x3d.py
@@ -1003,13 +1003,13 @@ class vrmlNode(object):
                     print('\tWarning: Inline URL could not be found:', url)
                 else:
                     if url == self.getFilename():
-                        print('\tWarning: cant Inline yourself recursively:', url)
+                        print('\tWarning: can\'t Inline yourself recursively:', url)
                     else:
 
                         try:
                             data = gzipOpen(url)
                         except:
-                            print('\tWarning: cant open the file:', url)
+                            print('\tWarning: can\'t open the file:', url)
                             data = None
 
                         if data:
diff --git a/magic_uv/utils/graph.py b/magic_uv/utils/graph.py
index bebabf636c256e2e8b6efa0fce5d30dc6e80a3af..277800bcee4699470c9c7bfdf1def10e210600c5 100644
--- a/magic_uv/utils/graph.py
+++ b/magic_uv/utils/graph.py
@@ -29,7 +29,7 @@ class Edge:
             raise RuntimeError("Loop edge in {} is not supported."
                                .format(node.key))
         if node not in (self.node_1, self.node_2):
-            raise RuntimeError("Node {} does not belog this edge."
+            raise RuntimeError("Node {} does not belong to this edge."
                                .format(node.key))
         if self.node_1 == node:
             return self.node_2
diff --git a/mesh_tissue/utils.py b/mesh_tissue/utils.py
index b617ac93acca4ba56fa72feceb7e10460d27ea18..b43310843e6b82f27a2d28321173c1519bd194f8 100644
--- a/mesh_tissue/utils.py
+++ b/mesh_tissue/utils.py
@@ -1251,7 +1251,7 @@ def get_weight(vertex_group, n_verts):
     :type vertex_group: :class:'bpy.types.VertexGroup'
     :arg n_verts: Number of Vertices (output list size).
     :type n_verts: int
-    :return: Readed weight values.
+    :return: Read weight values.
     :rtype: list
     """
     weight = [0]*n_verts
@@ -1267,7 +1267,7 @@ def get_weight_numpy(vertex_group, n_verts):
     :type vertex_group: :class:'bpy.types.VertexGroup'
     :arg n_verts: Number of Vertices (output list size).
     :type n_verts: int
-    :return: Readed weight values as numpy array.
+    :return: Read weight values as numpy array.
     :rtype: :class:'numpy.ndarray'
     """
     weight = [0]*n_verts
diff --git a/object_fracture_cell/__init__.py b/object_fracture_cell/__init__.py
index e9f70a446bc3853fff36c3265a69ae4e935bb436..543f86f132a04d776b703975ae7972e1b1245fab 100644
--- a/object_fracture_cell/__init__.py
+++ b/object_fracture_cell/__init__.py
@@ -482,7 +482,7 @@ class FractureCell(Operator):
         rowsub.prop(self, "use_data_match")
         rowsub = col.row()
 
-        # on same row for even layout but infact are not all that related
+        # on same row for even layout but in fact are not all that related
         rowsub.prop(self, "material_index")
         rowsub.prop(self, "use_interior_vgroup")
 
diff --git a/object_fracture_cell/fracture_cell_setup.py b/object_fracture_cell/fracture_cell_setup.py
index 8171e44e462ff0b7b5422588d6dc5cfe97e7d5a9..2e735495f4e4df3cc07784c9ed2481c9e624dfcf 100644
--- a/object_fracture_cell/fracture_cell_setup.py
+++ b/object_fracture_cell/fracture_cell_setup.py
@@ -145,7 +145,7 @@ def cell_fracture_objects(
         random.shuffle(points)
         points[source_limit:] = []
 
-    # saddly we cant be sure there are no doubles
+    # sadly we can't be sure there are no doubles
     from mathutils import Vector
     to_tuple = Vector.to_tuple
     points = list({to_tuple(p, 4): p for p in points}.values())
diff --git a/object_print3d_utils/export.py b/object_print3d_utils/export.py
index aec1973274aab10bf1e88470d228126fc41c8137..d17cd45ff8803bec65091c62fe5e0026ebfb1a07 100644
--- a/object_print3d_utils/export.py
+++ b/object_print3d_utils/export.py
@@ -79,7 +79,7 @@ def write_mesh(context, report_cb):
     # first ensure the path is created
     if export_path:
         # this can fail with strange errors,
-        # if the dir cant be made then we get an error later.
+        # if the dir can't be made then we get an error later.
         try:
             os.makedirs(export_path, exist_ok=True)
         except:
diff --git a/render_povray/model_meta_topology.py b/render_povray/model_meta_topology.py
index 33a335fa8b237d0f2363ce346d9b83e06dcee250..47e874c52131b2e36ff0141e28ee0ad165892f5b 100644
--- a/render_povray/model_meta_topology.py
+++ b/render_povray/model_meta_topology.py
@@ -180,7 +180,7 @@ def export_meta(file, metas, tab_write, DEF_MAT_NAME):
                 try:
                     one_material = elems[1].data.materials[
                         0
-                    ]  # lame! - blender cant do enything else.
+                    ]  # lame! - blender can't do enything else.
                 except BaseException as e:
                     print(e.__doc__)
                     print('An exception occurred: {}'.format(e))
@@ -236,7 +236,7 @@ def export_meta(file, metas, tab_write, DEF_MAT_NAME):
             importance = ob.pov.importance_value
 
             try:
-                material = meta.materials[0]  # lame! - blender cant do enything else.
+                material = meta.materials[0]  # lame! - blender can't do anything else.
             except:
                 material = None
 
diff --git a/render_povray/model_poly_topology.py b/render_povray/model_poly_topology.py
index c8a990ea3dfe5e68a400084d705bbf69245c5702..b4d200ecfe0d65f2ec28b327681b50358352cd39 100644
--- a/render_povray/model_poly_topology.py
+++ b/render_povray/model_poly_topology.py
@@ -52,7 +52,7 @@ def export_mesh(file,
     except BaseException as e:
         print(e.__doc__)
         print("An exception occurred: {}".format(e))
-        # also happens when curves cant be made into meshes because of no-data
+        # also happens when curves can't be made into meshes because of no-data
         return False  # To continue object loop
     if me:
         me.calc_loop_triangles()
diff --git a/render_povray/render_gui.py b/render_povray/render_gui.py
index 7baa7affd8a255fc9d2850e5044f2c5bcace8e96..e00e37054c06c5033d0cedb0abdbf44bf8148e0a 100755
--- a/render_povray/render_gui.py
+++ b/render_povray/render_gui.py
@@ -242,7 +242,7 @@ class RENDER_PT_POV_hues(RenderButtonsPanel, Panel):
 
 
 class RENDER_PT_POV_pattern_rules(RenderButtonsPanel, Panel):
-    """Use this class to change pov sets of texture generating algorythms."""
+    """Use this class to change pov sets of texture generating algorithms."""
 
     bl_label = "Pattern Rules"
     bl_parent_id = "RENDER_PT_POV_render_settings"
diff --git a/space_view3d_math_vis/draw.py b/space_view3d_math_vis/draw.py
index 28722a9926153a781ac6ab0a2d3725b4452c6fe6..de7ad94643154fd6e83080ab1ce923b4e3678950 100644
--- a/space_view3d_math_vis/draw.py
+++ b/space_view3d_math_vis/draw.py
@@ -29,7 +29,7 @@ COLOR_BOUNDING_BOX_ACTIVE = (1.0, 0.5, 0.0, 1.0)
 def tag_redraw_areas():
     context = bpy.context
 
-    # Py cant access notifers
+    # Py can't access notifers
     for window in context.window_manager.windows:
         for area in window.screen.areas:
             if area.type in ['VIEW_3D', 'PROPERTIES']:
diff --git a/system_demo_mode/__init__.py b/system_demo_mode/__init__.py
index 9af8b2177f89924948709828f10ca4b26348598f..7187053271a7fdb2279c09c4ed7a0b3704ab6b45 100644
--- a/system_demo_mode/__init__.py
+++ b/system_demo_mode/__init__.py
@@ -190,7 +190,7 @@ class DemoModeRun(bpy.types.Operator):
         if extern_demo_mode_run():
             return {'FINISHED'}
         else:
-            self.report({'ERROR'}, "Cant load demo.py config, run: File -> Demo Mode (Setup)")
+            self.report({'ERROR'}, "Can't load demo.py config, run: File -> Demo Mode (Setup)")
             return {'CANCELLED'}
 
 
diff --git a/system_demo_mode/config.py b/system_demo_mode/config.py
index 3c0550ee0fb7f036b6a9ec5d292ac34ef4bc3542..5d9399590af7d511a3bd1d4018bb5e5ff03b8745 100644
--- a/system_demo_mode/config.py
+++ b/system_demo_mode/config.py
@@ -40,7 +40,7 @@ def as_string(dirpath, random_order, exit, **kwargs):
         "# generated file\n",
         "\n",
         "# edit the search path so other systems may find the files below\n",
-        "# based on name only if the absolute paths cant be found\n",
+        "# based on name only if the absolute paths cannot be found\n",
         "# Use '//' for current blend file path.\n",
         "\n",
         "search_path = %r\n" % dirpath,
diff --git a/system_demo_mode/demo_mode.py b/system_demo_mode/demo_mode.py
index 4def3031b20c0b42131d4733e75703030ea8864f..f412869b903722c778df003eb76d2eb12a10d365 100644
--- a/system_demo_mode/demo_mode.py
+++ b/system_demo_mode/demo_mode.py
@@ -523,7 +523,7 @@ def load_config(cfg_name=DEMO_CFG):
         if not os.path.exists(filepath_test):
             filepath_test = lookup_file(filepath_test)  # attempt to get from searchpath
         if not os.path.exists(filepath_test):
-            print("Cant find %r or %r, skipping!")
+            print("Can't find %r or %r, skipping!")
             continue
 
         filecfg["file"] = os.path.normpath(filepath_test)