When copying to directory with a name containing special symbol "*" the copy command didn't do it in a right way.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
At certain terminal widths (including the default 80), if the last byte
of a line begins a CJK character then the corresponding glyps is drawn
in the last column, so it's replaced by a replacement symbol.
The default layout should, at all possible terminal widths, have an
extra last character column that is empty normally, but allows room for
a CJK to overflow here.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
(mcview_handle_editkey): an is_printable() check was performed for every
byte of the UTF-8 which obviously doesn't make sense. This check
shouldn't be performed for 8-bit charsets either. If the given byte can
arrive as input, the file should be modified accordingly.
The TAB key shouldn't be accepted as literal, to allow moving back to
the hexview area.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
UTF-8 characters show up nicely in the right column (followed by a space
to align with the number of bytes).
However, as soon as you edit the file (either by the hex codes, or by
moving to the right column and entering an UTF-8 character), that
character doesn't show up there.
Expected: during editing the file, the right hand side should
continuously be updated to look exactly as if that was the original
contents of the file.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
When panel is set to 'Quick view' mode, some keys are handled by
mvciewer, and unhandled keys are passed to the command line. This is
very dangerous since user can easily type and execute a harmful command.
1st step:
* (mcview_callback): don't pass any keys from mcviewer in QuickView
mode to the command line.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Prepend value of system-wide PROMPT_COMMAND variable to the mc's one.
Thanks wjaguar for the idea and Serhiy Storchaka and Oswald Buddenhagen
for the patch itself.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Major rewrite of mcview's parts responsible for rendering and scrolling the contents:
* no more partial lines at the top and failure to scroll when Up or Down
is pressed;
* better handling of CJK characters;
* handle combining accents;
* improved nroff support;
* more conventional scrolling behavior at the end of the file.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
When clipboard_paste option was set but clipboard utility was not
installed, nothing was pasted and clipboard file became empty.
Solution: reimplement pasting way using mc_pipe_t instead of my_system().
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
mountlist: don't use libmount to decide on dummy/remote.
Don't use the libmount routines to determine whether a file system is
dummy or remote, as they're not currently compatible. For example the
remoteness is determined on file system type (for which the list seems
incomplete), rather than simply checking for a ':' in the device name.
Also libmount currently determines that 'tmpfs' is a dummy file system
even though it has associated storage.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
mountlist: use /proc/self/mountinfo when available
Use libmount to propagate device IDs provided by Linux in
/proc/self/mountinfo. This will give more accurate output when using df
in chroot'ed environments as the device IDs are not determined by stat()
which may be inaccurate within the chroot.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>