From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1378 invoked by alias); 14 Jul 2018 09:11:28 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: List-Unsubscribe: X-Seq: 43166 Received: (qmail 9280 invoked by uid 1010); 14 Jul 2018 09:11:28 -0000 X-Qmail-Scanner-Diagnostics: from mail-wm0-f44.google.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(74.125.82.44):SA:0(-1.9/5.0):. Processed in 1.971939 secs); 14 Jul 2018 09:11:28 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_PASS, T_DKIM_INVALID autolearn=ham autolearn_force=no version=3.4.1 X-Envelope-From: doron.behar@gmail.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id; bh=fUGR0xjtI4hEcHTnJdKeJB5DBPmGvM0d2/wf2ms7DkM=; b=rqLlFgm6KX1fJA5fv54k/f3w0WLYaNOATFk86/yKdLzGwSc+PPYuDlCP80vsj1c+kk 2yRNEemm3Tm1eVGla6pUh+f4yAgcKFROnLomdV4SYhu64svngF2ampEnzFksHBSymLlE xSXoc4Ox4ZL1n5yItuCzzpolFTWhwskRQwReT1dQLk/xfpfaTxCLqPi4vzdBRNUuHNul lz2RIouG0i13n2ZHvTBcNjO87Va3X5M8Jb8zLCgdZmQlI3JKx4gqWep2JSLonV8KXT93 ZpyIOedEn4OIi4zQKJ0ZzDAqucRRYdpNxEUXWt+jxFqSOTR4AKWo2ENeVVwEkoM0kg2x 5BIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id; bh=fUGR0xjtI4hEcHTnJdKeJB5DBPmGvM0d2/wf2ms7DkM=; b=WuszJ++SmSDLaE/iIPb+gGDPf9KxeG9vUJ0xog3mocP8VURHRAMY4T6QeTgzoQ88Qq yeNwYo2UeIfqwpVmeRQtGEuUm9pEdBdBfPdxYZ+FhEh0FWKV2GTys1d19T0L4mTmUEpv yRva5NLlGHmjwQDneUe2B2oP6DCmv2UJAdfVySOh8DP12sYIJ8KJEOvfeOHQzc9hhKxD IeQQssAydbO2ZT93YJNpms1b3BdD+U18NPTf17nXHey23kzwyFdmUF6eyhT7HkZhsz71 kQ2RfEszcs4o6c2+JdNt1XxtvdioS0tlrwsqKgXwBbdXvRE53jnxfHJr9Vbw05cZIQvS Cozg== X-Gm-Message-State: AOUpUlEmkAfCof6ea2Ecy+ydgZNKgJxYvNSlo3LMKFcf8ehJPUDy2Awp fQdHj9MCJpH49+JUyp0aF0FuuQ+k X-Google-Smtp-Source: AAOMgpf5Bt/4dJovjDHV0BjAA96yzp9m/JJJsQjfC2h8W0Lz/sBLbA9NGQhb4/rPJGD4prsa6FYGog== X-Received: by 2002:a1c:80b:: with SMTP id 11-v6mr5023104wmi.125.1531511582091; Fri, 13 Jul 2018 12:53:02 -0700 (PDT) From: doron.behar@gmail.com To: zsh-workers@zsh.org Subject: [PATCH] Add completion for zathura. Date: Fri, 13 Jul 2018 22:52:59 +0300 Message-Id: <20180713195259.8656-1-doron.behar@gmail.com> X-Mailer: git-send-email 2.18.0 From: Doron Behar Make it aware of the plugins installed on the machine. --- Completion/Unix/Type/_pspdf | 2 +- Completion/X/Command/_zathura | 48 +++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 Completion/X/Command/_zathura diff --git a/Completion/Unix/Type/_pspdf b/Completion/Unix/Type/_pspdf index 5bb8650b1..1df3f860c 100644 --- a/Completion/Unix/Type/_pspdf +++ b/Completion/Unix/Type/_pspdf @@ -1,4 +1,4 @@ -#compdef gsbj gsdj gsdj500 gslj gslp gsnd ps2ascii ghostview mgv pstoedit pstotgif zathura +#compdef gsbj gsdj gsdj500 gslj gslp gsnd ps2ascii ghostview mgv pstoedit pstotgif local expl ext diff --git a/Completion/X/Command/_zathura b/Completion/X/Command/_zathura new file mode 100644 index 000000000..141cadf63 --- /dev/null +++ b/Completion/X/Command/_zathura @@ -0,0 +1,48 @@ +#compdef zathura + +(( $+functions[_zathura_files] )) || +_zathura_files(){ + local -a plugins_files + local plugins_dir + for plugins_dir in \ + ${(Qv)opt_args[(i)-p|--plugins-dir]}(#qN) \ + {/usr/local,/usr,}/lib/zathura(#qN) + do + plugins_files=( $plugins_dir/*.so ) + (( $#plugins_files )) && break + done + if [[ -z "${plugins_files}" ]]; then + _files -g "*.pdf(-.)" + return + fi + local -a supported_filetypes + local pf + for pf in "${plugins_files[@]}"; do + if [[ $pf =~ "mupdf" ]]; then + supported_filetypes+="pdf" + supported_filetypes+="epub" + supported_filetypes+="xps" + elif [[ $pf =~ "poppler" ]]; then + supported_filetypes+="pdf" + else + supported_filetypes+="${${pf%.so}#${plugins_dir}/lib}" + fi + done + _files -g "*.(${(j.|.)supported_filetypes})(-.)" +} + +_arguments -s -S \ + {-e,--reparent=}'[specify xid of window to reparent to]:xid:_x_window' \ + {-c,--config-dir=}'[specify path to the config directory]:config directory:{_files -/}' \ + {-d,--data-dir=}'[specify path to the data directory]:data directory:{_files -/}' \ + {-p,--plugins-dir=}'[specify path to the directory containing plugins]:plugins directory:{_files -/}' \ + {-w,--password=}"[specify a password for the document]:password: " \ + {-P,--page=}'[open the document at the given page number]:page number: ' \ + {-l,--log-level=}'[set log level]:log level:(debug info warning error)' \ + {-x,--synctex-editor-command=}'[specify synctex editor command]:synctex editor command:_cmdstring' \ + '--synctex-forward=[jump to the given position]:synctex position: ' \ + '--synctex-pid=[specify pid of an instance having the correct file opened]:synctex pid:_pids' \ + '--fork[fork into background]' \ + '(- :)--version[display version string and exit]' \ + '(- :)--help[display help and exit]' \ + '*:file:_zathura_files' -- 2.18.0