Version 4 (modified by angel_il, 13 years ago) (diff)



Remove all instances of type casts on function pointers. Run the following command to get a list of function pointer types.

grep -r 'typedef.*(\*' . \ | sed -n 's/.*(\*\([[:alnum:]_]*\)).*/(\1)/p' \ | sort -u \


Then use fgrep to find illegal uses of these types.

fgrep -r "cat fn-types.txt" .

Fix these uses by writing small wrapper functions.

When saving a file is not possible, mcedit should ask the user what to do:

  • su(1) to another user and try again
  • sudo
  • change permissions of the file or the containg directory
  • other smart things

Cannot spell check unsaved files in the editor.

Dynamic loading for libgpm, libext2fs.

Allow switching between histories of two panels. It's convenient to change to a directory from the history of the other panel.

Recheck all mouse handlers, make sure that they check button number. We don't want mouse scrolling to be interpreted as mouse click.

Smooth mouse scrolling on panels. Scrolling one page per step is too fast.

Don't read prompt from the subshell, because it's unreliable. Interpret environment variable MC_PS1 (or PS1) in the same way as bash.

Support an environment variable (also like PS1 in bash) for setting the window title.

real_input_dialog_help() shouldn't use translated strings in the section names in .mc/history. Right now, mc writes separate history sections for different locales. Only input history is affected.

Add "Ignore" and "Ignore all" buttons when reporting permission problems.

Better date parser - don't allow seconds and year in ftp listings on the same line.

Report errors in fish operations and recover from them.

Allow colors to be defined in the mc.lib file. Make it possible to avoid using a super-long line to redefine all colors.

Allow verbatim search in "Find File". Right now, the context is always interpreted as regular expression.

Filters in the editor should operate on the open file - don't close and reopen the file. They don't work on VFS now. For example, a gzipped files on FTP cannot be edited.

ftp and fish with home != '/' - readjust directory to the home.

Search in the viewer should have an option for case sensitive search.

Make "Find File" dialog more responsive. Keep state in a structure and preserve it when the search is suspended.

Use KDGKBENT ioctl on Linux console to find the mapping for shifted functional keys. Two mappings are widely used (Shift-F1 = F11 and Shift-F1 = F13). mc should adjust the keys to the mapping.

Alt-O should optionally show the current directory and move cursor down (as in older versions). Old functionality on files (go to "..") is not needed.

Future Releases

Ctrl-q Ctrl-m in input dialog should enter \r, not a newline.

Interpret C literals in regular expressions entered by the user, e.g. \r and \0x0D.

Make the internal editor reentrant. Add "edit menu file" to the editor menu.

Safe and restore file position in the viewer.

Consistent support for mc.lib.

Consistent support for terminal-specific settings.

New syntax for mc.ext - path check, desktop environment check. Detach X programs into a separate process group. Allow forcing the full path on local files.

Click on an image doesn't always work on remote vfs - local copy may be deleted before the application has time to load it.

Allow running executables from remote VFS. Possibly warn the user.

Add print dialog in the internal editor.

Implement logging, not just for VFS.

"Find file" should remember full starting path, not "." in the history.

Eliminate all pipes in subshell.c, run pwd after kill. Add support for more shells (e.g. ksh).

Internal terminal - no more console saving.

Implement a really Advanced Chown/Chmod?.

Support for multi-byte charsets (e.g. UTF-8).

sftp and fxp support in VFS.

New listing mode keyword "time": mtime or the time (atime, ctime) used to sort files.

Support for X clipboard.

Provide "patch" and "diff" editors. The patch editor will automatically adjust the line numbers of the following chunks when lines are deleted or inserted at the beginning of the file.

Provide context menus for files. Possible actions include: [compile], [CVS commit], [CVS diff -up], [pack], [unpack], [grep].

Make mc a CVS frontend comparable to Eclipse-3.0.

More standard Widgets: WTreeView, WDirectoryList, WGroupBox, WTextArea, WOpenDialog, WSaveDialog, WPrintDialog, WKeyBar.

VFS Standartization

  • Due to problems in the VFS, files are not written back after being edited over VFS with an external editor.
  • Allow pathnames starting with spaces in vfs/extfs.
  • Check if the archive was changed for extfs, tar and cpio. Free the data associated with the old archive.
  • Hide the passwords when displaying mcvfs path names.
  • Broken pipe warning when viewing large *.tar.gz files. Warnings should be shown before the viewer is started if possible.
  • Allow entering archives in VFS by Ctrl-PgDown? with non-empty command line. Right now, there is no convenient way to enter an archive when the command line is not empty.
  • Totals are not calculated when copying or moving a single directory.. Totals should only be omitted for single files.