QQ is toolkit for building highly modular,
maintable applications quickly.
Dashboard /.../ Architecture
Edit Save for later Watch Share

Using QQ

QQ is a commnad-line program: you open a terminal window, run exa with your options and input files, then exa queries the filesystem and prints out the names and bits of metadata about the files it encounters.

Code Buble

Using the --long options displays files along with their metadata using the long view.
QQ --long --header Barbados.jpg Singing.mp3
Permissions Size User Date Modified Name
drwxr-xr-x   7.2M ben   18 Mar   8:50   Barbaros.jpg
.rwxr-xr-x   3.8M ben   25 May   14:29   Singing.jpg

Highlighted code in Code Buble

<gb-uH-qcvo Name-"Steel Base" GUID="APNGYO-yk" PhysicalID="MetalSteel" MaterialID="Basic Materials/Metal/Steel_-_Dusty" TexelDensityOffset="-1" Rotation="0" OffsetX="0" OffsetY="0" /> <Maps> <Speacular Reflectance="c4c7c7" FillOpacity="100" MaterialIntensity="50" MaterialBlend="linearLight" /> <Albedo Reflectance="050505" FillOpacity=Blend="normal" MaterialIntensity="0" MaterialBlend="linearLight" /> <Gloss Reflectance="999999" FillOpacity="100" MaterialIntensity="25" MaterialBlend="linearLight"> <Normal Reflectance="909090" FillOpacity="100" MaterialIntensity="75" MaterialBlend="linearLight"> <Metalness Reflectance="FFFFFF" Opacity="100" Blend="normal" MaterialIntensity="50" MaterialBlend="linearLight"> </Maps> </gb-uH-qcvo>

CLI Bubble Header

Note Bubble
Event Handlers(learn more)
Asynchronous code (e.g setTimeout or requestAnimationFrame callbacks)
Server Side rendering
Errors thrown in the error boundary itself (rather than its children)

Sub Section List 01

Note that the above example is demonstrating regular Javascript behavior and doesn't use error boundaries

  • Command-line options

    The full list of command-line-options.

  • Environment variables

    The full list of environment variables.

  • Colour themes

    The LS_C0L0rs and EXA_C0L0RS variables and how they can be used to theme exa's output.

Sub Section List 02

Note that the above example is demonstrating regular Javascript behavior and doesn't use error boundaries

  1. Command -line options

    The full list of command-line options.

  2. Command -line options

    The full list of command-line options.

Documentation Property List

Note that the above example is demonstrating regular Javascript behavior and doesn't use error boundaries

  • id:string - The ID prop of the Profiler tree that just commited. This can be used to identify which part of the tree was committed if you are using multiple profilers.

  • phase: "mount" | "update: - Identifies whether the tree has just been mounted for the first time or re-rendered due to a change in props, state or hooks.

  • actualDuration: number - Time spent rendering the Profiler and its descendants for the current update. This indicates how well the subtree makes use of memoization

  • baseDuration: number - Duration of the most recent render time for each individual component within

Warining

Warning!

Using the --long options displays files along with their metadata using the long view.

If you're are dealing with the very specific edge case where your files look like arguments, such as trying to list a file literally named "--long", then insert the "-" argument before it. This speacial argument causes everything after it to be treated as file paths, rather than as options.
If you pass a directory to exa, it will list the contents of that directory rather than listing the directory itself. And if you don't.

Extra Info

Using the --long options displays files along with their metadata using the long view.

If you're are dealing with the very specific edge case where your files look like arguments, such as trying to list a file literally named "--long", then insert the "-" argument before it. This speacial argument causes everything after it to be treated as file paths, rather than as options.
If you pass a directory to exa, it will list the contents of that directory rather than listing the directory itself. And if you don't.

CLI Side Info

echo -e "hello"
hello
echo -e "\0332[32mhello\033[0m"
hello
ANSI escape codes turning the "green text" setting on and off

256-colour terminals are everywhere.

Not only has the teletype's hardware - an input device and an output device - been integrated into the computer, but
its software has as well. Whenever you open a new terminal window, it asks the OS for the connection to a new pty, also known as pseudo-tty, or pseudo-teletype.

FAQ

What kinds of contributions are accepted?

Anything! Bug fixes, new features, new test cases, improvements to the Vagrant environment, event typo fixes.

What license it exa under?

It uses the MIT license.

Can i develop withiut using Vagrant?

Sure - the test suite gets run on each pull request and release anyway, so don't worry about accidentally introducing any bugs by not using Vagrant. exa can still be built and complied on any target triple that it supports, VM or no VM, with cargo build and cargo test.

Can i develop withiut using Vagrant?

