about summary refs log tree commit diff
path: root/Completion/X/Command/_nedit
blob: f25ad503a4f8665c1b0743e313f04788159fecc6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#compdef nedit nc

local state line expl nedit_common curcontext="$curcontext" ret=1
typeset -A opt_args

nedit_common=( \
  '-read[open file read only]' \
  "-create[create file if it doesn't already exist]" \
  '-line[go to specified line number]:line number' \
  '-do[execute macro or action commands]' \
  '-lm[specify language mode]:language mode:->lang' \
  '-svrname[name the server]:nedit server name' \
  '(-noiconic)-iconic[set initial window state to iconic]' \
  '*-xrm:resource:_x_resource' \
  '*:file:_files' )

if [[ $service = *nc ]]; then
  _x_arguments -C \
    '(-noask)-ask[prompt if no server found]' \
    '(-ask)-noask[start a new server without asking if none found]' \
    '-svrcmd[command to run server]:server command:_command_names -e' \
    "$nedit_common[@]" && ret=0
else
  _x_arguments -C \
    '-server[designate this session as an nedit server]' \
    '-tags[load ctags file]:tags file:_files' \
    '-tabs[specify tab width in characters]:tab width' \
    '(-nowrap -autowrap -noautowrap)-wrap[use continuous wrap mode]' \
    '(-wrap -autowrap -noautowrap)-nowrap[turn off continuous wrap mode]' \
    '(-wrap -nowrap -noautowrap)-autowrap[use auto-newline wrap mode]' \
    '(-wrap -nowrap -autowrap)-noautowrap[turn off auto-newline wrap mode]' \
    '(-noautoindent)-autoindent[maintain a running indent]' \
    '(-autoindent)-noautoindent[turn off autoindent]' \
    '(-noautosave)-autosave[maintain a backup copy of file being edited]' \
    "(-autosave)-noautosave[don't maintain a backup copy of file being edited]" \
    "(-iconic)-noiconic[don't set initial window state to iconic]" \
    '-rows[specify default height in characters for an editing window]:height' \
    '-columns[specify default width in characters for an editing window]:width' \
    '-font[specify font for text window]:font:_x_font' \
    '(-bg)-background:background color:_x_color' \
    '(-background)-bg[specify background color]:background color:_x_color' \
    '(-fg)-foreground:foreground color:_x_color' \
    '(-foreground)-fg[specify foreground color]:foreground color:_x_color' \
    '*-import[load additional preferences file]:nedit preferences file:_files' \
    "$nedit_common[@]" && ret=0
fi

[[ $state = lang && -f ~/.nedit ]] &&
    _wanted neditlanguages expl 'language mode' \
        compadd -  ${(f)"$(sed -n \
            '/^nedit.languageMode/,/^nedit/ s/.*	\([^:]*\).*/\1/p' < ~/.nedit)"} && ret=0

return ret