                      "\n'extract-large' - Extract all faces that have not been upscaled. Useful"
                      "\n\tfor excluding low-res images from a training set." +
                      frames_and_faces_dir + align_eyes +
                      "\n'manual': Manually view and edit landmarks." + frames_dir + align_eyes +
                      "\n'merge': Merge multiple alignment files into one. Specify the main"
                      "\n\talignments file with the -a flag and the file to be merged with the"
                      "\n\t-a2 flag."
                      "\n'missing-alignments': Identify frames that do not exist in the alignments"
                      "\n\tfile." + output_opts + frames_dir +
                      "\n'missing-frames': Identify frames in the alignments file that do no "
                      "\n\tappear within the frames folder/video." + output_opts + frames_dir +
                      "\n'legacy': This updates legacy alignments to the latest format by rotating"
 
</s> remove                               "action": FileFullPaths,
 </s> add                               "action": FilesFullPaths, </s> remove             args = ['"{}"'.format(arg) if " " in arg else arg for arg in args]
 </s> add             args = ['"{}"'.format(arg) if " " in arg and not arg.startswith(("[", "("))
                    and not arg.endswith(("]", ")")) else arg
                    for arg in args] </s> remove                     optval = optval.split(" ")
 </s> add                     if "\"" in optval:
                        optval = [arg[1:-1] for arg in re.findall(r"\".+?\"", optval)]
                    else:
                        optval = optval.split(" ")
                    "\n'merge': Merge multiple alignment files into one. Specify a space "
                    "\n\tseparated list of alignments files with the -a flag."
                      "\n'extract-large' - Extract all faces that have not been upscaled. Useful"
                      "\n\tfor excluding low-res images from a training set." +
                      frames_and_faces_dir + align_eyes +
                      "\n'manual': Manually view and edit landmarks." + frames_dir + align_eyes +
                    "\n'merge': Merge multiple alignment files into one. Specify a space "
                    "\n\tseparated list of alignments files with the -a flag."
                    "\n'merge': Merge multiple alignment files into one. Specify a space "
                    "\n\tseparated list of alignments files with the -a flag."
                    "\n'merge': Merge multiple alignment files into one. Specify a space "
                    "\n\tseparated list of alignments files with the -a flag."
                      "\n'missing-alignments': Identify frames that do not exist in the alignments"
                      "\n\tfile." + output_opts + frames_dir +
                      "\n'missing-frames': Identify frames in the alignments file that do no "
                      "\n\tappear within the frames folder/video." + output_opts + frames_dir +
                      "\n'legacy': This updates legacy alignments to the latest format by rotating"
keep keep keep keep replace replace replace keep keep keep keep keep
 Alignments Tool: Allow merging of many alignments file

Adds multi select functionality to GUI, meaning multiple alignments files can now be selected for merging.

Extract: nFilter, Filter now have a file dialog in gui for selecting 1/multiple files 
tools/cli.py