# 5.5. Tips

## 5.5.1. Sanitize dot-files or dot-directories

When you process filenames or filepaths containing `.` or `..` with the `sanitize_filename` function or the `sanitize_filepath` function, by default, `sanitize_filename` does nothing, and `sanitize_filepath` normalizes the filepaths:

    print(sanitize_filename("."))
    print(sanitize_filepath("hoge/./foo"))

    .
    hoge/foo

If you would like to replace `.` and `..` like other reserved words, you need to specify the arguments as follows:

    from pathvalidate import sanitize_filepath, sanitize_filename
    from pathvalidate.error import ValidationError

    def always_add_trailing_underscore(e: ValidationError) -> str:
        if e.reusable_name:
            return e.reserved_name

        return f"{e.reserved_name}_"

    print(
        sanitize_filename(
            ".",
            reserved_name_handler=always_add_trailing_underscore,
            additional_reserved_names=[".", ".."],
        )
    )

    print(
        sanitize_filepath(
            "hoge/./foo",
            normalize=False,
            reserved_name_handler=always_add_trailing_underscore,
            additional_reserved_names=[".", ".."],
        )
    )

    ._
    hoge/._/foo