- cross-posted to:
- programmerhumor@lemmy.ml
- cross-posted to:
- programmerhumor@lemmy.ml
- MonkderZweite ( @MonkderZweite@feddit.ch ) 58•1 year ago
You’ve come from Windows and have brought dangerous expectations.
- Honytawk ( @Honytawk@lemmy.zip ) 6•1 year ago
Why would case sensitive path names be considered dangerous?
This is a feature, not a bug
- MerfMerf ( @MerfMerf@feddit.nu ) 36•1 year ago
echo ‘set completion-ignore-case On’ >> ~/.inputrc
- PupBiru ( @PupBiru@kbin.social ) 14•1 year ago
also idk does zsh do this automatically? don’t think i’ve ever had this problem except on legacy AF servers
i mean… unless you don’t tab complete, but then who doesn’t spam tab 30 times every keystroke?
- MerfMerf ( @MerfMerf@feddit.nu ) 2•1 year ago
Or up-arrow a bazillion time because you probably have it SOMEWHERE in the buffer, surely.
- jmcs ( @jmcs@discuss.tchncs.de ) 2•1 year ago
How does that handle languages that have different rules for capitalization? For example I and i are not the same letter in Turkish.
- MerfMerf ( @MerfMerf@feddit.nu ) 1•1 year ago
Don’t know actually, never used a language like that. But should be easy enough to undo should one test it and end up not liking how it handles it.
- kattfisk ( @kattfisk@lemmy.dbzer0.com ) 1•1 year ago
I believe that type of stuff is specified in your locale, so it’s possible that it would do the right thing if you’ve set your language to Turkish. Please try it and let us know though :)
- UFO ( @UFODivebomb@programming.dev ) 1•1 year ago
Shit yo. How come I only learn this now? Thanks!
- Feyter ( @Feyter@programming.dev ) 26•1 year ago
I don’t get it… “D” is a complete different character than “d” is.
It’s like wondering why “file1” is not opened when I typed in “file2”.
- Swedneck ( @Swedneck@discuss.tchncs.de ) 17•1 year ago
that’s not how language works though, in human language (i know this can be confusing) d and D are the same letter just in different forms.
It’s one thing to have case sensitivity in programs doing data manipulation, that makes sense because you don’t want the program to accidentally use the wrong files without supervision.
But when you have an interactive prompt you know what you’re doing, you can see if you entered the wrong directory, and you’re generally going to be working in directories that you have yourself organized.
- 4am ( @4am@lemm.ee ) 5•1 year ago
Doesn’t tab completion solve this if there are no alternatives with matching case? sounds like a PBKAC
- lemmonade ( @lemmonade@lemm.ee ) 9•1 year ago
You could also say that
down
should not complete todownload
since those are completely different strings and you shouldn’t expect one to get you the other.- Feyter ( @Feyter@programming.dev ) 7•1 year ago
Sorry,
down
is a substring ofdownload
I don’t get your point either?- Honytawk ( @Honytawk@lemmy.zip ) 6•1 year ago
Substring is not string.
If they were interchangeable, then “D” & “d” should be too.
- Feyter ( @Feyter@programming.dev ) 2•1 year ago
down
matchesdown*
because*
also includes empty string. Alsodownload
matchesdown*
D
matchesD*
butd
is not matchingD*
becauseD
is a different character thand
.- lemmonade ( @lemmonade@lemm.ee ) 1•1 year ago
but why do we have to match specifically against
substr*
? it’s not a law of nature, we could also match against the regex(?i)substr(?-i).*
not saying that one option is necessarily better, but I don’t see a good reason for which any one of these options would be terrible
- Feyter ( @Feyter@programming.dev ) 1•1 year ago
Because usability. If you have the files
down
down1
down2
downxyz
anddownload
and the user only knows that it was “something with down” it’s best to show the user everything matching “down*” and let the user decide what’s the correct one.Also I’m not sure but wouldn’t your expression show everything if only one character would be entered?
And again I don’t see this solving anything if the entered string actually contains other characters then what’s in the file (
D
!=d
)Yes one could argue that some form of advanced algorithm or even AI could be used to identify such use case like download and Download but this is programming Humor, not linguisic Humor.
- lemmonade ( @lemmonade@lemm.ee ) 1•1 year ago
would it not be usable to have completion be case insensitive? I seem to be able to use that… if I only remember “something with down”, I could just as easily forget the capitalization of “down”. maybe I have
downloads
andDown
? why not show everything matching case insensitively and let the user decide what’s the correct one?I didn’t really understand what you thought the regex did incorrectly, but I think the regex works fine, at least for most implementations, anyways what I meant is just a case insensitive version of the regular substring completion, which shouldn’t be too difficult to make.
The only thing it solves is the frustration of having to look for a file/directory twice because you didn’t remember it’s capitalization. again, those are different characters just like a
do
anddownloads
are different strings, but it can be easier for users if they can just press tab and let the computer fill the part of the name the don’t remember (or don’t want to type).you don’t need an advanced algorithm or and AI, there are many easy ways to make completion case insensitive (like that regex for example). Issues involving names are inherently somewhat linguistic, but either way interactive shells are meant to be (at least somewhat) usable to humans, and as seen by the post, some people would prefer completion to be case insensitive.
- schnurrito ( @schnurrito@discuss.tchncs.de ) 8•1 year ago
On Windows filenames are case insensitive at least usually, some people are used to that. But that is poor design for so many reasons, Turkish I being one of them.
- u/lukmly013 💾 (lemmy.sdf.org) ( @user224@lemmy.sdf.org ) English8•1 year ago
Now take Android. Files are case-sensitive yet you can’t create 2 files with same name if they only vary in case.
- Reil ( @Reil@beehaw.org ) English1•1 year ago
One of the most pointlessly annoying things I’ve had to deal with was trying to move a process made for Linux onto a Windows MINGW/cygwin-type environment where one of the scripts would generate “.filename” AND “.FileName” files. :|
- 1984 ( @1984@lemmy.today ) 6•1 year ago
People want their computers to magically know what they want these days. :)
This specific problem doesn’t exist in oh-my-zsh config though. It will find the directory even if spelling it like this.
- PupBiru ( @PupBiru@kbin.social ) 8•1 year ago
“magically know what they want” aka occasionally set you and your files on fire
i prefer not fire
- ayushnix ( @ayushnix@lemmy.sdf.org ) English24•1 year ago
using capital letters in file/directory names on Linux :|
- jonne ( @jonne@infosec.pub ) 25•1 year ago
It’s a default on some distros, unfortunately, and changing it without updating the necessary env vars will break a bunch of stuff.
- ayushnix ( @ayushnix@lemmy.sdf.org ) English3•1 year ago
It would be a default on almost every distro that follows XDG specifications to have stuff like Downloads, Pictures, Videos in the
$HOME
folder. One of the first things I do as part of an installation is to modify~/.config/user-dirs.dirs
and set a specific folder, say/data/downloads
or~/downloads
, for every XDG base directory.
- Damage ( @Damage@slrpnk.net ) 17•1 year ago
Use zsh and press tab
- 👁️👄👁️ ( @mojo@lemm.ee ) English5•1 year ago
This. Except don’t use zsh because this is default in every single shell
- chris ( @chris@l.roofo.cc ) 17•1 year ago
Nope. Bash (at least by default on Ubuntu) doesn’t have case insensitive tab completion.
- PupBiru ( @PupBiru@kbin.social ) 2•1 year ago
afaik there’s options you can turn on that enable it
search .inputrc and set completion-ignore-case On
- Damage ( @Damage@slrpnk.net ) 6•1 year ago
Bash never does this by default
- 👁️👄👁️ ( @mojo@lemm.ee ) English1•1 year ago
Bash has never not had tab completion out of the box for me
- Damage ( @Damage@slrpnk.net ) 3•1 year ago
Tab completion is default, but completing an uppercase word by typing a lowercase letter is not
- T (they/she) ( @Templa@beehaw.org ) 3•1 year ago
I can’t relate to this issue at all exactly because I use zsh. Also a little bit related but the fuck
- pchem ( @pchem@feddit.de ) 15•1 year ago
- starman ( @starman@programming.dev ) English15•1 year ago
So you type
cd D
tab and it brings you toDocuments
- onlinepersona ( @onlinepersona@programming.dev ) English14•1 year ago
I seems that I have triggered something, but keep that going, it’s quality content generation. 😬
- drolex ( @drolex@sopuli.xyz ) 19•1 year ago
Everyone on any Linux thread ever: you are a moron, obviously and you’re doing it wrong. Why don’t you install another distro, or better yet: modify and recompile your distro to match your desired experience, the code is open source ffs! What do you need? 4 years of work maybe? Come on.
- GCostanzaStepOnMe ( @GCostanzaStepOnMe@feddit.de ) 10•1 year ago
Anything that slightly improves UX is bloat.
- drolex ( @drolex@sopuli.xyz ) 1•1 year ago
True! I’ve got rid of my monitor a long time ago, who needs one? gshshhshshshhshbsbbs
- gnutrino ( @gnutrino@programming.dev ) 5•1 year ago
I got rid of my whole computer a long time ago, now I just use rocks. Much less bloat.
- quantenzitrone ( @quantenzitrone@feddit.de ) 1•1 year ago
bro that xkdc is gold
- xnasero ( @xnasero@programming.dev ) 10•1 year ago
Op does not know about $CDPATH and tab completion keke
- ram ( @ram@feddit.nl ) 9•1 year ago
There are two Linux paradigms that I consider stupid. One is the use of centralized software repositories managed by the distro instead of individual developer maintained installers. The other one is file system case sensibility. They already admitted defeat on the first one with the rise of containerised applications. I wonder how much longer they’ll keep the charade on the second one.
- smiletolerantly ( @charlotte@feddit.de ) 19•1 year ago
Sorry, but you’re plain wrong on your first issue. Getting all your packages from one source is one of the biggest upsides of Linux.
- EddoWagt ( @EddoWagt@feddit.nl ) 4•1 year ago
Indeed, but I’m sure we can agree that it’s pretty stupid for every distro to maintain its own repo. That’s a lot of duplicate work, which could be spend on more useful things. Luckily flatpak is well on its way to change that
- smiletolerantly ( @charlotte@feddit.de ) 5•1 year ago
Hm… But different distros have different philosophies (not just) about updates. That’s part of why people choose a specific distro.
Theres still plenty speaking against flatpak (larger sizes, problems with GTK/qt themes, and it’s only meant for GUI applications - you still need a separate system for the kernel and lower-level/cli tools. And frankly, that makes flatpak unusable to me, because the purpose of a centralized package management system is not having duplicate systems).
So in short: y’all are gonna pry pacman from my cold, dead hand.
- tslnox ( @tslnox@reddthat.com ) 3•1 year ago
The same goes for me, but with Portage, brother.
- EddoWagt ( @EddoWagt@feddit.nl ) 1•1 year ago
I’m not against distros as a whole, some extra work will be inevitable because people have different preferences, but it feels like a waste having a Firefox package for arch, ubuntu, fedora and Debian while essentially all being identical. Indeed flatpak isn’t perfect yet, but it works great for me and it’s steadily improving
- onlinepersona ( @onlinepersona@programming.dev ) English4•1 year ago
Pretty hilarious for mac users, of all people, to complain about centralisation. Like, don’t you live in a walled garden?
- Luvon ( @Luvon@beehaw.org ) 8•1 year ago
cd dow *tab
- steltek ( @steltek@lemm.ee ) 7•1 year ago
Here’s how to fix this[+]
Create
$HOME/.config/user-dirs.dirs
withXDG_DOWNLOAD_DIR=“$HOME/downloads”
You may need to logout/in for things to reread this file.
The full list of keys is:
- XDG_DESKTOP_DIR
- XDG_DOWNLOAD_DIR
- XDG_TEMPLATES_DIR
- XDG_PUBLICSHARE_DIR
- XDG_DOCUMENTS_DIR
- XDG_MUSIC_DIR
- XDG_PICTURES_DIR
- XDG_VIDEOS_DIR
+: Since this is Linux, this is a fix for many but not all cases.
- lastweakness ( @lastweakness@lemm.ee ) 3•1 year ago
XDG User dirs are cool, i agree. But that’s not really the problem here
- Kanda ( @Kanda@reddthat.com ) 6•1 year ago
Just make a downloads folder if you absolutely want to go there
- caseyweederman ( @caseyweederman@lemmy.ca ) 7•1 year ago
Symlink
- lnee ( @lnee@lemm.ee ) 2•1 year ago
mount bind
- caseyweederman ( @caseyweederman@lemmy.ca ) 1•1 year ago
…why is it so hard to find a picture of a mountain with a harness on it
- zlatko ( @zlatko@programming.dev ) 1•1 year ago
ln -s Downloads downloads FTW
- Kanda ( @Kanda@reddthat.com ) 1•1 year ago
But then you’re still accessing “Downloads” and not “downloads”