rickyrockrat / parcellite

GNU General Public License v3.0
224 stars 29 forks source link

Configurable shortcuts to edit history entry and clear history (currently hardcoded Alt-E and Alt-C) #44

Closed felagund closed 2 years ago

felagund commented 4 years ago

I have history setup to appear on pressing Alt+Ctrl+C. Sometimes I misrelease it and invoke the action to clear the history list by accident by pressing Alt+C inadvertently. I never need to use the clear history action. Is it possible to change the shortcut for it? I never need that action. I tried looking into the config file but it is not there. Would this be hard to implement?

rickyrockrat commented 4 years ago

Does the 'Confirm Before Clearing History' not work for you? Is it checked? If not, check it and see if that mitigates the issue.

felagund commented 4 years ago

It is checked and it does appear. But I do not want to ever see that, I never want to clear the history.

However, due to my setup (Compiz on Ubuntu 18.04 with three external monitors), windows sometimes behave funny. What actually happens is that the dialog appears but often I click by mistake first somewhere else but on the dialog. In that case, the dialog stays and cannot be closed, so I have to kill it via xkill and restart Parcellite. I do not think this is actually a Parcellite's issue, but it is annoying and changing the shortcut to clear the dialog would make it go away (actually, I would love to disable it completely - that action should probably be also available via right click menu).

felagund commented 4 years ago

I made a video of the behaviour, here is a gif version: out

and here is a version with sound: https://drive.google.com/file/d/161ctYklbdqxHOMWt8kIMonao7GG93Hgw/view?usp=drivesdk

rickyrockrat commented 3 years ago

OK, so disabling clear history is now an option. Check out commit 364899b, build, and let me know if it fixed it for you.

felagund commented 3 years ago

Thanks. However, when I try to build it, it fails and the build instructions here seem to be old. When I run autogen, it says:

Adding an entry to m4/ChangeLog (backup is in m4/ChangeLog~)

Please create po/Makevars from the template in po/Makevars.template.
You can then remove po/Makevars.template.

Please run 'aclocal -I m4' to regenerate the aclocal.m4 file.
You need aclocal from GNU automake 1.9 (or newer) to do this.
Then run 'autoconf' to regenerate the configure file.

You will also need config.guess and config.sub, which you can get from the CVS
of the 'config' project at http://savannah.gnu.org/. The commands to fetch them
are
$ wget 'http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess'
$ wget 'http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub'

You might also want to copy the convenience header file gettext.h
from the /usr/share/gettext directory into your package.
It is a wrapper around <libintl.h> that implements the configure --disable-nls
option.

Press Return to acknowledge the previous four paragraphs.

Making aclocal.m4 writable ...
intltoolize...
aclocal...
autoheader...
automake...
configure.ac:7: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated.  For more info, see:
configure.ac:7: http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation
configure.ac:23: installing './compile'
configure.ac:29: installing './config.guess'
configure.ac:29: installing './config.sub'
src/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/Makefile.am:1: warning: 'CFLAGS' is a user variable, you should not override it;
src/Makefile.am:1: use 'AM_CFLAGS' instead
autoconf...
configure.ac:7: error: possibly undefined macro: AC_PACKAGE_TARNAME
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
configure.ac:7: error: possibly undefined macro: AC_PACKAGE_VERSION
now run configure

And configure then fails with:

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/home/drew/Zdroje_a_programy/Sources/parcellite-master/missing: Unknown `--is-lightweight' option
Try `/home/drew/Zdroje_a_programy/Sources/parcellite-master/missing --help' for more information
configure: WARNING: 'missing' script is too old or missing
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
./configure: line 2847: syntax error near unexpected token `('
./configure: line 2847: ` PACKAGE=AC_PACKAGE_TARNAME()'

I run apt build-dep parcellite before, so I should have the dependencies. I am on Ubuntu 18.04. Any ideas? Kind of sounds like https://github.com/rickyrockrat/parcellite/issues/40

felagund commented 3 years ago

That was on Ubuntu 18.04, on 20.10, the result is the same. I think I have all the dependencies (I used apt build-dep parcellite for that. Not sure what I am doing wrong.

rickyrockrat commented 3 years ago

I think the issue is that my automake infrastructure needs to be updated.

felagund commented 2 years ago

With the builds not working, so I tested it. There are two (minor issues):

1) In the preferences, it should be capitalized (It is "disable" and should be "Disable"). 2) When checked, ", Alt-C to clear" in the following screenshot should not be displayed Screenshot from 2021-11-01 13-46-53:

But otherwise it solves my main issue so thanks a lot for it!

rickyrockrat commented 2 years ago

That should be fixed in the latest commit. I also added Makefile.simple in src to just build the binary. I will follow with more dumb makefiles as a stopgap to the ancient Autotools thing....And I might just leave them this way because there are so many projects that 'just work' with a simple Makefile. You are welcome.