Linux iad1-shared-b7-18 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
Apache
: 67.205.6.31 | : 216.73.216.13
Cant Read [ /etc/named.conf ]
8.2.29
fernandoquevedo
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
share /
zsh /
functions /
Completion /
Unix /
[ HOME SHELL ]
Name
Size
Permission
Action
_a2ps
2.73
KB
-rw-r--r--
_aap
2.58
KB
-rw-r--r--
_abcde
2.39
KB
-rw-r--r--
_absolute_command_paths
1022
B
-rw-r--r--
_ack
8.09
KB
-rw-r--r--
_adb
15.1
KB
-rw-r--r--
_ansible
13.42
KB
-rw-r--r--
_ant
6.03
KB
-rw-r--r--
_antiword
1.08
KB
-rw-r--r--
_apachectl
116
B
-rw-r--r--
_apm
1.64
KB
-rw-r--r--
_arch_archives
413
B
-rw-r--r--
_arch_namespace
3.23
KB
-rw-r--r--
_arp
3.07
KB
-rw-r--r--
_arping
2.17
KB
-rw-r--r--
_asciidoctor
2.33
KB
-rw-r--r--
_asciinema
1.93
KB
-rw-r--r--
_at
1.01
KB
-rw-r--r--
_attr
3.15
KB
-rw-r--r--
_augeas
2.51
KB
-rw-r--r--
_avahi
2.27
KB
-rw-r--r--
_awk
4.57
KB
-rw-r--r--
_base64
2.04
KB
-rw-r--r--
_basename
767
B
-rw-r--r--
_bash
3.52
KB
-rw-r--r--
_baudrates
2.37
KB
-rw-r--r--
_baz
15.64
KB
-rw-r--r--
_beep
1.59
KB
-rw-r--r--
_bibtex
160
B
-rw-r--r--
_bind_addresses
1.4
KB
-rw-r--r--
_bison
923
B
-rw-r--r--
_bittorrent
4.76
KB
-rw-r--r--
_bogofilter
5.13
KB
-rw-r--r--
_bpf_filters
7.67
KB
-rw-r--r--
_bpython
1.25
KB
-rw-r--r--
_bzip2
2.17
KB
-rw-r--r--
_bzr
11.17
KB
-rw-r--r--
_cabal
292
B
-rw-r--r--
_cal
547
B
-rw-r--r--
_calendar
1.37
KB
-rw-r--r--
_canonical_paths
3.61
KB
-rw-r--r--
_cat
2.04
KB
-rw-r--r--
_ccal
778
B
-rw-r--r--
_cdcd
2.09
KB
-rw-r--r--
_cdrdao
7.95
KB
-rw-r--r--
_cdrecord
4.75
KB
-rw-r--r--
_chkconfig
777
B
-rw-r--r--
_chmod
2.87
KB
-rw-r--r--
_chown
3.5
KB
-rw-r--r--
_chroot
1.41
KB
-rw-r--r--
_chsh
1.97
KB
-rw-r--r--
_cksum
3.88
KB
-rw-r--r--
_clay
1.73
KB
-rw-r--r--
_cmdambivalent
391
B
-rw-r--r--
_cmdstring
102
B
-rw-r--r--
_cmp
1.1
KB
-rw-r--r--
_column
3.79
KB
-rw-r--r--
_comm
995
B
-rw-r--r--
_composer
31.47
KB
-rw-r--r--
_compress
1.38
KB
-rw-r--r--
_configure
444
B
-rw-r--r--
_cowsay
904
B
-rw-r--r--
_cp
4.09
KB
-rw-r--r--
_cpio
4.48
KB
-rw-r--r--
_cplay
343
B
-rw-r--r--
_crontab
2.03
KB
-rw-r--r--
_cscope
1.56
KB
-rw-r--r--
_cssh
795
B
-rw-r--r--
_ctags_tags
170
B
-rw-r--r--
_curl
224
B
-rw-r--r--
_cut
2.31
KB
-rw-r--r--
_cvs
28.32
KB
-rw-r--r--
_darcs
1.18
KB
-rw-r--r--
_date
3.07
KB
-rw-r--r--
_date_formats
2.95
KB
-rw-r--r--
_dates
3.97
KB
-rw-r--r--
_dbus
4.69
KB
-rw-r--r--
_dconf
1.75
KB
-rw-r--r--
_dd
2.74
KB
-rw-r--r--
_devtodo
4.56
KB
-rw-r--r--
_df
3.51
KB
-rw-r--r--
_dhclient
3.44
KB
-rw-r--r--
_dict
2.09
KB
-rw-r--r--
_dict_words
1.26
KB
-rw-r--r--
_diff
90
B
-rw-r--r--
_diff3
1.99
KB
-rw-r--r--
_diff_options
9.04
KB
-rw-r--r--
_diffstat
1.71
KB
-rw-r--r--
_dig
4.59
KB
-rw-r--r--
_dir_list
680
B
-rw-r--r--
_directories
108
B
-rw-r--r--
_django
5.91
KB
-rw-r--r--
_dmesg
638
B
-rw-r--r--
_dmidecode
1.53
KB
-rw-r--r--
_dns_types
331
B
-rw-r--r--
_doas
656
B
-rw-r--r--
_domains
585
B
-rw-r--r--
_dos2unix
4.76
KB
-rw-r--r--
_drill
1.91
KB
-rw-r--r--
_dsh
1.68
KB
-rw-r--r--
_dtruss
684
B
-rw-r--r--
_du
4.48
KB
-rw-r--r--
_dvi
3.95
KB
-rw-r--r--
_ecasound
8.33
KB
-rw-r--r--
_ed
952
B
-rw-r--r--
_elfdump
1.29
KB
-rw-r--r--
_elinks
2.89
KB
-rw-r--r--
_email_addresses
5.5
KB
-rw-r--r--
_enscript
7.45
KB
-rw-r--r--
_entr
729
B
-rw-r--r--
_env
1.77
KB
-rw-r--r--
_espeak
2.12
KB
-rw-r--r--
_etags
2.08
KB
-rw-r--r--
_fakeroot
486
B
-rw-r--r--
_feh
6.85
KB
-rw-r--r--
_fetchmail
554
B
-rw-r--r--
_ffmpeg
7.83
KB
-rw-r--r--
_figlet
1.47
KB
-rw-r--r--
_file_modes
862
B
-rw-r--r--
_file_systems
1.18
KB
-rw-r--r--
_files
3.97
KB
-rw-r--r--
_find
5.48
KB
-rw-r--r--
_find_net_interfaces
1.3
KB
-rw-r--r--
_finger
2.11
KB
-rw-r--r--
_flac
5.78
KB
-rw-r--r--
_flex
3.08
KB
-rw-r--r--
_fmt
1.93
KB
-rw-r--r--
_fold
713
B
-rw-r--r--
_fortune
601
B
-rw-r--r--
_fsh
546
B
-rw-r--r--
_fuser
2.44
KB
-rw-r--r--
_gcc
77.94
KB
-rw-r--r--
_gcore
1.68
KB
-rw-r--r--
_gdb
1.51
KB
-rw-r--r--
_gem
13.6
KB
-rw-r--r--
_genisoimage
1.96
KB
-rw-r--r--
_getconf
3.71
KB
-rw-r--r--
_getent
2.05
KB
-rw-r--r--
_getfacl
1.55
KB
-rw-r--r--
_getmail
1.05
KB
-rw-r--r--
_getopt
1.15
KB
-rw-r--r--
_ghostscript
4.17
KB
-rw-r--r--
_git
361.69
KB
-rw-r--r--
_global
3.11
KB
-rw-r--r--
_global_tags
186
B
-rw-r--r--
_gnu_generic
178
B
-rw-r--r--
_gnupod
5.57
KB
-rw-r--r--
_gnutls
12.32
KB
-rw-r--r--
_go
256
B
-rw-r--r--
_gpg
13.47
KB
-rw-r--r--
_gphoto2
5.02
KB
-rw-r--r--
_gprof
1.31
KB
-rw-r--r--
_gradle
6.82
KB
-rw-r--r--
_graphicsmagick
28.23
KB
-rw-r--r--
_grep
6.13
KB
-rw-r--r--
_groff
2.2
KB
-rw-r--r--
_groups
1007
B
-rw-r--r--
_growisofs
19.16
KB
-rw-r--r--
_gsettings
1.32
KB
-rw-r--r--
_guilt
1.52
KB
-rw-r--r--
_gzip
4.17
KB
-rw-r--r--
_have_glob_qual
910
B
-rw-r--r--
_head
1.65
KB
-rw-r--r--
_hexdump
1.3
KB
-rw-r--r--
_host
1.05
KB
-rw-r--r--
_hostname
2.47
KB
-rw-r--r--
_hosts
2.92
KB
-rw-r--r--
_iconv
2.8
KB
-rw-r--r--
_id
1.84
KB
-rw-r--r--
_ifconfig
3.08
KB
-rw-r--r--
_iftop
918
B
-rw-r--r--
_imagemagick
27.49
KB
-rw-r--r--
_init_d
3.48
KB
-rw-r--r--
_initctl
6.18
KB
-rw-r--r--
_install
4.49
KB
-rw-r--r--
_iostat
6.41
KB
-rw-r--r--
_ip
20.47
KB
-rw-r--r--
_ipsec
6.54
KB
-rw-r--r--
_irssi
1.32
KB
-rw-r--r--
_ispell
4.11
KB
-rw-r--r--
_java
24.6
KB
-rw-r--r--
_java_class
693
B
-rw-r--r--
_joe
2.19
KB
-rw-r--r--
_join
1.16
KB
-rw-r--r--
_jq
2.22
KB
-rw-r--r--
_killall
3.28
KB
-rw-r--r--
_knock
304
B
-rw-r--r--
_kvno
669
B
-rw-r--r--
_last
2.69
KB
-rw-r--r--
_ld_debug
1.18
KB
-rw-r--r--
_ldconfig
2.47
KB
-rw-r--r--
_ldd
1.62
KB
-rw-r--r--
_less
6.23
KB
-rw-r--r--
_lha
1.71
KB
-rw-r--r--
_libvirt
9.53
KB
-rw-r--r--
_links
8.66
KB
-rw-r--r--
_list_files
1.4
KB
-rw-r--r--
_lldb
2.62
KB
-rw-r--r--
_ln
3.52
KB
-rw-r--r--
_loadkeys
595
B
-rw-r--r--
_locale
2.81
KB
-rw-r--r--
_localedef
3.03
KB
-rw-r--r--
_locales
349
B
-rw-r--r--
_locate
4.15
KB
-rw-r--r--
_look
998
B
-rw-r--r--
_lp
8.47
KB
-rw-r--r--
_ls
8.99
KB
-rw-r--r--
_lsof
5.01
KB
-rw-r--r--
_lua
1.78
KB
-rw-r--r--
_luarocks
22.74
KB
-rw-r--r--
_lynx
11.73
KB
-rw-r--r--
_lz4
4.47
KB
-rw-r--r--
_lzop
3.84
KB
-rw-r--r--
_mail
467
B
-rw-r--r--
_mailboxes
5.88
KB
-rw-r--r--
_make
8.95
KB
-rw-r--r--
_man
17.23
KB
-rw-r--r--
_md5sum
1.75
KB
-rw-r--r--
_mencal
1.06
KB
-rw-r--r--
_mh
3.68
KB
-rw-r--r--
_mime_types
1.15
KB
-rw-r--r--
_mkdir
1.15
KB
-rw-r--r--
_mkfifo
618
B
-rw-r--r--
_mknod
1.34
KB
-rw-r--r--
_mktemp
1.55
KB
-rw-r--r--
_module
5.35
KB
-rw-r--r--
_monotone
2.32
KB
-rw-r--r--
_moosic
11.75
KB
-rw-r--r--
_mosh
1.72
KB
-rw-r--r--
_mount
38.36
KB
-rw-r--r--
_mpc
9.92
KB
-rw-r--r--
_mt
3.14
KB
-rw-r--r--
_mtools
3.99
KB
-rw-r--r--
_mtr
3.24
KB
-rw-r--r--
_mutt
1.35
KB
-rw-r--r--
_mv
2.1
KB
-rw-r--r--
_my_accounts
45
B
-rw-r--r--
_myrepos
4.22
KB
-rw-r--r--
_mysql_utils
9.75
KB
-rw-r--r--
_mysqldiff
1.03
KB
-rw-r--r--
_ncftp
429
B
-rw-r--r--
_net_interfaces
204
B
-rw-r--r--
_netcat
1.29
KB
-rw-r--r--
_netstat
12.27
KB
-rw-r--r--
_newsgroups
210
B
-rw-r--r--
_nginx
810
B
-rw-r--r--
_ngrep
1.7
KB
-rw-r--r--
_nice
246
B
-rw-r--r--
_nkf
2.1
KB
-rw-r--r--
_nl
1.83
KB
-rw-r--r--
_nm
5.81
KB
-rw-r--r--
_nmap
3.39
KB
-rw-r--r--
_npm
380
B
-rw-r--r--
_nslookup
5.54
KB
-rw-r--r--
_numfmt
1.54
KB
-rw-r--r--
_objdump
11.24
KB
-rw-r--r--
_object_files
235
B
-rw-r--r--
_od
2.9
KB
-rw-r--r--
_openstack
8.98
KB
-rw-r--r--
_other_accounts
64
B
-rw-r--r--
_pack
361
B
-rw-r--r--
_pandoc
20.65
KB
-rw-r--r--
_paste
575
B
-rw-r--r--
_patch
8.47
KB
-rw-r--r--
_patchutils
4.74
KB
-rw-r--r--
_path_commands
2.98
KB
-rw-r--r--
_path_files
27.43
KB
-rw-r--r--
_pax
2.72
KB
-rw-r--r--
_pbm
25.26
KB
-rw-r--r--
_pdf
416
B
-rw-r--r--
_perforce
100.47
KB
-rw-r--r--
_perl
5.26
KB
-rw-r--r--
_perl_basepods
716
B
-rw-r--r--
_perl_modules
4.57
KB
-rw-r--r--
_perldoc
2.28
KB
-rw-r--r--
_pgrep
6.48
KB
-rw-r--r--
_php
6.72
KB
-rw-r--r--
_picocom
2.11
KB
-rw-r--r--
_pids
1.79
KB
-rw-r--r--
_pine
2.88
KB
-rw-r--r--
_ping
7.65
KB
-rw-r--r--
_pkg-config
3.03
KB
-rw-r--r--
_pkg_instance
353
B
-rw-r--r--
_pkgadd
1012
B
-rw-r--r--
_pkginfo
613
B
-rw-r--r--
_pkgrm
551
B
-rw-r--r--
_pon
443
B
-rw-r--r--
_ports
285
B
-rw-r--r--
_postfix
6.66
KB
-rw-r--r--
_postgresql
46.74
KB
-rw-r--r--
_postscript
333
B
-rw-r--r--
_printenv
114
B
-rw-r--r--
_printers
3.13
KB
-rw-r--r--
_process_names
1.22
KB
-rw-r--r--
_prove
2.44
KB
-rw-r--r--
_ps
8.39
KB
-rw-r--r--
_pspdf
326
B
-rw-r--r--
_psutils
3.69
KB
-rw-r--r--
_pump
1.41
KB
-rw-r--r--
_pv
4.29
KB
-rw-r--r--
_pwgen
1.53
KB
-rw-r--r--
_pydoc
858
B
-rw-r--r--
_python
2.11
KB
-rw-r--r--
_python_modules
1.09
KB
-rw-r--r--
_qemu
2.55
KB
-rw-r--r--
_quilt
8.67
KB
-rw-r--r--
_rake
2.78
KB
-rw-r--r--
_ranlib
403
B
-rw-r--r--
_rar
4.46
KB
-rw-r--r--
_rclone
24.33
KB
-rw-r--r--
_rcs
766
B
-rw-r--r--
_readelf
3.7
KB
-rw-r--r--
_readlink
1.71
KB
-rw-r--r--
_remote_files
2.69
KB
-rw-r--r--
_renice
424
B
-rw-r--r--
_ri
3.71
KB
-rw-r--r--
_rlogin
1.84
KB
-rw-r--r--
_rm
2.18
KB
-rw-r--r--
_rmdir
606
B
-rw-r--r--
_route
7.32
KB
-rw-r--r--
_rrdtool
591
B
-rw-r--r--
_rsync
13.44
KB
-rw-r--r--
_rubber
2.66
KB
-rw-r--r--
_ruby
6.12
KB
-rw-r--r--
_runit
2.15
KB
-rw-r--r--
_samba
6.19
KB
-rw-r--r--
_sccs
6.04
KB
-rw-r--r--
_scons
4.08
KB
-rw-r--r--
_screen
6.91
KB
-rw-r--r--
_script
2.53
KB
-rw-r--r--
_seafile
1.12
KB
-rw-r--r--
_sed
10.03
KB
-rw-r--r--
_seq
930
B
-rw-r--r--
_service
1.31
KB
-rw-r--r--
_services
951
B
-rw-r--r--
_setfacl
2
KB
-rw-r--r--
_sh
327
B
-rw-r--r--
_shasum
1.03
KB
-rw-r--r--
_showmount
428
B
-rw-r--r--
_shred
987
B
-rw-r--r--
_shuf
978
B
-rw-r--r--
_shutdown
2.1
KB
-rw-r--r--
_signals
1.09
KB
-rw-r--r--
_sisu
3.85
KB
-rw-r--r--
_slrn
1.1
KB
-rw-r--r--
_smartmontools
4.4
KB
-rw-r--r--
_socket
1.06
KB
-rw-r--r--
_sort
3.72
KB
-rw-r--r--
_spamassassin
475
B
-rw-r--r--
_split
2.83
KB
-rw-r--r--
_sqlite
3.48
KB
-rw-r--r--
_sqsh
2.11
KB
-rw-r--r--
_ssh
28.6
KB
-rw-r--r--
_ssh_hosts
1.08
KB
-rw-r--r--
_stat
3.16
KB
-rw-r--r--
_stdbuf
674
B
-rw-r--r--
_stgit
1.26
KB
-rw-r--r--
_stow
3.27
KB
-rw-r--r--
_strings
2.43
KB
-rw-r--r--
_strip
4.09
KB
-rw-r--r--
_stty
776
B
-rw-r--r--
_su
3.34
KB
-rw-r--r--
_subversion
18.08
KB
-rw-r--r--
_sudo
3.24
KB
-rw-r--r--
_surfraw
17.72
KB
-rw-r--r--
_swaks
3.38
KB
-rw-r--r--
_swanctl
9.98
KB
-rw-r--r--
_swift
5.82
KB
-rw-r--r--
_sys_calls
558
B
-rw-r--r--
_sysctl
3.72
KB
-rw-r--r--
_tac
542
B
-rw-r--r--
_tail
2.88
KB
-rw-r--r--
_tar
6.37
KB
-rw-r--r--
_tar_archive
1
KB
-rw-r--r--
_tardy
678
B
-rw-r--r--
_tcpdump
8.49
KB
-rw-r--r--
_tcptraceroute
583
B
-rw-r--r--
_tee
956
B
-rw-r--r--
_telnet
2.84
KB
-rw-r--r--
_terminals
230
B
-rw-r--r--
_tex
1.92
KB
-rw-r--r--
_texi
129
B
-rw-r--r--
_texinfo
16.12
KB
-rw-r--r--
_tidy
3.63
KB
-rw-r--r--
_tiff
10.47
KB
-rw-r--r--
_tilde_files
785
B
-rw-r--r--
_time_zone
222
B
-rw-r--r--
_timeout
815
B
-rw-r--r--
_tin
2.14
KB
-rw-r--r--
_tla
17.58
KB
-rw-r--r--
_tmux
63.42
KB
-rw-r--r--
_todo.sh
4.48
KB
-rw-r--r--
_toilet
868
B
-rw-r--r--
_top
7.46
KB
-rw-r--r--
_topgit
177
B
-rw-r--r--
_totd
287
B
-rw-r--r--
_touch
1.53
KB
-rw-r--r--
_tput
488
B
-rw-r--r--
_tr
1.47
KB
-rw-r--r--
_transmission
20.55
KB
-rw-r--r--
_tree
2.78
KB
-rw-r--r--
_truss
3.05
KB
-rw-r--r--
_tty
436
B
-rw-r--r--
_ttys
704
B
-rw-r--r--
_twidge
1.67
KB
-rw-r--r--
_twisted
1.34
KB
-rw-r--r--
_umountable
1.42
KB
-rw-r--r--
_unace
472
B
-rw-r--r--
_uname
2.96
KB
-rw-r--r--
_unexpand
1.1
KB
-rw-r--r--
_uniq
1.5
KB
-rw-r--r--
_unison
5.39
KB
-rw-r--r--
_units
2.75
KB
-rw-r--r--
_uptime
696
B
-rw-r--r--
_urls
5.91
KB
-rw-r--r--
_user_admin
6.24
KB
-rw-r--r--
_user_at_host
729
B
-rw-r--r--
_users
240
B
-rw-r--r--
_users_on
253
B
-rw-r--r--
_vcsh
2.33
KB
-rw-r--r--
_vim
6.89
KB
-rw-r--r--
_visudo
545
B
-rw-r--r--
_vmstat
4.47
KB
-rw-r--r--
_vorbis
8.57
KB
-rw-r--r--
_vpnc
3.14
KB
-rw-r--r--
_w
1.37
KB
-rw-r--r--
_w3m
4.43
KB
-rw-r--r--
_watch
1.47
KB
-rw-r--r--
_wc
793
B
-rw-r--r--
_webbrowser
205
B
-rw-r--r--
_wget
11.13
KB
-rw-r--r--
_whereis
36
B
-rw-r--r--
_who
2.36
KB
-rw-r--r--
_whois
4.73
KB
-rw-r--r--
_wiggle
1.09
KB
-rw-r--r--
_xargs
2.79
KB
-rw-r--r--
_xmlsoft
6.67
KB
-rw-r--r--
_xmlstarlet
7.29
KB
-rw-r--r--
_xmms2
5.26
KB
-rw-r--r--
_xxd
2.16
KB
-rw-r--r--
_xz
4.31
KB
-rw-r--r--
_yafc
1.78
KB
-rw-r--r--
_yodl
658
B
-rw-r--r--
_yp
3.18
KB
-rw-r--r--
_zcat
115
B
-rw-r--r--
_zdump
112
B
-rw-r--r--
_zfs
18.02
KB
-rw-r--r--
_zfs_dataset
2.69
KB
-rw-r--r--
_zfs_keysource_props
408
B
-rw-r--r--
_zfs_pool
51
B
-rw-r--r--
_zip
9.51
KB
-rw-r--r--
_zpool
9.53
KB
-rw-r--r--
_zsh
696
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : _subversion
#compdef svn svnlite=svn svnadmin svnadmin-static=svnadmin _svn () { local curcontext="$curcontext" state line expl ret=1 typeset -A opt_args # Colons in values must be escaped. local -A show_item_keys=( kind "the kind of TARGET (file or dir)" url "the URL of TARGET in the repository" relative-url "the repository-relative URL" repos-root-url "the repository root URL" repos-uuid "the repository UUID" repos-size "the size of TARGET in the repository (for files only)" revision "the revision of TARGET" last-changed-revision "the most recent revision in which TARGET was changed" last-changed-date "the date of the last-changed revision" last-changed-author "the author of the last-changed revision" wc-root "the working copy root path" schedule "'normal', 'add', 'delete', 'replace'" depth "'infinity', 'immediates', 'files', 'empty', 'exclude'" changelist "the changelist this file was added to, if any" ) local update_policy zstyle -s ":completion:*:*:$service:*" cache-policy update_policy if [[ -z "$update_policy" ]]; then zstyle ":completion:*:*:$service:*" cache-policy _svn_caching_policy fi _arguments -C -A "-*" \ '(-)--help[print help information]' \ '(*)--version[print client version information]' \ '1: :->cmds' \ '*:: :->args' && ret=0 local _svn_help_takes_verbose if _cache_invalid svn-help-takes-verbose || ! _retrieve_cache svn-help-takes-verbose; then [[ $(_call_program svn-help-v svn help help) == *--verbose* ]] _svn_help_takes_verbose=$(( ! $? )) _store_cache svn-help-takes-verbose _svn_help_takes_verbose fi if (( _svn_help_takes_verbose )); then readonly dash_v="-v" else readonly dash_v fi unset _svn_help_takes_verbose if [[ -n $state ]] && (( ! $+_svn_cmds )); then typeset -gHA _svn_cmds if _cache_invalid svn-cmds || ! _retrieve_cache svn-cmds; then _svn_cmds=( ${=${(f)${${"$(_call_program commands svn help $dash_v)"#l#*Available subcommands:}%%Subversion is a tool*}}/(#s)[[:space:]]#(#b)([a-z-]##)[[:space:]]#(\([a-z, ?-]##\))#/$match[1] :$match[1]${match[2]:+:${${match[2]//[(),]}// /:}}:} ) if (( $? == 0 )); then _store_cache svn-cmds _svn_cmds else # Ensure we enter this block again on the next <TAB>. unset _svn_cmds fi fi fi case $state in cmds) _wanted commands expl 'svn command' _svn_commands && ret=0 ;; args) local cmd args usage idx typeset -gHA _cache_svn_status _cache_svn_mtime cmd="${${(k)_svn_cmds[(R)*:$words[1]:*]}:-${(k)_svn_cmds[(i):$words[1]:]}}" if (( $#cmd )); then curcontext="${curcontext%:*:*}:svn-${cmd}:" if _cache_invalid svn-${cmd}-usage || \ ! _retrieve_cache svn-${cmd}-usage; then usage=${${(M)${(f)"$(_call_program options svn help $dash_v -- $cmd)"}:#usage:*}#usage:*$cmd] } _store_cache svn-${cmd}-usage usage fi if _cache_invalid svn-${cmd}-usage || \ ! _retrieve_cache svn-${cmd}-args; then args=( ${=${${${(M)${(f)"$(_call_program options svn help $dash_v -- $cmd)"#(*Valid options:|(#e))}:#* :*}%% #:*}/ (arg|ARG)/:arg:}/(#b)(-##)([[:alpha:]]##) \[--([a-z-]##)\](:arg:)#/(--$match[3])$match[1]$match[2]$match[4] ($match[1]$match[2])--$match[3]$match[4]} ) while (( idx=$args[(I)*--accept:arg:] )); do args[idx]=( --accept'=:automatic conflict resolution action:((working\:working base\:base recommended\:recommended '"`for i j in p postpone mc mine-conflict tc theirs-conflict mf mine-full tf theirs-full e edit l launch; do print -rn $i\\\\:$j $j\\\\:$j ""; done `"'))' ) done while (( idx=$args[(I)*--c(l|hangelist):arg:] )); do args[idx]=( \*{--cl,--changelist}'=:change list:_svn_changelists' ) done while (( idx=$args[(I)*--config-dir:arg:] )); do args[idx]=( --config-dir'=:config dir:_directories' ) done while (( idx=$args[(I)*--config-option:arg:] )); do args[idx]=( '*--config-option=: :_svn_config_options' ) done while (( idx=$args[(I)*--depth:arg:] )); do args[idx]=( --depth'=:operation depth (how far to recurse):(empty files immediates infinity)' ) done while (( idx=$args[(I)*(-F|--file):arg:] )); do args[idx]=( '(-F --file)'{-F+,--file=}':log message file:_files' ) done while (( idx=$args[(I)*--set-depth:arg:] )); do args[idx]=( --set-depth'=[make working copy deeper or shallower]:new depth:(exclude empty files immediates infinity)' ) done while (( idx=$args[(I)*--trust-server-cert-failures:arg:] )); do args[idx]=( --trust-server-cert-failures'=:failures:_values -s , "certificate failures to ignore" "unknown-ca[unknown authority]" "cn-mismatch[hostname mismatch]" "expired[certificate expired]" "not-yet-valid[certificate not yet valid]" "other[all other failures]"' ) done while (( idx=$args[(I)*--show-item:arg:] )); do # (q) to quote the parentheses in the value args[idx]=( --show-item'=:item key:(('"`for i j in ${(kv)show_item_keys}; do print -rn - $i\\\\:"${(q)j}" ""; done`"'))' ) done # All other options get {-x+,--long-x=} args=( ${args/(#b)(--[A-Za-z0-9-]##):arg:/$match[1]=:arg:} ) args=( ${args/(#b)([^=]):arg:/$match[1]+:arg:} ) _store_cache svn-${cmd}-args args fi case $cmd in; (add) args+=( '*:file:_files -g "*(e:_svn_uncontrolled:)"' ) ;; (auth) args+=( '*:auth pattern: ' ) ;; (changelist) args[(r)--remove]='(1)--remove' args+=( '(--remove)1:changelist name:_svn_changelists' '*:file:_files -g "*(e:_svn_controlled:)"' ) ;; (commit) args=( ${args/(#b)(*--file*):arg:/$match[1]:file:_files} '*:file:_files -g "*(e:_svn_status:)"' ) ;; (delete) args+=( '*:file:_files -g ".svn(/e:_svn_deletedfiles:)"' ) ;; (diff) args+=( '*: : _alternative "files:file:_files -g \*\(e:_svn_status:\)" "urls:URL:_svn_urls"' ) ;; (help) args+=( '*::sub command:_svn_commands' ) ;; (import) args+=( '1:project directory or import location: _alternative "files:file:_files" "urls:URL:_svn_urls"' '2:import location: _alternative "files:file:_files" "urls:URL:_svn_urls"' ) ;; (log) args+=( '1: : _alternative "files:file:_files -g \*\(e:_svn_controlled:\)" "urls:URL:_svn_urls"' '*:file:_files -g "*(e:_svn_controlled:)"' ) ;; (mergeinfo) args[(r)--show-revs=:arg:]=( '--show-revs=:revisions:(merged eligible)' ) ;; (patch) args+=( '1:patch file:_files' '2::working copy to patch:_files' ) ;; (propget|propedit|propdel) args+=( '1:property name:_svn_props' '2:target: _alternative "files:file:_files" "urls:URL:_svn_urls"' ) ;; (propset) args=( ':propname:(svn:ignore svn:keywords svn:executable svn:eol-style svn:mime-type svn:externals svn:needs-lock svn:global-ignores svn:auto-props)' ':propval:->propset_propval' ${args/(#b)(*--file*):arg:/$match[1]:file:_files} '*:path or url: _alternative "files:file:_files" "urls:URL:_svn_urls"' ) ;; (resolve|resolved) args+=( '*:file:_files -g "*(e:_svn_conflicts:)"' ) ;; (revert) args+=( '*:file:_files -g "(.svn|*)(/e:_svn_deletedfiles:,e:_svn_status:)"' ) ;; (x-unshelve) args+=( '1:shelf name:compadd - ${(f)"$(_call_program shelves svn x-shelves --quiet)"}' '2::shelf version' ) ;; (*) case $usage in *(SRC|DST|TARGET|URL*PATH)*) args+=( '*: : _alternative "files:file:_files" "urls:URL:_svn_urls"' ) ;; *URL*) args+=( ':URL:_svn_urls' ) ;; *PATH*) args+=( '*:file:_files' ) ;; esac ;; esac _arguments "$args[@]" && ret=0 case $state in (propset_propval) case $words[2] in (svn:executable|svn:needs-lock) compadd yes;; (svn:keywords) compset -q # '_values -w' only excludes words in argv[1] or later, so # install a dummy argv[0]. This affects Foo in [[svn propset # svn:keywords 'Foo Bar Baz <TAB>]]. words=( dummy $words ); (( ++CURRENT )) _values -s ' ' -w "keywords (or custom)" \ '(URL HeadURL)'{URL,HeadURL}'[URL for the head version of the file]' \ '(Author LastChangedBy)'{Author,LastChangedBy}'[last person to modify the file]' \ '(Date LastChangedDate)'{Date,LastChangedDate}'[date/time the file was last modified]' \ '(Rev Revision LastChangedRevision)'{Rev,Revision,LastChangedRevision}'[last revision the file changed]' \ Id'[compressed summary of URL,Revision,Date,Author]' \ Header"[like 'Id' but includes the full URL]";; (svn:eol-style) compadd - CR LF CRLF native;; (svn:mime-type) _mime_types;; (*) _message 'property value';; esac esac else _message "unknown svn command: $words[1]" fi ;; esac return ret } _svnadmin () { local curcontext="$curcontext" state line ret=1 integer NORMARG local context state_descr typeset -A opt_args _arguments -C \ '(-)--help[print help information]' \ '(- *)--version[print client version information]' \ '1: :->cmds' \ '*:: :->args' && ret=0 if [[ -n $state ]] && (( ! $+_svnadmin_cmds )); then typeset -gHA _svnadmin_cmds _svnadmin_cmds=( ${=${(f)${${"$(_call_program commands svnadmin help)"#l#*Available subcommands:}}}/(#s)[[:space:]]#(#b)([-a-z]##)[[:space:]]#(\([a-z, ?]##\))#/$match[1] :$match[1]${match[2]:+:${${match[2]//[(),]}// /:}}:} ) fi case $state in cmds) _wanted commands expl 'svnadmin command' _svnadmin_commands && ret=0 ;; args) local cmd args usage cmd="${${(k)_svnadmin_cmds[(R)*:$words[1]:*]}:-${(k)_svnadmin_cmds[(i):$words[1]:]}}" if (( $#cmd )); then curcontext="${curcontext%:*:*}:svnadmin-${cmd}:" usage=${${(M)${(f)"$(_call_program options svnadmin help $cmd)"}:#$cmd: usage:*}#$cmd: usage: svnadmin $cmd } args=( ${=${${${(M)${(f)"$(_call_program options svnadmin help $cmd)"#(*Valid options:|(#e))}:#* :*}%% #:*}/ (arg|ARG)/:arg:}/(#b)-([[:alpha:]]) \[--([a-z-]##)\](:arg:)#/(--$match[2])-$match[1]$match[3] (-$match[1])--$match[2]$match[3]} ) # All options get {-x+,--long-x=} args=( ${args/(#b)(--[A-Za-z0-9-]##):arg:/$match[1]=:arg:} ) args=( ${args/(#b)([^=]):arg:/$match[1]+:arg:} ) if [[ $usage == *REPOS_PATH* ]]; then args+=( ":repository path:_files -/" ) case $cmd in (freeze) args+=( "*:arguments:->normal" ) ;; (hotcopy) args+=( ":new repository:_files -/" ) ;; (setlog) args+=( ": :_files" ) ;; (setrevprop) args+=( ":property name" ":property value file:_files" ) ;; (delrevprop) args+=( ":property name" ) ;; esac elif [[ $cmd = help ]]; then args+=( "*:subcommand:_svnadmin_commands" ) fi _arguments -n -s -S : "$args[@]" && ret=0 case $state in # Test cases: # svnadmin freeze . rsync --<TAB> offers --file # svnadmin freeze -- . rsync -<TAB> offers rsync's options # # Note: the NORMARG calculations here include one positional argument # (the '.') before the command. (normal) if (( ${words[(i)--]} < CURRENT )); then words[1,NORMARG]=() (( CURRENT -= NORMARG )) _normal && ret=0 elif (( NORMARG+1 == CURRENT )); then # ### don't allow --options in this case # TODO: this should just use '_normal -F "(-*)"', but _normal ignores its arguments. _command_names -e && ret=0 fi ;; esac else _message "unknown svnadmin command: $words[1]" fi ;; esac return ret } (( $+functions[_svn_controlled] )) || _svn_controlled() { # For svn<=1.6, this was implemented as: # [[ -f ${(M)REPLY##*/}.svn/text-base/${REPLY##*/}.svn-base ]] # However, because that implementation returns false for all files on svn>=1.7, and # because 1.6 has been deprecated for 8 years and EOL for 6 years, we opt to DTRT # for >=1.7. Therefore: # TODO: Reimplement this function and _svn_uncontrolled for svn>=1.7. # (Use 'svn st' or 'svn info', not 'svn ls') return 0 } (( $+functions[_svn_uncontrolled] )) || _svn_uncontrolled() { # TODO: See comments in _svn_controlled return 0 } (( $+functions[_svn_conflicts] )) || _svn_conflicts() { () { (( $# > 0 )) } $REPLY.(mine|r<->)(NY1) } (( $+functions[_svn_deletedfiles] )) || _svn_deletedfiles() { # Typical usage would be _files -g '.svn(/e:_svn_deletedfiles:)' local cont controlled reply=( ) [[ $REPLY = (*/|).svn ]] || return controlled=( $REPLY/text-base/*.svn-base(N:r:t) ) for cont in ${controlled}; do [[ -e $REPLY:h/$cont ]] || reply+=( ${REPLY%.svn}$cont ) done } (( $+functions[_svn_status] )) || _svn_status() { local dir=$REPLY:h local pat="${1:-([ADMR~]|?M)}" zmodload -F zsh/stat b:zstat 2>/dev/null local key="$(zstat +device $dir):$(zstat +inode $dir)" local mtime="$(zstat +mtime $dir/.svn/entries)" if (( ! $+_cache_svn_status[$key] || _cache_svn_mtime[$key] != mtime )); then _cache_svn_status[$key]="$(_call_program files svn status -N $dir)" _cache_svn_mtime[$key]="$mtime" fi (( ${(M)#${(f)_cache_svn_status[$key]}:#(#s)${~pat}*$REPLY} )) } (( $+functions[_svn_remote_paths] )) || _svn_remote_paths() { local expl remfiles remdispf remdispd suf ret=1 pfx='\^/' sub='^/' # prefix must match a valid repository path format, either standard style # schema://host/path/.. or ^/path/.. specifying a path relative to the # root of the working directory repository. In the second form, allow the # leading '^' be escaped in case the user has the extendedglob option set. [[ -prefix *://*/ ]] || [[ -f .svn/entries && ( -prefix '^/' || -prefix '\^/' ) ]] || return 1 # return if remote access is not permitted zstyle -T ":completion:${curcontext}:" remote-access || return 1 remfiles=( ${(f)"$(svn list $IPREFIX${${PREFIX%%[^/]#}/#$pfx/$sub} 2>/dev/null)"} ) (( $? == 0 )) || return 1 # you might consider trying to return early if $#remfiles is zero, # but for whatever reason remfiles will always contain at least a # single empty string; that case is handled correctly below. compset -P '*/' compset -S '/*' || suf=file remdispf=(${remfiles:#*/}) remdispd=(${(M)remfiles:#*/}) _tags files while _tags; do while _next_label files expl ${suf:-directory}; do # add files, unless there is a '/' immediately to the right [[ -n $suf ]] && compadd -S ' ' -q "$@" "$expl[@]" -d remdispf $remdispf && ret=0 # add directories; use empty suffix if there is a '/' immediately to the right compadd -S "${suf:+/}" -q "$@" "$expl[@]" -d remdispd ${remdispd%/} && ret=0 done (( ret )) || return 0 done return 1 } (( $+functions[_svn_urls] )) || _svn_urls() { local urlsch expl ret=1 # first try completing a remote path; if successful, we are all done.. _svn_remote_paths && return 0 # allow configuring svn repository locations using the 'urls' zstyle. # always attempt completion of these because then matcher-list styles # which do substring matching will work correctly. _urls -S/ && ret=0 if [[ ! -prefix *://? ]] ; then zstyle -a ":completion:${curcontext}:" url-schemas urlsch \ || urlsch=( file:// http:// https:// svn:// svn+ssh:// ) if (( $#urlsch )) ; then compset -S '[^:]*' _wanted url-schemas expl 'URL schema' compadd -S '' - $urlsch[@] && ret=0 fi fi return ret } (( $+functions[_svn_commands] )) || _svn_commands() { compadd "$@" -k _svn_cmds || compadd "$@" ${(s.:.)_svn_cmds} } (( $+functions[_svnadmin_command] )) || _svnadmin_commands() { compadd "$@" -k _svnadmin_cmds || compadd "$@" ${(s.:.)_svnadmin_cmds} } (( $+functions[_svn_config_options] )) || _svn_config_options() { local -a expl suf local cfgfile compset -S ':*' || suf=( -qS : ) if compset -P 2 '*:'; then if compset -P '*='; then _message -e values 'value' else _message -e options 'option' fi elif compset -P 1 '*:'; then cfgfile=( ~/.subversion/${(M)${IPREFIX%:}%(config|servers)}(N) /dev/null ) _description sections expl 'section' compadd $suf "$expl[@]" ${${${(M)${(f)"$(<${cfgfile[1]})"}:#\[*\]}#\[}%\]} else _description config-files expl 'configuration file' compadd $suf "$expl[@]" config servers fi } (( $+functions[_svn_props] )) || _svn_props() { local properties properties=( ${${(M)${(f)"$(svn proplist 2>/dev/null)"}:# [^ ]*}# } ) compadd "$@" -a properties && return 0 } (( $+functions[_svn_changelists] )) || _svn_changelists() { local cls cls=( ${${${(M)${(f)"$(_call_program changelists svn status 2>/dev/null)"}:#--- Changelist*}%??}##*\'} ) compadd "$@" -a cls && return 0 } _subversion () { case $service in (svn) _svn "$@" ;; (svnadmin) _svnadmin "$@" ;; esac } _svn_caching_policy() { [[ =$service -nt $1 ]] } _subversion "$@"
Close