19

I am very impressed by the new Unity GUI--it's a bold move.

However, there is one glaring oversight, from the point of view of someone who uses Ubuntu for professional programming work. I frequently want to have more than a dozen emacs windows open as I'm writing code.

In classic Ubuntu, I could easily choose which one I want from the name of the file in the bottom task bar, but this does not seem to have an equivalent in Unity. When I have so many open, it's difficult to find which window I want. For this, even the 10.10 Unity was better because I could AltTab through and see their names; no more in 11.04. It would be great if the new task bar had one emacs box (for example) covering all instances of emacs windows open. Right click on the box and have the option to see a list of the names of all open instances.

Presently, the usefulness of right clicking on these taskbar boxes seems very limited anyways. I think a simple change of this nature would greatly improve Unity's utility.

I already use multiple workspaces (6) and often have something like a terminal window and many emacs windows per workspace, and I'm already using keyboard shortcuts. So far, none of these get at the heart of the problem, I don't think an 'open file list' is a tall order.

Super+W does the exact opposite of what I'm suggesting. There are already too many windows open on a single workspace to easily find the one I'm looking for - viewing all windows on all workspaces just clutters the view even more.

Shift+Alt+↑ does not help. If I have a dozen emacs windows open on a single workspace, doing this shows all the open windows on the workspace all at once, but spaces them out and shrinks them down to little icons. How am I supposed to figure out at first glance which one I want? They are indistinguishable.

Zanna
  • 70,465
  • 5
    If you perceive this as a problem, please file this as a bug against Unity by running ubuntu-bug unity. If you have an idea of how to solve this problem, please put the idea on Ubuntu Brainstorm. – dv3500ea Apr 28 '11 at 22:32
  • 2
    Isn't the emacs buffer manager superior to any generic window manager? I'd imagine that if you used a single emacs instance, you could search by file name, view a list of files, and split the window to display multiple files at once. You probably have your reasons (one emacs per project?), but I'd suggest you try a pure emacs solution. (You can probably make an emacs alias to open new files in the same emacs instance.) – idbrii May 01 '11 at 19:59

9 Answers9

14

I'd suggest Alex Launi's answer, but with one tweak: enable Window Title Display.

  1. Open CompizConfig Settings Manager
  2. Enable module called Text
  3. Find module called Scale Addons
  4. Switch to tab Appearance
  5. Open the Window Title drop-down
  6. Switch Window title display parameter to All windows. You might want to increase font size also.

After this tweak the double-click on the launcher icon should suit your needs.

Shnatsel
  • 1,188
  • 1
    Don't forget to also enable the "Text" plugin. – ændrük May 10 '11 at 23:15
  • 1
    This is not an answer, but a precaution - the answer here may cause problems in recent Ubuntu versions (at least on 14.04 LTS). In my case I have lost the title bar and dash and ability to switch between apps. When I tried to fix this it got even worse - I lost ability to type within my session. However the Guest session worked fine. If anyone happens to break Unity by using CompizConfig - the solution below worked for me (delete .config/dconf/user folder). http://askubuntu.com/a/39669/378102 –  Feb 12 '15 at 13:16
7

I've found a great plugin from compiz-plugins-extra, which is the Scale Window Title Filter.

  • After enabling it, first you press Super+W which brings all candidate windows (I've tuned to showing only windows in current workspace).

  • Then just TYPE the keyword of the window you are looking for and confirm with Enter to go for it!

If you know exactly what you want, this is faster than any keyboard+mouse-selecting-and-confirming combination. In the best case, you can get exactly just the one result you expect.

Woo-hoo, searching rocks!! :)

con-f-use
  • 18,813
James Fu
  • 171
  • on further trial, I agree to the top post: using classical gnome-panel to list all the window buttons is still the most efficient way, which allows you find the desired window just by glancing and clicking once. – James Fu Aug 25 '11 at 02:03
6

First install compiz-plugins-extra Install compiz-plugins-extra.

Then enable the scale mode addons in compiz using the Compiz Config Settings Manager, then restart unity (run unity in the run dialogue (alt+f2)).

Now, when you have multiple windows open, you can type a part of the name of the window you want to narrow your search, while keeping the visual preview.

