{"id":31978636,"url":"https://github.com/nyaosorg/nyagos","last_synced_at":"2025-10-14T22:24:50.226Z","repository":{"id":12926139,"uuid":"15603759","full_name":"nyaosorg/nyagos","owner":"nyaosorg","description":"NYAGOS - The hybrid Commandline Shell","archived":false,"fork":false,"pushed_at":"2025-09-04T09:59:45.000Z","size":5604,"stargazers_count":370,"open_issues_count":2,"forks_count":36,"subscribers_count":28,"default_branch":"master","last_synced_at":"2025-09-04T11:41:32.950Z","etag":null,"topics":["commandline","go","golang","golang-application","golang-tools","gopher-lua","lua","nyagos","shell"],"latest_commit_sha":null,"homepage":"http://nyaos.org/nyagos/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nyaosorg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-01-03T07:15:25.000Z","updated_at":"2025-09-04T09:59:48.000Z","dependencies_parsed_at":"2023-11-08T05:41:30.107Z","dependency_job_id":"a20d4fed-0065-4beb-8984-5ab48088809b","html_url":"https://github.com/nyaosorg/nyagos","commit_stats":null,"previous_names":["zetamatta/nyagos"],"tags_count":163,"template":false,"template_full_name":null,"purl":"pkg:github/nyaosorg/nyagos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyaosorg%2Fnyagos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyaosorg%2Fnyagos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyaosorg%2Fnyagos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyaosorg%2Fnyagos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nyaosorg","download_url":"https://codeload.github.com/nyaosorg/nyagos/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyaosorg%2Fnyagos/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279021780,"owners_count":26087055,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["commandline","go","golang","golang-application","golang-tools","gopher-lua","lua","nyagos","shell"],"created_at":"2025-10-14T22:24:48.449Z","updated_at":"2025-10-14T22:24:50.206Z","avatar_url":"https://github.com/nyaosorg.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"[![Build status](https://ci.appveyor.com/api/projects/status/bh7866s6oasvchpj?svg=true)](https://ci.appveyor.com/project/zetamatta/nyagos)\r\n[![GoDoc](https://godoc.org/github.com/nyaosorg/nyagos?status.svg)](https://godoc.org/github.com/nyaosorg/nyagos)\r\n[![Go Report Card](https://goreportcard.com/badge/github.com/nyaosorg/nyagos)](https://goreportcard.com/report/github.com/nyaosorg/nyagos)\r\n[![Github latest Releases](https://img.shields.io/github/downloads/nyaosorg/nyagos/latest/total.svg)](https://github.com/nyaosorg/nyagos/releases/latest)\r\n\r\nThe Nihongo Yet Another GOing Shell\r\n===================================\r\n\r\n**\u0026lt;English\u0026gt;** / [\u0026lt;Japanese\u0026gt;](./README_ja.md)\r\n\r\nNYAGOS - Nihongo Yet Another GOing Shell is a versatile command-line shell that blends bash-like command-line editing with seamless integration of Windows file system paths and batch files. It offers extensive customization through the Lua scripting language and supports modern predictive input features.\r\n\r\n![demo-animation](./demo.gif)\r\n\r\n### Key Features\r\n\r\n#### UNIX-Like Shell Behavior\r\n- **Keybindings**\r\n  - By default, keybindings are similar to Bash.\r\n  - Customizable via Lua scripts in `%USERPROFILE%\\.nyagos`.\r\n    ```lua\r\n    nyagos.key.c_u = \"KILL_WHOLE_LINE\"\r\n    ```\r\n  - Lua functions can be bound to keys:\r\n    ```lua\r\n    nyagos.key.escape = function(this) nyagos.exec(\"start vim.exe\") end\r\n    ```\r\n- **History and Aliases**\r\n  - Supports `Ctrl-P` history search and `!-style` command recall.\r\n  - Alias system similar to DOSKEY:\r\n    ```lua\r\n    nyagos.alias[\"g++\"] = \"g++.exe -std=gnu++17 $*\"\r\n    ```\r\n  - Lua-powered aliases:\r\n    ```lua\r\n    nyagos.alias[\"lala\"] = function(args) nyagos.exec(\"ls\", \"-al\", unpack(args)) end\r\n    ```\r\n- **Custom Command Completion (Bash-Style Tab Completion)**\r\n  - Allows defining completions for specific commands.\r\n    ```lua\r\n    nyagos.complete_for[\"go\"] = function(args)\r\n        if #args == 2 then\r\n            return { \"bug\", \"doc\", \"fmt\", \"install\", \"run\", \"version\",\r\n                     \"build\", \"env\", \"generate\", \"list\", \"test\", \"vet\",\r\n                     \"clean\", \"fix\", \"get\", \"mod\", \"tool\" }\r\n        else\r\n            return nil -- file completion\r\n        end\r\n    end\r\n    ```\r\n- **Predictive Completion (PowerShell 7-Like)**\r\n  - Suggests completions based on command history.\r\n  - Predictions can be accepted using `Ctrl-F` or the right arrow key.\r\n\r\n#### Windows Compatibility\r\n- **Seamless Batch File Execution**\r\n  - Runs Windows batch files (`.bat` and `.cmd`) as if executed directly in CMD.exe.\r\n  - Captures environment variable changes and directory switches made within batch files.\r\n- **CMD.EXE-Like Features**\r\n  - Supports Windows path formats (`C:\\path\\to\\file`).\r\n  - Maintains a separate current directory for each drive.\r\n  - Includes built-in equivalents for common DOS commands (`copy`, `move`, etc.).\r\n  - No additional DLLs required, and no registry modifications.\r\n\r\n#### Enhanced User Experience\r\n- **Colorized Command-Line Interface**\r\n- **Unicode Support**\r\n  - Full compatibility with Windows Unicode APIs.\r\n  - Supports pasting and editing of Unicode characters.\r\n  - Special Unicode literals: `%U+XXXX%` and `$Uxxxx` for prompts.\r\n- **Built-in `ls` Command**\r\n  - Supports colorized output (`-o` option).\r\n  - Displays hard links, symbolic links, and junction targets.\r\n- **Support [SKK] (Simple Kana Kanji conversion program) - [Setup Guide][SKKSetUpEn]**\r\n\r\n### Supported Platforms\r\n- Windows 7, 8.1, 10, 11, Windows Server 2008 or later\r\n- Linux (experimental)\r\n\r\n[SKK]: https://ja.wikipedia.org/wiki/SKK\r\n[SKKSetUpEn]: doc/10-SetupSKK_en.md\r\n\r\n[Video by @emisjerry](https://www.youtube.com/watch?v=WsfIrBWwAh0)\r\n\r\nInstall\r\n-------\r\n\r\n### Download Binary\r\n\r\nDownload the latest stable release from:\r\n\r\n* https://github.com/nyaosorg/nyagos/releases\r\n\r\n### Use \"Scoop installer\"\r\n\r\n```cmd\r\nC:\u003e scoop install nyagos\r\n```\r\n\r\n### Use \"Chocolatey installer\"\r\n\r\n```cmd\r\nC:\u003e choco install nyagos\r\n```\r\n\r\n### Build from source (snapshot)\r\n\r\nIf you want to try the latest snapshot version, you can install it via `go install`:\r\n\r\n```cmd\r\nC:\u003e go install github.com/nyaosorg/nyagos@latest\r\n```\r\n\r\n\u003e ⚠️ Note: This builds a development snapshot, not the latest stable release.\r\n\r\nContents\r\n--------\r\n\r\n### Release notes\r\n\r\n[4.4.x](doc/release_note_en.md)\r\n/ [4.3.x](doc/history-4.3_en.md)\r\n/ [4.2.x](doc/history-4.2_en.md)\r\n/ [4.1.x](doc/history-4.1_en.md)\r\n/ [4.0.x](doc/history-4.0_en.md)\r\n\r\n### Documents\r\n\r\n1. [Install](doc/01-Install_en.md)\r\n2. [Option for NYAGOS](doc/02-Options_en.md)\r\n3. [Editor](doc/03-Readline_en.md)\r\n4. [Built-in commands](doc/04-Commands_en.md)\r\n5. [What is done on the Startup](doc/05-Startup_en.md)\r\n6. [Substitution](doc/06-Substitution_en.md)\r\n7. [Lua functions extenteded by NYAGOS](doc/07-LuaFunctions_en.md)\r\n8. [Uninstall](doc/08-Uninstall_en.md)\r\n9. [How To build](doc/09-Build_en.md)\r\n10. [How to setup SKK](doc/10-SetupSKK_en.md) (since v4.4.14)\r\n\r\nLicense\r\n-------\r\n\r\nYou can use, copy and modify under the New BSD License.\r\n\r\nAcknowledgement\r\n---------------\r\n\r\n[nocd5](https://github.com/nocd5)\r\n/ [mattn](https://github.com/mattn)\r\n/ [hattya](https://github.com/hattya)\r\n/ [shiena](https://github.com/shiena)\r\n/ [atotto](https://github.com/atotto)\r\n/ [ironsand](https://github.com/ironsand)\r\n/ [kardianos](https://github.com/kardianos)\r\n/ [malys](https://github.com/malys)\r\n/ [pine613](https://github.com/pine613)\r\n/ [NSP-0123456](https://github.com/NSP-0123456)\r\n/ [hokorobi](https://github.com/hokorobi)\r\n/ [amuramatsu](https://github.com/amuramatsu)\r\n/ [spiegel-im-spiegel](https://github.com/spiegel-im-spiegel)\r\n/ [rururutan](https://github.com/rururutan/)\r\n/ [hogewest](https://github.com/hogewest)\r\n/ [cagechi](https://github.com/cagechi)\r\n/ [Matsuyanagi](https://github.com/Matsuyanagi)\r\n/ [Shougo](https://github.com/Shougo)\r\n/ [orthographic-pedant](https://github.com/orthographic-pedant)\r\n/ HABATA Katsuyuki\r\n/ [hisomura](https://github.com/hisomura)\r\n/ [tsuyoshicho](https://github.com/tsuyoshicho)\r\n/ [rane-hs](https://github.com/rane-hs)\r\n/ [hami-jp](https://github.com/hami-jp)\r\n/ [3bch](https://github.com/3bch)\r\n/ [AoiMoe](https://github.com/aoimoe)\r\n/ [DeaR](https://github.com/DeaR)\r\n/ [gracix](https://github.com/gracix)\r\n/ [orz--](https://github.com/orz--)\r\n/ [zkangaroo](https://github.com/zkangaroo)\r\n/ [maskedw](https://github.com/maskedw)\r\n/ [tyochiai](https://github.com/tyochiai)\r\n/ [masamitsu-murase](https://github.com/masamitsu-murase)\r\n/ [hazychill](https://github.com/hazychill)\r\n/ [erw7](https://github.com/erw7)\r\n/ [tignear](https://github.com/tignear)\r\n/ [crile](https://github.com/crile)\r\n/ [fushihara](https://github.com/fushihara)\r\n/ [ChiyosukeF](https://twitter.com/ChiyosukeF)\r\n/ [beepcap](https://twitter.com/beepcap)\r\n/ [tostos5963](https://github.com/tostos5963)\r\n/ [sambatriste](https://github.com/sambatriste)\r\n/ [terepanda](https://github.com/terepanda)\r\n/ [Takmg](https://github.com/Takmg)\r\n/ nu8 \u003c!-- https://github.com/nu8 --\u003e\r\n/ [tomato3713](https://github.com/tomato3713)\r\n/ tGqmJHoJKqgK \u003c!-- https://github.com/tGqmJHoJKqgK --\u003e\r\n/ [juggler999](https://github.com/juggler999)\r\n/ [zztkm](https://github.com/zztkm)\r\n/ [8exBCYJi5ATL](https://github.com/8exBCYJi5ATL)\r\n/ [ousttrue](https://github.com/ousttrue)\r\n/ [kgasawa](https://github.com/kgasawa)\r\n/ [HAYASHI-Masayuki](https://github.com/HAYASHI-Masayuki)\r\n/ [naoyaikeda](https://github.com/naoyaikeda)\r\n/ [emisjerry](https://github.com/emisjerry)\r\n\r\nAuthor\r\n------\r\n\r\n* [hymkor - HAYAMA Kaoru](https://github.com/hymkor) (a.k.a zetamatta)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnyaosorg%2Fnyagos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnyaosorg%2Fnyagos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnyaosorg%2Fnyagos/lists"}