Age | Commit message (Collapse) | Author |
|
|
|
Enumerate the commands available in the interactive interface and
describe what they do.
|
|
Include a Gif screencast displayed in the README.
|
|
Include a description of the program, how to use it, install and
uninstall instructions, and license information.
A placeholder Demo section is also written in where a short screencast
is expected to be inserted.
|
|
Also include brief notices in the source files. Not a fan of the huge
blocks of text that the FSF recommends.
|
|
Create a Bash completion file that refers to the
`_pass_complete_entries` function from the `pass` Bash completion file.
The same completion options are given as when using `pass show`.
|
|
|
|
|
|
Get option extraction/parsing working both for STDIN and for calls to
`pass show`.
If no argument is passed to the executable or the first argument is "-",
options are read from STDIN. Otherwise, the first argument is passed to
`pass show`, the output of which is parsed as options.
|
|
Temporarily comment out code that deals with STDIN to get this feature
working. It complicated things to leave it in right now.
Given an argument that isn't "-" (STDIN), we pass that argument to `pass
show`. Users correctly get a password prompt from `pass`, and the output
from the command gets sent to the Passextract TUI for display in the
menu and copying.
|
|
|
|
Remove the duplication of these lines for the `j` and `k` commands by
extracting them to a function.
|
|
Make the title appear in white-on-black knockout text.
|
|
Use `_` for the default/general case. Do nothing in this case, just
continue looping.
|
|
Delete this line from the TUI display and adjust the real output lines
to be one line higher.
|
|
Don't move the cursor when the selection is changed. It was flickering,
which looked rather distracting. Removing the cursor makes the interface
look more fluid and snappy.
|
|
|
|
Read STDIN and get all lines that start with "e: ", "u: ", and "p: ". If
none are found, exit.
These lines get added to the `options` vector which then gets displayed
in the TUI. Since the contents of the vector are different from our
hard-coded one, use a borrow on the clipboard write call.
|
|
Change the colour of the selection arrow to red if there's an error and
green if the clipboard was written to successfully.
The colour only lasts for 100 milliseconds because that's the refresh
rate of the loop. This seems to be a nice way to briefly offer a visual
notification and automatically return the interface to normal right
afterward.
|
|
Better readability and it's the same. It looked a little darker than
white, that's why I changed it, but they're the same.
|
|
|
|
Allows us to copy to the system clipboard with a very simple interface.
|
|
Lines are formatted like:
e: email@example.com
This function turns that into:
email@example.com
It will be used to strip the "key" so that we can copy only the "value"
part of the line to the system clipboard.
|
|
The selection arrow can now be moved. Not liking the code duplication.
We'll have to figure something out to sort that.
|
|
Decided to track the location of the selection in a struct and make a
function to move the current selection. But I can't mutably borrow the
terminal because it's already mutable.
Will need to rethink this.
|
|
Create a hard-coded list of options for testing and print them to the
terminal interface.
These will eventually be selectable with `j`,`k`.
|
|
Print a URLView-like arrow for choice selection.
|
|
Alo update the title text with information on how to quit.
|
|
Output a single string to the terminal in the alternate screen. This
allows us to test the base functionality of what we'll need for a dialog
a la URLView.
Used Rustty's examples as a big reference.
|
|
|
|
Decided to remove Termion in favour of Rustty because it seems like it
has a simpler interface.
|
|
Terminal library to help with creating a text user interface.
|
|
|
|
Initialise a new project with `cargo init --bin`.
|