Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Fish Completion Profile #239

Merged
merged 1 commit into from
Dec 13, 2018

Conversation

andrewmeyer
Copy link
Contributor

Fish Completion

This PR adds a tab completion profile to be used by the fish shell

  • Each command has a description provided during tab completion based on watson help
  • supports the autocompletion of existing projects
  • supports the autocompletion of existing tags once a project is specified
  • supports the autocompletion of frames (but lacks a description of which frame is which)
  • if backend.url is present in the config file, print it instead of a generic message when describing watson sync

Change Overview

docs

  • Adds a section detailing the installation of watson.fish and how to resource your shell

watson.fish

  • Adds the fish completion profile.

Test Cases

  • No test cases were performed (with the exception of me currently using the completions on two devices)
  • No changes were made to the core watson code

@andrewmeyer andrewmeyer changed the title Feature: Fish Completion Profile [WIP] Feature: Fish Completion Profile Dec 4, 2018
jmaupetit
jmaupetit previously approved these changes Dec 4, 2018
Copy link
Contributor

@jmaupetit jmaupetit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @andrewmeyer ! Thank you for this lovely contribution. I'm not using Fish shell but the syntax looks more natural than bash or zsh 😉

docs/index.md Outdated
Once this is done, re-source your fish config:
`source ~/.config/fish/config.fish`

You will now have command completion for fish, including the completion of known projects, tags, and frames`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
You will now have command completion for fish, including the completion of known projects, tags, and frames`.
You will now have command completion for fish, including the completion of known projects, tags, and frames.

@andrewmeyer
Copy link
Contributor Author

I realized that there are several more flags to add into this, I should be able to keep poking at this throughout the week to get parity between the auto completion and the command documentation section. I'll remove the WIP flag and @ someone for a final review

@andrewmeyer andrewmeyer changed the title [WIP] Feature: Fish Completion Profile Feature: Fish Completion Profile Dec 5, 2018
@jmaupetit
Copy link
Contributor

@k4nar do you speak Fish?

@jmaupetit
Copy link
Contributor

@andrewmeyer If you think we are good here, can you squash your commits? Then I'll merge this.

initial development work performed in https://github.com/andrewmeyer/fish-completions

expand documentation

expands documentation to include instructions on installing and
activating the fish completion script for watson.

provide lists of projects and tags for report/log

Extends the autocomplete functionality for log and report.
If -T/-p are provided, autocomplete a list of tags and projects
@andrewmeyer
Copy link
Contributor Author

@jmaupetit Thanks, everything should be squashed now. I've been using this for a week and I think I have worked out all of the features I commonly use. If something comes up I can always open another PR with bug fixes.

@jmaupetit
Copy link
Contributor

Sounds perfect! Thanks.

@jmaupetit jmaupetit merged commit f1a2c94 into jazzband:master Dec 13, 2018
@k4nar k4nar mentioned this pull request Dec 14, 2018
jmaupetit added a commit that referenced this pull request Mar 25, 2019
Added:

- New `add` command (#202)
- Add lunar start time options to the `report` and `log` commands (#215)
- Aggregate reports by day (#231)
- Fish shell completion (#239)
- Add support for first day of the week configuration in reports and logs (#240)
- Python 3.7 support (#241)
- Add `start --no-gap` and `stop --at` options (#254)

Changed:

- The `edit` command now checks data consistency (#203)
- Current state saving is now improve when using Watson as a library (#214)
- Prevent calling `get_start_time_for_period` multiple times (#219)

Fixed:

- Improved support for UTF-8 with Python 2 (#211)
- Zsh completion for tags and projects with spaces in their names (#227)
- Typos in commands output (#230, #235)
- Project URL of the project in PyPI (#260)

Removed:

- Python 3.3 support (#210).
@jmaupetit jmaupetit mentioned this pull request Mar 25, 2019
jmaupetit added a commit that referenced this pull request Mar 25, 2019
Added:

- New `add` command (#202)
- Add lunar start time options to the `report` and `log` commands (#215)
- Aggregate reports by day (#231)
- Fish shell completion (#239)
- Add support for first day of the week configuration in reports and logs (#240)
- Python 3.7 support (#241)
- Add `start --no-gap` and `stop --at` options (#254)

Changed:

- The `edit` command now checks data consistency (#203)
- Current state saving is now improve when using Watson as a library (#214)
- Prevent calling `get_start_time_for_period` multiple times (#219)

Fixed:

- Improved support for UTF-8 with Python 2 (#211)
- Zsh completion for tags and projects with spaces in their names (#227)
- Typos in commands output (#230, #235)
- Project URL of the project in PyPI (#260)

Removed:

- Python 3.3 support (#210).
jmaupetit added a commit that referenced this pull request Mar 25, 2019
Added:

- New `add` command (#202)
- Add lunar start time options to the `report` and `log` commands (#215)
- Aggregate reports by day (#231)
- Fish shell completion (#239)
- Add support for first day of the week configuration in reports and logs (#240)
- Python 3.7 support (#241)
- Add `start --no-gap` and `stop --at` options (#254)

Changed:

- The `edit` command now checks data consistency (#203)
- Current state saving is now improve when using Watson as a library (#214)
- Prevent calling `get_start_time_for_period` multiple times (#219)

Fixed:

- Improved support for UTF-8 with Python 2 (#211)
- Zsh completion for tags and projects with spaces in their names (#227)
- Typos in commands output (#230, #235)
- Project URL of the project in PyPI (#260)

Removed:

- Python 3.3 support (#210).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants