about summary refs log tree commit diff
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>1999-09-02 18:26:12 +0000
committerTanaka Akira <akr@users.sourceforge.net>1999-09-02 18:26:12 +0000
commit1bc59a08736c6b8d0af1cfaa89e3daca5157cbae (patch)
tree01910bbfa225c172a739e18f846db5153e9f54c7
parent3233203e79b6262102de71105bb78c532feb7cbb (diff)
downloadzsh-1bc59a08736c6b8d0af1cfaa89e3daca5157cbae.tar.gz
zsh-1bc59a08736c6b8d0af1cfaa89e3daca5157cbae.tar.xz
zsh-1bc59a08736c6b8d0af1cfaa89e3daca5157cbae.zip
Initial revision
-rw-r--r--Completion/User/_lynx109
-rw-r--r--Completion/User/_urls65
2 files changed, 174 insertions, 0 deletions
diff --git a/Completion/User/_lynx b/Completion/User/_lynx
new file mode 100644
index 000000000..42c3498fc
--- /dev/null
+++ b/Completion/User/_lynx
@@ -0,0 +1,109 @@
+#compdef lynx
+
+_lynx () {
+  _arguments \
+    '-accept_all_cookies' \
+    '-anonymous' \
+    '-assume_charset=:MIMENAME:' \
+    '-assume_local_charset=:MIMENAME:' \
+    '-assume_unrec_charset=:MIMENAME:' \
+    '-auth=:ID\:PW:' \
+    '-base' \
+    '-blink' \
+    '-book' \
+    '-buried_news' \
+    '-cache=:NUMBER:' \
+    '-case' \
+    '-cfg=:FILENAME:_files' \
+    '-child' \
+    '-color' \
+    '-cookies' \
+    '-core' \
+    '-crawl' \
+    '-display=:DISPLAY:_x_display' \
+    '-dump' \
+    '-editor=:EDITOR:_files' \
+    '-emacskeys' \
+    '-enable_scrollback' \
+    '-error_file=:FILENAME:_files' \
+    '-fileversions' \
+    '-force_html' \
+    '-force_secure' \
+    '-from' \
+    '-ftp' \
+    '-get_data' \
+    '-head' \
+    '-help' \
+    '-historical' \
+    '-homepage=:URL: _urls -f' \
+    '-image_links' \
+    '-ismap' \
+    '-index=:URL: _urls -f' \
+    '-link=:NUMBER:' \
+    '-localhost' \
+    '-locexec' \
+    '-mime_header' \
+    '-minimal' \
+    '-newschunksize=:NUMBER:' \
+    '-newsmaxchunk=:NUMBER:' \
+    '-nobrowse' \
+    '-nocc' \
+    '-nocolor' \
+    '-noexec' \
+    '-nofilereferer' \
+    '-nolist' \
+    '-nolog' \
+    '-nonrestarting_sigwinch' \
+    '-nopause' \
+    '-noprint' \
+    '-noredir' \
+    '-noreferer' \
+    '-nosocks' \
+    '-nostatus' \
+    '-number_links' \
+    '-partial' \
+    '-pauth=:ID\:PW:' \
+    '-popup' \
+    '-post_data' \
+    '-preparsed' \
+    '-print' \
+    '-pseudo_inlines' \
+    '-raw' \
+    '-realm' \
+    '-reload' \
+    '-restrictions=:options:_lynx_restrictions' \
+    '-resubmit_posts' \
+    '-rlogin' \
+    '-selective' \
+    '-show_cursor' \
+    '-soft_dquotes' \
+    '-source' \
+    '-startfile_ok' \
+    '-tagsoup' \
+    '-telnet' \
+    '-term=:TERM:' \
+    '-tlog' \
+    '-trace' \
+    '-traversal' \
+    '-underscore' \
+    '-useragent=:NAME:' \
+    '-use_mouse' \
+    '-validate' \
+    '-verbose' \
+    '-version' \
+    '-vikeys' \
+    '-width=:NUMBER:' \
+    ':url: _urls -f'
+}
+
+_lynx_restrictions () {
+  compset -P '*,'
+  compadd -qS, \
+    all bookmark bookmark_exec change_exec_perms default dired_support \
+    disk_save dotfiles download editor exec exec_frozen externals file_url \
+    goto inside_ftp inside_news inside_rlogin inside_telnet jump mail \
+    multibook news_post options_save outside_ftp outside_news outside_rlogin \
+    outside_telnet print shell suspend telnet_port useragent
+}
+
+_lynx "$@"
diff --git a/Completion/User/_urls b/Completion/User/_urls
new file mode 100644
index 000000000..19f7eea3a
--- /dev/null
+++ b/Completion/User/_urls
@@ -0,0 +1,65 @@
+#autoload
+
+# Usage: _urls [-f]
+# Options:
+#  -f : complete files.
+
+# To complete URLs, you must make a URL database locally such as:
+#
+# % cd ~/.zsh/urls
+# % find . -ls
+# ... drwxr-xr-x ... 512 Sep  3 02:46 .
+# ... drwxr-xr-x ... 512 Sep  3 02:48 ./http
+# ... drwxr-xr-x ... 512 Sep  3 02:52 ./http/www.zsh.org
+# ... drwxr-xr-x ... 512 Sep  3 03:01 ./http/www.zsh.org/mla
+# ... drwxr-xr-x ... 512 Sep  3 03:01 ./http/www.zsh.org/mla/workers
+# ... drwxr-xr-x ... 512 Sep  3 03:01 ./http/www.zsh.org/mla/workers/1999
+# ... -rw-r--r-- ...   0 Sep  3 03:01 ./http/www.zsh.org/mla/workers/1999/index.html
+# ... drwxr-xr-x ... 512 Sep  3 02:48 ./http/sunsite.auc.dk
+# ... drwxr-xr-x ... 512 Sep  3 02:48 ./http/sunsite.auc.dk/zsh
+# ... drwxr-xr-x ... 512 Sep  3 02:47 ./bookmark
+# ... drwxr-xr-x ... 512 Sep  3 02:48 ./bookmark/zsh
+# ... -rw-r--r-- ...  27 Sep  3 02:47 ./bookmark/zsh/home
+# ... -rw-r--r-- ...  20 Sep  3 02:48 ./bookmark/zsh/meta
+
+local ipre scheme dirs files
+
+if [[ "$1" = -f ]]; then
+  shift
+  _files "$@" && return
+fi
+
+if [[ -z "$compconfig[_urls_dir]" ]]; then
+  compconfig[_urls_dir]=${ZDOTDIR:-$HOME}/.zsh/urls
+fi
+
+ipre="$IPREFIX"
+
+if [[ -prefix [-+.a-z0-9]#: ]]; then
+  scheme="${PREFIX%%:*}"
+  compset -P "[-+.a-z0-9]#:"
+else
+  compadd -S '' http:// ftp:// bookmark:
+  return
+fi
+
+case "$scheme" in
+  http) compset -P // || { compadd "$@" -S '' //; return };;
+  ftp) compset -P // || { compadd "$@" -S '' //; return };;
+esac
+
+if [[ "$scheme" = bookmark &&
+      -f "$compconfig[_urls_dir]/$scheme/$PREFIX$SUFFIX" &&
+      -s "$compconfig[_urls_dir]/$scheme/$PREFIX$SUFFIX" ]]; then
+  compadd "$@" -QU -- "$ipre$(<"$compconfig[_urls_dir]/$scheme/$PREFIX$SUFFIX")"
+else
+  dirs=($compconfig[_urls_dir]/$scheme/$PREFIX*$SUFFIX(/:t))
+  files=($compconfig[_urls_dir]/$scheme/$PREFIX*$SUFFIX(.:t))
+  compset -P '*/'
+  compadd "$@" -Q -S '/' - $dirs
+  if [[ "$scheme" = bookmark ]]; then
+    compadd "$@" -QS '' - $files
+  else
+    compadd "$@" -Q - $files
+  fi
+fi