• grugagag 4 minutes ago

    This is cool. I’d fancy a set of command line tools that drop you briefly into simple TUIs to make discoverability and composition intuitive. Something like fish or zsh but more advanced a few notches.

    • skeptrune 6 minutes ago

      I'm so for this. I wish more things came as a TUI. More emojis seem great. Makes it much easier for folks who don't work in the terminal consistency to use it.

      • y-f-honeyguide 8 hours ago

        Facad is about functionality, not just aesthetics.

        Key features:

        - Intuitive file type representation

        - Smart sorting (directories first, then by extension)

        - Four-column layout for quick directory analysis

        It evolved from this alias:

        alias ls='ls -A -F --group-directories-first --sort=extension --color=always'

        Facad takes this concept further, offering more flexibility and visual clarity.

        • lolinder an hour ago

          I like it! The emojis make it really easy to identify files at a glance—with more precision than the simple `d` and `l` indicators in ls.

          • mmh0000 3 hours ago

            What is the benefit of sorting on extensions? Since extensions have no meaning to the kernel and, only a few oddball applications (tar, gzip) care about extensions.

            The emojis are cute, but is it really quicker than reading a `-`, `d`, or `l` in the ls output?

            This is my daily goto:

              alias ls='ls -Av --time-style="+%Y-%h-%d %r" --group-directories-first --color'
            
              alias ll='ls -lh'
            • lolinder 3 hours ago

              > Since extensions have no meaning to the kernel and, only a few oddball applications (tar, gzip) care about extensions.

              This tool is pretty clearly meant to be consumed by a human—if you need a directory listing as part of a shell script you'd just use ls—and humans very much do care about extensions even if the kernel and application don't.

              • burnte an hour ago

                > What is the benefit of sorting on extensions? Since extensions have no meaning to the kernel and, only a few oddball applications (tar, gzip) care about extensions.

                It communicates to the human what the file is, and makes it easier to find the file you want if you only have to look through 5 files of type X rather than 60 assorted files. Humans are the number 1 users of terminal interfaces, so this changes helps that demographic.

                • anigbrowl 3 hours ago

                  I always sort on extensions. I want to know what things are and group similar things together.

                  • kristopolous 3 hours ago

                    Ideally are we talking extension or mime here and if it's the latter, how far down do you slice? Do we separate our PNGs from our JPEGs?

                    • GlacierFox an hour ago

                      Yeah :S

                    • shric 3 hours ago

                      I usually group similar type things into directories so that I don't get much of an extension mix. The exception is my download directory and for that I generally want to order by time or size.

                      • IgorPartola 3 hours ago

                        Something like photos processed by darktable are a good example of why this isn’t always practical. You have your raw files and your sidecar files side by side. You could separate them in settings I suspect but that’s not the default and god forbid you ever lose one. If you are in the habit of putting JPEGs in the same place you really want to separate by extension.

                    • imbnwa 44 minutes ago

                      > alias ls='ls -Av --time-style="+%Y-%h-%d %r" --group-directories-first --color'

                      Stupid macOS ls binary: unrecognized option `--time-style=+%Y-%h-%d %r'

                    • imbnwa an hour ago

                      >alias ls='ls -A -F --group-directories-first --sort=extension --color=always'

                      Stupid macOS ls binary: unrecognized option `--group-directories-first'

                      • lelandbatey 3 hours ago

                        Why four column and not one column? If I add a new file that's longer than the old ones, the columns will re-flow and now where I used to look is no longer where I was looking, it's moved off to the side. Why not have just a single column so your eye only has to move in a single direction to find things, a-la `ls -alh` ?

                        Note I often wonder about bare `ls` usage for the same reason; it always seemed terrible to me, hence why I never type 'ls' and instead always use the `ll` alias (though I've customized it from the default that Ubuntu gave me over a decade ago).

                      • motohagiography 13 minutes ago

                        the idea of having emojis in the terminal opens up the conceptual possibility of publishing web like applications that are navigable by a basic shell DSL and no browser.

                        • jshen 2 hours ago

                          I can never get icons to work on remote machines when I SSH in. Is there some doc or blog explaining how this stuff works?

                          • ilaksh an hour ago

                            Nice. There is also 'exa'.

                          • 0xfeba 3 hours ago

                            How do you pronounce the name?

                            • wmeredith 26 minutes ago

                              I assume it's the same as "facade" https://www.merriam-webster.com/dictionary/facade

                              • flyingcircus3 2 hours ago

                                I assume its pronounced the same as "facade" - an outward appearance that is maintained to conceal a less pleasant reality.

                                • airstrike 2 hours ago

                                  Which is really "façade", but oh well

                                  • lionkor 2 hours ago

                                    "fashade"?

                                    • airstrike an hour ago

                                      Only if you're Sean Connery

                                      RIP

                                      • SwiftyBug an hour ago

                                        "fassade"

                                  • nullbyte 2 hours ago

                                    Lord Farquad

                                  • codedokode 3 hours ago

                                    Regarding emojis: I believe they should be monochrome in console. The problem is that when you have text with emojis they stand out too much and distract you. So they should be monochrome, not so large and not so standing out.

                                    • uniq7 3 hours ago

                                      You can configure your terminal to use a custom font with monochrome emojis.

                                      • klardotsh 2 hours ago

                                        Sometimes... one of the biggest problems with TUIs is that every terminal emulator is extremely opinionated about how it wants to render anything that isn't trivial ASCII, even in 2024.

                                        Sometimes you can select color emojis. Sometimes you can't turn OFF color emojis. Sometimes you can set font preferences to use something like FSD Emoji [1] where possible and fall back to other fonts, sometimes you can only set a single font.

                                        Don't get me started on box drawing characters and, worse than any of the above, ligatures (which most open-source terminals have either a religious aversion to at the expense of their users, or refuse to implement any solution that doesn't meet the performance bar similar to non-ligatured font rendering, which functionally means we'll probably never see ligature support in those terminals).

                                        My dream UI I think might be "every window is FLTK/FOX/other lightweight UI toolkit (maybe that one Rust tools like `amdtop` use?), strictly adheres to a system-wide theming protocol (a-la GTK2, most QTs, etc) that provides a highly consistent human interface, and provides Vim-style bindings and a `:command` bar and otherwise pretends to be a terminal window in all ways except the "actually being a monospace character grid" part. In other words: a GUI that pretends mice were never invented (or rather - makes them fully optional and interchangeable with the keyboard). But instead we have the stupid modern UI dichotomy of "keyboard fans have to fit their lives into a character grid, mice fans have to deal with shipping all of Chromium and not one single app on the system looking even remotely like any of the others, and keyboard support is unpredictable at best".

                                        [1]: https://fsd.it/shop/fonts/fsd-emoji/ , note that it's woefully incomplete and honestly this ends up creating an even more jarring experience than just using color Noto/Twemoji everywhere.

                                      • stouset 3 hours ago

                                        Do most emoji actually look decent in monochrome in practice?

                                        • lolinder 3 hours ago

                                          You'd get an emoji font specifically designed to be monochrome:

                                          https://emojipedia.org/noto-emoji

                                          • seanw444 3 hours ago

                                            Unless they mean a completely new style of emoji to complement the monochrome, then I'd say no. Flattening existing emojis to one color would probably be awful.

                                            • sanex 3 hours ago

                                              Like some of the random notification icons on Android that are just a circle. Useless.

                                        • kccqzy 3 hours ago

                                          I don't like emojis in this context. I like them when humans use them to communicate over text when facial expressions and such aren't available. I feel weirded out when a computer program sprouts emojis at me. A computer program needs to treat human users with respect, and emojis convey the wrong tone. Like languages with T-V distinction, emojis strictly belong to the T form and are unsuitable for communication from a computer program to a human.

                                          This made me recall that I have `export HOMEBREW_NO_EMOJI=1` in my shell startup. I wish all programs provide me with an opt out like this for this misfeature.

                                          • Supermancho 3 hours ago

                                            > I like them when humans use them to communicate over text when facial expressions and such aren't available.

                                            I believe emoji is shorthand for a tableau of common iconography. This is useful, because it is not limited to an OS specified set, allowing for user expansion and culture to determine the core set.

                                            The folder icon, itself, is an emoji in this context.

                                            • bbor 2 hours ago

                                              I encourage you to try to move past it, you’re missing out! Of all the arbitrary cultural norms, “computers should only use icons, not emojis” is the most arbitrary. No offense ofc, and I believe you that the psychological effect is real — I’m just saying it’s probably an arbitrary one that would go away pretty quickly.

                                              Personally, “output a concise, hierarchical markdown document with heavy usage of emojis” is a must-have LLM pre-prompt. Helps with scanning the results quickly, and I have a hunch it helps it keep its reasoning straight for complex tasks.

                                              • sgarland 2 hours ago

                                                Hard pass. I want my terminal to present me with text, and only text. That way, as I cry bitter tears of defeat, the textual output will remain, stolidly presenting its harsh reality to me. Emoji would falsely present an aura of hope and congeniality where there is only pain; the cruel reminder that I have once again failed to live up to its inflexible and demanding expectations.

                                                …seriously though, I have absolutely no desire for emoji in the terminal.

                                                • Sleaker an hour ago

                                                  Emoji are text though?

                                                  • sgarland 39 minutes ago

                                                    When (Western) people say text, they generally mean ASCII. If your language requires glyphs, that is of course reasonable to also be called text.

                                                    I’ll grant emoticons (e.g. :-D) as being textual, because they are composed of the building blocks of ASCII. An emoji, though consisting of Unicode code point[s], cannot say the same, unless you’re arguing that they’re all bits, which is reductionist.

                                            • srockets 2 hours ago

                                              But can you use it to play Flappy Bird[0]?

                                              --

                                              [0] https://www.youtube.com/watch?v=AUSNWkdvoRo

                                              • drdaeman 3 hours ago

                                                Looks nice! I think it would be cool to know the differences between Facad, lsd, and eza (https://github.com/lsd-rs/lsd and https://github.com/eza-community/eza) aka "why do I want to try Facad rather than alternatives". No offense meant, but the latter two already exist for a while, available in most distros and seem to do at least approximately the same thing.

                                                • nine_k 3 hours ago

                                                  Apparently Facad is much smaller, less feature-rich, written in C (both lsd and eza are written in Rust), and uses slightly more permissive license (MIT).

                                                  • bbor 2 hours ago

                                                    Also, AFAICT both of those offer icons, not emojis — though at least lsd is open to manual configuration. Cute, either way! This is a way more fun way to waste time than comparing IDE fonts, thanks for sharing. Will have to try out all three tonight

                                                  • ok123456 an hour ago

                                                    Hardcoding the ANSI escape characters hurts portability. Try looking up the escape using termcap/terminfo.