aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--etc/fish103
-rw-r--r--etc/fish.in33
-rw-r--r--share/fish58
-rw-r--r--share/functions/__fish_append.fish8
-rw-r--r--share/functions/__fish_seen_subcommand_from.fish16
5 files changed, 56 insertions, 162 deletions
diff --git a/etc/fish b/etc/fish
deleted file mode 100644
index 10c10e5f..00000000
--- a/etc/fish
+++ /dev/null
@@ -1,103 +0,0 @@
-#
-# Init file for fish
-#
-# etc/fish. Generated from fish.in by configure.
-
-#
-# Set default search paths
-#
-
-set -g fish_function_path ~/.fish.d/functions /etc/fish.d/functions /usr/share/functions
-set -g fish_complete_path ~/.fish.d/completions /etc/fish.d/completions /usr/share/completions
-
-#
-# Set default field separators
-#
-
-set -g IFS \ \t\n
-
-#
-# Add a few common directories to path, if they exists. Note that pure
-# console programs like makedep sometimes live in /usr/X11R6/bin, so we
-# want this even for text-only terminals.
-#
-
-set -l path_list /bin /usr/bin /usr/X11R6/bin /usr/bin /sw/bin
-
-# Root should also have the sbin directories in the path
-if test "$USER" = root
- set path_list $path_list /sbin /usr/sbin /usr/local/sbin
-end
-
-for i in $path_list
- if not expr "$PATH" : .\*$i.\* >/dev/null
- if test -d $i
- set PATH $PATH $i
- end
- end
-end
-
-
-#
-# Set some value for LANG if nothing was set before, and this is a
-# login shell. Also check for i18n information in /etc/sysconfig/i18n
-#
-
-if status --is-login
- if not set -q LANG >/dev/null
- set -gx LANG en_US.UTF-8
- end
-
- if test -f /etc/sysconfig/i18n
- eval (cat /etc/sysconfig/i18n |sed -ne 's/^\([a-zA-Z]*\)=\(.*\)$/set -gx \1 \2;/p')
- end
-end
-
-
-#
-# Put linux console in unicode mode. Should this be done in any other
-# situation as well?
-#
-
-if expr "$LANG" : ".*[Uu][Tt][Ff]" >/dev/null
- if test linux = "$TERM"
- unicode_start ^/dev/null
- end
-end
-
-
-#
-# There are variables that contain colons that are not arrays. This
-# reverts them back to regular strings.
-#
-
-for i in DISPLAY
- if set -q $i
- set -- $i (printf ":%s" $$i|cut -c 2-)
- end
-end
-
-#
-# Alias for gettext (or a fallback if gettext isn't installed) This
-# needs to be defined here and not in fish_function.fish, since it is
-# used by other init files.
-#
-
-function _ -d "Alias for the gettext command"
- printf "%s" $argv
-end
-if test 1 = "1"
- if which gettext ^/dev/null >/dev/null
- function _ -d "Alias for the gettext command"
- gettext fish $argv
- end
- end
-end
-
-#
-# Load additional initialization files
-#
-
-for i in fish.d/*.fish
- . $i
-end
diff --git a/etc/fish.in b/etc/fish.in
index b010c31a..8f58950b 100644
--- a/etc/fish.in
+++ b/etc/fish.in
@@ -39,22 +39,6 @@ end
#
-# Set some value for LANG if nothing was set before, and this is a
-# login shell. Also check for i18n information in /etc/sysconfig/i18n
-#
-
-if status --is-login
- if not set -q LANG >/dev/null
- set -gx LANG en_US.UTF-8
- end
-
- if test -f /etc/sysconfig/i18n
- eval (cat /etc/sysconfig/i18n |sed -ne 's/^\([a-zA-Z]*\)=\(.*\)$/set -gx \1 \2;/p')
- end
-end
-
-
-#
# Put linux console in unicode mode. Should this be done in any other
# situation as well?
#
@@ -78,23 +62,6 @@ for i in DISPLAY
end
#
-# Alias for gettext (or a fallback if gettext isn't installed) This
-# needs to be defined here and not in fish_function.fish, since it is
-# used by other init files.
-#
-
-function _ -d "Alias for the gettext command"
- printf "%s" $argv
-end
-if test 1 = "@HAVE_GETTEXT@"
- if which gettext ^/dev/null >/dev/null
- function _ -d "Alias for the gettext command"
- gettext fish $argv
- end
- end
-end
-
-#
# Load additional initialization files
#
diff --git a/share/fish b/share/fish
index 9877edd5..e2e592e0 100644
--- a/share/fish
+++ b/share/fish
@@ -13,6 +13,38 @@ set -g fish_function_path
# Don't need completions in non-interactive mode
#
+#
+# Alias for gettext (or a fallback if gettext isn't installed) This
+# needs to be defined here and not in fish_function.fish, since it is
+# used by other init files.
+#
+
+function _ -d "Alias for the gettext command"
+ printf "%s" $argv
+end
+if test 1 = "1"
+ if which gettext ^/dev/null >/dev/null
+ function _ -d "Alias for the gettext command"
+ gettext fish $argv
+ end
+ end
+end
+
+#
+# Set some value for LANG if nothing was set before, and this is a
+# login shell. Also check for i18n information in /etc/sysconfig/i18n
+#
+
+if status --is-login
+ if not set -q LANG >/dev/null
+ set -gx LANG en_US.UTF-8
+ end
+
+ if test -f /etc/sysconfig/i18n
+ eval (cat /etc/sysconfig/i18n |sed -ne 's/^\([a-zA-Z]*\)=\(.*\)$/set -gx \1 \2;/p')
+ end
+end
+
if not status --is-interactive
exit
end
@@ -55,36 +87,10 @@ end
set -l __fish_help_desc (_ "Display help and exit")
for i in (builtin -n|grep -vE '(while|for|if|function|switch)' )
-
complete -c $i -s h -l help -d $__fish_help_desc
end
-function __fish_append -d "Internal completion function for appending string to the commandline"
- set separator $argv[1]
- set -e argv[1]
- set str (commandline -tc| sed -ne "s/\(.*$separator\)[^$separator]*/\1/p"|sed -e "s/--.*=//")
- printf "%s\n" "$str"$argv "$str"(printf "%s\n" $argv|sed -e "s/\(\t\|\$\)/,\1/")
-end
-
-
-#
-# Test to see if we've seen a subcommand from a list.
-# This logic may seem backwards, but the commandline will often be much shorter
-# than the list
-#
-
-function __fish_seen_subcommand_from
- set -l -- cmd (commandline -poc)
- set -e cmd[1]
- for i in $cmd
- if contains -- $i $argv
- return 0
- end
- end
- return 1
-end
-
#
# Completions for SysV startup scripts
#
diff --git a/share/functions/__fish_append.fish b/share/functions/__fish_append.fish
new file mode 100644
index 00000000..e0174143
--- /dev/null
+++ b/share/functions/__fish_append.fish
@@ -0,0 +1,8 @@
+function __fish_append -d "Internal completion function for appending string to the commandline"
+ set separator $argv[1]
+ set -e argv[1]
+ set str (commandline -tc| sed -ne "s/\(.*$separator\)[^$separator]*/\1/p"|sed -e "s/--.*=//")
+ printf "%s\n" "$str"$argv "$str"(printf "%s\n" $argv|sed -e "s/\(\t\|\$\)/,\1/")
+end
+
+
diff --git a/share/functions/__fish_seen_subcommand_from.fish b/share/functions/__fish_seen_subcommand_from.fish
new file mode 100644
index 00000000..508b635b
--- /dev/null
+++ b/share/functions/__fish_seen_subcommand_from.fish
@@ -0,0 +1,16 @@
+#
+# Test to see if we've seen a subcommand from a list.
+# This logic may seem backwards, but the commandline will often be much shorter
+# than the list
+#
+
+function __fish_seen_subcommand_from
+ set -l -- cmd (commandline -poc)
+ set -e cmd[1]
+ for i in $cmd
+ if contains -- $i $argv
+ return 0
+ end
+ end
+ return 1
+end