Commit graph

4763 commits

Author SHA1 Message Date
ridiculousfish
ea407476d0 Correctly un-export an env var when it is shadowed
Prior to this fix, if you exported a variable in one scope
and then unexported it in the next, it would remain exported.
Example:

    set -gx VAR 1
    function foo; set -l VAR; env; end
    foo

Here 'VAR' would be exported to 'env' because we failed to
notice that the env var is shadowed by an unexported variable.
This occurred at env var computation time, not in env_set!

Fixes #2132
2015-06-12 16:11:45 -07:00
ridiculousfish
f3560b8e62 Correctly un-export an env var when it is shadowed
Prior to this fix, if you exported a variable in one scope
and then unexported it in the next, it would remain exported.
Example:

    set -gx VAR 1
    function foo; set -l VAR; env; end
    foo

Here 'VAR' would be exported to 'env' because we failed to
notice that the env var is shadowed by an unexported variable.
This occurred at env var computation time, not in env_set!

Fixes #2132
2015-06-12 16:05:59 -07:00
David Adam
18d7465592 Merge branch 'Integration_2.2.0' 2015-06-05 14:02:25 +08:00
David Adam
b6b6de3304 vi bindings: clear commandline with Ctrl-C
Closes #2077.
2015-06-05 14:01:43 +08:00
ridiculousfish
79a6961793 Add some simple documentation for fish_vi_mode 2015-06-04 13:18:17 -07:00
ridiculousfish
ec7dd1ece8 Add some simple documentation for fish_vi_mode 2015-06-04 13:17:33 -07:00
Michael Steed
cdfb425ac4 document new input functions 2015-06-04 12:09:02 -07:00
Michael Steed
cb984cf761 Add 'bigword' vi key bindings
- Add four new functions: forward-bigword, backward-bigword,
  kill-bigword, backward-kill-bigword
- Add new enum move_word_style_whitespace and related state machine
  method
- Change vi key bindings to operate on bigwords: B, gE, W, E, dW, diW,
  daW, dE, dB, dgE, cW, ciW, caW, cE, cB, cgE, yW, yiW, yaW, yE, yB,
  ygE
