|
|
|
|
@@ -138,8 +138,8 @@ these characters, so called escape sequences are provided. These are:
|
|
|
|
|
- <code>'\\x<i>xx</i>'</code>, where <code><i>xx</i></code> is a hexadecimal number, escapes the ascii character with the specified value. For example, \\x9 is the tab character.
|
|
|
|
|
- <code>'\\X<i>xx</i>'</code>, where <code><i>xx</i></code> is a hexadecimal number, escapes a byte of data with the specified value. If you are using a mutibyte encoding, this can be used to enter invalid strings. Only use this if you know what you are doing.
|
|
|
|
|
- <code>'\\<i>ooo</i>'</code>, where <code><i>ooo</i></code> is an octal number, escapes the ascii character with the specified value. For example, \\011 is the tab character.
|
|
|
|
|
- <code>'\\u<i>xxxx</i>'</code>, where <code><i>xxxx</i></code> is a hexadecimal number, escapes the 16-bit unicode character with the specified value. For example, \\u9 is the tab character.
|
|
|
|
|
- <code>'\\U<i>xxxxxxxx</i>'</code>, where <code><i>xxxxxxxx</i></code> is a hexadecimal number, escapes the 32-bit unicode character with the specified value. For example, \\U9 is the tab character.
|
|
|
|
|
- <code>'\\u<i>xxxx</i>'</code>, where <code><i>xxxx</i></code> is a hexadecimal number, escapes the 16-bit Unicode character with the specified value. For example, \\u9 is the tab character.
|
|
|
|
|
- <code>'\\U<i>xxxxxxxx</i>'</code>, where <code><i>xxxxxxxx</i></code> is a hexadecimal number, escapes the 32-bit Unicode character with the specified value. For example, \\U9 is the tab character.
|
|
|
|
|
- <code>'\\c<i>x</i>'</code>, where <code><i>x</i></code> is a letter of the alphabet, escapes the control sequence generated by pressing the control key and the specified letter. For example, \\ci is the tab character
|
|
|
|
|
|
|
|
|
|
\subsection redirects IO redirection
|
|
|
|
|
@@ -306,7 +306,7 @@ a filename consisting of the name of the function plus the suffix
|
|
|
|
|
|
|
|
|
|
The default value for \$fish_function_path is \c ~/.config/fish/functions
|
|
|
|
|
\c /etc/fish/functions \c /usr/share/fish/functions. The exact path
|
|
|
|
|
to the last two of these may be slighly different depending on what
|
|
|
|
|
to the last two of these may be slightly different depending on what
|
|
|
|
|
install path prefix was chosen at configuration time. The rationale
|
|
|
|
|
behind having three different directories is that the first one is for
|
|
|
|
|
user specific functions, the second one is for system-wide additional
|
|
|
|
|
@@ -466,11 +466,11 @@ prints a list of all user groups with the groups members as description.
|
|
|
|
|
|
|
|
|
|
<pre>__fish_complete_pids</pre>
|
|
|
|
|
|
|
|
|
|
prints a list of all procceses IDs with the command name as description.
|
|
|
|
|
prints a list of all processes IDs with the command name as description.
|
|
|
|
|
|
|
|
|
|
<pre>__fish_complete_suffix SUFFIX</pre>
|
|
|
|
|
|
|
|
|
|
performs file completion allowing only files ending in SUFFIX. The mimetype database is usded to find a suitable description.
|
|
|
|
|
performs file completion allowing only files ending in SUFFIX. The mimetype database is used to find a suitable description.
|
|
|
|
|
|
|
|
|
|
<pre>__fish_complete_users</pre>
|
|
|
|
|
|
|
|
|
|
@@ -494,7 +494,7 @@ prints a list of all known network interfaces.
|
|
|
|
|
<pre>__fish_print_packages</pre>
|
|
|
|
|
|
|
|
|
|
prints a list of all installed packages. This function currently handles
|
|
|
|
|
debian, rpm and gentoo packages.
|
|
|
|
|
Debian, rpm and Gentoo packages.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -509,7 +509,7 @@ of the name of the command to complete and the suffix '.fish'.
|
|
|
|
|
|
|
|
|
|
The default value for \$fish_complete_path is ~/.config/fish/completions,
|
|
|
|
|
/etc/fish/completions and /usr/share/fish/completions. The exact
|
|
|
|
|
path to the last two of these may be slighly different depending on
|
|
|
|
|
path to the last two of these may be slightly different depending on
|
|
|
|
|
what install path prefix was chosen at configuration time. If a
|
|
|
|
|
suitable file is found in one of these directories, it will be
|
|
|
|
|
automatically loaded and the search will be stopped. The rationale
|
|
|
|
|
@@ -519,14 +519,14 @@ completions and the last one is for default fish completions.
|
|
|
|
|
|
|
|
|
|
If you have written new completions for a common
|
|
|
|
|
Unix command, please consider sharing your work by sending it to <a
|
|
|
|
|
href='mailto: fish-users@lists.sf.net'>the fish mailinglist</a>.
|
|
|
|
|
href='mailto: fish-users@lists.sf.net'>the fish mailing list</a>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\section expand Parameter expansion (Globbing)
|
|
|
|
|
|
|
|
|
|
When an argument for a program is given on the commandline, it
|
|
|
|
|
undergoes the process of parameter expansion before it is sent on to
|
|
|
|
|
the command. Parameter expansion is a powerful set of mechamisms that
|
|
|
|
|
the command. Parameter expansion is a powerful set of mechanisms that
|
|
|
|
|
allow you to expand the parameter in various ways, including
|
|
|
|
|
performing wildcard matching on files, inserting the value of
|
|
|
|
|
environment variables into the parameter or even using the output of
|
|
|
|
|
@@ -749,7 +749,7 @@ the shell through <a href="expand-variable">variable expansion</a>.
|
|
|
|
|
|
|
|
|
|
Example:
|
|
|
|
|
|
|
|
|
|
To use the value of a the variable \c smurf, write $ (dollar symbol)
|
|
|
|
|
To use the value of the variable \c smurf, write $ (dollar symbol)
|
|
|
|
|
followed by the name of the variable, like <code>echo Smurfs are
|
|
|
|
|
usually $smurf_color</code>, which would print the result 'Smurfs are
|
|
|
|
|
usually blue'.
|
|
|
|
|
@@ -868,7 +868,7 @@ echo $PATH[3]
|
|
|
|
|
</pre>
|
|
|
|
|
|
|
|
|
|
Note that array indices start at 1 in fish, not 0, as is more common
|
|
|
|
|
in other languages. This is because many common unix tools like seq
|
|
|
|
|
in other languages. This is because many common Unix tools like seq
|
|
|
|
|
are more suited to such use.
|
|
|
|
|
|
|
|
|
|
If you do not use any brackets, all the elements of the array will be
|
|
|
|
|
@@ -975,7 +975,7 @@ variables can be one of the colors accepted by the <a
|
|
|
|
|
href='commands.html#set_color'>set_color</a> command. The \c --bold
|
|
|
|
|
or \c -b switches accepted by \c set_color are also accepted.
|
|
|
|
|
|
|
|
|
|
The following variables are available to change the highligting colors
|
|
|
|
|
The following variables are available to change the highlighting colors
|
|
|
|
|
in fish:
|
|
|
|
|
|
|
|
|
|
- \c fish_color_normal, the default color
|
|
|
|
|
@@ -1050,7 +1050,7 @@ Here are some of the commands available in the editor:
|
|
|
|
|
- Alt-left and Alt-right moves one word left or right, or moves forward/backward in the directory history if the commandline is empty
|
|
|
|
|
- Up and down search the command history for the previous/next command containing the string that was specified on the commandline before the search was started. If the commandline was empty when the search started, all commands match. See the <a href='#history'>history </a>section for more information on history searching.
|
|
|
|
|
- Alt-up and Alt-down search the command history for the previous/next token containing the token under the cursor before the search was started. If the commandline was not on a token when the search started, all tokens match. See the <a href='#history'>history </a>section for more information on history searching.
|
|
|
|
|
- Delete and backspace removes one character forwards or backwards respecitvely
|
|
|
|
|
- Delete and backspace removes one character forwards or backwards respectively
|
|
|
|
|
- Ctrl-c deletes entire line
|
|
|
|
|
- Ctrl-d delete one character to the right of the cursor, unless the buffer is empty, in which case the shell will exit
|
|
|
|
|
- Ctrl-k move contents from the cursor to the end of line to the <a href="#killring">killring</a>
|
|
|
|
|
@@ -1140,7 +1140,7 @@ than a single line:
|
|
|
|
|
|
|
|
|
|
- Pressing the enter key while a block of commands is unclosed, i.e. when one or more block commands such as 'for', 'begin' or 'if' do not have a corresponding 'end' command.
|
|
|
|
|
- Pressing Alt-enter instead of pressing the enter key.
|
|
|
|
|
- By backslash escaping a newline, i.e. by inserting a backslash (\\) character pefore pressing the enter key.
|
|
|
|
|
- By backslash escaping a newline, i.e. by inserting a backslash (\\) character before pressing the enter key.
|
|
|
|
|
|
|
|
|
|
The fish commandline editor works exactly the same in single line mode
|
|
|
|
|
and in multiline mode. To move between lines use the left and right
|
|
|
|
|
@@ -1280,9 +1280,9 @@ For more information on how to define new event handlers, see the
|
|
|
|
|
documentation for the <a href='commands.html#function'>function</a>
|
|
|
|
|
command.
|
|
|
|
|
|
|
|
|
|
\subsection debuging Debuging fish scripts
|
|
|
|
|
\subsection debugging Debugging fish scripts
|
|
|
|
|
|
|
|
|
|
Fish includes a built in debuger. The debuger allows you to stop
|
|
|
|
|
Fish includes a built in debugger. The debugger allows you to stop
|
|
|
|
|
execution of a script at an arbitrary point and launch a prompt. This
|
|
|
|
|
prompt can then be used to check or change the value of any variables
|
|
|
|
|
or perform any shellscript command. To resume normal execution of the
|
|
|
|
|
@@ -1290,15 +1290,15 @@ script, simply exit the prompt.
|
|
|
|
|
|
|
|
|
|
To start the debugger, simply call the builtin command
|
|
|
|
|
'breakpoint'. The default action of the TRAP signal is to call this
|
|
|
|
|
builtin, so a running script can be debuged by sending it the TRAP
|
|
|
|
|
signal. Once in the debuger, it is easy to insert new breakpoints by
|
|
|
|
|
builtin, so a running script can be debugged by sending it the TRAP
|
|
|
|
|
signal. Once in the debugger, it is easy to insert new breakpoints by
|
|
|
|
|
using the funced function to edit the definition of a function.
|
|
|
|
|
|
|
|
|
|
\section issues Common issues with fish
|
|
|
|
|
|
|
|
|
|
If you install fish in your home directory, fish will not work
|
|
|
|
|
correctly for any other user than yourself. This is because fish needs
|
|
|
|
|
its initalization files to function properly. To solve this
|
|
|
|
|
its initialization files to function properly. To solve this
|
|
|
|
|
problem, either copy the initialization files to each fish users home
|
|
|
|
|
directory, or install them in /etc.
|
|
|
|
|
|
|
|
|
|
@@ -1310,7 +1310,7 @@ making a translation. Currently, only the shell itself can be
|
|
|
|
|
translated, a future version of fish should also include translated
|
|
|
|
|
manuals.
|
|
|
|
|
|
|
|
|
|
To make a translation of fish, you will first need the sourcecode,
|
|
|
|
|
To make a translation of fish, you will first need the source code,
|
|
|
|
|
available from the <a href='http://www.fishshell.org'>fish
|
|
|
|
|
homepage</a>. Download the latest version, and then extract it using a
|
|
|
|
|
command like <code>tar -zxf fish-VERSION.tar.gz</code>.
|
|
|
|
|
@@ -1318,7 +1318,7 @@ command like <code>tar -zxf fish-VERSION.tar.gz</code>.
|
|
|
|
|
Next, cd into the newly created fish directory using <code>cd
|
|
|
|
|
fish-VERSION</code>.
|
|
|
|
|
|
|
|
|
|
You will now need to configure the sourcecode using the command
|
|
|
|
|
You will now need to configure the source code using the command
|
|
|
|
|
<code>./configure</code>. This step might take a while.
|
|
|
|
|
|
|
|
|
|
Before you continue, you will need to know the ISO 639 language code
|
|
|
|
|
@@ -1326,7 +1326,7 @@ of the language you are translating to. These codes can be found <a
|
|
|
|
|
href='http://www.w3.org/WAI/ER/IG/ert/iso639.htm'>here</a>. For
|
|
|
|
|
example, the language code for Uighur is ug.
|
|
|
|
|
|
|
|
|
|
Now you have the sourcecode and it is properly configured. Lets start
|
|
|
|
|
Now you have the source code and it is properly configured. Lets start
|
|
|
|
|
translating. To do this, first create an empty translation table for
|
|
|
|
|
the language you wish to translate to by writing <code>make
|
|
|
|
|
po/[LANGUAGE CODE].po</code> in the fish terminal. For example, if you
|
|
|
|
|
@@ -1346,7 +1346,7 @@ msgstr ""
|
|
|
|
|
</pre>
|
|
|
|
|
|
|
|
|
|
The first line is the English string to translate, the second line
|
|
|
|
|
should contain your translation. For example, in swedish the above
|
|
|
|
|
should contain your translation. For example, in Swedish the above
|
|
|
|
|
might become:
|
|
|
|
|
|
|
|
|
|
<pre>
|
|
|
|
|
@@ -1395,7 +1395,7 @@ g++, javac, java, gcj, lpr, doxygen, whois)
|
|
|
|
|
- Selectable completions in the pager
|
|
|
|
|
- Per process output redirection
|
|
|
|
|
- Reduce the space of the pager by one line to allow the commandline to remain visible.
|
|
|
|
|
- down-arrow could be used to save the current command to the history. Or give the next command in-sequnce. Or both.
|
|
|
|
|
- down-arrow could be used to save the current command to the history. Or give the next command in-sequence. Or both.
|
|
|
|
|
- Drop support for inputrc-files. Use shellscripts and the bind builtin. Also, redo the syntax for the bind builtin to something more sane.
|
|
|
|
|
- History could reload itself when the file is updated. This would need to be done in a clever way to avoid chain reactions
|
|
|
|
|
- The error function should probably be moved into it's own library, and be made mere general purpose.
|
|
|
|
|
@@ -1417,7 +1417,7 @@ g++, javac, java, gcj, lpr, doxygen, whois)
|
|
|
|
|
- delete-word is broken on the commandline 'sudo update-alternatives --config x-'
|
|
|
|
|
- Sometimes autoheader needs to be run on a fresh tarball. Fix dates before creating tarballs.
|
|
|
|
|
- The completion autoloader does not remember which completions where actually autoloaded, and may unload manually specified completions.
|
|
|
|
|
- There have been stray reports of issues with strang values of the PATH variable during startup.
|
|
|
|
|
- There have been stray reports of issues with strange values of the PATH variable during startup.
|
|
|
|
|
|
|
|
|
|
If you think you have found a bug not described here, please send a
|
|
|
|
|
report to <a href="mailto:fish-users@lists.sf.net">fish-users@lists.sf.net</a>.
|
|
|
|
|
|