Sure - the test suite gets run on each pull request and release anyway, so don't worry about accidentally introducing any bugs by not using Vagrant. exa can still be built and complied on any target triple that it supports, VM or no VM, with cargo build and cargo test.

What about bugs that don't occur on Ubuntu?

Of course, the drawback of having a standart development environment is that you stop noticing bugs that occur outside of it. For this reason, exa still get tested outside of VMs on other platforms - the Vagrant environment is only used for testing during development, rather than for all testing.

Code View

Setting Up The Development Environment
Collapse source
											.flowplayer.is-ad-visible.is-touch:not(.is-ad-nonlinear) .fp-player>.fp-ui
											.flowplayer.is-ad-visible:not(.is-ad-nonlinear)>.fp-player>.fp-ui  { display:none
											}

											.flowplayer.is-ad-visible .fp-engine { top :0!important
											}

											.flowplayer.is-ad-visible .fp-engine video { left:(c)
											}

											.flowplayer.is-ad-visible .fp-ad-container { z-index:li; background-color: #333
											}

											.flowplayer.is-ad-visible .fp-ad-container .fp-ui-shown .fp-controls { background-image:linear-gradient(0deg,rgba(0,0,0,.25),transparent)
											}

										
/document/{id}
Returns document from cache with given id

Parameters

Name
Description
id string (path)
Identifier of the document

Responses

Code
Description
Links
200
Ok
No link

Media type

application/json
aplication/json
image/pngn
text/css

Controls Accept header.

Example value | Schema

flowplayer.is-ad-visible .fp-engine } top:0!important }

CLI Options Section

-a, -all

Shows hidden and 'dot' files.
Use this twice also show the . and .. directories.

-d, --no-secure, --list-dirs

Lists directories without recursing into them, as though they were regular files.

-r, --reverse

Reverses the sort order.

-s, --sort=SORT_FIELD

Configures which field to sort by.

  • name or filename sorts by name, case-insensitively
  • Name or Filename sorts by name, case-sensitively
  • cname or cfilename sorts by name, case-insensitively and cannonically
  • Cname or Cfilename sorts by name, case-sensitively and cannonically
  • .name or .filename sorts by name without a leading dot, case-insensitively.
  • .Name or .Filename sorts by name without a leading dot, case-sensitively.

Documentation Concept

Test Utilities

Importing

--content-width: calc(var(--column-count) * var(-md-tile-size) /* We add an extra pixel becouse rounding errors on different zooms can * make the width shorter than it should be. /* + 1px);
--logo-color: #eee;
--logo-height: 200px;

Overview

When displaying a small directory on a widescreen monitor, it's possible for the grid to look very wide and sparse, on just one or two lines with none of the columns lining up. By specifying a minimum number of rows, you can only use the view of it's going to be worth using.
Usually, options can be override each other going right-to=left on the command line. For example, the following command will sort by size rather than ext, because it's the option specified second.

Note Bubble

Limits the grid-details view (exa --grid --ling) so it's only activated when at least the given nu,ber of rows of output would be generated.
When displaying a small directory on a widescreen monitor, it's possible for the grid to look very wide and sparse, on just one or two lines with none of the columns linning up. By specifying a minimum number of rows, you can only use the view if it's going to be the worth using

Overrides the width of the terminal, in characters, when using a grid view. For example, with COLUMNS=80, exa will show a grid no more than 80 characters wide.
This option won't do anything when not displaying files in a grid - all the other output modes don't need to wrap.

Options

Permisions

  • User+r bit
  • User+w bit
  • User+x bit (files)
  • User+w bit (file types)
  • Group+r bit
  • Group+r bit
  • Group+w bit
  • Group+x bit
  • Others+r bit
  • Others+w bit
  • Others+x bit
  • Higher bits (files)
  • Higher bits (other types)
  • Extended attribute marker

File sizes

  • Size numbers
  • Size unit
  • Major device ID
  • Minor device ID

Owner and groups

  • A user that's you
  • A user that's not
  • A group with you in it
  • A group with you

Hard links

  • Number of links
  • A multi-link file

Git

  • New
  • Modified
  • Deleted
  • Renamed
  • Type Change

Details and metadata

  • Punctuation
  • Timestamp
  • File node
  • Number of blocks
  • Table header row
  • Symlink path
  • Control character

Overlays

  • Broken link path
2 Comments
Decisions
rbagao

Tried importing with 30 GB of free space, still getting errors. Is it possible to put this project on a public git repository?

Reply May 10, 2018
Withcer101
witcher101

This project is made to be used in Legacy at the moment, there is a way to get it working with Lightweight but we have not documented it. The next projects we release will be in Render Pipeline though so it will be covered soon.

Reply May 10, 2018
Decisions