mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-23 14:40:37 +08:00
Simplify styling
This commit is contained in:
parent
8ac0fdfea7
commit
cb5c560688
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -37,7 +37,6 @@ version
|
|||
messages.pot
|
||||
|
||||
lexicon.txt
|
||||
doc_src/user_doc.css
|
||||
doc_src/fish_lexicon_filter
|
||||
debug-lexicon.log
|
||||
|
||||
|
|
|
@ -244,6 +244,7 @@ ALIASES += "blah{1}=\1"
|
|||
ALIASES += "cmnd{1}=\1"
|
||||
ALIASES += "func{1}=\1"
|
||||
ALIASES += "sbin{1}=\1"
|
||||
ALIASES += "args{1}=\1"
|
||||
ALIASES += "opts{1}=\1"
|
||||
ALIASES += "vars{1}=\1"
|
||||
ALIASES += "optr{1}=\1"
|
||||
|
|
|
@ -244,6 +244,7 @@ ALIASES += "blah{1}=<span class=\"comment\">\1</span>"
|
|||
ALIASES += "cmnd{1}=<span class=\"command\">\1</span>"
|
||||
ALIASES += "func{1}=<span class=\"function\">\1</span>"
|
||||
ALIASES += "sbin{1}=<span class=\"binary\">\1</span>"
|
||||
ALIASES += "args{1}=<span class=\"argument\">\1</span>"
|
||||
ALIASES += "opts{1}=<span class=\"argument\">\1</span>"
|
||||
ALIASES += "vars{1}=<span class=\"variable\">\1</span>"
|
||||
ALIASES += "optr{1}=<span class=\"operator\">\1</span>"
|
||||
|
|
44
Makefile.in
44
Makefile.in
|
@ -264,33 +264,6 @@ user_doc: $(HDR_FILES_SRC) Doxyfile.user $(HTML_SRC) $(HELP_SRC) doc.h $(HDR_FIL
|
|||
echo PROJECT_NUMBER=$(FISH_BUILD_VERSION) | sed "s/-.*//") | doxygen - && touch user_doc; \
|
||||
cd user_doc/html; rm -f bc_s.png bdwn.png closed.png ftv2*.png nav*.png open.png sync_*.png tab*.* doxygen.* dynsections.js jquery.js pages.html
|
||||
|
||||
#
|
||||
# Build the help CSS files, using fish_lexicon_filter
|
||||
#
|
||||
doc_src/user_doc.css: doc_src/user_doc.css.in doc_src/fish_lexicon_filter
|
||||
-rm $@
|
||||
cd doc_src; \
|
||||
cat $@.in | awk '{if ($$0 ~ /@normal@/) { system("echo style normal | ./fish_lexicon_filter"); } \
|
||||
else if ($$0 ~ /@autosuggestion@/) { system("echo style autosuggestion | ./fish_lexicon_filter"); } \
|
||||
else{ print $$0;}}' >$@
|
||||
|
||||
|
||||
# @autosuggestion@
|
||||
# @command@
|
||||
# @comment@
|
||||
# @cwd@
|
||||
# @error@
|
||||
# @history_current@
|
||||
# @match@
|
||||
# @normal@
|
||||
# @operator@
|
||||
# @param@
|
||||
# @quote@
|
||||
# @redirection@
|
||||
# @search_match@
|
||||
# @user@
|
||||
# @valid_path@
|
||||
|
||||
#
|
||||
# Source code documentation. Also includes user documentation.
|
||||
#
|
||||
|
@ -386,14 +359,7 @@ lexicon.txt: doc_src/commands.hdr $(FUNCTIONS_DIR_FILES) $(COMPLETIONS_DIR_FILES
|
|||
-e 'w lexicon_catalog.tmp' \
|
||||
-e "s|'\(.*\)'|func \1|p"; \
|
||||
sed <share/functions/__fish_config_interactive.fish >>lexicon.tmp -n \
|
||||
-e '/set_default/s/.*\(fish_[a-z][a-z_]*\).*$$/clrv \1/p' \
|
||||
-e '$$G;s/.*\n/==end==/p'; \
|
||||
sed <share/functions/__fish_config_interactive.fish >>lexicon.tmp -n \
|
||||
-e '1G;s/.*\n/==styles==/p' \
|
||||
-e '/set_default/s/.*fish_color\(_[a-z][a-z_]*\)/style\1/' \
|
||||
-e '/^style_/s/_\([^ ]*\) --\([^ ]*\).*$$/ \1 \2/p' \
|
||||
-e '/^style_/s/_\([^ ]* [^- ]*\) --\([^ ]*\).*$$/ \1 \2/p' \
|
||||
-e '/^style_/s/_\([^ ]* [^- ]*\).*$$/ \1/p'; \
|
||||
-e '/set_default/s/.*\(fish_[a-z][a-z_]*\).*$$/clrv \1/p'; \
|
||||
mv lexicon.tmp lexicon.txt; rm -f lexicon_catalog.tmp lexicon_catalog.txt;
|
||||
|
||||
#
|
||||
|
@ -414,11 +380,7 @@ doc_src/fish_lexicon_filter: lexicon.txt doc_src/fish_lexicon_filter.in
|
|||
sed <$@.in >$@.tmp -e 's|@sed@|'"`command -v sed`"'|' -e '/^[ ]*#[^!]/d'
|
||||
# Scan through the lexicon, transforming each line to something usefue to Doxygen.
|
||||
sed <lexicon.txt >>$@.tmp -n \
|
||||
-e 's|^\([a-z][a-z][a-z][a-z]\) \([a-z_-]*\)$$|s,[[:<:]]\2[[:>:]],@\1{\2},g|p' \
|
||||
-e '/==end==/G;s/.*\n/b tidy/p' \
|
||||
-e '/==styles==/G;s/.*\n/:styles/p' \
|
||||
-e 's|^\(style [^ ]*\) \(.*\)$$|s,\1,\2,|p' \
|
||||
-e '$$G;s/.*\n/b processstyle/p'; \
|
||||
-e 's|^\([a-z][a-z][a-z][a-z]\) \([a-z_-]*\)$$|s,[[:<:]]\2[[:>:]],@\1{\2},g|p';
|
||||
mv $@.tmp $@; if test -x $@; then true; else chmod a+x $@; fi
|
||||
|
||||
#
|
||||
|
@ -840,7 +802,7 @@ clean:
|
|||
rm -f $(PROGRAMS) fish_tests key_reader
|
||||
rm -f command_list.txt command_list_toc.txt toc.txt
|
||||
rm -f doc_src/index.hdr doc_src/commands.hdr
|
||||
rm -f doc_src/fish_lexicon_filter lexicon.txt doc_src/user_doc.css
|
||||
rm -f doc_src/fish_lexicon_filter lexicon.txt
|
||||
rm -f FISH-BUILD-VERSION-FILE
|
||||
if test "$(HAVE_DOXYGEN)" = 1; then \
|
||||
rm -rf doc user_doc share/man; \
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section alias alias - create a function
|
||||
|
||||
\subsection alias-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
alias NAME DEFINITION
|
||||
alias NAME=DEFINITION
|
||||
\endfish
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section and and - conditionally execute a command
|
||||
|
||||
\subsection and-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
COMMAND1; and COMMAND2
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section begin begin - start a new block of code
|
||||
|
||||
\subsection begin-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
begin; [COMMANDS...;] end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section bg bg - send jobs to background
|
||||
|
||||
\subsection bg-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
bg [PID...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section bind bind - handle fish key bindings
|
||||
|
||||
\subsection bind-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
bind [OPTIONS] SEQUENCE COMMAND
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section block block - temporarily block delivery of events
|
||||
|
||||
\subsection block-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
block [OPTIONS...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section break break - stop the current inner loop
|
||||
|
||||
\subsection break-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
LOOP_CONSTRUCT; [COMMANDS...] break; [COMMANDS...] end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section breakpoint breakpoint - Launch debug mode
|
||||
|
||||
\subsection breakpoint-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
breakpoint
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section builtin builtin - run a builtin command
|
||||
|
||||
\subsection builtin-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
builtin BUILTINNAME [OPTIONS...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section case case - conditionally execute a block of commands
|
||||
|
||||
\subsection case-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
switch VALUE; [case [WILDCARD...]; [COMMANDS...]; ...] end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section cd cd - change directory
|
||||
|
||||
\subsection cd-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
cd [DIRECTORY]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section command command - run a program
|
||||
|
||||
\subsection command-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
command COMMANDNAME [OPTIONS...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section commandline commandline - set or get the current command line buffer
|
||||
|
||||
\subsection commandline-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
commandline [OPTIONS] [CMD]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section complete complete - edit command specific tab-completions
|
||||
|
||||
\subsection complete-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
complete ( -c | --command | -p | --path) COMMAND
|
||||
[( -s | --short-option) SHORT_OPTION]
|
||||
[( -l | --long-option | -o | --old-option) LONG_OPTION]
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section contains contains - test if a word is present in a list
|
||||
|
||||
\subsection contains-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
contains [OPTIONS] KEY [VALUES...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section continue continue - skip the remainder of the current iteration of the current inner loop
|
||||
|
||||
\subsection continue-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
LOOP_CONSTRUCT; [COMMANDS...;] continue; [COMMANDS...;] end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section count count - count the number of elements of an array
|
||||
|
||||
\subsection count-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
count $VARIABLE
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section dirh dirh - print directory history
|
||||
|
||||
\subsection dirh-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
dirh
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section dirs dirs - print directory stack
|
||||
|
||||
\subsection dirs-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
dirs
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section echo echo - display a line of text
|
||||
|
||||
\subsection echo-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
echo [STRING]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section else else - execute command if a condition is not met
|
||||
|
||||
\subsection else-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
if CONDITION; COMMANDS_TRUE...; [else; COMMANDS_FALSE...;] end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section emit emit - Emit a generic event
|
||||
|
||||
\subsection emit-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
emit EVENT_NAME [ARGUMENTS...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section end end - end a block of commands.
|
||||
|
||||
\subsection end-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
begin; [COMMANDS...] end
|
||||
if CONDITION; COMMANDS_TRUE...; [else; COMMANDS_FALSE...;] end
|
||||
while CONDITION; COMMANDS...; end
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section eval eval - evaluate the specified commands
|
||||
|
||||
\subsection eval-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
eval [COMMANDS...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section exec exec - execute command in current process
|
||||
|
||||
\subsection exec-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
exec COMMAND [OPTIONS...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section exit exit - exit the shell
|
||||
|
||||
\subsection exit-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
exit [STATUS]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section fg fg - bring job to foreground
|
||||
|
||||
\subsection fg-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
fg [PID]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section fish fish - the friendly interactive shell
|
||||
|
||||
\subsection fish-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
fish [-h] [-v] [-c command] [FILE [ARGUMENTS...]]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section fish_indent fish_indent - indenter and prettifier
|
||||
|
||||
\subsection fish_indent-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
fish_indent [options]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -57,53 +57,10 @@
|
|||
# End block
|
||||
/\\endfish/b
|
||||
}
|
||||
/style/b styles
|
||||
#.
|
||||
# This is not the pattern we're looking for
|
||||
b
|
||||
#.
|
||||
# Sets CSS styles according to fish defaults.
|
||||
#.
|
||||
# Used for building the documentation's CSS file
|
||||
#.
|
||||
:processstyle
|
||||
#. Make Hex uniform
|
||||
s/0x//g
|
||||
/[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]*/ {
|
||||
y/ABCDEF/abcdef/
|
||||
s/^[0-9a-f]/#&/
|
||||
}
|
||||
#.
|
||||
# Set simple styles
|
||||
#.
|
||||
s/bold/font-weight:bold;/
|
||||
#.
|
||||
# Replace named colours (taken from color.cpp)
|
||||
#.
|
||||
s/black/#000/
|
||||
s/red/#f00/
|
||||
s/green/#0f0/
|
||||
s/brown/#725000/
|
||||
s/yellow/#ff0/
|
||||
s/blue/#00f/
|
||||
s/magenta/#f0f/
|
||||
s/purple/#f0f/
|
||||
s/cyan/#0ff/
|
||||
s/white/#fff/
|
||||
s/normal/#fff text-decoration:none; border-bottom:none; font-weight:normal;/
|
||||
#.
|
||||
/background/ {
|
||||
s/background=\(#[0-9a-f][0-9a-f][0-9a-f][0-9a-f]*\)/background-color: \1;/
|
||||
}
|
||||
/underline/ {
|
||||
s/^\(#[0-9a-f][0-9a-f][0-9a-f][0-9a-f]*\).*$/\1 border-bottom: 2px solid \1;/
|
||||
s/^underline$/text-decoration: underline;/
|
||||
}
|
||||
# If we start with just a colour, make it explicit.
|
||||
s/^#[0-9a-f][0-9a-f]*/color: &;/
|
||||
#.
|
||||
# All done, return CSS style content
|
||||
b
|
||||
# Process any HTML tags.
|
||||
# Structured to reduce sed's greediness.
|
||||
:html
|
||||
|
@ -204,7 +161,7 @@ s/-\([A-Za-z]\)\([^A-Za-z}]\)/\\\
|
|||
\2/g
|
||||
#.
|
||||
# Long options
|
||||
s/--\([A-Za-z][A-Za-z0-9=_-]*\)\([^A-Za-z0-9]\)/\\\
|
||||
s/--\([A-Za-z][A-Za-z0-9=_-]*\)\([^A-Za-z0-9=_-]*\)/\\\
|
||||
<@opts{--\1}\
|
||||
\2/g
|
||||
#.
|
||||
|
@ -259,6 +216,9 @@ s/\n//g
|
|||
s/\(fsfo{[^@]*\)@sbin{\([^}]*\)}/\1\2/
|
||||
t cleanfsfo
|
||||
}
|
||||
# Convert 2nd order commands/functions and binaries to arguments
|
||||
s/@cmnd/@args/g
|
||||
s/@args/@cmnd/1
|
||||
# Character Entities
|
||||
#.
|
||||
# Mark up a few sesitive characters.
|
||||
|
@ -293,7 +253,7 @@ s/^[ ]*[^<][^@][^}]*$//
|
|||
s/^[ ]*[^<][^@][^\\]*[\\ ()]*\n//
|
||||
:holdflush
|
||||
s/}[)(\\ ][)(\\ ]*/}/
|
||||
s/\n[];)|* ][^\\]*[\\]*//
|
||||
s/\n[];)|* -][^\\]*[\\]*//
|
||||
t holdflush
|
||||
s/\n$//
|
||||
#.
|
||||
|
@ -321,7 +281,7 @@ s/\([A-Za-z*][A-Za-z]*\.[a-z0-9][a-z0-9]*\)/@fsfo{\1}/g
|
|||
#.
|
||||
# Manually add a few commands not harvested from source.
|
||||
#.
|
||||
s,[[:<:]]in[[:>:]],@cmnd{in},g
|
||||
s,[[:<:]]in[[:>:]],@args{in},g
|
||||
s,[[:<:]]whoami[[:>:]],@sbin{whoami},g
|
||||
s,[[:<:]]fishd[[:>:]],@sbin{fishd},g
|
||||
#.
|
||||
|
@ -360,8 +320,3 @@ s,[[:<:]]fishd[[:>:]],@sbin{fishd},g
|
|||
# single line.
|
||||
#.
|
||||
# b tidy
|
||||
#.
|
||||
# Colour lookup functions
|
||||
#.
|
||||
# The Makefile will add a table of colour names and values, possibly with
|
||||
# extra style information, that are used to set defaults in the CSS file.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section fish_prompt fish_prompt - define the appearance of the command line prompt
|
||||
|
||||
\subsection fish_prompt-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
function fish_prompt
|
||||
...
|
||||
end
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section fish_right_prompt fish_right_prompt - define the appearance of the right-side command line prompt
|
||||
|
||||
\subsection fish_right_prompt-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
function fish_right_prompt
|
||||
...
|
||||
end
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section for for - perform a set of commands multiple times.
|
||||
|
||||
\subsection for-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
for VARNAME in [VALUES...]; COMMANDS...; end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section funced funced - edit a function interactively
|
||||
|
||||
\subsection funced-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
funced [OPTIONS] NAME
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section funcsave funcsave - save the definition of a function to the user's autoload directory
|
||||
|
||||
\subsection funcsave-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
funcsave FUNCTION_NAME
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section function function - create a function
|
||||
|
||||
\subsection function-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
function [OPTIONS] NAME; BODY; end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section functions functions - print or erase functions
|
||||
|
||||
\subsection functions-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
functions [-a|--all] [-n|--names]
|
||||
functions -c OLDNAME NEWNAME
|
||||
functions -d DESCRIPTION FUNCTION
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section help help - display fish documentation
|
||||
|
||||
\subsection help-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
help [SECTION]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section history history - Show and manipulate command history
|
||||
|
||||
\subsection history-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
history [--save|--clear|--merge]
|
||||
history [--search|--delete] [--prefix "prefix string"|--contains "search string"]
|
||||
\endfish
|
||||
|
@ -13,7 +13,7 @@ history [--search|--delete] [--prefix "prefix string"|--contains "search string"
|
|||
The following options are available:
|
||||
- `--save` saves all changes in the history file. The shell automatically saves the history file; this option is provided for internal use.
|
||||
- `--clear` clears the history file. A prompt is displayed before the history is erased.
|
||||
- `--merge` immediately incorporates history changes from other sessions. Ordinarily fish ignores history changes from sessions started after the current one. This command applies those changes immediately.
|
||||
- `--merge` immediately incorporates history changes from other sessions. Ordinarily `fish` ignores history changes from sessions started after the current one. This command applies those changes immediately.
|
||||
- `--search` returns history items in keeping with the `--prefix` or `--contains` options.
|
||||
- `--delete` deletes history items.
|
||||
- `--prefix` searches or deletes items in the history that begin with the specified text string.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section if if - conditionally execute a command
|
||||
|
||||
\subsection if-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
if CONDITION; COMMANDS_TRUE...; [else if CONDITION2; COMMANDS_TRUE2...;] [else; COMMANDS_FALSE...;] end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -182,7 +182,7 @@ When you start a job in `fish`, `fish` itself will pause, and give control of th
|
|||
Example:
|
||||
|
||||
\fish
|
||||
emacs &
|
||||
emacs &
|
||||
\endfish
|
||||
|
||||
will start the emacs text editor in the background.
|
||||
|
@ -310,21 +310,20 @@ Specifying your own completions is not difficult. To specify a completion, use t
|
|||
|
||||
To provide a list of possible completions for myprog, use the `-a` switch. If `myprog` accepts the arguments start and stop, this can be specified as `complete -c myprog -a 'start stop'`. The argument to the `-a` switch is always a single string. At completion time, it will be tokenized on spaces and tabs, and variable expansion, command substitution and other forms of parameter expansion will take place.
|
||||
|
||||
Fish has a special syntax to support specifying switches accepted by a command. The switches `-s`, `-l` and `-o` are used to specify a short switch (single character, such as -l), a gnu style long switch (such as '`--color`') and an old-style long switch (like '`-shuffle`'), respectively. If the command 'myprog' has an option '-o' which can also be written as '`--output`', and which can take an additional value of either 'yes' or 'no', this can be specified by writing:
|
||||
|
||||
`fish` has a special syntax to support specifying switches accepted by a command. The switches `-s`, `-l` and `-o` are used to specify a short switch (single character, such as `-l`), a gnu style long switch (such as '`--color`') and an old-style long switch (like '`-shuffle`'), respectively. If the command 'myprog' has an option '-o' which can also be written as '`--output`', and which can take an additional value of either 'yes' or 'no', this can be specified by writing:
|
||||
|
||||
\fish
|
||||
complete -c myprog -s o -l output -a "yes no"
|
||||
\endfish
|
||||
|
||||
There are also special switches for specifying that a switch requires an argument, to disable filename completion, to create completions that are only available in some combinations, etc.. For a complete description of the various switches accepted by the `complete` command, see the documentation for the <a href="commands.html#complete">complete</a> builtin, or write `complete --help` inside the `fish` shell.
|
||||
There are also special switches for specifying that a switch requires an argument, to disable filename completion, to create completions that are only available in some combinations, etc.. For a complete description of the various switches accepted by the `complete` command, see the documentationfor the <a href="commands.html#complete">complete</a> builtin, or write `complete --help` inside the `fish` shell.
|
||||
|
||||
For examples of how to write your own complex completions, study the completions in `/usr/share/fish/completions`. (The exact path depends on your chosen installation prefix and may be slightly different)
|
||||
|
||||
|
||||
\subsection completion-func Useful functions for writing completions
|
||||
|
||||
Fish ships with several functions that are very useful when writing command specific completions. Most of these functions name begins with the string '`__fish_`'. Such functions are internal to fish and their name and interface may change in future fish versions. Still, some of them may be very useful when writing completions. A few of these functions are described here. Be aware that they may be removed or changed in future versions of fish.
|
||||
`fish` ships with several functions that are very useful when writing command specific completions. Most of these functions name begins with the string '`__fish_`'. Such functions are internal to `fish` and their name and interface may change in future fish versions. Still, some of them may be very useful when writing completions. A few of these functions are described here. Be aware that they may be removed or changed in future versions of fish.
|
||||
|
||||
Functions beginning with the string `__fish_print_` print a newline- separated list of strings. For example, `__fish_print_filesystems` prints a list of all known file systems. Functions beginning with `__fish_complete_` print out a newline separated list of completions with descriptions. The description is separated from the completion by a tab character.
|
||||
|
||||
|
@ -343,7 +342,7 @@ Functions beginning with the string `__fish_print_` print a newline- separated l
|
|||
|
||||
Completions can be defined on the commandline or in a configuration file, but they can also be automatically loaded. Fish automatically searches through any directories in the array variable `$fish_complete_path`, and any completions defined are automatically loaded when needed. A completion file must have a filename consisting 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` `/usr/share/fish/completions`. The exact 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 behind having three different directories is that the first one is for user specific completions, the second one is for system-wide completions and the last one is for default fish completions.
|
||||
The default value for `$fish_complete_path` is `~/.config/fish/completions` `/etc/fish/completions` `/usr/share/fish/completions`. The exact 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 behind having three different directories is that the first one is for user specific completions, the second one is for system-wide 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 submitting it via the instructions in <a href="#more-help">Further help and development</a>.
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section isatty isatty - test if a file or file descriptor is a tty.
|
||||
|
||||
\subsection isatty-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
isatty [FILE | DEVICE | FILE DESCRIPTOR NUMBER]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section jobs jobs - print currently running jobs
|
||||
|
||||
\subsection jobs-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
jobs [OPTIONS] [PID]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
\section math math - Perform mathematics calculations
|
||||
|
||||
\subsection math-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
math EXPRESSION
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section mimedb mimedb - lookup file information via the mime database
|
||||
|
||||
\subsection mimedb-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
mimedb [OPTIONS] FILES...
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section nextd nextd - move forward through directory history
|
||||
|
||||
\subsection nextd-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
nextd [ -l | --list ] [POS]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section not not - negate the exit status of a job
|
||||
|
||||
\subsection not-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
not COMMAND [OPTIONS...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section open open - open file in its default application
|
||||
|
||||
\subsection open-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
open FILES...
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section or or - conditionally execute a command
|
||||
|
||||
\subsection or-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
COMMAND1; or COMMAND2
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section popd popd - move through directory stack
|
||||
|
||||
\subsection popd-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
popd
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section prevd prevd - move backward through directory history
|
||||
|
||||
\subsection prevd-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
prevd [ -l | --list ] [POS]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section psub psub - perform process substitution
|
||||
|
||||
\subsection psub-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
COMMAND1 (COMMAND2|psub [-f])
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section pushd pushd - push directory to directory stack
|
||||
|
||||
\subsection pushd-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
pushd [DIRECTORY]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section pwd pwd - output the current working directory
|
||||
|
||||
\subsection pwd-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
pwd
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section random random - generate random number
|
||||
|
||||
\subsection random-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
random [SEED]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section read read - read line of input into variables
|
||||
|
||||
\subsection read-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
read [OPTIONS] [VARIABLES...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section return return - stop the current inner function
|
||||
|
||||
\subsection return-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
function NAME; [COMMANDS...;] return [STATUS]; [COMMANDS...;] end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section set set - display and change shell variables.
|
||||
|
||||
\subsection set-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
set [SCOPE_OPTIONS]
|
||||
set [OPTIONS] VARIABLE_NAME VALUES...
|
||||
set [OPTIONS] VARIABLE_NAME[INDICES]... VALUES...
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section set_color set_color - set the terminal color
|
||||
|
||||
\subsection set_color-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
set_color [-h|--help] [-b|--background COLOR] [COLOR]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section source source - evaluate contents of file.
|
||||
|
||||
\subsection source-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
source FILENAME [ARGUMENTS...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section status status - query fish runtime information
|
||||
|
||||
\subsection status-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
status [OPTION]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section switch switch - conditionally execute a block of commands
|
||||
|
||||
\subsection switch-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
switch VALUE; [case [WILDCARD...]; [COMMANDS...]; ...] end
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section test test - perform tests on files and text
|
||||
|
||||
\subsection test-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
test [EXPRESSION]
|
||||
\endfish
|
||||
|
||||
|
@ -83,8 +83,7 @@ end.
|
|||
|
||||
\subsection test-standards Standards
|
||||
|
||||
`test` implements a subset of the
|
||||
<a href="http://www.unix.com/man-page/POSIX/1/test/">IEEE Std 1003.1-2008 (POSIX.1) standard</a>. The following exceptions apply:
|
||||
`test` implements a subset of the <a href="http://www.unix.com/man-page/POSIX/1/test/">IEEE Std 1003.1-2008 (POSIX.1) standard</a>. The following exceptions apply:
|
||||
- The `<` and `>` operators for comparing strings are not implemented.
|
||||
- Because this test is a shell builtin and not a standalone utility, using the -c flag on a special file descriptors like standard input and output may not return the same result when invoked from within a pipe as one would expect when invoking the `test` utility in another shell.
|
||||
In cases such as this, one can use `command` `test` to explicitly use the system's standalone `test` rather than this `builtin` `test`.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section trap trap - perform an action when the shell receives a signal
|
||||
|
||||
\subsection trap-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
trap [OPTIONS] [[ARG] SIGSPEC ... ]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section type type - indicate how a command would be interpreted
|
||||
|
||||
\subsection type-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
type [OPTIONS] NAME [NAME ...]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section ulimit ulimit - set or get resource usage limits
|
||||
|
||||
\subsection ulimit-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
ulimit [OPTIONS] [LIMIT]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section umask umask - set or get the file creation mode mask
|
||||
|
||||
\subsection umask-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
umask [OPTIONS] [MASK]
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -170,10 +170,10 @@ h1 > code, h2 > code, h3 > code {
|
|||
margin: 1rem;
|
||||
padding: 0.4rem 1rem;
|
||||
line-height: 1.9rem;
|
||||
color: #222;
|
||||
background-color: #fafafa;
|
||||
border: 1px solid #f0f0f0;
|
||||
border-radius: 0.4rem;
|
||||
color: #00afff;
|
||||
background-color: #111;
|
||||
border: 1px solid #666;
|
||||
border-radius: 0.6rem;
|
||||
}
|
||||
.cli-dark {
|
||||
background-color: #111;
|
||||
|
@ -181,28 +181,73 @@ h1 > code, h2 > code, h3 > code {
|
|||
padding: 0.4rem 1rem;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
.normal { @normal@; }
|
||||
.comment { @comment@; }
|
||||
.command { @command@; }
|
||||
.function { @command@; }
|
||||
.binary { @command@; }
|
||||
.argument { @param@ }
|
||||
.variable { @param@ }
|
||||
.redirect { @redirection@ }
|
||||
.operator { @operator@ }
|
||||
.file { @valid_path@ }
|
||||
.path { @valid_path@ }
|
||||
.string { @quote@ }
|
||||
.suggest { @autosuggestion@ }
|
||||
.error { @error@ }
|
||||
.match { @match@ }
|
||||
.search_match { @search_match@ }
|
||||
.user { @user@ }
|
||||
.cwd { @cwd@ }
|
||||
.history { @history_current@ }
|
||||
.prompt { color: #222; }
|
||||
.cursor { border-bottom: 2px solid green; }
|
||||
.underline { text-decoration: underline; }
|
||||
.synopsis {
|
||||
background-color: #fafafa;
|
||||
color: #333;
|
||||
}
|
||||
.normal {
|
||||
color: #fff; text-decoration:none; border-bottom:none; font-weight:normal;
|
||||
}
|
||||
.comment {
|
||||
color: #f22;
|
||||
}
|
||||
.command {
|
||||
color: #005fd7;
|
||||
}
|
||||
.function {
|
||||
color: #005fd7;
|
||||
}
|
||||
.binary {
|
||||
color: #005fd7;
|
||||
}
|
||||
.argument {
|
||||
color: #00afff;
|
||||
}
|
||||
.variable {
|
||||
color: #00afff;
|
||||
}
|
||||
.redirect {
|
||||
color: #fff; text-decoration:none; border-bottom:none; font-weight:normal;
|
||||
}
|
||||
.operator {
|
||||
color: #2ff;
|
||||
}
|
||||
.file {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.path {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.string {
|
||||
color: #725022;
|
||||
}
|
||||
.suggest {
|
||||
color: #555;
|
||||
}
|
||||
.error {
|
||||
color: #f22; font-weight:bold;
|
||||
}
|
||||
.match {
|
||||
color: #2ff;
|
||||
}
|
||||
.search_match {
|
||||
backkground-color: #f2f;
|
||||
}
|
||||
.cwd {
|
||||
color: #2f2;
|
||||
}
|
||||
.history {
|
||||
color: #2ff;
|
||||
}
|
||||
.prompt {
|
||||
color: #222;
|
||||
}
|
||||
.cursor {
|
||||
border-bottom: 2px solid green;
|
||||
}
|
||||
.underline {
|
||||
text-decoration: underline;
|
||||
}
|
||||
/* Console variants */
|
||||
.cli-dark {
|
||||
background-color: #111;
|
|
@ -1,7 +1,7 @@
|
|||
\section vared vared - interactively edit the value of an environment variable
|
||||
|
||||
\subsection vared-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
vared VARIABLE_NAME
|
||||
\endfish
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
\section while while - perform a command multiple times
|
||||
|
||||
\subsection while-synopsis Synopsis
|
||||
\fish{syn}
|
||||
\fish{synopsis}
|
||||
while CONDITION; COMMANDS...; end
|
||||
\endfish
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user