3.2 (2020-04-07)
Key changes:
- Significantly faster initialization, significantly faster time per add
- Linux-friendly paths (with help from @AlwinW. Thanks!)
- More informative error messages
- Git alias import works again
- Two abbreviations are created for each Git alias,
abbr <alias>
andabbr -g g<alias>
- The user abbreviation file is kept alphabetized
- Anything in the user abbreviation file other than abbr commands is ignored and, after the first syncing action, sanitized away
- Erase does not insist that you pass the correct scope and type flags
- Under the hood updates to use more idiomatic zsh
- git aliases: one alias per array element (72b0bd7)
- git aliases: proper quoting (44432b2)
- import aliases: point to correct command (2fe9cbf)
- initialization: correct file name (d1e29eb)
- job: typo missing '/' in '/tmp/zsh-abbr-jobs' (e83f54c)
- job stack: play nice with bad options (c84a1bf)
- quotation marks: unsetting assoc array element requires quotes... (22336be)
- temp files: directory path plays nice with macos and linux (814d121)
- tests: test file is removed after tests run (77b0753)
- add, job stack: error messages are more informative (3611d33)
- alias, list, sync user: alphabetize, case-insensitively (459923c)
- debugging: support debug messages (add63cb)
- dry run: support env variable (a7df1d7)
- erase: guess unspecified type + scope; list if multiple matches (1976228)
- erase, rename: support dry run (c18a57d)
- export aliases: use list utility to support all quotation levels (ababcfd)
- fish: no longer any need to warn about quotation marks (a2878ea)
- git aliases: add unprefixed command aliases (4a7ab7e)
- git aliases: skip function aliases (2733d6b)
- importing: no help instructions when skipping an existing (b4e406c)
- init: at no point are the user temp files missing... (4603f5d)
- init: only run abbr commands in user file code... (93f2024)
- init: remove deprecated temp files (af1e348)
- init, performance: check to see if file exists before deleting (6cc58d3)
- job pop: don't add variable to session unnecessarily (c3af3d7)
- job stack: better error message (a3980df)
- job stack: ignore session-scope activity (9cd9616)
- job stack: prevent possibility of collision between sessions (099145a)
- job stack: surface the current job's identity (3257867)
- job stack, performance: max one stack item per session (f50df95)
- list: reinstate option to list abbreviations without expansions (99a16e2)
- rename, add: error includes type and scope (cdf22c0)
3.1.2 (2020-03-22)
- manpage: brew users get manpage, rest get text copy (ed35f49)
- quotes: quotation marks are preserved [#10] (5a3b905)
v3.1.1 (2020-03-07)
- export aliases: respect the abbreviation's type (69fb7a3)
- CONTRIBUTING: new file for GitHub friendliness (6d04986)
v3.1.0 (2020-03-07)
Look like zsh's alias
not fish's abbr
- list commands: rename from show (45b9a69)
- rename: shorthand is now capital -R and update tests (c0cdce2)
- show: listed session abbreviation commands include -S (57f98ea)
- list commands: support listing globals only (7418fac)
- list commands: support listing regulars only (a5cab16)
- list commands: support listing users only (9544e98)
- list definitions: with no arguments, behaves like zsh alias (6c1a7a8)
v3.0.2 (2020-03-07)
- expand and accept: respect trailing whitespace (f027565)
- expansion: no false positive expansions after (( (2b53f6a)
v3.0.1 (2020-03-07)
v3.0.0 (2020-03-01)
Parity with zsh alias's behavior: syntax is abbreviation=word
instead of fish abbr-like abbreviation word
. Distinguish between command-position abbreviations and global abbreviations. User abbreviations file is now at ${HOME}/.config/zsh/abbreviations
. Check the README documentation for --import-fish
to move from fish abbr and zsh-abbr<\v3 to zsh-abbr v3.
- erase, rename: support global expansions (bab6341)
- expansion: shell grammar word splitting determines current word (a3c00f5)
- global abbreviations: distinct from command abbreviations (cd58e0d)
- import aliases: rename from populate (2d4153a)
- import git aliases: rename from git populate (2f8e7bf)
- init,add,erase,rename: use abbr=expansion syntax (455dc75)
- scope: shorthand for --session is now -S (cf2f3b8)
- user file: no '-a -U' (ecb367e)
- user file, exported variables: style(env functions, env variables): more consistent naming (2f52f9f)
- abbreviation, expansion: can be just a hyphen (be1a0c9)
- dry run: support for add, import, and rename (59cbdee)
- import fish: new option + documentation (6d674bb)
- list: sections are divided with a newline (055e378)
- storage: globals are at top of file (79a920b)
- sync: use latest user globals (44b8281)
- tests: add basic test suite (af08727)
v2.1.3 (2020-02-26)
- expansion: refresh and style autosuggestions after space (73fc250)
v2.1.2 (2020-02-24)
- expansion: highlighting call is not necessary... (5d1fde0)
v2.1.1 (2020-02-22)
- scratch file: Linux compatibility (#3 by @ifreund) (0e647cd)
v2.1.0 (2020-02-03)
Under the hood polish; cut down on what is made available to the session; and
- aliases: flag changed to --output-aliases (shorthand -o) from --create-aliases (-c) (6b922c2)
- clear globals: flag changed to --clear-globals (shorthand -c) from --erase-all-globals (-E) (bf90f87)
- storage: universals file is a list of 'abbr -a' commands (2e191d1)
- scope: only a single scope flag is allowed (7114a1b)
- scope: no internal variables or functions bleed (4358c2b)
- add: support explicit end of options with -- (1085a29)
- options: no error on hyphen (a25c7da)
- rename: suggest changing scope if abbreviation exists in the other scope but not in the specified one (0473fb7)
- word: delimit by '&&', '|', ';', and whitespace (44b3740)
- zinit: verified installation documentation (7890320)
v2.0.0 (2020-01-19)
- universals: change variable name (7ee831b)
- expansion widget: abbreviations can end in n or t (16feffe)
- erase-all-globals: new option (f7b1bee)
- version: new option (206f521)
- universals: change default path (c7ba374)
v1.2.0 (2020-01-12)
- erase: universal abbreviations can be erased (1d67c8c)
- expansion: when expanding with spacebar, append a space (e5b4696)
- git-populate: synax error (e78eb2b)
- rename: correct syntax for removing an abbreviation (f99834a)
- synching: correct paths (6cc7e0c, aa80f5d)
- arguments: support long options (9386436)
- bindings: add variable for opting out of defaults (7edd67e)
- create-aliases: new option (35ace71)
- expansion: plays nice with zsh-autosuggestions (e19a0a1)
- expansion: support expand-on-enter (has suggestions bug) (f8356be)
- expansion: support zsh-syntax-highlighting (cff6dc0)
- rename: error if old doesn't exist or new already exists (a030670)
v1.1.0 (2019-01-26)
Bug fixes and
v1.0.0 (2019-01-26)
Feature parity with fish's abbr