github.com/lmorg/murex@v0.0.0-20240217211045-e081c89cd4ef/gen/root/README.inc.md (about) 1 {{ if env "DOCGEN_TARGET=vuepress" }} 2 home: true 3 icon: home 4 heroImage: murex-logo-shell.svg?v={{ env "COMMITHASHSHORT" }} 5 heroText: Murex.Rocks 6 tagline: An intuitive, typed and content aware shell for the 2020s and beyond. 7 actions: 8 - text: "🛟 Language Tour" 9 link: tour/ 10 type: primary 11 - text: "🪨 Rosetta Stone" 12 link: user-guide/rosetta-stone/ 13 - text: "🐚 Interactive Shell" 14 link: user-guide/interactive-shell/ 15 - text: "📦 Install" 16 link: install/ 17 18 19 highlights: 20 - header: A Modern shell for the rest of us 21 description: Murex carries tons of unique features. Some highlights include... 22 features: 23 - title: Content Aware 24 icon: arrows-to-circle 25 details: |- 26 Murex has built-in support for natively manipulating various file formats such as JSON, TOML, YAML, CSV, and commonlog. This allows for seamless integration and manipulation of data in various formats. 27 <br/><br/> 28 <b>Data types can be explicitly cast and reformatted, but also inferred if preferred.</b> 29 link: types/ 30 31 - title: Expressions 32 icon: check-double 33 details: |- 34 Murex treats variables as expressions, allowing you to perform calculations and evaluations directly within the shell. This feature helps to avoid accidental bugs caused by spaces or incorrect syntax, providing a more reliable and predictable scripting experience. 35 <br/><br/> 36 <b>Never worry about file names with weird characters, nor running equations in "bc" again.</b> 37 link: tour/#scalars 38 39 - title: Smartly Interactive 40 icon: wand-magic-sparkles 41 details: |- 42 Murex parses man pages for command line flags and provides smart autocomplete functionality. By pressing the TAB key, you can auto-complete commands and parameters, and "fzf"-like functionality baked in. 43 <br/><br/> 44 <b>Navigating the command line is faster, more intuitive and efficient than ever before.</b> 45 link: user-guide/interactive-shell 46 47 - title: Easily Extended 48 icon: cubes 49 details: |- 50 Murex has an extension framework that allows you to design your own modules or enjoy prebuilt extensions. This allows for customization and additional functionality. The built-in package manager makes it very easy to share your configuration, import other peoples modules, and port your set up between different machines. 51 <br/><br/> 52 <b>Configure once, use everywhere.</b> 53 link: user-guide/modules 54 55 copyright: false 56 footer: GPLv2 Licensed, Copyright © 2017-present Laurence Morgan 57 --- 58 59 ## 👁🗨 Screenshots 60 61 <!-- markdownlint-disable --> 62 63 <div class="image-preview"> 64 <img src="/screenshot-kill-autocomplete.png?v={{ env "COMMITHASHSHORT" }}" /> 65 <img src="/screenshot-open-foreach.png?v={{ env "COMMITHASHSHORT" }}" /> 66 <img src="/screenshot-spellchecker.png?v={{ env "COMMITHASHSHORT" }}" /> 67 <img src="/screenshot-autocomplete-git.png?v={{ env "COMMITHASHSHORT" }}" /> 68 <img src="/screenshot-error-messages.png?v={{ env "COMMITHASHSHORT" }}" /> 69 <img src="/screenshot-hint-text-rsync.png?v={{ env "COMMITHASHSHORT" }}" /> 70 <img src="/screenshot-preview-custom-hints.png?v={{ env "COMMITHASHSHORT" }}" /> 71 <img src="/screenshot-preview-image.png?v={{ env "COMMITHASHSHORT" }}" /> 72 <img src="/screenshot-preview-man-page.png?v={{ env "COMMITHASHSHORT" }}" /> 73 <img src="/screenshot-preview-command-line.png?v={{ env "COMMITHASHSHORT" }}" /> 74 <img src="/screenshot-paste-safety.png?v={{ env "COMMITHASHSHORT" }}" /> 75 <img src="/screenshot-autocomplete-context-sensitive.png?v={{ env "COMMITHASHSHORT" }}" /> 76 <img src="/screenshot-history.png?v={{ env "COMMITHASHSHORT" }}" /> 77 <img src="/screenshot-ps-select.png?v={{ env "COMMITHASHSHORT" }}" /> 78 </div> 79 80 <style> 81 .image-preview { 82 display: flex; 83 justify-content: space-evenly; 84 align-items: center; 85 flex-wrap: wrap; 86 } 87 88 .image-preview > img { 89 box-sizing: border-box; 90 width: 33.3% !important; 91 padding: 9px; 92 border-radius: 16px; 93 } 94 95 @media (max-width: 719px) { 96 .image-preview > img { 97 width: 50% !important; 98 } 99 } 100 101 @media (max-width: 419px) { 102 .image-preview > img { 103 width: 100% !important; 104 } 105 } 106 </style> 107 108 <!-- markdownlint-restore --> 109 110 Check out the [Language Tour](/tour.html) and [Interactive Shell](user-guide/interactive-shell.html) guides! 111 112 ## 📦 Easy to Install 113 114 Install `Murex` from your favorite package manager: 115 116 ::: code-tabs#shell 117 118 @tab macOS 119 ```bash 120 # via Homebrew: 121 brew install murex 122 123 # via MacPorts: 124 port install murex 125 ``` 126 127 @tab ArchLinux 128 ```bash 129 # From AUR: https://aur.archlinux.org/packages/murex 130 wget -O PKGBUILD 'https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=murex' 131 makepkg --syncdeps --install 132 ``` 133 134 @tab FreeBSD 135 ```bash 136 pkg install murex 137 ``` 138 139 ::: 140 141 More options are available in the [INSTALL](install/) document. 142 143 ## 🛟 Getting Started 144 145 * Read the [language tour](/tour.html) to get started. 146 147 * The [Rosetta Stone](/user-guide/rosetta-stone.html) is a 148 great cheatsheet for those wishing to skip the tutorials and jump straight in. 149 This guide includes comparisons with Bash. 150 151 * The [Interactive Shell](/user-guide/interactive-shell.html) 152 guide walks you through using Murex as a command line as opposed to a scripting 153 language. 154 155 {{ else }}# Murex: A Smarter Shell 156 157 [](DOWNLOAD.md) 158 [](https://github.com/lmorg/murex/actions/workflows/murex-tests.yaml) 159 [](https://github.com/lmorg/murex/actions/workflows/deploy-docs.yaml) 160 161 <img src="https://murex.rocks/murex-logo-shell.svg?v={{ env "COMMITHASHSHORT" }}" class="readme"> 162 163 Murex is a shell, like bash / zsh / fish / etc however Murex supports improved 164 features and an enhanced UX. 165 166 A non-exhaustive list features would include: 167 168 * Support for **additional type information in pipelines**, which can be used 169 for complex data formats like JSON or tables. Meaning all of your existing 170 UNIX tools to work more intelligently and without any additional configuration. 171 172 * **Usability improvements** such as in-line spell checking, context sensitive 173 hint text that details a commands behavior before you hit return, and 174 auto-parsing man pages for auto-completions on commands that don't have auto- 175 completions already defined. 176 177 * **Smarter handling of errors** and **debugging tools**. For example try/catch 178 blocks, line numbers included in error messages, STDOUT highlighted in red 179 and script testing and debugging frameworks baked into the language itself. 180 181 ## Language Guides 182 183 * Read the [language tour](https://murex.rocks/tour.html) to get started. 184 185 * The [Rosetta Stone](https://murex.rocks/user-guide/rosetta-stone.html) is a 186 great cheatsheet for those wishing to skip the tutorials and jump straight in. 187 This guide includes comparisons with Bash. 188 189 * The [Interactive Shell](https://murex.rocks/user-guide/interactive-shell.html) 190 guide walks you through using Murex as a command line as opposed to a scripting 191 language. 192 193 ## Examples 194 195 **Smart data:** 196 197 <img src="images/screenshot-open-foreach.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 198 199 <img src="images/screenshot-ps-select.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 200 201 **Inline spellchecking:** 202 203 <img src="images/screenshot-spellchecker.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 204 205 **Autocomplete:** 206 207 <img src="images/screenshot-kill-autocomplete.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 208 209 <img src="images/screenshot-autocomplete-git.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 210 211 <img src="images/screenshot-history.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 212 213 **Preview screen:** 214 215 <img src="images/screenshot-preview-man-page.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 216 217 <img src="images/screenshot-preview-custom-hints.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 218 219 <img src="images/screenshot-preview-image.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 220 221 <img src="images/screenshot-preview-command-line.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 222 223 **Useful error messages:** 224 225 <img src="images/screenshot-error-messages.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 226 227 <img src="images/screenshot-paste-safety.png?v={{ env "COMMITHASHSHORT" }}" class="readme"> 228 229 **Plus More!** 230 231 Check out the [Language Tour](https://murex.rocks/tour.html) and [Interactive Shell](https://murex.rocks/user-guide/interactive-shell.html) guides! 232 233 ## Install instructions 234 235 See [INSTALL](https://murex.rocks/INSTALL.html) for details. 236 237 ## Discuss Murex 238 239 Discussions presently happen in [Github discussions](https://github.com/lmorg/murex/discussions). 240 241 ## Compatibility Commitment 242 243 Murex is committed to backwards compatibility. While we do want to continue to 244 grow and improve the shell, this will not come at the expense of long term 245 usability. [Read more](compatibility.md) 246 247 ## Known bugs / TODO 248 249 Murex is considered stable, however if you do run into problems then please 250 raise them on the project's issue tracker: [https://github.com/lmorg/murex/issues](https://github.com/lmorg/murex/issues) 251 {{ end }}