NB:

When I talk about searching, I'm referring to search from scale mode (which is what happens if you click on the icon of an application with multiple windows open, or hit super+W).

Zanna
  • 70,465
RolandiXor
  • 51,541
  • I don't have an option in Scale Addons for filtering. Do you need to enable another plugin? – idbrii May 03 '11 at 16:31
  • @pydave: no, just type... when in scale mode (after enabling that plugin). – RolandiXor May 03 '11 at 17:51
  • @pydave: Oh I didn't remember that it was in that package. – RolandiXor May 03 '11 at 19:56
  • Sorry, this doesn't work for me either because I'm logging into different computers remotely, then emacs'ing files. I don't think the Dash search works if the file doesn't actually reside on the computer I'm typing at. – Jason Nett May 10 '11 at 20:27
  • @JasonNett: this has nothing to do with the Dash Search. I'm referring to the scale mode. – RolandiXor May 10 '11 at 20:34
  • hm, I've followed these instructions, but typing in scale mode doesn't do anything...Also, I had the scale addons even before installing compiz-plugins-extra. – Christoph May 27 '11 at 11:48
  • @Christoph what version of Ubuntu/Compiz are you running? – RolandiXor May 27 '11 at 17:54
  • hm, can't check now - it's the work computer, but it's whatever is the up-to-date version in natty 32bit right now. no extra repos for unity/compiz. – Christoph May 27 '11 at 21:05
  • @Christoph see this: http://askubuntu.com/questions/37722/hard-to-find-one-window-among-many/39669#39669 – RolandiXor May 27 '11 at 21:07
  • yeah I did that, too. even upvoted it. just wanted to report that your answer didn't work for me. – Christoph May 28 '11 at 10:45
3

Clicking on the the launcher icon of the application whose windows you want to view a second time will initiate a spread mode, where you can see all of the open windows for that application, and pick the the one you want. This also works via the keyboard shortcut for that application.

Alex Launi
  • 1,922
  • No, that doesn't work when you have many windows open. The windows are very small in this case and I can't see their names, hence I can't easily determine which one I want in the first place. – Jason Nett Apr 28 '11 at 22:27
2

super/windows key + W works for me so far.

Zanna
  • 70,465
1

A dozen windows is a lot. I'm also a professional programmer, and I'm usually happy with three terminals (one with a split vim session).

Have you considered logically splitting your editors across multiple desktops? I have one desktop (number 4) dedicated to documentation, one dedicated to code/grepping/compiling (number 5), and one dedicated to testing (number 6). I have random access to each of them with hotkeys, which is faster than pointing and clicking or alt-tabbing.

Erigami
  • 4,476
  • Perhaps I should say that it feels faster to use hotkeys to get at each desktop. I know there are studies that disagree with me. – Erigami Apr 29 '11 at 01:52
0

I would agree that making full use of the four workspaces that are there by default helps a lot. You can move quickly between them using Ctrl+Alt+Arrow keys (you can also configure compiz to switch using the scroll-wheel of the mouse whenever the cursor is over the desktop). There are three ways to view open windows (two are already mentioned): to view all instances of a single program, click on the corresponding launcher icon. To view all open windows in the current workspace, you can use Shift+Alt+Up arrow. To view all open windows on all workspaces, Super+W does the trick.

0

Here's the makeshift solution I'm going with: start gnome-panel within Unity; right click and delete the top panel; configure the bottom panel however you like; add gnome-panel to the Startup Applications; then restart. The top panel should be permanently deleted (since it overlaps the Unity top panel) and the bottom panel can show the open file list for the workspace. Now the bottom panel can exist in Unity - I like to make it retractable like the launcher.

Zanna
  • 70,465
0

Instead of SUPER+W to expose all open application, you could try to hold SUPER, then you will see the little numbers in the launcher. When you hit the number of you application once you'll get to the most recent window. If you hit the number twice you'll get all (only) the windows of this application exposed. This helps for me because it reduces the amount of windows in the expose overview. But still: choosing the desired windows or document (imagine multiple Writer documents) is not as fast as it was with the taskbar.

Andre
  • 2,061