From c3740b984d64c59512ac5c9d8f04d7812d55fefc Mon Sep 17 00:00:00 2001 From: Kevin Zhuang Date: Tue, 4 Aug 2020 11:08:25 +1000 Subject: [PATCH] docs: update readme and changelog --- CHANGELOG.md | 6 ++++++ README.md | 31 +++++++++++++------------------ 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9b9d5ce..8fe16e5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,12 @@ Noteble changes are documentated in this file. - `dotbare` can now be used as a generic fuzzy git tool, using `-g` or `--git flag` - Sort of like a replacement for `forgit`, bascially just dynamiclly switching `DOTBARE_DIR` and `DOTBARE_TREE` to the current git directory. + - Seems kind of wierd to make `dotbare` also a fuzzy git client, but since it's literally + like a few lines of changes, I figured why not .. +- options for `fgrep` to configure search behavior in fzf + - `-c, --col`: pass in argument to specify which column to start searching in fzf (`dotbare fgrep --col 2`), by default `fgrep` starts the search from column 3, column 1 is the file name, column2 is the line number and starting from column 3 is the actual content. + - `-f, --full`: configure the fzf search to include all columns, same as using `dotbare fgrep --col 1` which includes the file name, line number and the actual content. +- dedicated completion file to use for package installation ### CHANGED diff --git a/README.md b/README.md index 3e91009..861a596 100644 --- a/README.md +++ b/README.md @@ -7,27 +7,21 @@ ## Introduction -`dotbare` is a command line utility to help manage dotfiles. It wraps around git bare -repository and heavily utilises [fzf](https://github.com/junegunn/fzf) for an interactive experience. -It is inspired by [forgit](https://github.com/wfxr/forgit), a git wrapper using fzf. -`dotbare` uses a different implementation approach and focuses on managing and interacting with system dotfiles. -Don't worry about migration if you have a symlink/GNU stow setup, you can easily integrate `dotbare` with them. - -Pros: - -- No symlink -- Simple setup/remove -- Customizable -- Easy migration -- Flat learning curve -- Manage dotfiles anywhere in your system -- Integration with symlink/GNU stow setup +`dotbare` is a command line utility to help manage dotfiles and or as a generic fuzzy git client. As a dotfile management tool, +it wraps around git bare repository, query git information from it and display them through [fzf](https://github.com/junegunn/fzf) for an +interactive experience. It is originally inspired by [forgit](https://github.com/wfxr/forgit), a git wrapper using fzf. +`dotbare` uses a different implementation approach and focuses on managing and interacting with system dotfiles. Because +of the flexible implementation of `dotbare`, it can easily integrate with symlink/GNU stow setup or even as a generic +fuzzy git client to use in any git repository. + +As a generic fuzzy git client (usign `--git` flag), `dotbare` dynamically determine the top level `.git` folder and process git information +and perform git operation in the current working tree. You could find out how git bare repository could be used for managing dotfiles [here](https://www.atlassian.com/git/tutorials/dotfiles). Or a [video](https://www.youtube.com/watch?v=tBoLDpTWVOM&t=288s) explanation that helped me to get started. If you are currently using a symlink/GNU stow setup, checkout how to integrate `dotbare` with them [here](#migrating-from-a-generic-symlink-setup-or-gnu-stow). -Select and edit tracked dotfiles. +Select and edit dotfiles. ![fedit](https://user-images.githubusercontent.com/43941510/87669391-37f28180-c7b1-11ea-907d-3b26f363a279.png) Stage and unstage dotfiles. ![fstat](https://user-images.githubusercontent.com/43941510/87669408-43de4380-c7b1-11ea-8a31-fc702eb69804.png) @@ -51,7 +45,8 @@ to another system as you will have to manually resolve all the git checkout issu all the git information and display it through fzf. In addition, `dotbare` also comes with command line completion that you could choose to either to complete `git` commands or `dotbare` commands. `dotbare` also comes with the ability to integrate with GNU stow or any symlink set up as long as you are using git. -It is easy to migrate to any system with minimal set up required. +It is easy to migrate to any system with minimal set up required. In addition, with a simple flag `--git`, you can +now also use `dotbare` as a generic fuzzy git client to manage any git repository. ## Install @@ -405,7 +400,7 @@ All usage and commands are documented in **[wiki](https://github.com/kazhala/dot ## Changes -Latest changes are documented in CHANGELOG.md. View the upcoming changes in the [CHANGELOG](https://github.com/kazhala/dotbare/blob/dev/CHANGELOG.md) of dev branch. +Latest changes are documented in [CHANGELOG](https://github.com/kazhala/dotbare/blob/master/CHANGELOG.md). ## Testing