2015-06-04 12:09:02 -07:00
ridiculousfish
7efbcc039d Fix brace style in one line 2015-06-01 23:03:23 -07:00
ridiculousfish
6c53862ff1 Suppress uvar error messages due to permissions or file not found
su does not reset XDG_RUNTIME_DIR, which means that XDG_RUNTIME_DIR
may point to directories that the user does not have permission
to access. Similarly there is no guarantee that XDG_RUNTIME_DIR
points to a directory that actually exists. Rather than try to
handle these issues, we simply ignore them, effectively disabling
realtime uvar notifications. Fixes #1955.
2015-06-01 23:03:11 -07:00
ridiculousfish
d31eceddaf Suppress uvar error messages due to permissions or file not found
su does not reset XDG_RUNTIME_DIR, which means that XDG_RUNTIME_DIR
may point to directories that the user does not have permission
to access. Similarly there is no guarantee that XDG_RUNTIME_DIR
points to a directory that actually exists. Rather than try to
handle these issues, we simply ignore them, effectively disabling
realtime uvar notifications. Fixes #1955.
2015-06-01 22:26:36 -07:00
ridiculousfish
3a190bbe49 Revert "Notify vte-based terminals when a command completes."
Backing out fix for #2096 until we know how to avoid
spamming other terminals (#2102)

This reverts commit 5c4acc8ee1.
2015-05-30 11:57:31 -07:00
Ben Liblit
5c4acc8ee1 Notify vte-based terminals when a command completes.
Notification is sent using an OSC 777 escape sequence as described at
http://known.phyks.me/2014/local-notifications-for-weechat-and-urxvt.
The specific notification is crafted to match that emitted by bash
when running under Fedora 22 with the "vte-profile" RPM installed.
See the code for "__vte_prompt_command" starting at
http://pkgs.fedoraproject.org/cgit/vte291.git/tree/vte291-command-notify.patch#n307
to see exactly what bash produces.  My approach is, however, a bit
more paranoid about control characters embedded in commands.

Gnome-terminal 3.16 responds to this escape sequence by posting a
desktop notification if the containing terminal window does not have
focus.  This lets the user know that a long-running background command
has completed.  Job notification is promoted as a Fedora 22 feature
(http://fedoramagazine.org/terminal-job-notifications-in-fedora-22-workstation/),
so it would be good for fish users to be benefit from it.

Conversely, anyone who does not want this feature can use "functions
--erase __notify_vte_command_completed" to turn it off.
2015-05-28 03:10:56 -05:00
David Adam
92a9ba478b Update to newer install-sh version
(Now from Automake 1.14.1.)
2015-05-28 12:30:34 +08:00
David Adam
71a5db6961 Update to latest config.sub and config.guess versions
(Now from http://git.savannah.gnu.org/gitweb/?p=config.git;a=tree, timestamp
March 2015)
2015-05-28 12:29:46 +08:00
David Adam
013d91d4ee Revert "Add completions for pass"
This reverts commit bfbeca8b6c which was
submitted in #2089.

`pass` ships its own completions and duplication is likely to cause
problems.

See https://github.com/fish-shell/fish-shell/pull/1843 for the
rationale.
2015-05-25 12:02:05 +08:00
John Pham
8e0c1c70ce Add completions for git-filter-branch 2015-05-23 11:43:54 +02:00
Rico Sta. Cruz
bfbeca8b6c Add completions for pass 2015-05-23 06:07:57 +08:00
David Adam
c0cf25cf0b abbr: rename --remove to --erase
for consistency with other fish commands

Closes #2071.
2015-05-22 09:48:39 +08:00
ridiculousfish
edf6a951ee Unescape the token returned by builtin_commandline
Fixes #2075
2015-05-22 08:46:23 +08:00
David Adam
412a42246f mimedb: kill mimedb.h
Closes #2064.
2015-05-21 16:49:25 +08:00
David Adam
781b61d074 Merge branch 'Integration_2.2.0' 2015-05-21 15:32:23 +08:00
David Adam
1c99ef5b6e FAQ: shorter fish_title fix
[skip ci]
2015-05-21 12:05:21 +08:00
ridiculousfish
2008415106 Unescape the token returned by builtin_commandline
Fixes #2075
2015-05-19 22:13:55 -07:00
ridiculousfish
386d6a77f2 Make fish_config work correctly when IPv6 is disabled in the kernel
Fixes #1754
2015-05-17 19:18:27 -07:00
ridiculousfish
a83323705d Make fish_config work correctly when IPv6 is disabled in the kernel
Fixes #1754
2015-05-17 19:13:50 -07:00
ridiculousfish
29d22e4e8b Stop showing help for function on an error
It's long and obnoxious
2015-05-17 14:20:18 -07:00
ridiculousfish
286c60bc9d Correctly handle mixing named arguments with function name
Before this fix, `function -a arg1 name1` would produce a
function named 'arg1'. After this fix, it will produce a
function named 'name'. See #2068 for more.
2015-05-17 14:17:01 -07:00
Jeremy W. Sherman
c26d317da5 documents function options must follow name
When declaring a function using the function "function", the options must follow, not precede, the function name.

The examples demonstrate this syntax, but the synopsis previously showed the options preceding the name.
2015-05-17 14:45:54 -04:00
ridiculousfish
534fd1a59e Pass the character index, not the character, to parse_util_expand_variable_error
Fixes #2067
2015-05-15 17:56:12 -07:00
ridiculousfish
49b49d7ed4 Pass the character index, not the character, to parse_util_expand_variable_error
Fixes #2067
2015-05-15 17:17:30 -07:00
David Adam
14bf2ee5cb bump version for 2.21b 2015-05-05 08:37:06 +08:00
Jakukyo Friel
cec1dc2095 doc: faq: avoid overwriting config.fish.
In FAQ:

> I'm seeing weird output before each prompt when using screen. What's wrong?

The command provided is

    echo 'function fish_title;end' > ~/.config/fish/config.fish

Using `>` will overwrite current config.fish.

We should use `>>` instead.
2015-05-03 23:38:05 -07:00
Brendan Whitfield
9b5026f7e5 added cursor:pointer to master_element in web_config css 2015-05-03 17:33:25 +08:00
ridiculousfish
96dfd27725 Disable __fish_parse for 2.2 release
Fixes #1809
2015-05-02 21:35:49 -07:00
ridiculousfish
905d8b2aa5 Don't stop history search on repaint
Fixes #2044
2015-05-02 18:42:38 -07:00
ridiculousfish
3ca518255e Treat comments ending in backslashes as not continuing onto the next line
Fixes #1255
2015-05-02 18:22:20 -07:00
ridiculousfish
c59119e0b7 Correct a reference to the wrong issue. 613, not 163! 2015-05-02 17:54:32 -07:00
ridiculousfish
0748a4d8b6 Use a more appropriate type for the reader_test function 2015-05-02 17:49:38 -07:00
ridiculousfish
3722f91e38 Upgrade Xcode project format to latest 2015-05-02 17:12:34 -07:00
ridiculousfish
ba721d6cbf Teach Xcode build to create vendor_completions.d directory
Per #1485
2015-05-02 16:58:47 -07:00
David Adam
5532e5aa8a docs: document pkg-config command for vendor_completions.d 2015-05-01 16:56:21 +08:00
David Adam
9cae8bf8a6 docs: document __fish_complete_path function
Introduced with 6ece852 for #834.
2015-05-01 16:56:21 +08:00
David Adam
cb92a1d12f CHANGELOG: remove, unused
[skip ci]
2015-05-01 16:56:17 +08:00
ridiculousfish
1242e63b6a Use mode 0600 for history file
Fixes #2041
2015-04-29 17:52:50 -07:00
ridiculousfish
f30872a7b5 Recalculate exported variables when universal variable is erased
Fixes #2046
2015-04-29 17:28:49 -07:00
ridiculousfish
9c3a9a1e73 Remove a redundant implementation of append_syntax_error 2015-04-29 17:02:32 -07:00
ridiculousfish
c91f70523c Rework error messages to be shorter and to handle more special bash-isms
Example: we can point $* to argv

Fixes #1288
2015-04-29 16:53:02 -07:00
ridiculousfish
3d9c24196d Add test for error messages
Preparation for issue #1228
2015-04-25 18:47:17 -07:00
Ingo Blechschmidt
6f438f65de typo 2015-04-25 18:59:43 +02:00