Re: mc Digest, Vol 146, Issue 10
Thank you for the feedback. I am familiar with being annoyed when your distro of choice has a crap version of something and doesn't seem to care. Use the source, Luke. I wonder what Peter Norton's file manager of choice these days is. I've never met Peter Norton. I think I installed some Norton software in the 90s. I don't recall much about it or him so I have nothing to compare. I think there is a nc clone/wannabee out there somewhere, but mc is only similar by accident - the 2 panel thing. Apparently it is a "visual shell for *nix environments", not a "file manager", although I categorize it as one, like most users I think. midnight commander has its origins from the 90s too. It sucked far worse back then. The one thing I like above all with this project over similar ones, is the pure hackablility of mc. It's pretty easy to familiarize yourself with the code and make it do whatever you think it should within a fairly short period of time. There are numerous examples of some pretty impressive "hacks". mc2 and mc-tabs come to mind immediately. Regarding these 4 issues, In My Humble Opinion: >> #1: - copies are made in the disk order, instead of taking the sort order that is chosen for the display I have wondered why this is the case myself. I can see the odd situation I would want to preserve disk order, but certainly not the majority of cases. At minimum it should be option. I have some recollection of a discussion about this issue on this very list back some years. It involves creating a temporary file list (and stat()ing a massive directory tree possibly) and parsing it according to arbitrary criteria. In this case, panel sort order. The list parsing can have some advanced options. Or each directory can be parsed as it is encountered (spread the delays out over entire operation). Alphabetical sort can be done with dirent, but any other criteria involves stat() or even more slow disk access stuff. Note here that the order in which files are copied still does not mean much about the disk order they end up in on the destination drive. Maybe some filesystems it does, but not mine. I can copy files one by one and they still end up in whatever order the underlying hardware wants them in. >> #2: - when some of the files are allready on destination, and one choses to skip, their number and volume should be substracted from the total count/size. In that way the estimates mean something. This means you encountered one of many error conditions. And handling this involves re-parsing the remaining file list according to numerous arbitrary criteria, and can be very time consuming. Just creating the file list can be very time consuming. The test results in some cases are from trying to write the file. This is not practical on large listings and many network connections. Running estimates on lengthy file operations are nearly impossible in many situations, especially when speed is important, and can easily exceed the actual copy itself. Maybe option reparse_eta_on_error[=No]? Either that or have some grotty list of arbitrary file parse criteria where we do various things depending on error condition, file sizes, number, type of connection, etc. in order to maintain the running tally. And if we're going to go there, then create a big dialog or scripting capability where you can specify stuff like "if (!file.error || file.dest.exists && file.dest.size > 3k && last.file.name == "foobar" && file.src.mtime.secs -gt `date +%s 2>/dev/null` ) then cp -vf %f >> file.log endif". Personally, I use it as a gauge of bytes transferred and not much more. The ETA is exactly that: some estmation, and your mileage may vary, as they say. Basically it means: Should I sit here, or can I make tea? This should be in FAQ. Both of these can slow the copy/move operation considerably. Fastest method consistently is disk-order/no-scan-files. Both could be enabled by UNchecking fast_copy_mode and enabling a bunch of arbitrary widgets and sort methods. Perhaps this is the answer, at least enable panel-sort-mode because it's such a common request. Option #1 and #2 work well together on fairly small numbers of files, but you certainly want them turned off for the transfer of large numbers of files. This could be option also, enable-fast-copy-when-file-qty-exceeds... n ? >> #3: - the move function still copies all, before removing the files, meaning that we gain nothing in volume until all has been copied Again, this can really slow things down. Imagine 250,000 small files. Without option, you get copy of all data, then single long delete process to finish. With option, last data transfer is not made until the 2nd to last operation. Removal is less important than getting the data to destination.This could be move dialog option remove-source-on-fly, default = OFF. Good for large files/small numbers. >> #4. - the move function doesn't give an estimate during it's
Re: auto save panels setup broken
Here's the patch for {setup.[ch], main.c, midnight.c} to fix the restoring of the directory contents of the active panel on startup when "Auto Save Panel Setup" option is enabled. See attached 1341 byte gzip: patch01-setup.ch-main.c-midnight.c-auto-save-restore-panel.161007.diff.gz It works for me. With no command line directories and no auto save panels option it still uses current directory for active panel like always. -- Peace and Cheer patch01-setup.ch-main.c-midnight.c-auto-save-restore-panel.161007.diff.gz Description: application/gzip ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: auto save panels setup broken
On closer inspection, saving and retrieving this_dir is a simple hack to setup.c, setup.h, and main.c. The real issue is what to do at startup. In midnight.c:create_panels() around line 600, if command line arguments run_param0 and run_param1 are both NULL we assume this_panel (active panel) is the current directory, and that's the way it works. There is no check for auto_save_panels, and if so, restore the active saved directory. This works to fix the issue: [code] if (boot_current_is_left) { /* left panel is active */ current_index = 0; other_index = 1; current_mode = startup_left_mode; other_mode = startup_right_mode; if (mc_run_param0 == NULL && mc_run_param1 == NULL) { /* no arguments */ if (panels_options.auto_save_setup) { /* check if we should restore active panel */ current_dir = saved_this_dir; } else { current_dir = NULL; /* assume current dir */ } other_dir = saved_other_dir;/* from ini */ } else if (mc_run_param0 != NULL && mc_run_param1 != NULL) { /* two arguments */ current_dir = (char *) mc_run_param0; other_dir = mc_run_param1; } else/* mc_run_param0 != NULL && mc_run_param1 == NULL */ { /* one argument */ current_dir = (char *) mc_run_param0; other_dir = saved_other_dir;/* from ini */ } } else { /* right panel is active */ current_index = 1; other_index = 0; current_mode = startup_right_mode; other_mode = startup_left_mode; if (mc_run_param0 == NULL && mc_run_param1 == NULL) { /* no arguments */ if (panels_options.auto_save_setup) { current_dir = saved_this_dir; } else { current_dir = NULL; /* assume current dir */ } other_dir = saved_other_dir;/* from ini */ } else if (mc_run_param0 != NULL && mc_run_param1 != NULL) { /* two arguments */ current_dir = (char *) mc_run_param0; other_dir = mc_run_param1; } else/* mc_run_param0 != NULL && mc_run_param1 == NULL */ { /* one argument */ current_dir = (char *) mc_run_param0; other_dir = saved_other_dir;/* from ini */ } } [/code] I can put it all together as a patch and post it if you like. Minor modifications to 4 files. On 2016-10-07 07:03, Mike wrote: Isn't that what F9 -> Options -> panel options -> auto save panels setup is for? I believe OP is correct: mc forgets the active directory if you do have "auto save panels setup" selected. $HOME/.config/mc/panels.ini: [Dirs] other_dir=/some/dir/somewhere current_is_left=false I think this file should be saved with: this_dir=/some/dir ? Whichever panel is active on shutdown, gets set back to $HOME on restart. This is not correct. From a cursory look, it's a simple hack to setup.c. I guess it got overlooked because few people use that option. On 2016-10-07 05:39, chris glur wrote: Also it doesn't remember the active panel on last close was the right panel. When, as usual, I've got several mc running: they all initially start with the latest conditions. If I rarely, change the format-order of a mc, I don't want that new specail setting to be remembered and REPLACE my chosen default settings. You seems to write as if you had onlu one mc running? ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc -- Peace and Cheer -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
auto save panels setup broken
Isn't that what F9 -> Options -> panel options -> auto save panels setup is for? I believe OP is correct: mc forgets the active directory if you do have "auto save panels setup" selected. $HOME/.config/mc/panels.ini: [Dirs] other_dir=/some/dir/somewhere current_is_left=false I think this file should be saved with: this_dir=/some/dir ? Whichever panel is active on shutdown, gets set back to $HOME on restart. This is not correct. From a cursory look, it's a simple hack to setup.c. I guess it got overlooked because few people use that option. On 2016-10-07 05:39, chris glur wrote: Also it doesn't remember the active panel on last close was the right panel. When, as usual, I've got several mc running: they all initially start with the latest conditions. If I rarely, change the format-order of a mc, I don't want that new specail setting to be remembered and REPLACE my chosen default settings. You seems to write as if you had onlu one mc running? ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: mplayer keyboard control
mplayer must be running in the foreground in order to receive your keyboard events. I've found the best way to use mc for music control is to modify your menu file (F9 -> Command -> Edit menu file) and add entries with slave commands for xmms/deadbeef/whatever running elsewhere. eg: =+ t r & t t Q Enqueue tagged files in MP3 Player deadbeef --queue %t set %u It's also possible to get your window manager to intercept certain key combos and send commands to your audio player. The technique varies from one wm to another. On 2016-08-31 06:46, benoit felix wrote: Hiya I managed to make mplayer the default video player in mc. It is all fine but the keyboard control does not work anymore (eg. pause, stop, etc). I initially thought that I would have to put some prefix key like Esc-Tab for the autocompletion in the mc command line but nope. How to tell mc to not intercept keybindings send to running applications like mplayer? Best ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: Why does one have to "Press any key to continue" after running a command?
F9 -> Options -> Configuration... -> Pause after run -> set to Never. On 2016-08-23 10:38, Theodore Kilgore wrote: For example: Running Midnight Commander, with the panels turned on, I do a command such as latex Cntl-Enter (using the Cntl-Enter seqiemce tp bring a filename down to the command line, so that it says latex file.tex Then after the latex command has done its thing one does not get the panel back. Instead, one sees "Press any key to continue" Perhaps there is a good reason for doing things this way, but I cannot figure out what it might be. Also I can not find any option in "man mc" which would look as though it ought to be what one should do to turn this off. Theodore Kilgore ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: MC with Tabs
I tried the tabs patch, thought it was good. Still needs a few tweaks. I just found I didn't use it. I use multiple desktops with multiple MC instances, *shrug*. As a feature, I would endorse it, maybe as configure time option, ./configure --enable-tabs ? On 2016-08-21 12:01, Russell Urquhart wrote: Hi, I was looking, and found this link: https://www.midnight-commander.org/ticket/1581 Has anyone used this, and can this patch be folded into current releases? Thanks Russ ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: Midnight Commander 4.8.17 released
Thank you very much. IMHO, the way things are going at this point are perfect for this time and place: slowly working out bugs and making minor tweaks and improvements. Until something changes and the move to 5.0.0 series becomes clear (likely some major change in an underlying dependency, or the adoption of that mc2 scripting aspect), I think we should continue on this (glacial) incremental path, bumping micro-versions every few months, and just seeing where this takes us. On 2016-05-08 03:02, Yury V. Zaytsev wrote: Hi, I'm glad to announce the availability of mc-4.8.17! This is a maintenance release that includes bugfixes for a bunch of very annoying bugs that surfaced in the previous version (FISH, patchfs, segfault and tcsh detection on FreeBSD) and brings several new features. Copy & move operations now use an adaptive buffer, just like the corresponding coreutils commands, which will significantly improve the performance (hopefully!) for many of our users. Move to the new high-level mouse API has not only simplified our code, but also resolved a number of long-standing mouse bugs. Finally, the new panel centered scrolling mode is weird, but fun; try it out! For a detailed list of changes since the last version, please refer to the release notes. Download page: http://ftp.midnight-commander.org/?C=N;O=D Release notes: http://www.midnight-commander.org/wiki/NEWS-4.8.17 As usual, I would like to thank tireless Andrew Borodin, and our contributors Andreas Mohr, Mooffie and many others for making this release possible. We still have an enormous backlog of tickets and patches, but we are working on it as time permits, one patch at a time. Have a great summer break everyone! ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: small request
We're talking about default fresh install settings. I don't like mc saving settings unless I tell it, also. But to make things easy for new users, what should the default setting be? I vote for auto-save. It makes mc "seem" smart. -- Peace and Cheer ___ mc-devel mailing list https://mail.gnome.org/mailman/listinfo/mc-devel
Re: Midnight Commander 4.8.16 released
On 2016-03-13 23:42, Yury V. Zaytsev wrote: On Sun, 13 Mar 2016, Mike wrote: Compiled fine over here, Arch 4.3.3. Lotsa unreachable code (maintenance release). No issues yet. Sounds like you still have GCC 4.5 or even earlier (surprising, given that you're running Arch). It is known to spew tons of false-positive unreachable code warnings. We test with GCC 4.6 and later on Travis, and it reports no errors. Hm. Now that you mention, I have 3.4.1 here. Newest is 5.3.0. I still have good old 2.96 on my other box. Maybe I'll upgrade... :) Thanks for noticing, I thought this one was a bit funny. The find dialog looks good, simpler can always be better. The find dialog results box still needs that title-content patch. Hmmm... let's see what we can do about this one. It's a simple patch and could involved a smidgen of cleanup. The funcs should pass arguments and not use that global. If I have more than 1 find dialog open, this patch shows which is doing what, otherwise it's a guess what they were looking for, or have to repeat the search. I get interrupted a lot. Phone, kids, you know... Thanks again for the under-appreciated hard work. Happy spring. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: panel behaviour on rhel7
If you enable save on exit I think it remembers the last panels. or, check your bash aliases and stuff, sometimes mc has startup thing that forces home directory in startup panel. There's the -P option to save the last directory you were in. On 2016-03-13 11:41, solarflow99 wrote: Has anyone else noticed with RHEL 7 and later versions of fedora, the directory you were last in is lost in the split panel, the next time you start mc? ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: mc-4.8.14 hangs on select for 10 seconds at startup
Thank you very much for investigating this issue. At least we know the source of the trouble. I have to say I'd forgotten about the problem. At the time I was installing Arch Linux to a new box and wanted to use my own compiled mc instead of the factory supplied version. I had much trouble with the factory login scripts and ended up completely redoing them. They were very convoluted and I stripped them down to something simple. The problem went away and I haven't seen it since. I also recall it only happened with my compiled version of mc and not the binary version that came with the system. Arch has all kinds of oddball hacks to it. My PROMPT_COMMAND is normal now: echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007" as set in /etc/bash.bashrc, and no problems these days. I do not recall what it was at the time, and I cannot find any trace of old PROMPT_COMMAND variables. I've had trouble with subshell from the start on this system. Occasionally something happens on return from command and subshell hangs. CTRL-C will break it. Other times it hangs on return and I have to kill the terminal window. I have not figured what triggers these situations yet. It could be something with factory bash from Arch. When I had PROMPT_COMMAND issues I had no subshell at all. -- Peace and Cheer ___ mc-devel mailing list https://mail.gnome.org/mailman/listinfo/mc-devel
Re: Connect via ADB
On Fri, 17 Jul 2015 06:04:26 -0700, Jon M jon.tech...@gmail.com wrote: Is there a stable implementation to connect to and Android device via ADB from MC on a desktop? I used libmtp and rolled my own cli program to talk to my android phone. Frankly, I was surprised I couldn't find one out there already. It's not that complicated and you don't need adb to do it. There are a few peculiarities to be aware of, however. If you're interested, I could email the tarball (35k). It might get you started. It works for me. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
mc-4.8.14 hangs on select for 10 seconds at startup
I'm working over a Mandriva 2011 distro to get it working just the way I like it. It came with mc-4.7.53, and it works. I decided to compile 4.8.14 on the PC, pretty standard stuff: GNU Midnight Commander 4.8.14 Built with GLib 2.16.6 Using the S-Lang library with terminfo database With builtin Editor With subshell support as default With support for background operations With mouse support on xterm With internationalization support With multiple codepages support Virtual File Systems: cpiofs, tarfs, sfs, extfs, ftpfs, fish Data types: char: 8; int: 32; long: 32; void *: 32; size_t: 32; off_t: 64; On startup it hangs for 10 seconds, apparently on a select() call. I've edited this strace dump for brevity: [code] ... 04:20:19 open(/dev/ptmx, O_RDWR) = 6 04:20:19 statfs(/dev/pts, {f_type=DEVPTS_SUPER_MAGIC, f_bsize=4096, f_blocks=0, f_bfree=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={0, 0}, f_namelen=255, f_frsize=4096}) = 0 04:20:19 ioctl(6, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 04:20:19 ioctl(6, TIOCGPTN, [3])= 0 04:20:19 stat64(/dev/pts/3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 3), ...}) = 0 04:20:19 getuid32() = 501 04:20:19 socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 7 04:20:19 connect(7, {sa_family=AF_FILE, path=/var/run/nscd/socket}, 110) = -1 ENOENT (No such file or directory) 04:20:19 close(7) = 0 04:20:19 socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 7 04:20:19 connect(7, {sa_family=AF_FILE, path=/var/run/nscd/socket}, 110) = -1 ENOENT (No such file or directory) 04:20:19 close(7) = 0 04:20:19 open(/etc/group, O_RDONLY|O_CLOEXEC) = 7 04:20:19 fstat64(7, {st_mode=S_IFREG|0644, st_size=669, ...}) = 0 04:20:19 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7189000 04:20:19 read(7, root:x:0:\nbin:x:1:\ndaemon:x:2:\ns..., 4096) = 669 04:20:19 close(7) = 0 04:20:19 munmap(0xb7189000, 4096) = 0 04:20:19 ioctl(6, TIOCSPTLCK, [0]) = 0 04:20:19 ioctl(6, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 04:20:19 ioctl(6, TIOCGPTN, [3])= 0 04:20:19 stat64(/dev/pts/3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 3), ...}) = 0 04:20:19 open(/dev/pts/3, O_RDWR|O_LARGEFILE) = 7 04:20:19 fcntl64(7, F_SETFD, FD_CLOEXEC) = 0 04:20:19 pipe([8, 9]) = 0 04:20:19 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb74f7728) = 12097 04:20:19 write(6, PROMPT_COMMAND=${PROMPT_COMMAND..., 75) = 75 04:20:19 rt_sigaction(SIGINT, {0x8096d10, [], 0}, NULL, 8) = 0 04:20:19 select(9, [6 8], NULL, NULL, {10, 0}) = 1 (in [6], left {9, 998268}) 04:20:19 read(6, PROMPT_COMMAND=${PROMPT_COMMAND..., 128) = 76 04:20:19 select(9, [6 8], NULL, NULL, {9, 998268}) = 1 (in [6], left {9, 971360}) 04:20:19 read(6, [miven@cobra ~]$ PROMPT_COMMAND..., 128) = 55 04:20:19 select(9, [6 8], NULL, NULL, {9, 971360}) = 1 (in [6], left {9, 971353}) 04:20:19 read(6, MPT_, 128) = 4 04:20:19 select(9, [6 8], NULL, NULL, {9, 971353}) = 1 (in [6], left {9, 971347}) 04:20:19 read(6, COM, 128)= 3 04:20:19 select(9, [6 8], NULL, NULL, {9, 971347}) = 1 (in [6], left {9, 971341}) 04:20:19 read(6, MAN, 128)= 3 04:20:19 select(9, [6 8], NULL, NULL, {9, 971341}) = 1 (in [6], left {9, 971335}) 04:20:19 read(6, D;, 128) = 2 04:20:19 select(9, [6 8], NULL, NULL, {9, 971335}) = 1 (in [6], left {9, 971329}) 04:20:19 read(6, }', 128)= 3 04:20:19 select(9, [6 8], NULL, NULL, {9, 971329}) = 1 (in [6], left {9, 971323}) 04:20:19 read(6, pw, 128) = 2 04:20:19 select(9, [6 8], NULL, NULL, {9, 971323}) = 1 (in [6], left {9, 971317}) 04:20:19 read(6, d, 128)= 3 04:20:19 select(9, [6 8], NULL, NULL, {9, 971317}) = 1 (in [6], left {9, 971311}) 04:20:19 read(6, 9;, 128) = 2 04:20:19 select(9, [6 8], NULL, NULL, {9, 971311}) = 1 (in [6], left {9, 971305}) 04:20:19 read(6, kil, 128)= 3 04:20:19 select(9, [6 8], NULL, NULL, {9, 971305}) = 1 (in [6], left {9, 971299}) 04:20:19 read(6, l , 128) = 2 04:20:19 select(9, [6 8], NULL, NULL, {9, 971299}) = 1 (in [6], left {9, 971293}) 04:20:19 read(6, -S, 128) = 2 04:20:19 select(9, [6 8], NULL, NULL, {9, 971293}) = 1 (in [6], left {9, 971287}) 04:20:19 read(6, TO, 128) = 2 04:20:19 select(9, [6 8], NULL, NULL, {9, 971287}) = 1 (in [6], left {9, 971281}) 04:20:19 read(6, P , 128) = 2 04:20:19 select(9, [6 8], NULL, NULL, {9, 971281}) = 1 (in [6], left {9, 971275}) 04:20:19 read(6, $$, 128) = 2 04:20:19 select(9, [6 8], NULL, NULL, {9, 971275}) = 1
Re: mc is over!?
Bah. Mc is not over. Things change, that's all. I've been into mc since I don't know when. The first time I used it. Mid/late 90s I'm guessing. I saw how it floundered in the 4.6 series. I shrugged and kept tweaking and hacking my version. A few years went by and I looked it up again, purely out of curiosity. I was delighted that someone had given it a full work over into the 4.8 series. There were some persistent, puzzling, and very annoying bugs that are now gone. Excellent work, gentlemen. Thank you very much. My list of personal patches went from ~30 down to ~5, where they sit now, mostly minor interface tweaks. Mc works, and it works very well. If development stagnates for a while, so be it. There is actually very little to do. Mc is as close to perfect as software gets. There will always be bugs and minor tweaks, and that's what needs to be worked on, now and forever. Yes, mc in its current incarnation is a model from the 1990s. I like it that way. I'm not a big fan of C++. I also don't like eye candy in a tool that is all about functionality and utility, and I very much appreciate a file manager that can operate when XWindows cannot, or the system is barely bootable. It's the perfect size: big enough to be feature-rich and highly usable, yet small enough that a single individual can (theoretically) get his head around the entire code base. It's also fun to hack. I cannot guarantee 20hrs/week, but I would be very interested to work through bug reports and small enhancement requests at my own pace, and see what I can get done. As a last thought for this email: I suppose what we have here is a complete lack of consensus as to the direction to take if we were to move into a 5.0 series. My thinking is along the lines of complete modularity: a basic interface design (that already exists) and everything else is plugins. What if I want to use mc for inventory control? Make a plugin to work with SQL instead of filesystem. Perhaps there needs to be room for people to experiment with this sort of thing. A 4.9beta branch that starts off as mess and arguments but slowly gets sorted into something with vision. That's my 2 cents worth. Take care, and best wishes for those who are moving on to bigger and better things. Thank you for your labors. -- Peace and Cheer ___ mc-devel mailing list https://mail.gnome.org/mailman/listinfo/mc-devel
listbox hotkeys
I use Directory hotlist a lot. Constantly, really. It's always bugged me that I can only access the first 10 items with the keys 0-9. After sitting on my TODO list for about 2 years, I finally had a scratch at the issue. Keys a-z are very often used by the menu of the dialog the listbox is in, but keys A-Z are not. So I did this: [code] --- lib/widget/listbox.c~ 2015-03-20 11:06:04.0 -0700 +++ lib/widget/listbox.c2015-05-24 09:21:52.0 -0700 @@ -328,10 +328,15 @@ listbox_key (WListbox * l, int key) return MSG_NOT_HANDLED; /* focus on listbox item N by '0'..'9' keys */ -if (key = '0' key = '9') +if ((key = '0' key = '9')||(key = 'A' key = 'Z')) { int oldpos = l-pos; -listbox_select_entry (l, key - '0'); +if (key = 'A' key = 'Z') { +listbox_select_entry (l, key - 55); +} else { +listbox_select_entry (l, key - '0'); +} + /* need scroll to item? */ if (abs (oldpos - l-pos) WIDGET (l)-lines) [/code] Diffed from 4.8.14 tarball. It seems to work fine. Now I can access the top 36 items instead of just the top 10. But, of course, it affects all listboxes program-wide. It seems OK to me so far. My question this: Does this seem like a useful feature (ie ticket-worthy) or am I missing some far-reaching consequence I have not uncovered yet? -- Peace and Cheer ___ mc-devel mailing list https://mail.gnome.org/mailman/listinfo/mc-devel
Re: mc problem in recent versions of fedora/rhel
I'm assuming this happens when you ssh into other box and then run mc? Not when you do a shell link in mc from your box? What does your $TERM var say when you ssh into the other box, before you run mc? Also, what does it look like when you sit down at the other box and run mc? On Sat, 04 Apr 2015 18:48:22 -0700, solarflow99 solarflo...@gmail.com wrote: Hi, first i'd just like to say thanks to all the developers and users of midnight commander, its been probably the most indispensable tool i've used for years. Since installing Fedora 21, using xterm I noticed the line and block characters don't display properly when sshing to another host. It works fine on localhost though. I files a bug about it in redhat bugzilla, but no one there bothered to look at it. Has anyone else noticed this? https://bugzilla.redhat.com/show_bug.cgi?id=1190465 ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: Idea for new feature - discuss
I agree. What I did was check Never on Pause after run and put reads in the menu/ext files where I knew I would want the pause. Something like this: + t r ! t t @ Do something on the current file CMD=%{Enter command} $CMD ./%0f read -e -n1 -p'Hit a key... ' Otherwise, if I'm going to type a command that I want to see the output, like make, I hit CTRL-O right before I type to go into terminal mode. On Sun, 29 Mar 2015 08:12:12 -0700, Ben 2blkb...@nemontel.net wrote: MC has three config options for what to do after executing files by pressing return with the selection on them: 1 Close the shell every time, returning to MC 2 Leave the window open every time, press return to... return 3 Close the window only on dumb terminals (what?) Number one leaves you unable to see the output of a command. So you type ls and it's kind of useless. Or any other command or script that has output you need to see. Number two works for those things where you need to see output, but if you don't, and there are things you routinely execute that do good things for you that simply need to be done on command (like turning on house lights, my particular thang) then it eventually becomes a bit of annoyance that it doesn't just get done. Now, I may be missing something buried in that dumb terminal option, but it seems to me that this would be a nice solution: You know how the F4 editor keeps track of what line you're on in which file? That's *lovely*. Well, how about modifying option two so that if you press return, it does what it always did, that is, close the shell and return. But if you press something else, perhaps ESC or whatever, from then on, when that command is run, the shell closes when the run is done. This implies you'd need an operation to remove the close status in case the cat stepped on the selected key at the wrong time, but that doesn't seem like a high hurdle, lots of room in the menus. Another approach would be an option to pause only if the command has output other than CR and LF, which doesn't require saving file names anywhere, but I think that might be a little unsatisfactory as if a command might create output or not, you might get a little uncertain if you saw what you thought you saw. Number three... I use the usual terminal types. Are they dumb? I have no idea. I don't see anything in the OS X shell preferences to variably designate the terminal as dumb or not based on what's executing, so I'm guessing this can't do what I'm thinking. Is it useful to anyone? If not, perhaps it could be the pause only if command produces output option instead. So, anyone? Feasibility problems? Good? Bad? Stupid? Selfish? Did I completely miss or misunderstand a feature? --Ben -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: Screen List (M-`)
I completely agree. It is useless, but could be *very* useful. It has the look of something that once was useful, but kinda got left behind in the transition from one thing to another. What was it supposed to do? I guess we need to figure out *exactly* what it should do. I very often have many mc's running on various workspaces/screens/ whatever with many different directories/edits/views/etc. Are we talking some kind of IPC between running mc's? I recall there being an mc-server thingy in the 4.6 series. I never used it nor do I know what it was for. Any ideas? -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: External editor with parameters not working?
On Sat, 06 Dec 2014 03:14:38 -0800, Stevko ste...@stevko.info wrote: Hello. I tried the following thing: 1) export EDITOR=emacs -nw 2) mc 3) (with internal editor disabled) go to some file and press F4 This opens emacs with the file, however it does not open it in terminal (which should be done with -nw switch) but in new window in X. (as if it somehow ignored -nw). If I run the following in shell: $EDITOR file it opens file as expected. Why does mc not do that? I tried setting EDITOR to vim -R and again when run from mc, it does not honor -R switch. I have version 4.8.12 (which comes from Fedora 21 package). Stevko I am not subscribed to mailing list (so send replies also to me). ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc Hello Stevko. I recall being confounded by this very thing. In my mc/ini file ($HOME/.config/mc/ini) I have this: [External editor or viewer parameters] vi=%filename +%lineno vim=%filename +%lineno ed=+%lineno %filename /bin/mo=%filename +%lineno mo=+%lineno %filename less=%filename +%lineno joe=%filename +%lineno more=%filename +%lineno You can add the command line options here. It seems mc doesn't *really* call $EDITOR. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: mc on high resolution monitor with konsole
On Sat, 27 Dec 2014 16:11:34 -0800, Outback Dingo outbackdi...@gmail.com wrote: ive got a samsung 4k, running kde in the proper mode, however in konsole when i launch mc it only fills 1/3 of the screen... how can i get it to be full screen? ive attached an image How many $COLUMNS in that window? 500 or something? I thought I was getting out of hand with 236 on 1920x1080. :) Check F9- Options - Layout. It looks like mc is not expecting a super-wide screen and thinks it's in 80 column mode or something. Note that with really wide screen like that your scrolling may be slow. You may want to use smaller terminal window, or much bigger font. Also, sending SIGWINCH to mc may help fix it automatically: try un-maximizing the window, then re-maximizing it. mc may adjust properly. Then SAVE the options so it remembers for next time. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: error or i don't understend some thing
Message: 2 Date: Wed, 24 Dec 2014 20:47:07 +0600 From: Igor) dubrovi...@gmail.com To: mc-devel@gnome.org Subject: error or i don't understend some thing Message-ID: canxhswze4u0ty_f-oxssmsozkuwhtyy2plvoa9tvihdrc-4...@mail.gmail.com Content-Type: text/plain; charset=utf-8 hello, my name is Igor i have a question how can i create file in mc? shift+f4 not working now i using echo flie.name in terminal mode(ctrl+o) mc version 4.8.11 os ubuntu 14.04 shift+F4 is move file for me. If I want to edit a new file I type vim file and hit enter. After that F4 will edit it if it exists. touch file will also create new empty file (easier to type than echo file). -- Peace and Cheer ___ mc-devel mailing list https://mail.gnome.org/mailman/listinfo/mc-devel
Re: How to know when mc is running in a terminal
Thanks frank. The answer was in front of my nose the whole time. Environment variable MC_TMPDIR can be used to know that you're being called from mc. For some reason MC_SID disappears but MC_TMPDIR does not. I needed something more specific than just knowing whether I'm in pts or not. I want to know if it's mc's F4 EDIT command calling, or at least being called from a terminal with mc running in it. if [ -n $DISPLAY -a -n $MC_TMPDIR ]; then # we're being called from mc in XWindow terminal do_something_odd fi On Mon, 10 Nov 2014 02:06:26 -0800, frank y199mp1...@gmail.com wrote: On 10/11/2014 01:25, Mike Smithson wrote: how can a script know whether it is being called from F4 in mc or just a terminal? Try the shell command 'tty'. In the Linux console it will reply e.g. /dev/tty1. In a graphic terminal the reply will be /dev/pts/0. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
How to know when mc is running in a terminal
I have a specialized F4 script ($EDITOR) that I need to know whether my editor is being called from mc or not. The MC_ env vars don't seem to exist when F4 is hit. Question: how can a script know whether it is being called from F4 in mc or just a terminal? Thanks in advance. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Happy 20th Birthday!
On Thu, 30 Oct 2014 05:00:05 -0700, mc-devel-requ...@gnome.org wrote: Today's Topics: 1. Happy 20th Birthday! (Egmont Koblinger) ... Sadly, as this post points out, mc almost died twice already ? and the really sad aspect that casts a shadow to the current birthday is that I personally feel it's dying again for the third time. The initial passion from the new maintainers has faded. They hardly have time to work on the project. Many patches or important bugreports go unnoticed for long months or even years. Some tickets have heated technical discussions between some non-maintainers, yet the maintainers remain silent. Some contributors have already expressed that they've lost motivation due to the lack of response from developers, and alas more (including myself) are likely to follow. (This whole issue has been raised in [5].) I really don't know how this problem could be solved... I'm just hoping that we'll be able to figure out something. Anyways, for now, let's celebrate 20 years of Midnight Commander :) 1994? Yes, there are few records of the history of this obscure code. I've been using mc since the days when it sucked. The 4.6 years were pretty good, it worked well already, and some major things were hacked out. 4.8 series is awesome. I got away from it for a few years, came back, and some clever people had worked it right over. Sure, they missed a few things, but the code cleanup was great. Thank you who ever you are. I would help, I have a bunch of patches I apply to every new version. I don't understand the ticket system. I set one up, someone made a bizarre reply to it, and that's all that happened. I even showed the exact code that accomplished it. Nobody said yes or no, there was no dialog whether it sucked or was good. Someone just told me to make a ticket. Sounds like Russians to me. :) I would love to help. Tell me how. ps I like having my personal hacks for something like mc. It is my file manager. I don't use Nautilus or whatever. Maybe mc-4.8.13 is getting very close to as perfect as software can get. It is very effective. I think forums work better than mailing lists. I want to frame things up and respond to critique. And make it easy to do so. Developers *are* users. mc is not Twinkies(tm) in crisp plastic wrap. It's more like something you cook at home. There ya go. Midnight Commander Cookbook. A million magic hacks. -- Peace and Cheer ___ mc-devel mailing list https://mail.gnome.org/mailman/listinfo/mc-devel
Re: move/copy file by extension preserving directories hierarchy.
On Wed, 22 Oct 2014 15:25:27 -0700, tizio incognito jeeg...@yahoo.it wrote: I don't know if it has benn already asked, but it could be a nice feature the possibility to move/copy files recursively by extension preserving the directory structure. I'll better explain by an example: src dir | +- sub dir 1 | +- file1.png | +- file1.jpeg | +- sub dir 2 +- file2.png +- file2.jpeg command: move_by_ext *.pngsrc_dir dest_dir dest dir | +- sub dir 1 | +- file1.png | +- sub dir 2 +- file2.png Thanks in advance Daniele Giglio I say this is a job for the F2 menu. That's where you can get all picky and funny with stuff like this. I have never once required this nitpicking of directory contents in 20 years of using mc, but I have many other bizarre scripts that do oddball things like this that I personally require all the time, so I'll give you a hint: tar cvf test.tar $(find /path/to/dir -name '*.png') then move the test.tar where you want, and un-tar it. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: mc 4.8.13 compile error
On Thu, 18 Sep 2014 06:18:15 -0700, John Kennerson nob...@isis.cpunk.us wrote: mc 4.8.13 compile error slackware 13.0 with: glib-1.2.10-i486-3 glib2-2.18.4-i486-1 glibc-2.9-i486-6_slack13.0 Trying to compile mc 4.8.13 results in the following error: (mc 4.8.12 compiled fine on the same system) Making all in widget make[3]: Entering directory `/home/john/tmp/mc-4.8.13/lib/widget' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/john/tmp/mc-4.8.13/lib/widget' Making all in . make[3]: Entering directory `/home/john/tmp/mc-4.8.13/lib' CC glibcompat.lo glibcompat.c: In function 'g_error_new_valist': glibcompat.c:156: error: 'ap' undeclared (first use in this function) glibcompat.c:156: error: (Each undeclared identifier is reported only once glibcompat.c:156: error: for each function it appears in.) glibcompat.c:156: error: 'va_start' used in function with fixed args glibcompat.c:151: warning: unused parameter 'args' [-Wunused-parameter] make[3]: *** [glibcompat.lo] Error 1 make[3]: Leaving directory `/home/john/tmp/mc-4.8.13/lib' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/john/tmp/mc-4.8.13/lib' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/john/tmp/mc-4.8.13' make: *** [all] Error 2 Any ideas as to the problem? ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc It looks like you are still using glib-1.2. I think it should be glib-2.0. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: Trailing type field (instead of leading)
On Fri, 22 Aug 2014 06:27:55 -0700, w3m...@hushmail.com wrote: I want type fields to trail (instead of lead) each file or folder name. Example: folder/ instead of /folder, link@ instead of @link like 'ls -F' does. How can I change the default behavior ? In F9-listing mode select 'User defined' and type name type | size | perm into the input field. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Select/Unselect Files cannot mark directories only
I can no longer select *only* directories in the Select File dialog. I used to be able to do it by typing / before the pattern. Now that does nothing. In cmd.c:select_unselect_cmd():260 we have the line: [code] if (S_ISDIR (current_panel-dir.list[i].st.st_mode) files_only != 0) continue; [/code] But there is no way, as far as I can see, to select dirs only. In mc-4.6.2 we had this: [code] /* Check if they specified a directory */ if (*reg_exp_t == PATH_SEP) { dirflag = 1; reg_exp_t++; } [/code] Any notion why this got dropped? BTW the hack seems quite trivial, something like this: [code] --- src/filemanager/cmd.c~ 2014-04-01 03:54:01.0 -0700 +++ src/filemanager/cmd.c 2014-08-26 10:47:50.319707218 -0700 @@ -215,9 +215,10 @@ select_unselect_cmd (const char *title, int case_sens = (select_flags SELECT_MATCH_CASE) != 0; int shell_patterns = (select_flags SELECT_SHELL_PATTERNS) != 0; -char *reg_exp; +char *reg_exp, *p; mc_search_t *search; int i; +int dirflag = 0; quick_widget_t quick_widgets[] = { /* *INDENT-OFF* */ @@ -246,6 +247,10 @@ select_unselect_cmd (const char *title, { g_free (reg_exp); return; +} else if ( *reg_exp == PATH_SEP ) { + dirflag = 1; + p = reg_exp; + memmove ( p, p+1, strlen (p) ); } search = mc_search_new (reg_exp, -1, NULL); @@ -257,8 +262,11 @@ select_unselect_cmd (const char *title, { if (DIR_IS_DOTDOT (current_panel-dir.list[i].fname)) continue; -if (S_ISDIR (current_panel-dir.list[i].st.st_mode) files_only != 0) -continue; +if (S_ISDIR (current_panel-dir.list[i].st.st_mode) ) { + if ( files_only != 0 ! dirflag ) + continue; + } else if ( dirflag ) + continue; if (mc_search_run (search, current_panel-dir.list[i].fname, 0, current_panel-dir.list[i].fnamelen, NULL)) [/code] -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: colored bash prompt
On Tue, 17 Jun 2014 23:48:55 -0700, Eugene M. Zheganin e...@norma.perm.ru wrote: Is it possible to have a colored prompt in mc when both panels are on ? It's colored in a subshell when panels are off (after a couple of Enters) but not when panels are on. I tried that once. I wanted my root login prompt to be bright red or something. What I recall is the extra characters used to color the prompt messes up the line length calculations used by readline or whatever command line library you use. It's fine and all pretty looking if your command is short and doesn't go anywhere near the right edge of the screen, but if it goes onto a second line (like a fancy for... loop) everything gets messed up and becomes mostly unusable. So I stopped doing it and stuck with non-colored prompts. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: file size format displayed in mc
On Wed, 09 Apr 2014 14:43:24 -0700, Konrad Vrba konrad.v...@gmail.com wrote: Hello, I am wondering whether it is possible to display the file size in midnight commander (in the size column) with a thousand separator (i.e. 1,234,567). This works for ls BLOCK_SIZE='1 ls -lAF and I find it very convenient and human friendly. is there any way to have the same in mc? regards, Konrad printf has the ' flag that supposedly does this, but it doesn't seem well supported. It's locale dependent and doesn't work on my system. BLOCK_SIZE='1 ls -lAF also doesn't work on my system. Also, it would take up extra columns in the panel. Maybe with big screen it would be OK, but I'm only 1024x768. The columns are precious. I don't even use vertical separator bars between the fields in my panels. The file size field seems to be limited to 7 characters, after that it goes 123456K or 123456M. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: Compile from git clone fails.
On Thu, 26 Dec 2013 22:38:24 -0800, Andrew Borodin aboro...@vmail.ru wrote: Could you please show config.log and full make log: make V=1 make.log 21 tar cjf mc-log.tar.bz2 config.log make.log Certainly. See attached. -- Peace and Cheer mc-log.tar.bz2 Description: Unix tar archive ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Incorrect behavior in Hotlist - Insert
I use directory hotlist a lot. Often I have project that I work heavily on for a few days or a week, then it's finished. I like my new hotlist entries to appear at (or near) the top of the list so I can just go C-\ ENTER and I'm there. Then when project is done, I remove the entry, or move it down the list. I think this is a super-useful feature of mc and one of the things that makes it so effective. But... In the panel, if I do: C-\ (for hotlist) ...scroll down a few entries... e (new entry) M-I (Insert) the new entry gets inserted before the cursor, but the cursor jumps to the entry *before* the new one; that is, the cursor jumps up two places. This seems disorienting and incorrect to me. I've traced it to [code] --- lib/widget/listbox.c~ 2013-11-29 10:27:07.0 -0800 +++ lib/widget/listbox.c2013-12-02 09:11:26.191188317 -0800 @@ -336,8 +336,9 @@ listbox_append_item (WListbox * l, WLEnt case LISTBOX_APPEND_BEFORE: l-list = g_list_insert_before (l-list, g_list_nth (l-list, l-pos), e); -if (l-pos 0) -l-pos--; +/* + * Why do we decrement here? + * if (l-pos 0) + * l-pos--; + */ break; case LISTBOX_APPEND_AFTER: [/code] Not decrementing (as I have done here by commenting out the lines) leaves the cursor on the new entry. This seems *more* correct than jumping up two entries. Incrementing l-pos would leave the cursor on the entry it was on before the insertion. I know this is trivial issue, because LISTBOX_APPEND_BEFORE is rarely used in the code, but still, I believe the decrement is incorrect, and the only reason nobody notices this bug is because the cursor position is often set deliberately right after the insert. Any comments? Is this ticket worthy? -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: Compile from git clone fails (SOLVED).
Problem solved: I just now upgraded m4, autoconf, and automake to the freshest from http://ftp.gnu.org/gnu, and then it couldn't even get through autogen.sh. I upgraded libtool, and now everything works. Strange thing too, because I remembered upgrading these within the last year, but when I looked at the versions, I must have done a deliberate *minimal* upgrade, because even though they were compiled on Jan 29 2013, the versions were ancient (2006). Heh, you can see what a dinosaur I am. :) Anyway, now I can keep going on my git tutorial and stuff. Thank you very much. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Compile from git clone fails.
Normally I compile from tarball. git clone git://github.com/MidnightCommander/mc.git I used standard process: autogen.sh, ./configure, make, and everything goes fine until the very end. I get this: gcc -std=gnu99 -Wcomment -Wdeclaration-after-statement -Wfloat-equal -Wformat -Wformat-security -Wimplicit -Wmissing-braces -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-long-long -Wno-unreachable-code -Wparentheses -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wuninitialized -Wunused-but-set-variable -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wwrite-strings -g -O2 -o mc main.o ./.libs/libinternal.al -L/usr/lib ../lib/.libs/libmc.al -lslang -lgpm /usr/lib/libgmodule-2.0.so -ldl /usr/lib/libglib-2.0.so ./.libs/libinternal.al(mcviewer.lo)(.text+0x2c1): In function `mcview_new': /home/miven/src/Managers/mc/git/mc-4.8.11-131225b/src/viewer/mcviewer.c:214: undefined reference to `mcview_init' ./.libs/libinternal.al(mcviewer.lo)(.text+0x304):/home/miven/src/Managers/mc/git/mc-4.8.11-131225b/src/viewer/mcviewer.c:217: undefined reference to `mcview_toggle_hex_mode' ./.libs/libinternal.al(mcviewer.lo)(.text+0x324):/home/miven/src/Managers/mc/git/mc-4.8.11-131225b/src/viewer/mcviewer.c:219: undefined reference to `mcview_toggle_nroff_mode' ./.libs/libinternal.al(mcviewer.lo)(.text+0x344):/home/miven/src/Managers/mc/git/mc-4.8.11-131225b/src/viewer/mcviewer.c:221: undefined reference to `mcview_toggle_wrap_mode' ./.libs/libinternal.al(mcviewer.lo)(.text+0x364):/home/miven/src/Managers/mc/git/mc-4.8.11-131225b/src/viewer/mcviewer.c:223: undefined reference to `mcview_toggle_magic_mode' ... etc etc etc ... I've never seen this before and I haven't been able to track it down yet. Any ideas? -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
panel scrolling
I just post this here because it's a personal itch of mine. I have many programs that are essentially list managers. mc is one. xmms another. xmms I've abandoned for my own music player, but mc I keep using. It's so *effective* at getting shit done. That said, I have peeve that's been going on since 1983: One thing I despise is a list manager that, when you hit the down arrow, the cursor goes to the bottom of the window and *then* starts scrolling. This drives me batty. I hate it. I cannot see what I'm going for. It's like driving forward with a tarp over your windshield. mc does that silly jump scroll thing which is better, but still sucks. I have patch, I call panel_scroll_center, where the cursor *tends* to stay in the center of the panel. If you scroll down, when the cursor hits the middle of the panel, the panel starts scrolling. Only when the list runs out does the cursor scroll to the bottom. Vice versa for up-scroll. It's not a fancy patch, it's just a math issue in panels.c. This is the first thing I always patch new versions with. Always. Try it, you'll like it. It also demonstrates how easy it is to add new option to mc these days. [code] --- src/setup.h~2013-11-29 10:27:07.0 -0800 +++ src/setup.h 2013-12-02 09:42:32.720215654 -0800 @@ -48,6 +48,7 @@ typedef struct gboolean navigate_with_arrows; /* If TRUE: lr arrows are used to chdir if the input line is empty */ gboolean scroll_pages; /* If TRUE, panel is scrolled by half the display when the cursor reaches the end or the beginning of the panel */ +gboolean scroll_center;/* If TRUE, scroll when the cursor hits the middle of the panel */ gboolean mouse_move_pages; /* Scroll page/item using mouse wheel */ gboolean filetype_mode; /* If TRUE then add per file type hilighting */ gboolean permission_mode; /* If TRUE, we use permission hilighting */ --- src/setup.c~2013-11-29 10:27:07.0 -0800 +++ src/setup.c 2013-12-02 09:44:08.287525675 -0800 @@ -142,6 +142,7 @@ panels_options_t panels_options = { .auto_save_setup = FALSE, .navigate_with_arrows = FALSE, .scroll_pages = TRUE, +.scroll_center = TRUE, .mouse_move_pages = TRUE, .filetype_mode = TRUE, .permission_mode = FALSE, @@ -399,6 +400,7 @@ static const struct { auto_save_setup_panels, panels_options.auto_save_setup }, { navigate_with_arrows, panels_options.navigate_with_arrows }, { panel_scroll_pages, panels_options.scroll_pages }, +{ panel_scroll_center, panels_options.scroll_center }, { mouse_move_pages, panels_options.mouse_move_pages }, { filetype_mode, panels_options.filetype_mode }, { permission_mode, panels_options.permission_mode }, --- src/filemanager/boxes.c~2013-11-29 10:27:07.0 -0800 +++ src/filemanager/boxes.c 2013-12-02 09:45:22.143627364 -0800 @@ -554,6 +554,7 @@ panel_options_box (void) QUICK_CHECKBOX (N_(Lynx-like motion), panels_options.navigate_with_arrows, NULL), QUICK_CHECKBOX (N_(Page scrolling), panels_options.scroll_pages, NULL), +QUICK_CHECKBOX (N_(Center scrolling), panels_options.scroll_center, NULL), QUICK_CHECKBOX (N_(Mouse page scrolling), panels_options.mouse_move_pages, NULL), QUICK_STOP_GROUPBOX, --- src/filemanager/panel.c~2013-11-29 10:27:07.0 -0800 +++ src/filemanager/panel.c 2013-12-02 09:47:46.553407483 -0800 @@ -2018,6 +2018,12 @@ move_down (WPanel * panel) if (panel-top_file panel-dir.len - ITEMS (panel)) panel-top_file = panel-dir.len - ITEMS (panel); paint_dir (panel); +} else if ( panels_options.scroll_center + (panel-selected - panel-top_file) (ITEMS (panel)/2) ) { + /* Scroll window when cursor is halfway down */ + panel-top_file++; + if (panel-top_file panel-dir.len - ITEMS (panel)) + panel-top_file = panel-dir.len - ITEMS (panel); } select_item (panel); } @@ -2039,6 +2045,11 @@ move_up (WPanel * panel) if (panel-top_file 0) panel-top_file = 0; paint_dir (panel); +} else if ( panels_options.scroll_center + panel-selected (panel-top_file + ITEMS (panel)/2)) { + /* Scroll window when cursor is halfway up */ +panel-top_file--; +if (panel-top_file 0) panel-top_file = 0; } select_item (panel); } [/code] Merry Christmas. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: Subject Lines
On Fri, 20 Dec 2013 04:00:03 -0800, mc-requ...@gnome.org wrote: Message: 1 Date: Thu, 19 Dec 2013 08:11:18 -0600 From: /dev/rob0 r...@gmx.co.uk To: mc@gnome.org Subject: Re: mc Digest, Vol 116, Issue 5 Message-ID: 20131219141118.gf16...@harrier.slackbuilds.org Content-Type: text/plain; charset=us-ascii Mike, when replying to the mailing list, please change the Subject to something relevant, generally to the one set by the original poster. Yes, my oversight. I've modified my subscription options. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: mc Digest, Vol 116, Issue 6
On Thu, 19 Dec 2013 04:00:03 -0800, mc-requ...@gnome.org wrote: Message: 1 Date: Thu, 19 Dec 2013 00:02:38 +0100 From: Konrad Vrba konrad.v...@gmail.com To: mc@gnome.org Subject: disk usage status in right bottom corner Message-ID: CAF2Nc0zH_Ew_tbEm44ZS9mJiUiqL0A=iyev1maj6krttyqu...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 hello, I would like to ask whether it is possible to change the disk status/usage information, which is displayed in the botom right corner in midnight commander (sorry if I am not using the correct terminology). The information displayed in my MC is free/total free% I would prefer to have % of used space, rather than % of free space. It might seem trivial, but I canot get used to the idea and it still confuses me. It seems to me logical to see what *is*on my disk, rather than what *is not*. Is there some way to adjust this, so that I can for example see just the %usage ? thanks, Konrad You know, that confused me too. It shows free space instead of used space. df shows size used avail and use%, but mc shows avail/size (free%). Once again, src/filemanager/panels.c being hacked, around line : [code] static void show_free_space (WPanel * panel) { /* Used to figure out how many free space we have */ static struct my_statfs myfs_stats; /* Old current working directory for displaying free space */ static char *old_cwd = NULL; /* Don't try to stat non-local fs */ if (!vfs_file_is_local (panel-cwd_vpath) || !free_space) return; if (old_cwd == NULL || strcmp (old_cwd, vfs_path_as_str (panel-cwd_vpath)) != 0) { char rpath[PATH_MAX]; init_my_statfs (); g_free (old_cwd); old_cwd = g_strdup (vfs_path_as_str (panel-cwd_vpath)); if (mc_realpath (old_cwd, rpath) == NULL) return; my_statfs (myfs_stats, rpath); } if (myfs_stats.avail != 0 || myfs_stats.total != 0) { Widget *w = WIDGET (panel); char buffer1[6], buffer2[6], tmp[BUF_SMALL]; size_trunc_len (buffer1, sizeof (buffer1) - 1, myfs_stats.avail, 1, panels_options.kilobyte_si); size_trunc_len (buffer2, sizeof (buffer2) - 1, myfs_stats.total, 1, panels_options.kilobyte_si); g_snprintf (tmp, sizeof (tmp), %s/%s (%d%%) , buffer1, buffer2, myfs_stats.total == 0 ? 0 : (int) (100 * (long double) myfs_stats.avail / myfs_stats.total)); widget_move (w, w-lines - 1, w-cols - 2 - (int) strlen (tmp)); tty_setcolor (NORMAL_COLOR); tty_print_string (tmp); } } [/code] First, I'd rename the func to panel_show_disk_usage(). Then a bool whether to show free space or used space. Then mod those size_trunc_len()s on the bool. But, in the meantime, for a quick and usable hack, I'd just change that last bit to: [code] if (myfs_stats.avail != 0 || myfs_stats.total != 0) { Widget *w = WIDGET (panel); char buffer1[6], buffer2[6], tmp[BUF_SMALL]; uintmax_t used = myfs_stats.total - myfs_stats.avail; //size_trunc_len (buffer1, sizeof (buffer1) - 1, myfs_stats.avail, 1, //panels_options.kilobyte_si); size_trunc_len (buffer1, sizeof (buffer1) - 1, used, 1, panels_options.kilobyte_si); size_trunc_len (buffer2, sizeof (buffer2) - 1, myfs_stats.total, 1, panels_options.kilobyte_si); //g_snprintf (tmp, sizeof (tmp), %s/%s (%d%%) , buffer1, buffer2, //myfs_stats.total == 0 ? 0 : //(int) (100 * (long double) myfs_stats.avail / myfs_stats.total)); g_snprintf (tmp, sizeof (tmp), Used %s/%s (%d%%) , buffer1, buffer2, myfs_stats.total == 0 ? 0 : (int) (100 * (long double) used / myfs_stats.total)); widget_move (w, w-lines - 1, w-cols - 2 - (int) strlen (tmp)); tty_setcolor (NORMAL_COLOR); tty_print_string (tmp); } [/code] Works for me. I think I'll clean it up and keep it. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: mc Digest, Vol 116, Issue 5
On Tue, 17 Dec 2013 04:00:03 -0800, mc-requ...@gnome.org wrote: Message: 1 Date: Mon, 16 Dec 2013 14:05:48 + From: James Wonnacott ja...@tregillis.eclipse.co.uk To: mc@gnome.org Subject: Changed behaviour of clicking at the top. Message-ID: 52af08bc.5020...@tregillis.eclipse.co.uk Content-Type: text/plain; charset=ISO-8859-1; format=flowed Dear All, Sorry to raise this again but it's driving me nuts and I only got one reply last time which didn't help. ### #Warning! if you don't think a mouse is an appropriate# #input device to use on mc please don't read any more.# #I use a mouse a lot in mc and I like it! # ### I've been using mc for many years and I love it- thanks! I've recently installed version 4.8.3 on a few Debian servers I've built and found that I can no longer click at the top of a panel to move up- it now reverses the sort order instead. Now, I really would like to get the old behaviour back- is this possible? please! Thanks, James. It's true. I don't use the mouse much, tend to be a keyboard hotkey kind of guy. But your question got me playing with mc mouse. The mouse support seems to be highly improved over the last time (years ago) that I fiddled with mouse support. If you want to change it, the relevant code is in src/filemanager/panel.c, around line 3645: [code] /* sort on clicked column; don't handle wheel events */ if (mouse_down (local.buttons (GPM_B_UP | GPM_B_DOWN)) == 0 local.y == 2) { mouse_sort_col (panel, local.x); goto finish; } /* Mouse wheel events */ if (mouse_down (local.buttons GPM_B_UP) != 0) { if (is_active) { if (panels_options.mouse_move_pages (panel-top_file 0)) prev_page (panel); else/* We are in first page */ move_up (panel); } goto finish; } [/code] Frankly, I like the sort/reverse sort feature. I didn't even know I could do that. Very handy. Thank you for drawing it to my attention. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
Re: directory in wrong panel (Michael Panteleit)
On Sun, 24 Nov 2013 04:00:04 -0800, mc-requ...@gnome.org wrote: Message: 1 Date: Sat, 23 Nov 2013 13:27:48 +0100 From: Michael Panteleit pante...@web.de To: mc@gnome.org Subject: Re: directory in wrong panel Message-ID: 87bo1be20r@derry.pan Content-Type: text/plain I found, if I revert this patch diff --git a/src/setup.c b/src/setup.c index 1e5e8c6..dcbf929 100644 --- a/src/setup.c +++ b/src/setup.c @@ -984,13 +989,13 @@ load_setup (void) if (startup_left_mode != view_listing startup_right_mode != view_listing) startup_left_mode = view_listing; -if (mc_run_param1 == NULL) { vfs_path_t *vpath; + buffer = mc_config_get_string (mc_panels_config, Dirs, other_dir, .); vpath = vfs_path_from_str (buffer); if (vfs_file_is_local (vpath)) -mc_run_param1 = buffer; +saved_other_dir = buffer; else g_free (buffer); vfs_path_free (vpath); the old behaviour is back. I like this much better (btw I am using mc 4.8.10) Is there a reason the old behaviour was changed? Bye, Michael I posted about this a little while ago too. Somehow it got goofed up for 4.8.10, but it's fixed in the git repo. Check midnight.c:576, create_panels(). -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
mc startup with single specified path
Hello. I'm having some puzzlement over the initial startup behavior of mc-4.8.10 when paths are specified on the command line. To quote the manual: [quote] If both paths are specified, the first path name is the directory to show in the left panel; the second path name is the directory to be shown in the right panel. If one path is specified, the path name is the directory to show in the active panel; current directory is shown in the passive panel. If no paths are specified, current directory is shown in the active panel; value of other_dir from panels.ini is the directory to be shown in the passive panel. [/quote] Paragraph #1: This seems correct and intuitive. Paragraph #2: What I *expect* to happen when I specify only one path on the command line, is for that directory to appear in the left panel with the focus on it. As it works right now, it appears to be random which panel it shows up in, and which panel has focus. I know that it depends on the last time I hit Save Setup and the setting of current_is_left in panels.ini, but it always seems to do the wrong thing. As a matter of fact, the behavior I'm witnessing, is that that specified directory appears in the *inactive* panel, and the CWD appears in the *active* panel. I think that is counter-intuitive, a bit annoying, and exactly *not* what the manual says. Paragraph #3: This also seems correct and intuitive. Resort to default behavior if nothing is specified. --- I believe the issue is in midnight.c, static void create_panels(), around lines 619-624 and 646-651, both bits are identical, and they shouldn't be: [code] else/* mc_run_param0 != NULL mc_run_param1 == NULL */ { /* one argument */ current_dir = NULL; /* assume current dir */ other_dir = (char *) mc_run_param0; } [/code] Is it just me, or does this seem *exactly* backwards? I've changed these bits like this (the 1st is when the left panel is active): [code] --- midnight.c~ 2013-08-02 11:02:40.0 -0700 +++ midnight.c 2013-10-16 13:59:48.541659334 -0700 @@ -619,8 +619,8 @@ create_panels (void) else/* mc_run_param0 != NULL mc_run_param1 == NULL */ { /* one argument */ -current_dir = NULL; /* assume current dir */ -other_dir = (char *) mc_run_param0; /* Wrong. */ +current_dir = (char *) mc_run_param0; /* Left panel gets the path */ +other_dir = NULL; /* assume other dir */ } } else @@ -648,6 +648,7 @@ create_panels (void) /* one argument */ current_dir = NULL; /* assume current dir */ ; other_dir = (char *) mc_run_param0; /* Left panel gets the path */ +boot_current_is_left = TRUE; /* make left panel active (user called it, there must be a reason.) */ } } [/code] and it now behaves the way I would expect. After doing a bit more research, it looks as if create_panels() was freshly re-written for 4.8.10. In 4.8.9 I see this bit: [code] if (mc_run_param0 != NULL) { current_dir = NULL; other_dir = (char *) mc_run_param0; } else { current_dir = NULL; other_dir = mc_run_param1; } [/code] Hmmm... Is it even possible to have mc_run_param1 *without* mc_run_param0? Also, what if both are set? No wonder it got re-written. -- Peace and Cheer ___ mc-devel mailing list https://mail.gnome.org/mailman/listinfo/mc-devel
Re: Suppress directory not empty message
On Mon, 09 Sep 2013 05:00:03 -0700, mc-requ...@gnome.org wrote: Message: 1 Date: Wed, 4 Sep 2013 17:32:33 +0200 From: Marco li...@homerow.info To: mc@gnome.org Subject: Re: Suppress directory not empty message Message-ID: 20130904153233.GC27101@homerow Content-Type: text/plain; charset=utf-8 On 2013?08?05 Marco wrote: When deleting a directory tree mc displays the following message: Delete directory directory? [Yes] [No] I hit ?Yes?, then another message pops up: Directory not empty. Delete it recursively? [Yes] [No] [All] [None] [Abort] I hit ?All? since I want to delete the entire tree. This is very cumbersome. Is is possible to suppress both messages entirely or at least suppress the second message? Is it possible to suppress the deletion window displaying the deleted files list with the [Skip] [Abort] buttons as well? Since the deletion/copy/move processes often take several minutes, mc becomes totally unusable until those operations are finished. The only way to continue working is to open up a second mc instance. I couldn't find anything relevant in the manual. So apparently there is no way of suppressing those messages? Marco I can think of 2 options: 1. Write a special dialog where the user can choose which dialogs get shown, and which don't. I believe there is more to this than meets the eye. Easier said than done, as they say. Which dialogs should be optional, and what should they default to if they don't get shown? 2. Hack your source and comment out the offending dialog calls. I have done this myself with the Edit extension file dialog where it always asks [Local] [User] [System Wide]. The only one I ever edit is [User], so I made it skip the dialog and go for that one automatically. Hey, that's what having the source code means to me:) I, for one, very much appreciate the second 'Directory not empty' dialog, because my usual habits are to go through work directories once in a while on garbage cleanup duty. Accidentally removing a sprawling subtree seems to me far worse than having to hit ENTER one more time. As an addendum, after a quick peek at the source, in filemanager/file.c, you could just add a line 672: ctx-recursive_result = RECURSIVE_ALWAYS; cd ../..; make; make install It will never pester you again. And from the look of things, someone has already done this before, otherwise line 673 wouldn't even ask. So there is likely others who make this one of their favorite first hacks when they get new code. As a matter of fact, if (ctx-recursive_result RECURSIVE_ALWAYS) { ... show dialog ... } goes back to at least 4.6 in 2005. I don't have any mc source code left from before that date. -- Peace and Cheer ___ mc mailing list https://mail.gnome.org/mailman/listinfo/mc
mc troubles
Hi there. I don't know, is it a bug, but.. MC doesn't highlight file names by its permission attributes. My mc INI file is in attachement, my ENV output: TERM=xterm SHELL=/bin/bash XDG_SESSION_COOKIE=202857b8090864ecbea526cb4b14e7a3-1274562775.459918-1136261384 USER=root LS_COLORS=rs=0:di=01;34:ln=01;36:hl=44;37:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36: MC_TMPDIR=/tmp/mc-root PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin MAIL=/var/mail/root PWD=/etc/proftpd LANG=ru_RU.UTF-8 HISTCONTROL=ignorespace SPEECHD_PORT=6560 HOME=/root SHLVL=2 MC_SID=8675 LOGNAME=root LESSOPEN=| /usr/bin/lesspipe %s LESSCLOSE=/usr/bin/lesspipe %s %s OLDPWD=/root/.mc _=/usr/bin/env ___ mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: syntax switching
Hello, Oswald! OB apropos syntax highlighting ... i just used the asm syntax and noticed OB that section names are colored light blue ... well ... this color OB really should not be used for anything but whitespace - i had a tough OB time reading it. it certainly depends on the monitor settings, but mine OB are not that extraordinary. heh, that was my syntax file for asm. I did it because mc does not had that syntax before at all. So I think colours can be changed, but they are suitable for me (and my monitor color temperature setup). I'm really using this asm syntax very often :) But as for me C/C++ comments are have really ugly color :) With best regards, Mike V. Gorchak. E-mail: [EMAIL PROTECTED] ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: New Maintainer for MC Project
Fudoki Wilkinson ! Hey, buddy, calmdown and move your ass away from this list, don't botherMC developers. With all your postings here Ican see that your behavior like a hysteric woman, which do not want to hear that ppl talking to her. Iloathe toppl which can't understand that others says to him. You got an answer - NO, so shut up and silently run away, if you still have remains of your self-respect of course ... ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: New syntax highlight files, please add it to the distro
Hello, Oswald! OB oh, sure it works. with my variable ah in gas being highlighted, etc. OB just as useful as new and class, etc. all over my c sources. That's bad style :) Write hundred times Do not name variables as registers names. The same as in linux 2.4.x kernels was numerous variables 'new', 'list', etc which has been highlighted, but ... these headers failed to be compiled when was included in the c++ application, because of reserved names. So it's another side of bad style. With best regards, Mike V. Gorchak. E-mail: [EMAIL PROTECTED] ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
little bug in option.c
I was playing with option.c and ran across this tiny bug. If you change PANEL_OPTIONS the dialog doesn't display properly anymore. Atached is the diff to make it work and be consistent with the way OTHER_OPTIONS is handled also. --- mc-cvs-4.6.0-030207/src/option.cSat Dec 7 20:16:30 2002 +++ mc-draft-4.6.0-030207/src/option.c Sun Feb 9 11:16:02 2003 @@ -229,7 +230,7 @@ /* Add checkboxes for panel options */ for (i = 0; i PANEL_OPTIONS; i++) { check_options[i + OTHER_OPTIONS].widget = - check_new (PY + (6 - i), PX + 2, XTRACT (i + OTHER_OPTIONS)); + check_new (PY + (PANEL_OPTIONS - i), PX + 2, XTRACT (i + OTHER_OPTIONS)); add_widget (conf_dlg, check_options[i + OTHER_OPTIONS].widget); } }
mouse behavior discussion
Hello. I wonder amongst mc-users, what should the mousewheel do in the panels? Right now, for me, it scrolls by a page every time, and moves the selected along with it. This behavior I do not like, and is always the first patch I apply to fresh cvs. I have two questions: 1. Should mousewheel scroll_by_pages or scroll_by_line? (IMHO that's what that artifact panel_scroll_pages was originally for, although I don't know for sure.) 2. Behavior of panel-selected: In editor the traditional way is to have cursor follow mousewheel to avoid typing in wrong area of file after scrolling with mouse, but in a file listing (in all other file managers I've used), it stays in place while only the listing scrolls. The adjustments are simple, but I'm not sure if others like what it does now, and if so, why. Maybe nobody uses mousewheel? They are so common where I live I throw 2 button mice in garbage :) Please reply to mailing list to help discussion on this matter. Cheers and thank you in advance. ___ Mc-devel mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/mc-devel
pre2a Xevent problem?
Oh boy, there's something really wrong here. I just compiled the freshest cvs AS IS, the configure options seemed appropriate to my uses. It works fine from the console, but in a gnome-terminal (mandrake8.2) it seems to buffer Xevents (keyboard and mouse) and then spew them out after about three have happened. I haven't yet had a chance to inspect the problem much closer. Does anyone know where this is coming from? I'm sorry I don't have the time to figure this one out for myself at this point. The closest I can get is that I used to use both --with-x and --with-tm-x-support. Perhaps it has to do with the changes to the default configuration? Cheers. ___ Mc-devel mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/mc-devel
Panel_Mousewheel_Scroll.patch
Trivial Patch #10262: This patch scrolls one line at at time instead of one page at a time when spinning the mousewheel. Does anyone like it or find it useful? --- mc-cvs-4.6.0-pre1b-021217/src/screen.c Sun Dec 15 22:42:17 2002 +++ mc-draft-4.6.0-pre1b-021217/src/screen.cTue Dec 17 12:31:22 2002 @@ -2261,11 +2261,22 @@ panel_event (Gpm_Event *event, WPanel *p /* Mouse wheel events */ if ((event-buttons GPM_B_UP) (event-type GPM_DOWN)) { - prev_page (panel); + if ( panel_scroll_pages ) { + panel-top_file -= 1; + if (panel-top_file 0) panel-top_file = 0; + paint_dir (panel); +} return MOU_NORMAL; } if ((event-buttons GPM_B_DOWN) (event-type GPM_DOWN)) { - next_page (panel); + if ( panel-count ITEMS (panel) panel_scroll_pages ){ + panel-top_file += 1; + if (panel-top_file panel-count - ITEMS (panel)) + panel-top_file = panel-count - ITEMS (panel); + paint_dir (panel); +} return MOU_NORMAL; }