Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

commander: small improvement on listing and panel width #1394

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

icy
Copy link

@icy icy commented Dec 14, 2024

Motivation

When working with different directories that have some common files that have long full path names, it's hard to find the right file from the list. This is because the panel's width is 500 and the full path may not be shown completely within the panel as below

<-------- visible to  user --------> <----- invisible to users ------------------->

/-----------------------------------\
| /foo/bar/directory/with/very/long-|/path/name1/sample.txt
| Files -> Recent Files -> /foo/bar/|directory/with/very/long-/path1/name/sample.txt
| /foo/bar/directory/with/very/long-|/path/name2/sample.txt
| Files -> Recent Files -> /foo/bar/|directory/with/very/long-/path2/name/sample.txt
\-----------------------------------/

In this illustration, when looking up sample.txt, the user has no idea about the directory information (both path/name1 and path/name2 do matching)

The patches

  • The panel's width is one half of the width of the Geany window when this amount is greater than or equals to 250
  • Otherwise the panel's width defaults to the width of the Geany window
  • For labels, don't display full names; only display the parent directory's basename and the file name

The previous illustration now becomes

/-----------------------------------\
| name1/sample.txt                  |
| Files -> Recent Files -> /foo/bar/|directory/with/very/long-/path/name1/sample.txt
| name2/sample.txt                  |
| Files -> Recent Files -> /foo/bar/|directory/with/very/long-/path/name2/sample.txt
\-----------------------------------/

and this helps user to quickly find the right files.

Of course this doesn't solve all edge cases when there are a few more levels of duplication in full path names.

@eht16
Copy link
Member

eht16 commented Jan 4, 2025

Could you try to remove the unnecessary white space changes? This would make the diff easier to read and less noisy (I'm aware I can disable showing whitespace changes but they are still there).

Or we manage to convince @b4n to accept stripping trailing whitespace :).

@icy
Copy link
Author

icy commented Jan 4, 2025

Hi @eht16 ,

Thanks for your suggestion. I will update the patch with spaces removed.

@icy
Copy link
Author

icy commented Jan 5, 2025

Hi @eht16 ,

Thanks for your suggestion. I will update the patch with spaces removed.

I am using Geany to edit the file, and one of the plugin/functions of the editor has edited the spaces without my intention. I have tried to squash the commits and give another try today.

Update: I found the cause of my problem: geany/geany#3942 :D

When working  with different directories that have some common files
that have long full path names, it's hard to find the right file from
the list. This is because the panel's width is 500 and the full path may
not be shown completely within the panel as below

```
<-------- visible to  user --------> <----- invisible to users ------------------->

/-----------------------------------\
| /foo/bar/directory/with/very/long-|/path/name1/sample.txt
| Files -> Recent Files -> /foo/bar/|directory/with/very/long-/path1/name/sample.txt
| /foo/bar/directory/with/very/long-|/path/name2/sample.txt
| Files -> Recent Files -> /foo/bar/|directory/with/very/long-/path2/name/sample.txt
\-----------------------------------/

```

In this illustration, when  looking up  `sample.txt`, the user has no
idea about the directory  information (both `path/name1` and
`path/name2` do matching)

- [ ] The panel's width is  one half of the width of the Geany window
      when this amount is greater than or equals to 250
- [ ] Otherwise the panel's width defaults to the width of the Geany window
- [ ] For labels, don't display  full names; only display the parent
      directory's basename and the file name

The previous illustration now becomes

```
/-----------------------------------\
| name1/sample.txt                  |
| Files -> Recent Files -> /foo/bar/|directory/with/very/long-/path/name1/sample.txt
| name2/sample.txt                  |
| Files -> Recent Files -> /foo/bar/|directory/with/very/long-/path/name2/sample.txt
\-----------------------------------/
```

and this helps user to quickly find the right files.

Of course this doesn't solve all edge cases when there are a few more
levels of  duplication in full path names.
@icy
Copy link
Author

icy commented Jan 5, 2025

Could you try to remove the unnecessary white space changes? This would make the diff easier to read and less noisy (I'm aware I can disable showing whitespace changes but they are still there).

Or we manage to convince @b4n to accept stripping trailing whitespace :).

Hi @eht16,

I've updated my pull request and I think it's easier to review now. Please have a look when you've time.

Thank you very much.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants