What is the command to close a window?
Solution 1
wmctrl -c <win>
wmctrl - interact with a EWMH/NetWM compatible X Window Manager. -c <WIN> Close the window <WIN> gracefully.
(from man wmctrl
. But note: I use XFCE so haven't tested this on Unity as found in default Ubuntu 16.04, and I wouldn't expect it to work if using Wayland on 17.10 upwards)
Solution 2
the other work around i found along with @FinleyGibson answer is
open dconf-editor (if dconf-editor is not installed, install with below command
sudo apt install dconf-editor
)
search key word "close"
then edit the custom value to ['<Alt>F4', '<Alt>4']
Solution 3
Had you try to use CTRL+Q
I was use to press these keys to close windows, never added a keyboard shortcut, seems to be the default at least in the distros I used(always debian based)
but I see the point of your question
Solution 4
I found a good solution to my problem, though it does not exactly answer the question I originally asked, I'm posting it here as a workaround for anyone that encounters a similar issue.
The solution I found was to use xdotool
to execute the alt+f4
shortcut as a command, and to set this as the command for alt+4
. To do this first isntall xdotool
if you don't have it already:
sudo apt-get install xdotool
Then go to keyboard shortcuts in the settings menu, and add a custom shortcut. In the command
field enter:
xdotool key Alt+F4
And set the shortcut to Alt+4.
This works well, but I'm leaving the question as is, in case someone has a more elegant solution, using the exact command called by the close window
shortcut by default.
Solution 5
Same problem was solved after 5 minute search: You can use
$ sh -c "xkill -id $(xprop -root -notype | sed -n '/^_NET_ACTIVE_WINDOW/ s/^.*# *\|\,.*$//g p')"
It kills current active window. I bind this to "Super+q".
Related videos on Youtube
FinleyGibson
PhD student in Machine Learning, specialising in Neural Networks. Predominantly in Python, C++ and Tensorflow.
Updated on September 18, 2022Comments
-
FinleyGibson over 1 year
I want to set a keyboard shortcut to close the current window in Ubuntu 16.04. I am aware that
alt+f4
already does this and that I can redefine this shortcut if I want to, but what I really want is to add an additional shortcut to perform the same function.The reason being; I have a keyboard without designated function keys (a 60%). Instead the function keys are activated via a keyboard shortcut that toggles the row of number keys between number and function keys (for example
4
tof4
and vice versa).I am deep in the habit of quickly closing windows using
alt+f4
and want it to work regardless of whether I am in function key or number key mode, but can't seem to find what I should enter in the command field when setting a new keyboard shortcut.I have found a good workaround to my particular problem and posted it in the answers below. Still open to more elegant solutions.
Edit: To clarify, the machine is running X11.
-
FinleyGibson over 5 yearsI am using X11, and having installed wmctrl, and applied your suggestion, it does work sort of. But The command does more than close the active window. Entering
wmctrl -c WIN
in terminal does close the current window, but it also seems to perform some kind of refresh of X11: the screen blinks and all open windows are moved to workspace 1. Is there something I am doing wrong here? Or is there another way to specify the exact functionality ofalt+f4
? -
guiverc over 5 yearsthe <win> should be replaced by the window you want to close. I've only used it in shell scripts, and have known what workspaces (i usually use it to effect workspaces more than windows) I want to add/delete/switch-to. It takes some play to get to understand it, and I'd have your shortcut run a shell.script that closed the window (not sure how you'd work out current window, it's a case I never considered in using
wmctrl
as its not how I use it as the windows I've closed are ones I've opened with my scripts) -
FinleyGibson over 5 yearsNice Idea, but
ctrl +Q
does nothing for me. -
guiverc over 5 yearsFor example, I have a folder with photos open (in
thunar
as I'm using XFCE currently), and select one to view so open it. It opens ingpicview
(my preferred viewer for that type of file). To close the window I can ctrl+alt+T to open a terminal and enter the commandwmctrl -c P1000403.JPG
(the P1000403.JPG being the name of the picture I was viewing in this example). On pressing enter thegpicview
window containing my photo closes. <win> was replaced by the 'title' of my 'window' in this example. The '<>' characters were copied from theman
page representing values you change. -
FinleyGibson over 5 yearsI see what you are saying. In order to implement what I want in this way, I would then need a means of getting the name of the currently active window. But I can't seem to find a way.
-
guiverc over 5 yearsIt's after midnight my local time, what you've got is the best I can provide from my tired-brain given I want to go to bed (and don't want to find my scripts to look for clues). the moment I've found the photo I want, it's being posted & I'm off to bed
-
FinleyGibson over 5 yearsThanks, man. I really appreciate your efforts. I found a good workaround working off your suggestions and posted it below for others. Sleep well, and consider the matter closed.
-
JoKeR over 5 yearsDid you try
xkill
? I'd say it is more advanced for me and kills just about anything :D you can launch it either from terminal or creating a shortcut. -
FinleyGibson over 5 yearsI did look into that. The problem with
xkill
is that it kills the whole process tree. So if you have 2 terminal windows open, both will be closed. This is not the functionality ofalt+F4
and is not quite what I was looking for. -
FinleyGibson over 5 yearsThat looks like a good workaround. Not going accept it as the answer since there could still be a way to get the original command, but it does look like a tidy solution and I will use it in the future.
-
Joe over 5 years
xdotool
is a good solution for this issue. If you ever need to do something a bit more involved, take a look atAutoKey
. It allows you to setup hotkeys and trigger phrases which can do anything from a simple text insertion to running an arbitrarily complex Python script which can use the keyboard and mouse for you to perform multiple actions. -
FinleyGibson almost 4 yearsThis does something similar to
alt
+f4
, but not quite the same. Killing the process, will close all windows for that application, not the single window selected. Try opening multiple web browsers and closing one with this solution, you will see it closes all.