{"id":16705109,"url":"https://github.com/mcabbott/inthered.jl","last_synced_at":"2026-03-18T21:34:58.106Z","repository":{"id":218434976,"uuid":"745047296","full_name":"mcabbott/InTheRed.jl","owner":"mcabbott","description":null,"archived":false,"fork":false,"pushed_at":"2025-08-02T18:48:30.000Z","size":806,"stargazers_count":2,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-02T20:52:47.882Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mcabbott.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-18T14:39:33.000Z","updated_at":"2025-08-02T18:48:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"21a173ce-0d26-4d20-b6c4-9b3030e28326","html_url":"https://github.com/mcabbott/InTheRed.jl","commit_stats":{"total_commits":5,"total_committers":1,"mean_commits":5.0,"dds":0.0,"last_synced_commit":"19f99b6b0505f6e4c79955dc2378a1d4c199fe5e"},"previous_names":["mcabbott/inthered.jl"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mcabbott/InTheRed.jl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcabbott%2FInTheRed.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcabbott%2FInTheRed.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcabbott%2FInTheRed.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcabbott%2FInTheRed.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mcabbott","download_url":"https://codeload.github.com/mcabbott/InTheRed.jl/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcabbott%2FInTheRed.jl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29463613,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-15T01:01:38.065Z","status":"ssl_error","status_checked_at":"2026-02-15T01:01:23.809Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-12T19:28:41.329Z","updated_at":"2026-02-15T01:05:52.550Z","avatar_url":"https://github.com/mcabbott.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# InTheRed.jl\n\nThis package overloads `Base.show` to change how numbers are printed:\n* Negative numbers are red\n* Zero is light gray\n* `Inf`, `NaN` and `missing` are yellow\n* Low-precision numbers (like `Float32`, `Int16`) are cyan, or magenta if negative, and\n* Unsigned integers are printed both in hex and decimal.\n\nThe cutoff for \"nearly zero\" is controlled by e.g. `threshold!(1e-16)`.\n\nIt also changes how vectors numbers are printed:\n* Vectors of real numbers are displayed with a bar graph alongside their values.\n* Vectors of complex numbers show their absolute value as a bar graph, and phase as a compass direction.\n* Ranges print more detail, including the `range` constructor.\n\nThe point of this is to provide extra context while working at the REPL, without getting in your way.\nThe bar graphs should occupy unused space to the right of the numbers in your terminal.\n\n## Examples\n\n![REPL screenshot](readme.png)\n\nCopying text from the REPL loses the colours but keeps the graph:\n\n```julia\njulia\u003e Float16[x..., Inf]\n15-element Vector{Float16}:\n  -0.777   #    ┥\n  -0.6323  #    ┥\n  -0.3936  #    ┥\n   0.0     #    │\n   0.649   #    ┝\n   1.719   #    ┝╸\n   3.482   #    ┝━\n   6.39    #    ┝━╸\n  11.18    #    ┝━━╸\n  19.08    #    ┝━━━━\n  32.12    #    ┝━━━━━━━\n  53.6     #    ┝━━━━━━━━━━━━\n  89.0     #    ┝━━━━━━━━━━━━━━━━━━━━\n 147.4     #    ┝━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n  Inf      #    ╪═▶\n\njulia\u003e reverse(1:10)\n10-element StepRange{Int64, Int64}:\n# range(10, 1, step=-1) === 10:-1:1\n 10  #    ┝━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n  9  #    ┝━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸\n  8  #    ┝━━━━━━━━━━━━━━━━━━━━━━━━━━╸\n  ⋮\n  3  #    ┝━━━━━━━━━━\n  2  #    ┝━━━━━━╸\n  1  #    ┝━━━╸\n```\n\nFor complex numbers, the graph shows phase and magnitude like this:\n\n```julia\njulia\u003e cis.(range(0,2pi,9)) .* logrange(1/3,3,9) .|\u003e ComplexF32\n9-element Vector{ComplexF32}:\n   0.33333334f0 + 0.0f0im          #   │➡┝━━━╸\n   0.31020162f0 + 0.31020162f0im   #   │↗┝━━━━━\n  3.5352508f-17 + 0.57735026f0im   #   │⬆┝━━━━━━╸\n    -0.537285f0 + 0.537285f0im     #   │↖┝━━━━━━━━╸\n         -1.0f0 + 1.2246469f-16im  #   │⬅┝━━━━━━━━━━━\n   -0.9306049f0 - 0.9306049f0im    #   │↙┝━━━━━━━━━━━━━━╸\n -3.1817257f-16 - 1.7320508f0im    #   │⬇┝━━━━━━━━━━━━━━━━━━━\n    1.6118549f0 - 1.6118549f0im    #   │↘┝━━━━━━━━━━━━━━━━━━━━━━━━━\n          3.0f0 - 7.3478806f-16im  #   │➡┝━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n```\n\nUnsigned integers:\n\n```julia\njulia\u003e 0x0c9\n0x00c9  # == 201\n\njulia\u003e -ans\n0xff37  # == 65335\n```\n\n## Elsewhere\n\n* [OhMyREPL.jl](https://github.com/KristofferC/OhMyREPL.jl) changes the text you type at the prompt, instead of what is printed.\n\n* [UnicodePlots.jl](https://github.com/JuliaPlots/UnicodePlots.jl) allows much more complicated plotting as text.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcabbott%2Finthered.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmcabbott%2Finthered.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcabbott%2Finthered.jl/lists"}