{"id":16333165,"url":"https://github.com/niksingh710/cdots","last_synced_at":"2025-03-20T23:30:32.473Z","repository":{"id":150327374,"uuid":"610388096","full_name":"niksingh710/cdots","owner":"niksingh710","description":"Cli Configuration to be worked on terminal and compatible with TTy based for Arch Linux","archived":false,"fork":false,"pushed_at":"2024-06-02T11:30:02.000Z","size":44,"stargazers_count":10,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-01T00:53:25.967Z","etag":null,"topics":["bash","cdots","cli","command-line","commandline","configuration","dotfiles","dots","shell","starship","transient","zsh"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/niksingh710.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":"2023-03-06T17:11:21.000Z","updated_at":"2024-06-02T11:30:05.000Z","dependencies_parsed_at":"2023-10-04T22:29:21.892Z","dependency_job_id":"8d875eda-289c-4489-b80e-c4bf671daa81","html_url":"https://github.com/niksingh710/cdots","commit_stats":null,"previous_names":["niksingh710/cdots"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niksingh710%2Fcdots","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niksingh710%2Fcdots/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niksingh710%2Fcdots/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niksingh710%2Fcdots/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/niksingh710","download_url":"https://codeload.github.com/niksingh710/cdots/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244088997,"owners_count":20396207,"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":["bash","cdots","cli","command-line","commandline","configuration","dotfiles","dots","shell","starship","transient","zsh"],"created_at":"2024-10-10T23:34:32.987Z","updated_at":"2025-03-20T23:30:31.473Z","avatar_url":"https://github.com/niksingh710.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\" style=\"color:grey\"\u003e\n\n![image](https://github.com/niksingh710/cdots/assets/60490474/17f50b3e-2fdf-4914-b396-475574afeb68)\n\n\u003cdiv align=\"center\"\u003e\n\u003ctable\u003e\n\u003ctbody\u003e\n\u003ctd align=\"center\"\u003e\n\u003cimg width=\"2000\" height=\"0\"\u003e\u003cbr\u003e\n\nThese are my dot files for Commandline Instance on my system.\u003cbr\u003e\nI use **[Arch Linux](https://archlinux.org)** as My main OS and **[Zsh](https://www.zsh.org/)** as my Shell and **[Tmux](https://github.com/tmux/tmux)** as my Multiplexer.\u003cbr\u003e\nThe configuration highly uses **[Fzf](https://github.com/junegunn/fzf)** and **[Vim](https://github.com/vim/vim)** style key binding and **[Starship](https://github.com/starship/starship)** for Shell Prompt.\u003cbr\u003e\n\n![GitHub repo size](https://img.shields.io/github/repo-size/niksingh710/cdots)\n![GitHub Org's stars](https://img.shields.io/github/stars/niksingh710%2Fcdots)\n![GitHub forks](https://img.shields.io/github/forks/niksingh710/cdots)\n![GitHub last commit](https://img.shields.io/github/last-commit/niksingh710/cdots)\n\n\u003cimg width=\"2000\" height=\"0\"\u003e\n\u003c/td\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/div\u003e\n\u003c/p\u003e\n\n### Prerequisites\n\n```bash\nyay -S fd ripgrep shellcheck-bin shfmt advcpmv bat lsd git glow urlview git-secret \\\n  starship tmux fzf zoxide ssh zsh zsh-completions-git \\\n  trash-cli xstow ttf-jetbrains-mono-nerd \n```\n\n### Setup\n\nSetup is done by using `stow` command. I use xstow a fork of stow command.\u003cbr\u003e\nThis command will place the files in the correct location.\n\n```bash\nmkdir -p ~/.local/bin/\nxstow home -t ~\nxstow bin -t ~/.local/bin\nxstow .config -t ~/.config\n````\n\n### Structure\n`.zshrc` is in home Dir that contains all `zsh` related config.\u003cbr\u003e\n`~/.shell` dir contains:\u003cbr\u003e \n  - `path` file that adds all path's from the array to `$PATH` variable without cluttering it.\n  - `aliases` file that contains all the aliases with utility fns.\n`~/.local/bin` contains all the binaries required by the configuration.\n\n# Preview\n\n#### Starship prompt\n\u003e [!Note]\n\u003e I have a custom function in my zshrc to make my starship prompt Transient. \u003cbr\u003e\n(Transient) prompt is when the prompt is visible for only the current input and previous input just contains a symbol.\n\n![image](https://github.com/niksingh710/cdots/assets/60490474/1c1bff31-eb4f-43e7-8dd4-e55892622977)\n\n#### Fzf\nI have my fzf setted up via `~/.shell/fzf.zsh` where i perform mapping for fzf and setup `preview` script.\u003cbr\u003e\n**preview** script can preview text files, list dir's and also show images in fzf preview pane.\n\n\n\u003cdiv align=\"center\"\u003e\n\n| Mapping | Action |\n| - | - |\n| `Ctrl-j`  | Move down |\n| `Ctrl-k`  | Move Up |\n| `Ctrl-t` | List files in current dir |\n| `Alt-c` | List dir in current location |\n| `Ctrl-r` | Search throught Hitory |\n| `Ctrl-/` | Search for aur package with info to install|\n| `Ctrl-Alt-/` | Search for aur package with info to remove |\n| `Ctrl-space` (fzf list) | Select in multiple Selection |\n| `Ctrl-/` (fzf list) | DeSelect in multiple Selection |\n\u003c/div\u003e\n\n| ![image](https://github.com/niksingh710/cdots/assets/60490474/6a96631d-02c0-4c5a-a777-1edaff594081) | ![image](https://github.com/niksingh710/cdots/assets/60490474/3a761775-695a-4160-a835-6077fd1cc90a) |\n| - | - |\n\n| ![image](https://github.com/niksingh710/cdots/assets/60490474/6ab40586-9978-4b8c-b944-f0343e180b6a) | ![image](https://github.com/niksingh710/cdots/assets/60490474/bf5cf7cf-b5bc-4d59-92ed-d73c71f15df8) |\n| - | - |\n\n### Zsh\n\nI have setted up my zsh using **[znap](https://github.com/marlonrichert/zsh-snap)** plugin manager.\u003cbr\u003e\nIt makes plugin installation and completions management a breeze.\n\n- I use Vim mode for navigation in zsh. `jk` can be pressed in quick succession to switch in vim Mode. \u003cbr\u003e\n- `Ctrl-Space` is to complete throught the ghost text shown on the terminal. \u003cbr\u003e\n- In Completion option `j,k,l,h` vim navigations can be used. \n\n\u003cvideo loop autoplay src=\"https://github.com/niksingh710/cdots/assets/60490474/fe221a84-e321-4d9b-a339-695660635a6a\"\u003e\u003c/video\u003e\n\n\n\u003e[!Note]\n\u003e Nothing extra is required to be done zsh will automatically install everything.\n\n#### Yay\n\nI use `yay` as my aur helper.\nBelow is the commnad to be setup yay to ignore annoying questions regarding installs.\u003cbr\u003e\nThis will also force yay to check for git packages if they need rebuilding.\n\n```\nyay --save --answerclean \"None\" --answerdiff \"None\" --removemake --cleanafter --devel\n```\n#### Vim\n\nQuick vim setup for TTY. if don't want to setup whole shell\n\n```\n\ncurl https://raw.githubusercontent.com/niksingh710/cdots/master/home/.vimrc \u003e ~/.vimrc\n\n```\n\n\u003cdetails\u003e\n\n  \u003csummary style=\"font-weight:bold; font-size: 18px;\"\u003e\n    Tools\n  \u003c/summary\u003e\n\n- **Node**\n  - For Node js i recommend using [fnm](https://github.com/Schniz/fnm). My `~/.shell/path` already includes it as in path i only need to install it.\n- Rust\n  - Rustup for rust\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniksingh710%2Fcdots","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fniksingh710%2Fcdots","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniksingh710%2Fcdots/lists"}