Midnight Commander 4.8.31

Midnight Commander is a text-mode visual filesystem browser. (It's two-pane display emulates the venerable DOS Norton Commander). Apart from browsing files and directories, copying or renaming them, searching, editing, affecting permissions, it also provides virtual (zip and other archives) and remote file access (ssh, ftp). Via Ncurses it can run on the console, in a virtual terminal, or over remote connections.

Tags file-browser ncurses
License GNU GPL
State stable

Recent Releases

4.8.3128 Jan 2024 06:25 minor feature: Minimal version of GLib is 2.32.0. fish: drop support of native FISH server and protocol. Rename VFS to shell, extfs; uc1541 extfs: update up to 3.6 version, s3+: port to Python3, Support for LZO/LZOP compression format, Skins: add color for non-printable characters in editor, FTBFS on FreeBSD with ext2fs attribute support, Broken stickchars, Wrong timestamp after resuming of file copy operation, Editor: wrong deletion of marked column, Diff viewer: segfault when display of line numbers is enabled, Tar VFS: broken handling of hard links, Sftp VFS: failure establishing SSH session due hashed host names in /.ssh/known_hosts, Shell VFS: incorrect file names with cyrillic or diacritic symbols, mc.ext.ini: incorrect description of of how multiple sections and keys with same names are processed, mc.ext.ini: unescaped backslash is treated as invalid escape sequence in glib-2.77.3 and glib-2.79, mc.ext.ini: file "Makefile.zip" is handled as Makefile not as zip-arhive
4.8.3014 Aug 2023 13:25 minor feature: Support PCRE2 as search engine, Implement panelization buffers for both file panels, tar: support extended headers, extfs helpers: replace "perl -w" with "use warnings", extfs/patchfs: be more specific in error message, Add syntax highlighting:, Jenkinsfiles, B language, Improve syntax highlighting:, ECMAScript, ECMAScript in, use diff syntax highlighting for git commit messages, Code cleanup, Filehighlight:, recognize vsix files as zip files, Skin updates:, julia256, Usage of 'sed' in build system/makefiles is not portable, Unportable ' lt;' in Makefiles, FTBFS if ncurses used without --with-ncurses-includes= configure parameter, Ncurses library is duplicated in MCLIBS, FTBFS without ext2fs attributes support, Wrong sort order after swapping panels, Incorrect time delimiter in the copy/move progress window, Incorrect redraw of overlapped file panels, Find file: relative ignore directory is applied to the start search directory, Diff viewer: options are not applied on second run, mc.ext.ini: 'Edit' command from 'Default' section is ignored, mc.ext.ini:md files are not recognized as Markdown ones by extension, mcedit: off-by-one error in paragraph formatting, ftp: incomplete file listing: block and character devices, pipes, sockets are missed, Various typos in the source code
4.8.2915 Jan 2023 07:45 minor feature: Add more options for panel filter, "Files only", "Case sensitive", "Using shell patterns", Continue copy after interrupt, Restore menu accelerator for "Sort order": back to "S"; change menu accelerator for "SFTP link" to "N", Implement multi-line search in regex mode using ' n' character, Add support for cross-compilation with PERL path different between --build and --host, Bootstrap with autotools providing direct support for Apple M1, Port mc.ext to INI format and rename to mc.ext.ini, Implement compound, There is no fallback to previous mc.ext format, Change location of all user's syntax related stuff to /.local/share/mc/syntax/ directory, syntax/Syntax: document location of syntax files, Improvements of syntax highlighting:, YAML: improve multiline blocks highliting, New syntax highlighting:, Privoxy, TOML, Code cleanup, sqlite3 view: use 'immutable=1' URI parameter to prevent leaving wal/shm files after viewing sqlite database, Support of contour terminal emulator, mc.ext.ini: clarify regex for makefiles, Remove empty hints translations by setting 5 threshold, Fail to build with only SFTP network VFS is enabled, Crash on quick view of archives, Wrong description of --enable-configure-args option, Wrong version sort, No subshell if subshell is initializing more than 1 second, Filter keyboard shortcut only affects left panel, File type check does not work with special character in filename, Select files keeping the right mouse button pressed doesn't select all files, Cannot scroll panel listing upwards using mouse, "Directory Compare" doesn't correct work with panelization, Wrong decompressing of zip files in quick view panel, mc.ext: 'include' keyword, mcedit: infinite loop when deleting a macro, mcviewer: segfault when switching from raw to parsed mode and back, Broken handling of zip archives, FISH subshell: commands don't work after window resize, FTP VFS: doesn't reconnect to server after timeout, FISH VFS: cannot remove non-empty directory, Tests: variabl
4.8.2828 Mar 2022 17:25 minor feature: Remove SMB support, Add syntax highlighting:, Ngspice/SPICE, DOT/Graphviz, Support file/dir macros from mc.ect for standalone viewer, Minimal version of "check" utility is 0.9.10. Code cleanup, Support Shift+Fn keys for KiTTY, Filehighlight:, graphical formats: avif, jp2, jxl, heic, heif, psb, psd, Markdown, FTBFS with ncurses build with --disable-widec, There is no exit on Ubuntu PPC64 big endian, Segfault on change panel mode, Accelerator conflict in, move a lot of files across filesystems is slow, mc.ext: wrong order of rules: general matches are made before more specific ones, mc.ext: compressed man pages are shown unformatted, ext.d/misc.sh: invoking /bin/cat on systems that have no /bin/cat, mcedit: errors in syntax definitions, VFS: FISH: when uploading a symbolic link, it creates both the link and its target, VFS: SFTP: timestamps are not preserved for uploaded symlink, VFS: EXTFS: incorrect test of isoinfo, Typo in skin files
4.8.2717 Aug 2021 06:05 minor feature: Minimal version of Autoconf is 2.64, Minimal version of Automake is 1.12, Minimal version of Gettext is 0.18.2, Minimal version of libssh2 is 1.2.8, Reimplement version detection, Significantly reduce rebuilt time after version change, Drop automatic migration of configuration from /.mc to XDG-based directories, zsh: support custom configuration file: /.local/share/mc/.zshrc, Widgets: implement WST_VISIBLE state to show/hide widgets, "Find File": add "Follow symlinks" option, extfs: support unrar-6, extfs: support official 7z binary, ftpfs: apply file list parser from lftp project, Word completion: get candidates from all open files, etags: get rid of hardcoded list length and window width, Update syntax files:, python, Add syntax highlighting:, Verilog and, JSON, openrc-run scripts, Code clean up, Filehighlight of c++ and h++ files as sources, Filehighlight of JSON files as documents, Support of alacritty terminal emulator, Support of foot terminal emulator, Support of, Mouse support in screen: don't check DISPLAY variable, mc.ext: support fb2 e-books, ext.d: use mediainfo to view info about various media files, Remove OS/distro-specific package-related stuff from source tree, FTBFS against NCurses on OS X 10.9.5, Segfault on dialog before panels get visible, Crash if shadow is out of screen, Crash in search, Crash on startup with enabled subshell in FreeBSD, Hang on start randomly with zsh as subshell, If command line is invisible it's partially displayed, Broken handling of zip archives, Broken handling of jar files as zip archives, Timestamps of symlinks, sockets, fifos, etc are not preserved after copy/move, view action in the user menu doesn't work on no-exec filesystem, Hardlinks are not colored by file type or extension, mcedit: silent macro makes terminal disrupted, mcedit: disrupting of TAGS file path, vfs: unable to browse compressed tar archives, sftpfs vfs: CVE-2021-36370: server fingerprint isn't verified, ftpfs vfs: month of file is always January
4.8.2622 Jan 2021 22:05 minor feature: Support file names of any length, Implement persistent command line buffer for subshell, Implement shadows of dialog windows and menus, Allow running clipboard commands if DISPLAY is not set, Add support of "alacritty", "tmux", and "tmux-256color" terminals, Support wim archive format, Support pak archive format, Add Swift syntax highlighting, Code cleanup, ext.d/sound.sh: replace xmms with audacious, mc.ext: improve handling of compressed content, mc.ext: add support for, Filehighlight fodg, fodp, fods, fodt, odg files as documents, modarcon16 skin: make consistent with whitespaces, 0000 permissions are not preserved on copy/move file, Chattr dialog doesn't work with mouse, Wrong copy ETA displaying if "Follow links" option is set, C-i, C-l, Cancel of history or completion window marks input lines as modified, Unexpected subshell execution at panel switch, Lock up after pressing Tab in subshell, tcsh: error: "The Commander can't change to the directory", vfs: extfs: cannot handle files with name started with dash or space, vfs: hang on accessing files within a nested VFS for first 60 seconds, vfs: lose content of the current directory on a mounted CIFS share
4.8.2520 Jul 2020 06:25 minor feature: Minimal version of GLib is 2.30.0, Avoid subshell warning for standalone mcedit/mcview/mcdiffview run from mc, Implement chattr command, Implement a WGroup widget -- a base class for widgets which contain other widgets, Implement key bindings for radiobuttons, RPM VFS improvements:, Support weak dependency tags: ENHANCES, SUGGESTS, RECOMMENDS, SUPPLEMENTS, Improvements of syntax highlighting:, php, tcl: add shebangs with wish and tclsh, Cobol, New syntax highlighting:, Kotlin, ino, Code cleanup, Add support for opus audio, mc-wrapper: don't cd to the same directory, Improve archive support: more binaries to view archive content, lha: jlha, lhasa, arj: 7za, cab: 7za, zip; 7z, zipx: 7za, iso: 7za, Clean up in video.sh handler, gtv hasn't been developed since 2003. xanim barely plays anything. Various ups and updates of man page, FTBFS on OSes w/o O_CLOEXEC, FTBFS with glib2 gt;= 2.63.3, Mouse is not handled with ncurses-6, Mouse is not handled with S-Lang on some old terminal emulators, Terminal size is always 80x24 in subshell on Solaris 11.4 SPARC, Double clicking on empty area of file panel executes last item, Garbage in input line history, Speed of file copy is not displayed for single file, mcedit: blank screen with invisible error, mcedit: broken syntax highlighting for shell scripts, VFS: broken browsing of.deb packages, mc.lib installed twice
4.8.2421 Jan 2020 01:25 minor feature: Drop bundled gettext, Implement the file edit and view history. Default shortcut is alt-shift-e, Enable subshell in standalone mceditor, mcviewer, and mcdiffviewer, Refactoring of SIGWINCH handling, Prevent run/open files with double right click, Improve support of Windows 1251 encoding on Solaris, Support binary reproducible builds, sftpfs: support keyborad interactive authentication, uc1541 extfs: update up to 3.3 version, Syntax:, add yabasic, improve YAML syntax highlighting, add.desktop files, improve RPM spec file syntax highlighting, improve Debian sources.list syntax highlighting, Code cleanup, menu.mc: handle symbolic links to compressed archives, File highlighting updates, part - partial files, e.g. used by many download managers, apk - Android packages, deb - Debian packages, ts - MPEG-TS streams, New skins:, julia256: a dark skin with calm colors and good contrast. Compile failure on AIX 7.2, Compile failure on OS X 10.9, Enter key works as Down one in menu, Menubar: incorrect mouse click coordinate, Rotating dash generates way too much output, Totals aren't computed before move of a single directory, Editor: unusable dynamic paragraphing, VFS: iso9660 does not report listing errors, VFS: extfs: nested archives are not removed from temporary directory
4.8.2324 Jun 2019 15:05 minor feature: Modify "File exists" query dialog, change layout, rename "Update" button to "If older", add new "If smaller" button": overwrite file with smaller one, add "Don't overwrite with zero length file" checkbox, Speed up of large directory structures delete, Support key binding for menu, Expanded syntax highlighting rules, expanded file name regexp for sh.syntax, use ini.syntax for systemd cofiguration files, Syntax updates:, shell, ebuild, RPM spec, Quick one-off backwards search with N. New action SearchOppositeContinue for key bind, Code cleanup, Use Geeqie, File highlighting updates.go.s: highlight as source.m4v: highlighting as media, New skins:, featured-plus: featured skin with alternative directory and file select/mark colors, Compilation fail on AIX, Incorrect file version sort, Garbage in the hardlink error creation message window, Cannot shell, or FTP, or SFTP link when the file panel is tree, or info, or quick view, Failed gpm connect attempt... for vc /dev/tty0, Incorrect include/editor order in mc.ext, mcedit: incorrect C/C++ syntax highlighting in some cases, Unknown type name 'sighandler_t' on Illumos
4.8.2202 Jan 2019 07:25 minor feature: Support BTRFS's file clone operation, Find file: show pattern and content in the results window title, Find file: remember state, Improve support IBM i, Improve handling of hard link creation errors, Support user-defined prompt in the Fish subshell, sftp: preserve atime and mtime, man page cleanup, syntax:, PHP - highlight keyword 'null', Meson - initial implementation, ext.d: use MPV as a fallback for mplayer -identify, ext.d: improve recognition of MS Office formats, Code cleanup, Cleanup hint files, Won't compile for Apple, "Cannot create target file" when target has backslash space in the name, Quiet single file overwrite, Show error message for each not-installed program when view documents in MS Word and Excel formats, Crash when trying some sftp connections, Crash when return to filemanager from subshell
4.8.2104 Jun 2018 11:05 minor feature: Cancel Chmod/Chown/Advanced chown operation for large group of files when operation is not permitted, Mouse support in the "Advanced chown" dialog window, File highlighting by extension is case insensitive by default, Safe file overwrite, Support zstd compression format, Syntax:, Rust support, JavaScript modules support, Improve Markdown support, Add JavaScript module support to, Add Excel xlsx file format support to, i18n of argument type names in --help blocks, Code cleanup:, Fail to link to ncurses built as two libraries: ncurses+tinfo, Garbage in displaying of summary of file sizes for selected files, "Compute totals" unnecessarily done for moves, mc.ext: allow Java class files to be viewed even if JAD isn't on PATH, mcedit: broken extended key mode, mcedit doesn't save all opened files, extfs: sftps: -31 SFTP Protocol Error when transferring file, extfs: rpm: truncated script content in the viewer, extfs: rpm helper misses CONFLICTS field
4.8.2028 Nov 2017 02:05 minor feature: Rename key bindings:, main .PanelListingSwitch - gt; panel .CycleListingFormat, main .PanelListingChange - gt; main .SetupListingFormat, Speed up of UTF-8 normalization for frequent cases, extfs helpers tester:, diff of failed tests is now included in output to ease reporting, Syntax:, ES2015 support, TypeScript support, Ada 95 updates, Apache Hive QL support, SQL amp; PHP keyword updates, Simplification of case insensitive file name patterns in /usr/share/mc/syntax/Syntax file, Markdown, Protocol Buffers and gRPC support, Add c, Unify curses initialization for various curses implementations, Highlight txz extension as archive like tgz, etc. Add new media extensions to, Wrong --help message for mcview, mcedit and mcdiff, Compression from menu broken due to bad quoting, External panelize: opening a file with an absolute path fails, Filter isn't cleared when entering empty string, Panelization is not kept while switching panel listing mode, Cannot tab out of a QuickView panel, Cannot use the F10 key in a QuickView panel, Wromg INPUT_COMPLETE_CD flag handling in the, mcview: file interpreted as latin1 instead of utf8, mcview: incomplete read of filtering data, mcview: search doesn't grow file as much as needed, mcview: goto doesn't grow file as much as needed, mcview: quick view panel: crash on slow startup while switching panel mode, mcedit: broken encoding into UTF-8 for 8-bit displays, mcedit: incorrect f macro substitution in the user menu, man pages: wrong paths of mc.hint and mc.hlp, subshell: broken tcsh 6.20+ cd escaping, VFS: incremental tar doesn't contain empty directories, VFS: incremental tar: wrong directories owner for tar --numeric-owner -g, VFS: timestamps not being preserved due to uninitialized struct stat st_ acm tim.tv_nsec, VFS: ftp: can't retrieve password from.netrc when user is in URL, VFS: tests: locale causing helpers using 'sort' to fail, VFS: tests: unportable 'echo' use causing one rpm helper test to fail, Spelling errors in the man
4.8.1906 Mar 2017 11:25 minor feature: Replace MC_HOME with MC_PROFILE_ROOT, Allow rebind TAB key to change panel, Support for True Color, Color aliases in skin files, Support timestamps with nanosecond precision for copy/move operations, Introduce EXTFS helpers tester, Teach u7z to parse archive listings w/o sizes and/or dates, Teach rpm helper about transaction scripts, hp48, uace amp; uarc extfs which used an obsolete date format, Syntax:, updates of HTML and ebuild highlighting, highlight *.t, disassociate.cl file extension from LISP syntax, Add syntax highlighting:, OpenCL, R, YAML, Code cleanup, Add true color skins: 'Four seasons', Activate, Added new skin: YADT, Segfault on switching left panel to Info, Broken compatibility with ncurses, Setting MC_HOME makes mc ignore /.bashrc, Some in the parsing of hexadecimal search patterns, Hexadecimal search fails on binary data, Broken file list resorting on double click on panel header line, Wrong dialog resizing and positioning, Widget's 'disabled' status is not toggled immediately, Last item of 'Options/Layout/Horizontal' radiobuttons remains highlighted, 'Options/Layout/Equal split' checkbox gets reverted, Panels: cannot show more than one "column" in user defined listing mode, Mix of MSG_NOTIFY and MSG_FOCUS messages, skins: 'window-state-char' and 'window--char' are parsed as colors, Pressing lt;right gt; and lt;left gt; in the hotlist dialog doesn't refresh it, mcview: an error message about bad regexp isn't shown, mcedit: etags filenames parsing, mcedit: mouse active area for maximize / buttons, mcedit: frames, mcedit: frames, mcedit doesn't show search error messages when searching backwards, help viewer: tab characters handled incorrectly, VFS: incorrect zoo archive listing, VFS: segfault in VFSs not setting block size in stat
4.8.1804 Oct 2016 11:05 minor feature: Alt-Enter, Ctrl-Enter and Ctrl-Shift-Enter shortcuts are bindable in file manager, Internals:, Refactoring of widget subsystem, Add syntax highlighting:, GLSL, CUDA, Code cleanup, Build failure on FreeBSD, Incompatibility with NetBSD curses, Memory leaks, Subshell output lost on window resize under tmux, GNU screen, --with-subshell=optional does not work, Backward search is not interruptible, "Output lines" has no effect, Wrong handling of mouse clicks in long listing mode, Panelize resets marks on marked files in many cases, Cannot change directory in the active panel in some cases, Filtered View doesn't work, mcedit: don't kill bookmarks when open file from "Find File" dialog, man pages use "the MC" instead of "MC"
4.8.1710 May 2016 10:05 minor feature: Minimal version of Gettext is 0.18.1, Optimization of copy/move operations, Recognize csh as tcsh, Сentered scrolling of file panel, Internals:, Switch to new high-level mouse API, FISH helpers: remove executable bit, Improvements of syntax highlighting:, F90, Java, Code cleanup, Install mc.keymap as a symlink to mc.default.keymap, File highlight: add more common file formats, Segfault due to incorrect value of SHELL environment variable, Segfault when copying files under FreeBSD 9.3, Segfault when entering into some cpio archives, Subshell output lost on window resize under tmux, GNU screen, Subshell cursor position lost after window resizing, Listbox no longer scrolls when dragging outside widget, VFS: extfs: incorrect date parsing in unzip, VFS: extfs: buffer overflow, VFS: patchfs: syntax error, VFS: fish: mistakes in ls Perl helper
4.8.1614 Mar 2016 02:25 minor feature: Support for ash + for bash, fish, Find file: empty file name matches any file name, Find file: empty value of "Content" is used instead of "Search for content" checkbox to disable search for content, Listbox: don't wraparound on mouse scroll, Internals:, Listbox: various ups, Split MSG_ACTION into MSG_ACTION and MSG_NOTIFY, Support lzip compression format, Support lz4 compression format, patchfs: support xz compression, Update uc1541 version, Add mc.ext patterns for initramfs / initrd, Add golang syntax, Update Puppet syntax, Code cleanup, Better subshell documentation, to the English man pages by Denys Vlasenko, Insufficient quoting in, Broken./configure --without-internal-edit, Memory leaks, No preallocation if appending during file copy, Cannot set mini-format for "brief" listing type, Info panel: incorrect inode information in some cases, Info panel: wrong device name with symbolic link, Info panel: buffer overflow, Regression: match filename, not full path in mc.ext, Broken case insensitive search in non-unicode locale, Error message prewith no sense "0:", mcedit: buffer overflow, mcedit: "Lower case selection" command in User Menu, mcedit: on ctrl-g, mcview: "Not found" result isn't reported in some cases, VFS: isofs doesn't show.dotfiles, VFS: isofs: cannot copy file from iso when Joliet without, VFS: extfs/unzip: enter into zip file fails with "inconsistent extfs archive", VFS: SFTP: various, VFS: FISH: provide major/minor info for block/char devices, Bashism in gitfs+ extfs helper, Non-portable invocation of man, mc-wrapper leaves MC_USER set, Broken silent opening of files in background, Run
4.8.1510 Jan 2016 00:45 minor feature: Minimal version of GLib is 2.26.0, Use the PATH environment variable to search for the executable when opening pipe, Support more than 2, Clarify file sorting in "Unsorted" mode, WGroupbox: respect dialog's colors, Highlight find file's result in internal viewer, s3 extfs vfs: and improvements, Add hidden option to choose full or base file name in the status line, Improvements of syntax highlighting:, Lua, PKGBUILD, Text alignment in Info panel, Select of menu file edit: change default button to "User", Recognize.gmo files as well as.mo ones, mc.pot comment tripping up Transifex and unportable inplace sed, A lot of code clean up, Documentation updates:, Spanish man and help: Diff Viewer section and minor, VFS garbage collection, Various memory leaks, Linux kernel-specific segfault on startup, Lost of Panelize contents in some cases, Wrong highlight of search result in case of "Regular expression" and "Whole words", "Whole words" search works only in Normal mode, View find results doesn't jump to match line if file is too short to scroll page, SFTP VFS: segfault, Segfault in "Find file" due to invalid UTF-8 sequences, Bash variable 'PROMPT_COMMAND' in pantheon-terminal
4.8.1309 Jan 2015 19:25 minor feature: New engine of user-friendly interruption of long-time operations
4.8.1204 Jul 2014 02:00 minor feature: Speed up of file find. If cwd is a symlink it is kept at startup. Improve support of Zsh. Launch external editor/viewer without passing line number. Exit without confirmation by default. Simple user-friendly skin selector. Use .zip extension as preferred way to recognize ZIP archives. Configurable selection reset on CK_Store. Code cleanup. Adjust script permissions to installed ones. Fix name of FSF in add source files. Skin cleanups. Do not consider "String not found" message as error. Fixes: Broken build with NCurses. Incorrect tilde expansion in copy/rename/move dialog. Advanced chown: Escape on user list accepts value. Toggling hidden files using mouse doesn't update the other panel. Question mark in delete confirmation is on its own line. Popup dialogs wander upwards upon resize. Keypad '*' doesn't work with numlock off. Some inconsistencies in "Learn keys" UI. Unconventional behavior of "Display bits" dialog. Shift-Fn keys don't work in 256-color mode of tmux. mcedit: format paragraph produces inconsistent wrapping. mcedit: file out-of-date check on saving is botched. mcedit: 1st line is shifted after paragraph format. mcedit: trailing newline check applied too early when exiting. Inconsistency of the arrow's direction in the panel header line across skins. Possible segfault while passing messages to widgets. Possible segfault when freeing a VFS. Segfault in cpio VFS while reading corrupted RPM. Segfault in sftpfs VFS when trying to view a file. Incorrect handling of filenames with unrar v5. FISH VFS: remote panel confused by filenames with ' '. iso9660: xorriso shows only one depth.