def split_string(s, skip):
    """
    Splits a string with \n every skip characters. Will avoid breaking words.

    Parameters:
    s (String): The string to split.
    skip (Integer): How often to split in characters.

    Returns:
    String: The split string.
    """
    words = s.split()
    current_len = 0
    result = []

    for word in words:
        if current_len + len(word) > skip:
            result.append(f'\n{word}')
            current_len = len(word)
        else:
            result.append(f'{word}')
            current_len += len(word)

    return " ".join(result)