def delete_under(self):
        """Delete char under cursor.

        If we use it when there is a character under
        the cursor, the character is deleted.

        If there's no character under the cursor, then
        nothing happens.
        """
        ### if the column where the cursor is sitting has a
        ### number lower than the character count (length)
        ### of the line, then there is no character sitting
        ### under the cursor for us to delete, so we leave
        ### the method right away
        if self.col >= len(self.line):
            return

        ### otherwise we delete the character under the
        ### cursor

        ## delete the character
        del self.line[self.col]

        ## try retrieving a char object under the cursor
        try:
            char_obj = self.line[self.col]

        ## if there's no character (an index error occurs),
        ## it means we deleted the character in the last
        ## position in the line, so there's no character
        ## under the cursor now;
        ##
        ## there's no problem with this, so we just pass
        except IndexError:
            pass

        ## if the char object exists, though, we need to
        ## perform extra tasks

        else:

            # reposition the characters of the line one
            # beside the other, so that the empty space
            # left by the removed character is occupied
            self.line.reposition_chars()

            # assign the size of the character currently
            # under the cursor to the cursor
            self.rect.size = char_obj.rect.size
Delete char under cursor.

        If we use it when there is a character under
        the cursor, the character is deleted.

        If there's no character under the cursor, then
        nothing happens.
        
nodezator/textman/entryedition/cursor.py