{"id":16645867,"url":"https://github.com/y3owk1n/fish-x","last_synced_at":"2025-04-09T15:51:16.973Z","repository":{"id":215658399,"uuid":"739477184","full_name":"y3owk1n/fish-x","owner":"y3owk1n","description":"Extra common utilities for Fish 🐟","archived":false,"fork":false,"pushed_at":"2024-07-29T15:19:54.000Z","size":18,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-23T18:06:10.460Z","etag":null,"topics":["cli","commandline","fish","fish-packages","fish-plugin","fish-shell","fisher"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/y3owk1n.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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-05T16:56:46.000Z","updated_at":"2024-09-19T13:00:10.000Z","dependencies_parsed_at":"2025-02-15T08:32:13.296Z","dependency_job_id":"74f8108a-7802-425b-bf37-15b183786d06","html_url":"https://github.com/y3owk1n/fish-x","commit_stats":{"total_commits":32,"total_committers":1,"mean_commits":32.0,"dds":0.0,"last_synced_commit":"a105df8619854dcaf5db55784ce87cda9aed8ce7"},"previous_names":["y3owk1n/fish-x"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/y3owk1n%2Ffish-x","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/y3owk1n%2Ffish-x/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/y3owk1n%2Ffish-x/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/y3owk1n%2Ffish-x/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/y3owk1n","download_url":"https://codeload.github.com/y3owk1n/fish-x/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248063945,"owners_count":21041854,"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","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":["cli","commandline","fish","fish-packages","fish-plugin","fish-shell","fisher"],"created_at":"2024-10-12T08:25:40.763Z","updated_at":"2025-04-09T15:51:16.958Z","avatar_url":"https://github.com/y3owk1n.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Extra common utilities for Fish 🐟\n\n![GitHub Release](https://img.shields.io/github/v/release/y3owk1n/fish-x)\n![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/y3owk1n/fish-x/ci.yml)\n![GitHub License](https://img.shields.io/github/license/y3owk1n/fish-x)\n\nWelcome to `fish-x`, a Fish shell plugin that enhances your shell experience with upgraded commands on top of regular commands. Typically normal commands that ends with `x`.\n\n- `mkdirx` - Make a directory and cd into it.\n- `touchx` - Touch a new file and open in preferred editor.\n- `gclx` - Git clone a repository and cd into it.\n\n\u003e This plugin has no intention to wrap around normal commands. E.g. wrap around `mkdir` to make it auto cd. There might be alot internal use cases for these common commands. Just type an `x` for a slight quality of improvement in life.\n\n## Installation\n\n### Using Nix's Home Manager (Recommended)\n\n```fish\n{\n    programs.fish = {\n        enable = true;\n        plugins = [\n            {\n                name = \"fish-x\";\n                src = pkgs.fetchFromGitHub {\n                    owner = \"y3owk1n\";\n                    repo = \"fish-x\";\n                    rev = \"v1.2.0\";\n                    sha256 = \"generated-sha-256-values\";\n                };\n            }\n        ];\n    };\n}\n```\n\n### Using Fisher\n\n```fish\nfisher install y3owk1n/fish-x\n```\n\n### Manually\n\n1. Clone this repository:\n\n```fish\ngit clone https://github.com/y3owk1n/fish-x.git\n```\n\n2. Source the all the functions/*.fish file in your Fish configuration:\n\n```fish\nsource /path/to/gclx.fish\nsource /path/to/mkdirx.fish\nsource /path/to/touchx.fish\n```\n\n## Functions\n\n### 1. `gclx` - Git Clone and Change Directory\n\nThe `gclx` function simplifies the process of cloning a Git repository and navigating into it with a single command.\n\n#### Usage\n\n```fish\ngclx owner/repo\n```\n\nor\n\n```fish\ngclx https://github.com/owner/repo.git\n```\n\nWe support `--bare` flag for worktree users like me.\n\n```fish\ngclx --bare owner/repo\n```\n\n### 2. `mkdirx` - Create Directory and Change Directory\n\nThe `mkdirx` function combines creating a directory and changing into it in a single command, streamlining your workflow.\n\n#### Usage\n\n```fish\nmkdirx [folder-name]\n```\n\n### 3. `touchx` - Touch and Open in Editor\n\nThe `touchx` function creates or updates a file and opens it in your preferred editor, ensuring a seamless editing experience.\n\n#### Usage\n\n```fish\ntouchx [file-name]\n```\n\n## Configuration\n\nBefore using `touchx`, ensure that your preferred editor is set in the **$EDITOR** environment variable. You can set it using:\n\n```fish\nset -Ux EDITOR nvim # vim, code, emacs, etc.\n```\n\n## Troubleshooting\n\nIf you encounter any issues or errors, please refer to the ~~troubleshooting section in the wiki~~ (Not ready yet).\n\n## Contributions\n\nFeel free to contribute by opening issues, suggesting enhancements, or submitting pull requests. We value your feedback and ideas to enhance the capabilities of `fish-x` further!\n\n## License\n\nThis plugin is licensed under the MIT License. Feel free to use, modify, and distribute it as you see fit.\n\nHappy fishing! 🐟\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fy3owk1n%2Ffish-x","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fy3owk1n%2Ffish-x","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fy3owk1n%2Ffish-x/lists"}