zsh-workers
 help / color / mirror / code / Atom feed
From: Tanaka Akira <akr@jaist.ac.jp>
To: zsh-workers@sunsite.auc.dk
Subject: PATCH: _lynx and _urls.
Date: 03 Sep 1999 03:23:01 +0900	[thread overview]
Message-ID: <rsqemghqika.fsf@crane.jaist.ac.jp> (raw)

This is completion function for lynx.

--- /dev/null	Fri Sep  3 02:54:25 1999
+++ Completion/User/_lynx	Fri Sep  3 03:13:53 1999
@@ -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 "$@"
--- /dev/null	Fri Sep  3 02:54:25 1999
+++ Completion/User/_urls	Fri Sep  3 03:09:54 1999
@@ -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
-- 
Tanaka Akira


             reply	other threads:[~1999-09-02 18:23 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-09-02 18:23 Tanaka Akira [this message]
1999-09-03  7:56 Sven Wischnowsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=rsqemghqika.fsf@crane.jaist.ac.jp \
    --to=akr@jaist.ac.jp \
    --cc=zsh-workers@sunsite.auc.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).