- update to 9.1.0836
* 9.1.0836: The vimtutor can be improved * 9.1.0835: :setglobal doesn't work properly for 'ffu' and 'tsrfu' * 9.1.0834: tests: 2html test fails * 9.1.0833: CI: recent ASAN changes do not work for indent tests * 9.1.0832: :set doesn't work for 'cot' and 'bkc' after :setlocal * runtime(doc): update help-toc description * runtime(2html): Make links use color scheme colors in TOhtml * 9.1.0831: 'findexpr' can't be used as lambad or Funcref * Filelist: include helptoc package * runtime(doc): include a TOC Vim9 plugin * Filelist: ignore .git-blame-ignore-revs * 9.1.0830: using wrong highlight group for spaces for popupmenu * runtime(typst): synchronize updates from the upstream typst.vim * git: ignore reformatting commit for git-blame (after v9.1.0829) * 9.1.0829: Vim source code uses a mix of tabs and spaces * 9.1.0828: string_T struct could be used more often * 9.1.0827: CI: tests can be improved * runtime(doc): remove stray sentence in pi_netrw.txt * 9.1.0826: filetype: sway files are not recognized * runtime(doc): Include netrw-gp in TOC * runtime(doc): mention 'iskeyword' at :h charclass() * runtime(doc): update help tags * 9.1.0825: compile error for non-diff builds * runtime(netrw): fix E874 when browsing remote directory which contains `~` character * runtime(doc): update coding style documentation * runtime(debversions): Add plucky (25.04) as Ubuntu release name * 9.1.0824: too many strlen() calls in register.c * 9.1.0823: filetype: Zephyr overlay files not recognized * runtime(doc): Clean up minor formatting issues for builtin functions OBS-URL: https://build.opensuse.org/package/show/editors/vim?expand=0&rev=867
This commit is contained in:
commit
464cf0e172
25
.gitattributes
vendored
Normal file
25
.gitattributes
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||
## Specific LFS patterns
|
||||
gvim.svg filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
24
README.Japanese-XIM
Normal file
24
README.Japanese-XIM
Normal file
@ -0,0 +1,24 @@
|
||||
To select the style of XIM Input the following command line arguments,
|
||||
which are handled by GTK internally, are available:
|
||||
|
||||
--xim-preedit [none|nothing|area|position|callbacks]
|
||||
--xim-status [none|nothing|area|callbacks]
|
||||
|
||||
To use OnTheSpot input style, start gvim like
|
||||
|
||||
~$ gvim [--xim-preedit callbacks] [--xim-status callbacks]
|
||||
|
||||
This is also the default, which you will get without any command line arguments.
|
||||
|
||||
|
||||
To use OverTheSpot input style, start gvim like
|
||||
|
||||
~$ gvim --xim-preedit position [--xim-status callbacks]
|
||||
|
||||
OnTheSpot input is still buggy and does not yet work right for Japanese,
|
||||
therefore it is recommended to use OverTheSpot input style for Japanese.
|
||||
|
||||
(For Korean, OnTheSpot input style works well).
|
||||
|
||||
|
||||
Fri Jan 26 17:57:39 2001 Mike Fabian <mfabian@suse.de>
|
294
apparmor.vim
Normal file
294
apparmor.vim
Normal file
@ -0,0 +1,294 @@
|
||||
" generated from apparmor.vim.in by create-apparmor.vim.py
|
||||
" do not edit this file - edit apparmor.vim.in or create-apparmor.vim.py instead
|
||||
|
||||
" ----------------------------------------------------------------------
|
||||
" Copyright (c) 2005 Novell, Inc. All Rights Reserved.
|
||||
" Copyright (c) 2006-2023 Christian Boltz. All Rights Reserved.
|
||||
"
|
||||
" This program is free software; you can redistribute it and/or
|
||||
" modify it under the terms of version 2 of the GNU General Public
|
||||
" License as published by the Free Software Foundation.
|
||||
"
|
||||
" This program is distributed in the hope that it will be useful,
|
||||
" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
" GNU General Public License for more details.
|
||||
"
|
||||
" You should have received a copy of the GNU General Public License
|
||||
" along with this program; if not, contact Novell, Inc.
|
||||
"
|
||||
" If you want to report a bug for apparmor.vim, please do so at
|
||||
" - https://gitlab.com/apparmor/apparmor/ or
|
||||
" - https://bugzilla.opensuse.org (assign it to suse-beta[AT]cboltz.de)
|
||||
" ----------------------------------------------------------------------
|
||||
"
|
||||
" stick this file into ~/.vim/syntax/ and add these commands into your .vimrc
|
||||
" to have vim automagically use this syntax file for these directories:
|
||||
"
|
||||
" autocmd BufNewFile,BufRead /etc/apparmor.d/* set syntax=apparmor
|
||||
" autocmd BufNewFile,BufRead /usr/share/apparmor/extra-profiles/* set syntax=apparmor
|
||||
|
||||
" profiles are case sensitive
|
||||
syntax case match
|
||||
|
||||
" color setup...
|
||||
|
||||
" adjust colors according to the background
|
||||
|
||||
" switching colors depending on the background color doesn't work
|
||||
" unfortunately, so we use colors that work with light and dark background.
|
||||
" Patches welcome ;-)
|
||||
|
||||
"if &background == "light"
|
||||
" light background
|
||||
hi sdProfileName ctermfg=lightblue
|
||||
hi sdHatName ctermfg=darkblue
|
||||
hi sdExtHat ctermfg=darkblue
|
||||
" hi sdComment2 ctermfg=darkblue
|
||||
hi sdGlob ctermfg=darkmagenta
|
||||
hi sdAlias ctermfg=darkmagenta
|
||||
hi sdAll ctermfg=darkred ctermbg=yellow
|
||||
hi sdEntryWriteExec ctermfg=black ctermbg=yellow
|
||||
hi sdEntryUX ctermfg=darkred cterm=underline
|
||||
hi sdEntryUXe ctermfg=darkred
|
||||
hi sdEntryIX ctermfg=darkcyan
|
||||
hi sdEntryM ctermfg=darkcyan
|
||||
hi sdEntryPX ctermfg=darkgreen cterm=underline
|
||||
hi sdEntryPXe ctermfg=darkgreen
|
||||
hi sdEntryW ctermfg=darkyellow
|
||||
hi sdCap ctermfg=lightblue
|
||||
hi sdSetCap ctermfg=black ctermbg=yellow
|
||||
hi sdNetwork ctermfg=lightblue
|
||||
hi sdNetworkDanger ctermfg=darkred
|
||||
hi sdCapKey cterm=underline ctermfg=lightblue
|
||||
hi sdCapDanger ctermfg=darkred
|
||||
hi sdRLimit ctermfg=lightblue
|
||||
hi sdUserns ctermfg=darkred
|
||||
hi def link sdEntryR Normal
|
||||
hi def link sdEntryK Normal
|
||||
hi def link sdFlags Normal
|
||||
hi sdEntryChangeProfile ctermfg=darkgreen cterm=underline
|
||||
"else
|
||||
" dark background
|
||||
" hi sdProfileName ctermfg=white
|
||||
" hi sdHatName ctermfg=white
|
||||
" hi sdGlob ctermfg=magenta
|
||||
" hi sdEntryWriteExec ctermfg=black ctermbg=yellow
|
||||
" hi sdEntryUX ctermfg=red cterm=underline
|
||||
" hi sdEntryUXe ctermfg=red
|
||||
" hi sdEntryIX ctermfg=cyan
|
||||
" hi sdEntryM ctermfg=cyan
|
||||
" hi sdEntryPX ctermfg=green cterm=underline
|
||||
" hi sdEntryPXe ctermfg=green
|
||||
" hi sdEntryW ctermfg=yellow
|
||||
" hi sdCap ctermfg=lightblue
|
||||
" hi sdCapKey cterm=underline ctermfg=lightblue
|
||||
" hi def link sdEntryR Normal
|
||||
" hi def link sdFlags Normal
|
||||
" hi sdCapDanger ctermfg=red
|
||||
"endif
|
||||
|
||||
hi def link sdInclude Include
|
||||
high def link sdComment Comment
|
||||
"high def link sdComment2 Comment
|
||||
high def link sdFlagKey TODO
|
||||
high def link sdError ErrorMsg
|
||||
|
||||
|
||||
" always sync from the start. should be relatively quick since we don't have
|
||||
" that many rules and profiles shouldn't be _extremely_ large...
|
||||
syn sync fromstart
|
||||
|
||||
syn keyword sdFlagKey complain debug
|
||||
|
||||
" highlight invalid syntax
|
||||
syn match sdError /{/ contained
|
||||
syn match sdError /}/
|
||||
syn match sdError /^.*$/ contains=sdComment "highlight all non-valid lines as error
|
||||
" TODO: do not mark lines containing only whitespace as error
|
||||
|
||||
" TODO: the sdGlob pattern is not anchored with ^ and $, so it matches all lines matching ^@{...}.*
|
||||
" This allows incorrect lines also and should be checked better.
|
||||
" This also (accidentally ;-) includes variable definitions (@{FOO}=/bar)
|
||||
" TODO: make a separate pattern for variable definitions, then mark sdGlob as contained
|
||||
syn match sdGlob /\v\?|\*|\{.*,.*\}|[[^\]]\+\]|\@\{[a-zA-Z][a-zA-Z0-9_]*\}/
|
||||
|
||||
syn match sdAlias /\v^\s*alias\s+(\/|\@\{\S*\})\S*\s+-\>\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment
|
||||
|
||||
" syn match sdComment /#.*/
|
||||
|
||||
" List of all (supported) rules inside a profile.
|
||||
" XXX When adding support for a new rule type, also add it here. XXX
|
||||
" XXX Otherwise it will be highlighted as an error. XXX
|
||||
syn cluster sdEntry contains=sdAll,sdEntryWriteExec,sdEntryR,sdEntryW,sdEntryIX,sdEntryPX,sdEntryPXe,sdEntryUX,sdEntryUXe,sdEntryM,sdCap,sdSetCap,sdExtHat,sdRLimit,sdNetwork,sdNetworkDanger,sdEntryChangeProfile,sdUserns
|
||||
|
||||
|
||||
" TODO: support audit and deny keywords for all rules (not only for files)
|
||||
" TODO: highlight audit and deny keywords everywhere
|
||||
|
||||
" 'all' rule
|
||||
syn match sdAll /\v^\s*(audit\s+)?(deny\s+|allow\s+)?all\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
|
||||
" Capability line
|
||||
|
||||
" normal capabilities - really keep this list? syn match sdCap should be enough... (difference: sdCapKey words would loose underlining)
|
||||
syn keyword sdCapKey audit_read block_suspend bpf checkpoint_restore chown dac_override dac_read_search fowner fsetid ipc_lock ipc_owner kill lease linux_immutable mknod net_admin net_bind_service net_broadcast net_raw perfmon setgid setpcap setuid syslog sys_boot sys_chroot sys_nice sys_pacct sys_ptrace sys_resource sys_time sys_tty_config wake_alarm
|
||||
|
||||
" dangerous capabilities - highlighted separately
|
||||
syn keyword sdCapDanger audit_control audit_write mac_override mac_admin setfcap sys_admin sys_module sys_rawio
|
||||
|
||||
" full line. Keywords are from sdCapKey + sdCapDanger
|
||||
syn match sdCap /\v^\s*(audit\s+)?(deny\s+|allow\s+)?capability\s+((audit_control|audit_read|audit_write|block_suspend|bpf|checkpoint_restore|chown|dac_override|dac_read_search|fowner|fsetid|ipc_lock|ipc_owner|kill|lease|linux_immutable|mac_admin|mac_override|mknod|net_admin|net_bind_service|net_broadcast|net_raw|perfmon|setfcap|setgid|setpcap|setuid|syslog|sys_admin|sys_boot|sys_chroot|sys_module|sys_nice|sys_pacct|sys_ptrace|sys_rawio|sys_resource|sys_time|sys_tty_config|wake_alarm)\s+)*(audit_control|audit_read|audit_write|block_suspend|bpf|checkpoint_restore|chown|dac_override|dac_read_search|fowner|fsetid|ipc_lock|ipc_owner|kill|lease|linux_immutable|mac_admin|mac_override|mknod|net_admin|net_bind_service|net_broadcast|net_raw|perfmon|setfcap|setgid|setpcap|setuid|syslog|sys_admin|sys_boot|sys_chroot|sys_module|sys_nice|sys_pacct|sys_ptrace|sys_rawio|sys_resource|sys_time|sys_tty_config|wake_alarm)\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdCapKey,sdCapDanger,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
" all capabilities ('capability' without any keyword)
|
||||
syn match sdCapDanger /\v^\s*(audit\s+)?(deny\s+|allow\s+)?capability\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" Network line
|
||||
" Syntax: network domain (inet, ...) type (stream, ...) protocol (tcp, ...)
|
||||
" TODO: 'owner' isn't supported, but will be (JJ, 2011-01-11)
|
||||
syn match sdNetwork /\v^\s*(audit\s+)?(deny\s+|allow\s+)?network(\s+(unspec|unix|inet|ax25|ipx|appletalk|netrom|bridge|atmpvc|x25|inet6|rose|netbeui|security|key|netlink|packet|ash|econet|atmsvc|rds|sna|irda|pppox|wanpipe|llc|ib|mpls|can|tipc|bluetooth|iucv|rxrpc|isdn|phonet|ieee802154|caif|alg|nfc|vsock|kcm|qipcrtr|smc|xdp|mctp))?(\s+(stream|dgram|seqpacket|rdm|packet))?(\s+tcp|\s+udp|\s+icmp)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
" network rules containing 'raw'
|
||||
syn match sdNetworkDanger /\v^\s*(audit\s+)?(deny\s+|allow\s+)?network(\s+(unspec|unix|inet|ax25|ipx|appletalk|netrom|bridge|atmpvc|x25|inet6|rose|netbeui|security|key|netlink|packet|ash|econet|atmsvc|rds|sna|irda|pppox|wanpipe|llc|ib|mpls|can|tipc|bluetooth|iucv|rxrpc|isdn|phonet|ieee802154|caif|alg|nfc|vsock|kcm|qipcrtr|smc|xdp|mctp))?(\s+(raw))(\s+tcp|\s+udp|\s+icmp)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
" 'all networking' includes raw -> mark as dangerous
|
||||
syn match sdNetworkDanger /\v^\s*(audit\s+)?(deny\s+|allow\s+)?network\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
|
||||
" Change Profile
|
||||
syn match sdEntryChangeProfile /\v^\s*(audit\s+)?(deny\s+|allow\s+)?change_profile\s+(safe\s+[/@]\S+|unsafe\s+[/@]\S+|[/@]\S+)?\s*(-\>\s*\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
" bare change_profile rule
|
||||
syn match sdEntryChangeProfile /\v^\s*(audit\s+)?(deny\s+|allow\s+)?change_profile\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" rlimit
|
||||
" TODO: audit and deny support will be added (JJ, 2011-01-11)
|
||||
"
|
||||
"syn match sdRLimit /\v^\s*rlimit\s+()\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment
|
||||
syn match sdRLimit /\v^\s*set\s+rlimit\s+(nofile|ofile|nproc|rtprio)\s+\<\=\s+[0-9]+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment
|
||||
syn match sdRLimit /\v^\s*set\s+rlimit\s+(locks|sigpending)\s+\<\=\s+[0-9]+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment
|
||||
syn match sdRLimit /\v^\s*set\s+rlimit\s+(fsize|data|stack|core|rss|as|memlock|msgqueue)\s+\<\=\s+[0-9]+([KMG]B)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment
|
||||
syn match sdRLimit /\v^\s*set\s+rlimit\s+nice\s+\<\=\s+(-1?[0-9]|-20|1?[0-9])\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment
|
||||
syn match sdRLimit /\v^\s*set\s+rlimit\s+cpu\s+\<\=\s+[0-9]+(seconds|minutes|hours|days)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment
|
||||
syn match sdRLimit /\v^\s*set\s+rlimit\s+rttime\s+\<\=\s+[0-9]+(ms|seconds|minutes)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment
|
||||
syn match sdRLimit /\v^\s*set\s+rlimit\s+(cpu|rttime|nofile|nproc|rtprio|locks|sigpending|fsize|data|stack|core|rss|as|memlock|msgqueue|nice)\s+\<\=\s+infinity\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment
|
||||
|
||||
" userns
|
||||
syn match sdUserns /\v^\s*(audit\s+)?(deny\s+|allow\s+)?userns(\s+create)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" link rules
|
||||
syn match sdEntryW /\v^\s+(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?link\s+(subset\s+)?(\/|\@\{\S*\})\S*\s+-\>\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment
|
||||
|
||||
|
||||
syn match sdExtHat /\v^\s+(\^|hat\s+|profile\s+)\S+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdComment " hat without {...}
|
||||
|
||||
|
||||
|
||||
|
||||
syn match sdProfileName /\v^((profile\s+)?\/\S+|profile\s+([a-zA-Z0-9]\S*\s)?\S+)\s+((flags\s*\=\s*)?\(\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted)(\s*,\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted))*\s*\)\s+)=\{/ contains=sdProfileStart,sdHatName,sdFlags,sdComment,sdGlob
|
||||
syn match sdProfileStart /{/ contained
|
||||
syn match sdProfileEnd /^}\s*(#.*)?$/ contained " TODO: syn region does not (yet?) allow usage of comment in end=
|
||||
" TODO: Removing the $ mark from end= will allow non-comments also :-(
|
||||
syn match sdHatName /\v^\s+(\^|hat\s+|profile\s+)\S+\s+((flags\s*\=\s*)?\(\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted)(\s*,\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted))*\s*\)\s+)=\{/ contains=sdProfileStart,sdFlags,sdComment
|
||||
syn match sdHatStart /{/ contained
|
||||
syn match sdHatEnd /}/ contained " TODO: allow comments + [same as for syn match sdProfileEnd]
|
||||
syn match sdFlags /\v((flags\s*\=\s*)?\(\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted)(\s*,\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted))*\s*\)\s+)/ contained contains=sdFlagKey
|
||||
|
||||
syn match sdComment /\s*#.*$/
|
||||
" NOTE: contains=sdComment changes #include highlighting to comment color.
|
||||
" NOTE: Comment highlighting still works without contains=sdComment.
|
||||
syn match sdInclude /\s*#include\s<\S*>/ " TODO: doesn't check until $
|
||||
syn match sdInclude /\s*include\s<\S*>/ " TODO: doesn't check until $
|
||||
syn match sdInclude /\s*#include\sif\sexists\s<\S*>/ " TODO: doesn't check until $
|
||||
syn match sdInclude /\s*include\sif\sexists\s<\S*>/ " TODO: doesn't check until $
|
||||
|
||||
syn match sdInclude /\s*abi\s<\S*>\s*,/ contains=sdComment " TODO: doesn't check until $
|
||||
|
||||
" basic profile block...
|
||||
" \s+ does not work in end=, therefore using \s\s*
|
||||
syn region Normal start=/\v^(profile\s+)?\S+\s+((flags\s*\=\s*)?\(\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted)(\s*,\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted))*\s*\)\s+)=\{/ matchgroup=sdProfileEnd end=/^}\s*$/ contains=sdProfileName,Hat,@sdEntry,sdComment,sdError,sdInclude
|
||||
syn region Hat start=/\v^\s+(\^|hat\s+|profile\s+)\S+\s+((flags\s*\=\s*)?\(\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted)(\s*,\s*(complain|unconfined|audit|attach_disconnected|no_attach_disconnected|chroot_attach|chroot_no_attach|chroot_relative|namespace_relative|mediate_deleted|delegate_deleted))*\s*\)\s+)=\{/ matchgroup=sdHatEnd end=/^\s\s*}\s*$/ contains=sdHatName,@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" file permissions
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
" file rules added with create_file_rule()
|
||||
|
||||
" write + exec/mmap - danger! (known bug: accepts aw to keep things simple)
|
||||
syn match sdEntryWriteExec /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(l|r|w|a|m|k|[iuUpPcC]x)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryWriteExec /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(l|r|w|a|m|k|[iuUpPcC]x)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryWriteExec /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(l|r|w|a|m|k|[iuUpPcC]x)+(\s+-\>\s+\S+)?\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryWriteExec /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(l|r|w|a|m|k|[iuUpPcC]x)+(\s+-\>\s+\S+)?\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" ux(mr) - unconstrained entry, flag the line red. also includes pux which is unconstrained if no profile exists
|
||||
syn match sdEntryUX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(r|m|k|ux|pux)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryUX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(r|m|k|ux|pux)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryUX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|ux|pux)+(\s+-\>\s+\S+)?\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryUX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|ux|pux)+(\s+-\>\s+\S+)?\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" Ux(mr) and PUx(mr) - like ux + clean environment
|
||||
syn match sdEntryUXe /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(r|m|k|Ux|PUx)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryUXe /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(r|m|k|Ux|PUx)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryUXe /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|Ux|PUx)+(\s+-\>\s+\S+)?\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryUXe /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|Ux|PUx)+(\s+-\>\s+\S+)?\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" px/cx/pix/cix(mrk) - standard exec entry, flag the line blue
|
||||
syn match sdEntryPX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(r|m|k|px|cx|pix|cix)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryPX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(r|m|k|px|cx|pix|cix)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryPX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|px|cx|pix|cix)+(\s+-\>\s+\S+)?\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryPX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|px|cx|pix|cix)+(\s+-\>\s+\S+)?\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" Px/Cx/Pix/Cix(mrk) - like px/cx + clean environment
|
||||
syn match sdEntryPXe /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(r|m|k|Px|Cx|Pix|Cix)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryPXe /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(r|m|k|Px|Cx|Pix|Cix)+(\s+-\>\s+\S+)?\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryPXe /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|Px|Cx|Pix|Cix)+(\s+-\>\s+\S+)?\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryPXe /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|Px|Cx|Pix|Cix)+(\s+-\>\s+\S+)?\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" ix(mr) - standard exec entry, flag the line green
|
||||
syn match sdEntryIX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(r|m|k|ix)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryIX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(r|m|k|ix)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryIX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|ix)+\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryIX /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k|ix)+\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" mr - mmap with PROT_EXEC
|
||||
syn match sdEntryM /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(r|m|k)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryM /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(r|m|k)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryM /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k)+\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryM /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(r|m|k)+\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" special case: deny x is allowed (does not need to be ix, px, ux or cx)
|
||||
syn match sdEntryM /\v^\s*(audit\s+)?deny\s+(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(r|m|k|x)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryM /\v^\s*(audit\s+)?deny\s+(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(r|m|k|x)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryM /\v^\s*(audit\s+)?deny\s+(owner\s+|other\s+)?(r|m|k|x)+\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryM /\v^\s*(audit\s+)?deny\s+(owner\s+|other\s+)?(r|m|k|x)+\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" write + append is an error
|
||||
syn match sdError /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+\S*(w\S*a|a\S*w)\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdError /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+\S*(w\S*a|a\S*w)\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdError /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?\S*(w\S*a|a\S*w)\S*\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdError /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?\S*(w\S*a|a\S*w)\S*\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" write entry, flag the line yellow
|
||||
syn match sdEntryW /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(l|r|w|k)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryW /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(l|r|w|k)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryW /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(l|r|w|k)+\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryW /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(l|r|w|k)+\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" append entry, flag the line yellow
|
||||
syn match sdEntryW /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+(l|r|a|k)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryW /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+(l|r|a|k)+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryW /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(l|r|a|k)+\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryW /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(l|r|a|k)+\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" read entry + locking, currently no highlighting
|
||||
syn match sdEntryK /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+[rlk]+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryK /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+[rlk]+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryK /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?[rlk]+\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryK /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?[rlk]+\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
||||
" read entry, no highlighting
|
||||
syn match sdEntryR /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?(\/|\@\{\S*\})\S*\s+[rl]+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryR /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?"(\/|\@\{\S*\})\S*"\s+[rl]+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryR /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?[rl]+\s+(\/|\@\{\S*\})\S*\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
syn match sdEntryR /\v^\s*(audit\s+)?(deny\s+|allow\s+)?(owner\s+|other\s+)?[rl]+\s+"(\/|\@\{\S*\})\S*"+\s*,(\s*$|(\s*#.*$)\@=)/ contains=sdGlob,sdComment nextgroup=@sdEntry,sdComment,sdError,sdInclude
|
||||
|
13
gvim.desktop
Normal file
13
gvim.desktop
Normal file
@ -0,0 +1,13 @@
|
||||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Name=Vi IMproved
|
||||
Categories=GTK;Application;Utility;TextEditor;
|
||||
Keywords=editor;gvim;vim;
|
||||
GenericName=Text Editor
|
||||
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
|
||||
Exec=gvim -f %f
|
||||
Icon=gvim
|
||||
Type=Application
|
||||
Terminal=false
|
||||
X-KDE-StartupNotify=true
|
||||
X-KDE-AuthorizeAction=shell_access
|
3
gvim.svg
Normal file
3
gvim.svg
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b53a846616930af3f3ec5c8fca0f64e3cb513cf6b129460e4567e5b0fe83b71e
|
||||
size 18168
|
BIN
gvim_128.png
(Stored with Git LFS)
Normal file
BIN
gvim_128.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
gvim_24.png
(Stored with Git LFS)
Normal file
BIN
gvim_24.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
gvim_256.png
(Stored with Git LFS)
Normal file
BIN
gvim_256.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
gvim_32.png
(Stored with Git LFS)
Normal file
BIN
gvim_32.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
gvim_48.png
(Stored with Git LFS)
Normal file
BIN
gvim_48.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
gvim_512.png
(Stored with Git LFS)
Normal file
BIN
gvim_512.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
gvim_64.png
(Stored with Git LFS)
Normal file
BIN
gvim_64.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
gvim_96.png
(Stored with Git LFS)
Normal file
BIN
gvim_96.png
(Stored with Git LFS)
Normal file
Binary file not shown.
48
spec.skeleton
Normal file
48
spec.skeleton
Normal file
@ -0,0 +1,48 @@
|
||||
#
|
||||
# spec file for package specRPM_CREATION_NAME
|
||||
#
|
||||
# Copyright (c) specCURRENT_YEAR SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
Name: specRPM_CREATION_NAME
|
||||
Version:
|
||||
Release: 0
|
||||
Summary:
|
||||
# FIXME: Select a correct license from https://github.com/openSUSE/spec-cleaner#spdx-licenses
|
||||
License:
|
||||
URL:
|
||||
Source:
|
||||
BuildRequires:
|
||||
|
||||
%description
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%configure
|
||||
%make_build
|
||||
|
||||
%install
|
||||
%make_install
|
||||
|
||||
%check
|
||||
%make_build check
|
||||
|
||||
%files
|
||||
%license COPYING
|
||||
%doc ChangeLog README
|
||||
|
||||
%changelog
|
40
spec.vim
Normal file
40
spec.vim
Normal file
@ -0,0 +1,40 @@
|
||||
if exists("loaded_spec") || &cp
|
||||
finish
|
||||
endif
|
||||
let loaded_spec = 1
|
||||
|
||||
function! SKEL_spec()
|
||||
0r /usr/share/vim/current/skeletons/skeleton.spec
|
||||
language time en_US
|
||||
if $USER != ''
|
||||
let login = $USER
|
||||
elseif $LOGNAME != ''
|
||||
let login = $LOGNAME
|
||||
else
|
||||
let login = 'unknown'
|
||||
endif
|
||||
let newline = stridx(login, "\n")
|
||||
if newline != -1
|
||||
let login = strpart(login, 0, newline)
|
||||
endif
|
||||
if $HOSTNAME != ''
|
||||
let hostname = $HOSTNAME
|
||||
else
|
||||
let hostname = system('hostname -f')
|
||||
if v:shell_error
|
||||
let hostname = 'localhost'
|
||||
endif
|
||||
endif
|
||||
let newline = stridx(hostname, "\n")
|
||||
if newline != -1
|
||||
let hostname = strpart(hostname, 0, newline)
|
||||
endif
|
||||
exe "%s/specCURRENT_YEAR/" . strftime("%Y") . "/ge"
|
||||
exe "%s/specRPM_CREATION_DATE/" . strftime("%a\ %b\ %d\ %Y") . "/ge"
|
||||
exe "%s/specRPM_CREATION_AUTHOR_MAIL/" . login . "@" . hostname . "/ge"
|
||||
exe "%s/specRPM_CREATION_NAME/" . expand("%:t:r") . "/ge"
|
||||
setf spec
|
||||
endfunction
|
||||
|
||||
" Skeleton for spec files
|
||||
autocmd BufNewFile *.spec call SKEL_spec()
|
168
suse.gvimrc
Normal file
168
suse.gvimrc
Normal file
@ -0,0 +1,168 @@
|
||||
"
|
||||
" /etc/gvimrc
|
||||
"
|
||||
" from original source copied and modified by Klaus Franken
|
||||
" Version: 21.1.97
|
||||
|
||||
" other settings:
|
||||
:se guipty
|
||||
:se guioptions=amr
|
||||
|
||||
" Menues:
|
||||
" copied and modified from:
|
||||
" *vim_menu.txt* For Vim version 4.5. Last modification: 1996 Oct 12
|
||||
"
|
||||
" These menu commands should recreate the default Vim menus.
|
||||
" You can use this as a start for your own set of menus.
|
||||
" The colons at the start of each line are just to indicate these are colon
|
||||
" commands, they could be omitted.
|
||||
" If the <Esc> and <CR> string appear literally in the output of ":menu", you
|
||||
" need to remove the '<' flag from 'cpoptions' |'cpoptions'|
|
||||
|
||||
" First remove any menus that are currently present
|
||||
:unmenu *
|
||||
:unmenu! *
|
||||
|
||||
" Help menu
|
||||
" Note that the help commands use <Esc> to leave Insert/Visual/Command-line
|
||||
" mode
|
||||
:nnoremenu Help.Overview\ \ <F1> :help<CR>
|
||||
:vnoremenu Help.Overview\ \ <F1> <Esc>:help<CR>
|
||||
:noremenu! Help.Overview\ \ <F1> <Esc>:help<CR>
|
||||
|
||||
:nnoremenu Help.How\ to\.\.\. :help how_to<CR>
|
||||
:vnoremenu Help.How\ to\.\.\. <Esc>:help how_to<CR>
|
||||
:noremenu! Help.How\ to\.\.\. <Esc>:help how_to<CR>
|
||||
|
||||
:nnoremenu Help.GUI :help gui<CR>
|
||||
:vnoremenu Help.GUI <Esc>:help gui<CR>
|
||||
:noremenu! Help.GUI <Esc>:help gui<CR>
|
||||
|
||||
:nnoremenu Help.Version :version<CR>
|
||||
:vnoremenu Help.Version <Esc>:version<CR>
|
||||
:noremenu! Help.Version <Esc>:version<CR>
|
||||
|
||||
:nnoremenu Help.Credits :help credits<CR>
|
||||
:vnoremenu Help.Credits <Esc>:help credits<CR>
|
||||
:noremenu! Help.Credits <Esc>:help credits<CR>
|
||||
|
||||
:nnoremenu Help.Copying :help uganda<CR>
|
||||
:vnoremenu Help.Copying <Esc>:help uganda<CR>
|
||||
:noremenu! Help.Copying <Esc>:help uganda<CR>
|
||||
|
||||
" File menu
|
||||
:nnoremenu File.Save\ \ \ \ \ \ \ :w :w<CR>
|
||||
:inoremenu File.Save\ \ \ \ \ \ \ :w <C-O>:w<CR>
|
||||
|
||||
:nnoremenu File.Close\ \ \ \ \ \ :q :q<CR>
|
||||
:vnoremenu File.Close\ \ \ \ \ \ :q <Esc>:q<CR>
|
||||
:noremenu! File.Close\ \ \ \ \ \ :q <Esc>:q<CR>
|
||||
|
||||
:nnoremenu File.Quit\ \ \ \ \ \ \ :qa :qa<CR>
|
||||
:vnoremenu File.Quit\ \ \ \ \ \ \ :qa <Esc>:qa<CR>
|
||||
:noremenu! File.Quit\ \ \ \ \ \ \ :qa <Esc>:qa<CR>
|
||||
|
||||
:nnoremenu File.Save-Quit\ \ :wqa :wqa<CR>
|
||||
:vnoremenu File.Save-Quit\ \ :wqa <Esc>:wqa<CR>
|
||||
:noremenu! File.Save-Quit\ \ :wqa <Esc>:wqa<CR>
|
||||
|
||||
" Edit menu
|
||||
:nnoremenu Edit.Undo u
|
||||
:nnoremenu Edit.Redo <C-R>
|
||||
|
||||
:vnoremenu Edit.Cut x
|
||||
:vnoremenu Edit.Copy y
|
||||
|
||||
:nnoremenu Edit.Put\ Before [p
|
||||
:inoremenu Edit.Put\ Before <C-O>[p
|
||||
:nnoremenu Edit.Put\ After ]p
|
||||
:inoremenu Edit.Put\ After <C-O>]p
|
||||
|
||||
:nnoremenu Edit.Paste i<C-R>*<Esc>
|
||||
:noremenu! Edit.Paste <C-R>*
|
||||
|
||||
" new kfr@suse.de
|
||||
|
||||
" MenuNamen:
|
||||
" :nnoremenu Normal
|
||||
" :vnoremenu Visual
|
||||
" :noremenu! Input?
|
||||
|
||||
:nnoremenu File.Reload\ \ \ \ \ :e! :e!<CR>
|
||||
:vnoremenu File.Reload\ \ \ \ \ :e! <Esc>:e!<CR>
|
||||
:noremenu! File.Reload\ \ \ \ \ :e! <Esc>:e!<CR>
|
||||
|
||||
:nnoremenu File.Quit\ All!\ \ :qa! :qa!<CR>
|
||||
|
||||
:nnoremenu Settings.Show :se<CR>
|
||||
:nnoremenu Settings.Autoindent.off\ F7 :se noautoindent<CR>
|
||||
:nnoremenu Settings.Autoindent.on\ \ F8 :se autoindent<CR>
|
||||
:nnoremenu Settings.Tabs.Expand\ on :se expandtab<CR>
|
||||
:nnoremenu Settings.Tabs.Expand\ off :se noexpandtab<CR>
|
||||
:nnoremenu Settings.Tabs.2 :se tabstop=2<CR>:se shiftwidth=2<CR>
|
||||
:nnoremenu Settings.Tabs.4 :se tabstop=4<CR>:se shiftwidth=4<CR>
|
||||
:nnoremenu Settings.Tabs.8 :se tabstop=8<CR>:se shiftwidth=8<CR>
|
||||
:nnoremenu Settings.Mouse.All :se mouse=a<CR>
|
||||
:nnoremenu Settings.Mouse.Visual :se mouse=v<CR>
|
||||
:nnoremenu Settings.Mouse.Insert :se mouse=i<CR>
|
||||
:nnoremenu Settings.Mouse.Command-line :se mouse=c<CR>
|
||||
:nnoremenu Settings.Textwidth.off :se textwidth=0<CR>
|
||||
:nnoremenu Settings.Textwidth.70 :se textwidth=70<CR>
|
||||
:nnoremenu Settings.Textwidth.75 :se textwidth=75<CR>
|
||||
:nnoremenu Settings.Textwidth.80 :se textwidth=80<CR>
|
||||
:nnoremenu Settings.Wrap.on :se wrap<CR>
|
||||
:nnoremenu Settings.Wrap.off :se nowrap<CR>
|
||||
:nnoremenu Settings.Numbers.on :se nu<CR>
|
||||
:nnoremenu Settings.Numbers.off :se nonu<CR>
|
||||
:nnoremenu Settings.Search\ case-sensitiv.on :se ignorecase<CR>
|
||||
:nnoremenu Settings.Search\ case-sensitiv.off :se noignorecase<CR>
|
||||
:nnoremenu Settings.Scrollbar.Right :se guioptions=mr<CR>
|
||||
:nnoremenu Settings.Scrollbar.Right+Bottom :se guioptions=mrb<CR>
|
||||
:nnoremenu Settings.Scrollbar.Left :se guioptions=ml<CR>
|
||||
:nnoremenu Settings.Scrollbar.Left+Bottom :se guioptions=mlb<CR>
|
||||
|
||||
:nnoremenu Settings.RightLeft.Show\ -> :se norightleft<CR>
|
||||
:nnoremenu Settings.RightLeft.Show\ <- :se rightleft<CR>
|
||||
:nnoremenu Settings.RightLeft.Input\ -> :se norevins<CR>
|
||||
:nnoremenu Settings.RightLeft.Input\ <- :se revins<CR>
|
||||
:nnoremenu Settings.RightLeft.Hebrew\ mapping :se hkmap<CR>
|
||||
:nnoremenu Settings.RightLeft.Normal\ mapping :se nohkmap<CR>
|
||||
|
||||
:nnoremenu Window.Buffer\ Next :bnext<CR>
|
||||
:nnoremenu Window.Buffer\ Prev :bNext<CR>
|
||||
:nnoremenu Window.Buffer\ All :ball<CR>
|
||||
:nnoremenu Window.Zoom :only<CR>
|
||||
:nnoremenu Window.Show\ Buffers :buffers<CR>
|
||||
:nnoremenu Window.Go\ Buffer.1 :buf1<CR>
|
||||
:nnoremenu Window.Go\ Buffer.2 :buf2<CR>
|
||||
:nnoremenu Window.Go\ Buffer.3 :buf3<CR>
|
||||
:nnoremenu Window.Go\ Buffer.4 :buf4<CR>
|
||||
:nnoremenu Window.Go\ Buffer.5 :buf5<CR>
|
||||
:nnoremenu Window.New :new<CR>
|
||||
:nnoremenu Window.Split :split<CR>
|
||||
:nnoremenu Window.Close :close<CR>
|
||||
|
||||
:nnoremenu Input.Return <CR>
|
||||
|
||||
|
||||
:nnoremenu Help.40 :help vim_40.txt<CR>
|
||||
:nnoremenu Help.ami :help vim_ami.txt<CR>
|
||||
:nnoremenu Help.arch :help vim_arch.txt<CR>
|
||||
:nnoremenu Help.diff :help vim_diff.txt<CR>
|
||||
:nnoremenu Help.digr :help vim_digr.txt<CR>
|
||||
:nnoremenu Help.dos :help vim_dos.txt<CR>
|
||||
:nnoremenu Help.gui :help vim_gui.txt<CR>
|
||||
:nnoremenu Help.help :help vim_help.txt<CR>
|
||||
:nnoremenu Help.idx :help vim_idx.txt<CR>
|
||||
:nnoremenu Help.kcc :help vim_kcc.txt<CR>
|
||||
:nnoremenu Help.mac :help vim_mac.txt<CR>
|
||||
:nnoremenu Help.menu :help vim_menu.txt<CR>
|
||||
:nnoremenu Help.mint :help vim_mint.txt<CR>
|
||||
:nnoremenu Help.os2 :help vim_os2.txt<CR>
|
||||
:nnoremenu Help.ref :help vim_ref.txt<CR>
|
||||
:nnoremenu Help.rlh :help vim_rlh.txt<CR>
|
||||
:nnoremenu Help.tags :help vim_tags<CR>
|
||||
:nnoremenu Help.tips :help vim_tips.txt<CR>
|
||||
:nnoremenu Help.unix :help vim_unix.txt<CR>
|
||||
:nnoremenu Help.w32 :help vim_w32.txt<CR>
|
||||
:nnoremenu Help.win :help vim_win.txt<CR>
|
318
suse.vimrc
Normal file
318
suse.vimrc
Normal file
@ -0,0 +1,318 @@
|
||||
" /usr/etc/vimrc (configuration file for vim only)
|
||||
" author: Klaus Franken <kfr@suse.de>
|
||||
" author: Werner Fink <werner@suse.de>
|
||||
" author: Florian La Roche <florian@suse.de>
|
||||
" version: 2021/02/22
|
||||
" commented lines start with `"'
|
||||
|
||||
" enable syntax highlighting
|
||||
if &t_Co > 2 || has("gui_running")
|
||||
syntax on
|
||||
endif
|
||||
|
||||
" automatically indent lines (default)
|
||||
" set noautoindent
|
||||
|
||||
" select case-insenitiv search (not default)
|
||||
" set ignorecase
|
||||
|
||||
" show cursor line and column in the status line
|
||||
set ruler
|
||||
|
||||
" show matching brackets
|
||||
set showmatch
|
||||
|
||||
" display mode INSERT/REPLACE/...
|
||||
set showmode
|
||||
|
||||
" changes special characters in search patterns (default)
|
||||
" set magic
|
||||
|
||||
" Required to be able to use keypad keys and map missed escape sequences
|
||||
set esckeys
|
||||
|
||||
" get easier to use and more user friendly vim defaults
|
||||
" CAUTION: This option breaks some vi compatibility.
|
||||
" Switch it off if you prefer real vi compatibility
|
||||
set nocompatible
|
||||
|
||||
" allow backspacing over everything in insert mode
|
||||
set backspace=indent,eol,start
|
||||
|
||||
" Complete longest common string, then each full match
|
||||
" enable this for bash compatible behaviour
|
||||
" set wildmode=longest,full
|
||||
|
||||
" Try to get the correct main terminal type
|
||||
if &term =~ "xterm"
|
||||
let myterm = "xterm"
|
||||
elseif &term =~ "screen"
|
||||
let myterm = "screen"
|
||||
else
|
||||
let myterm = &term
|
||||
endif
|
||||
if has('eval')
|
||||
let myterm = substitute(myterm, "cons[0-9][0-9].*$", "linux", "")
|
||||
let myterm = substitute(myterm, "cons[0-9][0-9].*$", "linux", "")
|
||||
let myterm = substitute(myterm, "vt1[0-9][0-9].*$", "vt100", "")
|
||||
let myterm = substitute(myterm, "vt2[0-9][0-9].*$", "vt220", "")
|
||||
let myterm = substitute(myterm, "\\([^-]*\\)[_-].*$", "\\1", "")
|
||||
endif
|
||||
|
||||
" Here we define the keys of the NumLock in keyboard transmit mode of xterm
|
||||
" which misses or hasn't activated Alt/NumLock Modifiers. Often not defined
|
||||
" within termcap/terminfo and we should map the character printed on the keys.
|
||||
if myterm == "xterm" || myterm == "kvt" || myterm == "gnome"
|
||||
" keys in insert/command mode.
|
||||
map! <ESC>Oo :
|
||||
map! <ESC>Oj *
|
||||
map! <ESC>Om -
|
||||
map! <ESC>Ok +
|
||||
map! <ESC>Ol ,
|
||||
map! <ESC>OM
|
||||
map! <ESC>Ow 7
|
||||
map! <ESC>Ox 8
|
||||
map! <ESC>Oy 9
|
||||
map! <ESC>Ot 4
|
||||
map! <ESC>Ou 5
|
||||
map! <ESC>Ov 6
|
||||
map! <ESC>Oq 1
|
||||
map! <ESC>Or 2
|
||||
map! <ESC>Os 3
|
||||
map! <ESC>Op 0
|
||||
map! <ESC>On .
|
||||
" 8bit control characters
|
||||
map! <Char-0x8F>o :
|
||||
map! <Char-0x8F>j *
|
||||
map! <Char-0x8F>m -
|
||||
map! <Char-0x8F>k +
|
||||
map! <Char-0x8F>l ,
|
||||
map! <Char-0x8F>M
|
||||
map! <Char-0x8F>w 7
|
||||
map! <Char-0x8F>x 8
|
||||
map! <Char-0x8F>y 9
|
||||
map! <Char-0x8F>t 4
|
||||
map! <Char-0x8F>u 5
|
||||
map! <Char-0x8F>v 6
|
||||
map! <Char-0x8F>q 1
|
||||
map! <Char-0x8F>r 2
|
||||
map! <Char-0x8F>s 3
|
||||
map! <Char-0x8F>p 0
|
||||
map! <Char-0x8F>n .
|
||||
" keys in normal mode
|
||||
map <ESC>Oo :
|
||||
map <ESC>Oj *
|
||||
map <ESC>Om -
|
||||
map <ESC>Ok +
|
||||
map <ESC>Ol ,
|
||||
map <ESC>OM
|
||||
map <ESC>Ow 7
|
||||
map <ESC>Ox 8
|
||||
map <ESC>Oy 9
|
||||
map <ESC>Ot 4
|
||||
map <ESC>Ou 5
|
||||
map <ESC>Ov 6
|
||||
map <ESC>Oq 1
|
||||
map <ESC>Or 2
|
||||
map <ESC>Os 3
|
||||
map <ESC>Op 0
|
||||
map <ESC>On .
|
||||
" 8bit control characters
|
||||
map <Char-0x8F>o :
|
||||
map <Char-0x8F>j *
|
||||
map <Char-0x8F>m -
|
||||
map <Char-0x8F>k +
|
||||
map <Char-0x8F>l ,
|
||||
map <Char-0x8F>M
|
||||
map <Char-0x8F>w 7
|
||||
map <Char-0x8F>x 8
|
||||
map <Char-0x8F>y 9
|
||||
map <Char-0x8F>t 4
|
||||
map <Char-0x8F>u 5
|
||||
map <Char-0x8F>v 6
|
||||
map <Char-0x8F>q 1
|
||||
map <Char-0x8F>r 2
|
||||
map <Char-0x8F>s 3
|
||||
map <Char-0x8F>p 0
|
||||
map <Char-0x8F>n .
|
||||
endif
|
||||
|
||||
" xterm but without activated keyboard transmit mode
|
||||
" and therefore not defined in termcap/terminfo.
|
||||
if myterm == "xterm" || myterm == "kvt" || myterm == "gnome"
|
||||
" keys in insert/command mode.
|
||||
map! <Esc>[H <Home>
|
||||
map! <Esc>[F <End>
|
||||
map! <Char-0x8F>H <Home>
|
||||
map! <Char-0x8F>F <End>
|
||||
" Home/End: older xterms do not fit termcap/terminfo.
|
||||
map! <Esc>[1~ <Home>
|
||||
map! <Esc>[4~ <End>
|
||||
" Up/Down/Right/Left
|
||||
map! <Esc>[A <Up>
|
||||
map! <Esc>[B <Down>
|
||||
map! <Esc>[C <Right>
|
||||
map! <Esc>[D <Left>
|
||||
" 8bit control characters
|
||||
map! <Char-0x8F>A <Up>
|
||||
map! <Char-0x8F>B <Down>
|
||||
map! <Char-0x8F>C <Right>
|
||||
map! <Char-0x8F>D <Left>
|
||||
map! <Char-0x9B>5~ <PageUp>
|
||||
map! <Char-0x9B>6~ <PageDown>
|
||||
map! <Char-0x9B>2~ <Insert>
|
||||
map! <Char-0x9B>3~ <Delete>
|
||||
" KP_5 (NumLock off)
|
||||
map! <Esc>[E <Insert>
|
||||
" keys in normal mode
|
||||
map <ESC>[H 0
|
||||
map <ESC>[F $
|
||||
map <Char-0x8F>H 0
|
||||
map <Char-0x8F>F $
|
||||
" Home/End: older xterms do not fit termcap/terminfo.
|
||||
map <ESC>[1~ 0
|
||||
map <ESC>[4~ $
|
||||
" Up/Down/Right/Left
|
||||
map <ESC>[A k
|
||||
map <ESC>[B j
|
||||
map <ESC>[C l
|
||||
map <ESC>[D h
|
||||
" 8bit control characters
|
||||
map <Char-0x8F>A k
|
||||
map <Char-0x8F>B j
|
||||
map <Char-0x8F>C l
|
||||
map <Char-0x8F>D h
|
||||
map <Char-0x9B>5~ <PageUp>
|
||||
map <Char-0x9B>6~ <PageDown>
|
||||
map <Char-0x9B>2~ <Insert>
|
||||
map <Char-0x9B>3~ <Delete>
|
||||
" KP_5 (NumLock off)
|
||||
map <ESC>[E i
|
||||
map <Char-0x8F>E i
|
||||
endif
|
||||
|
||||
" xterm/kvt but with activated keyboard transmit mode.
|
||||
" Sometimes not or wrong defined within termcap/terminfo.
|
||||
if myterm == "xterm" || myterm == "kvt" || myterm == "gnome"
|
||||
" keys in insert/command mode.
|
||||
map! <Esc>OH <Home>
|
||||
map! <Esc>OF <End>
|
||||
map! <ESC>O2H <Home>
|
||||
map! <ESC>O2F <End>
|
||||
map! <ESC>O5H <Home>
|
||||
map! <ESC>O5F <End>
|
||||
" Cursor keys which works mostly
|
||||
" map! <Esc>OA <Up>
|
||||
" map! <Esc>OB <Down>
|
||||
" map! <Esc>OC <Right>
|
||||
" map! <Esc>OD <Left>
|
||||
map! <Esc>[2;2~ <Insert>
|
||||
map! <Esc>[3;2~ <Delete>
|
||||
map! <Esc>[2;5~ <Insert>
|
||||
map! <Esc>[3;5~ <Delete>
|
||||
map! <Esc>O2A <PageUp>
|
||||
map! <Esc>O2B <PageDown>
|
||||
map! <Esc>O2C <S-Right>
|
||||
map! <Esc>O2D <S-Left>
|
||||
map! <Esc>O5A <PageUp>
|
||||
map! <Esc>O5B <PageDown>
|
||||
map! <Esc>O5C <S-Right>
|
||||
map! <Esc>O5D <S-Left>
|
||||
" KP_5 (NumLock off)
|
||||
map! <Esc>OE <Insert>
|
||||
" keys in normal mode
|
||||
map <ESC>OH 0
|
||||
map <ESC>OF $
|
||||
map <ESC>O2H 0
|
||||
map <ESC>O2F $
|
||||
map <ESC>O5H 0
|
||||
map <ESC>O5F $
|
||||
" Cursor keys which works mostly
|
||||
" map <ESC>OA k
|
||||
" map <ESC>OB j
|
||||
" map <ESC>OD h
|
||||
" map <ESC>OC l
|
||||
map <Esc>[2;2~ i
|
||||
map <Esc>[3;2~ x
|
||||
map <Esc>[2;5~ i
|
||||
map <Esc>[3;5~ x
|
||||
map <ESC>O2A ^B
|
||||
map <ESC>O2B ^F
|
||||
map <ESC>O2D b
|
||||
map <ESC>O2C w
|
||||
map <ESC>O5A ^B
|
||||
map <ESC>O5B ^F
|
||||
map <ESC>O5D b
|
||||
map <ESC>O5C w
|
||||
" KP_5 (NumLock off)
|
||||
map <ESC>OE i
|
||||
endif
|
||||
|
||||
if myterm == "linux"
|
||||
" keys in insert/command mode.
|
||||
map! <Esc>[G <Insert>
|
||||
" KP_5 (NumLock off)
|
||||
" keys in normal mode
|
||||
" KP_5 (NumLock off)
|
||||
map <ESC>[G i
|
||||
endif
|
||||
|
||||
if myterm == "screen"
|
||||
map! <ESC>[1;2D <S-Left>
|
||||
map! <ESC>[1;2C <S-Right>
|
||||
map! <ESC>[1;2A <S-Up>
|
||||
map! <ESC>[1;2B <S-Down>
|
||||
map! <ESC>[1;2H <Home>
|
||||
map! <ESC>[1;2F <End>
|
||||
map! <ESC>[2;2~ <Insert>
|
||||
map! <ESC>[3;2~ <Delete>
|
||||
map! <ESC>[5;2~ <PageUp>
|
||||
map! <ESC>[6;2~ <PageDown>
|
||||
map! <ESC>[1;5D <C-Left>
|
||||
map! <ESC>[1;5C <C-Right>
|
||||
map! <ESC>[1;5A <C-Up>
|
||||
map! <ESC>[1;5B <C-Down>
|
||||
map! <ESC>[1;5H <Home>
|
||||
map! <ESC>[1;5F <End>
|
||||
map! <ESC>[2;5~ <Insert>
|
||||
map! <ESC>[3;5~ <Delete>
|
||||
map! <ESC>[5;5~ <PageUp>
|
||||
map! <ESC>[6;5~ <PageDown>
|
||||
map! <ESC>[1;3D <A-Left>
|
||||
map! <ESC>[1;3C <A-Right>
|
||||
map! <ESC>[1;3A <A-Up>
|
||||
map! <ESC>[1;3B <A-Down>
|
||||
map! <ESC>[1;3H <Home>
|
||||
map! <ESC>[1;3F <End>
|
||||
map! <ESC>[2;3~ <Insert>
|
||||
map! <ESC>[3;3~ <Delete>
|
||||
map! <ESC>[5;3~ <PageUp>
|
||||
map! <ESC>[6;3~ <PageDown>
|
||||
endif
|
||||
|
||||
" This escape sequence is the well known ANSI sequence for
|
||||
" Remove Character Under The Cursor (RCUTC[tm])
|
||||
if !has("gui_running") && myterm == "xterm"
|
||||
map! <Esc>[3~ <Delete>
|
||||
map <ESC>[3~ x
|
||||
endif
|
||||
|
||||
" Only do this part when compiled with support for autocommands.
|
||||
if has("autocmd")
|
||||
"Remember the positions in files with some git-specific exceptions"
|
||||
autocmd BufReadPost *
|
||||
\ if line("'\"") > 0 && line("'\"") <= line("$")
|
||||
\ && expand("%") !~ "COMMIT_EDITMSG"
|
||||
\ && expand("%") !~ "ADD_EDIT.patch"
|
||||
\ && expand("%") !~ "addp-hunk-edit.diff"
|
||||
\ && expand("%") !~ "git-rebase-todo" |
|
||||
\ exe "normal g`\"" |
|
||||
\ endif
|
||||
endif " has("autocmd")
|
||||
|
||||
" Changed default required by SuSE security team--be aware if enabling this
|
||||
" that it potentially can open for malicious users to do harmful things.
|
||||
set nomodeline
|
||||
|
||||
" get easier to use and more user friendly vim defaults
|
||||
" /etc/vimrc ends here
|
60
vim-7.3-filetype_changes.patch
Normal file
60
vim-7.3-filetype_changes.patch
Normal file
@ -0,0 +1,60 @@
|
||||
Index: vim-8.2.2411/runtime/filetype.vim
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/runtime/filetype.vim
|
||||
+++ vim-8.2.2411/runtime/filetype.vim
|
||||
@@ -320,6 +320,9 @@ au BufNewFile,BufRead *.css setf css
|
||||
" Century Term Command Scripts (*.cmd too)
|
||||
au BufNewFile,BufRead *.con setf cterm
|
||||
|
||||
+" SuSE .changes file
|
||||
+au BufNewFile,BufRead *.changes setf changes
|
||||
+
|
||||
" Changelog
|
||||
au BufNewFile,BufRead changelog.Debian,changelog.dch,NEWS.Debian,NEWS.dch,*/debian/changelog
|
||||
\ setf debchangelog
|
||||
Index: vim-8.2.2411/runtime/syntax/changes.vim
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ vim-8.2.2411/runtime/syntax/changes.vim
|
||||
@@ -0,0 +1,41 @@
|
||||
+" Vim syntax file
|
||||
+" Filename: changes.vim
|
||||
+" Language: SuSE package changes
|
||||
+" Maintainer: Michal Svec <msvec@suse.cz>
|
||||
+" Last change: 20.8.2003
|
||||
+
|
||||
+" We shouldn't insert tabs
|
||||
+" https://bugzilla.opensuse.org/show_bug.cgi?id=900839
|
||||
+set expandtab
|
||||
+
|
||||
+if version < 600
|
||||
+ syntax clear
|
||||
+elseif exists("b:current_syntax")
|
||||
+ finish
|
||||
+endif
|
||||
+
|
||||
+" Keywords
|
||||
+syn keyword ChangesArch i386 i486 i586 i686 athlon ia64 xa86_64
|
||||
+syn keyword ChangesArch I386 I486 I586 I686 ATHLON IA64 XA86_64
|
||||
+syn keyword ChangesArch ppc axp mips armv4l s390 s390x S/390 s/390
|
||||
+syn keyword ChangesArch PPC AXP MIPS ARMV4L S390 S390x S390X
|
||||
+syn keyword sparc sparc64 Sparc Sparc64 SPARC SPARC64 noarch NOARCH
|
||||
+
|
||||
+" Highlights
|
||||
+syn match ChangesDate "^[A-Z][a-z][a-z] [A-Z][a-z][a-z] [ 0-9][0-9] [0-9:]\{8\} [A-Z]\+ [0-9]\+"
|
||||
+syn match ChangesDate "^[A-Z][a-z][a-z] [A-Z][a-z][a-z] [ 0-9][0-9] [0-9:]\{8\} [0-9]\+"
|
||||
+syn match ChangesMail " - \<[[:alnum:\.]\+@[[:alnum:]\.]\+\>$"
|
||||
+syn match ChangesMailText "\<[[:alnum:]\.]\+@[[:alnum:]\.]\+\>"
|
||||
+syn match ChangesSeparator "^-\{40,78\}$"
|
||||
+syn match ChangesBug "#[0-9]\+\>"
|
||||
+
|
||||
+" Colors
|
||||
+hi ChangesArch ctermfg=blue ctermbg=NONE
|
||||
+hi ChangesDate ctermfg=darkgreen ctermbg=NONE
|
||||
+hi ChangesMail ctermfg=darkred ctermbg=NONE
|
||||
+hi ChangesMailText ctermfg=darkred ctermbg=NONE
|
||||
+hi ChangesSeparator ctermfg=darkgreen ctermbg=NONE
|
||||
+hi ChangesBug ctermfg=red ctermbg=NONE
|
||||
+
|
||||
+" Syntax name
|
||||
+let b:current_syntax = "changes"
|
56
vim-7.3-filetype_ftl.patch
Normal file
56
vim-7.3-filetype_ftl.patch
Normal file
@ -0,0 +1,56 @@
|
||||
Index: vim-9.1.0330/runtime/filetype.vim
|
||||
===================================================================
|
||||
--- vim-9.1.0330.orig/runtime/filetype.vim
|
||||
+++ vim-9.1.0330/runtime/filetype.vim
|
||||
@@ -2313,6 +2313,10 @@ au BufNewFile,BufRead *.stp setf stp
|
||||
" Standard ML
|
||||
au BufNewFile,BufRead *.sml setf sml
|
||||
|
||||
+" FreeMarker templates
|
||||
+au BufNewFile,BufRead *.ftl setf ftl
|
||||
+
|
||||
+
|
||||
" Sratus VOS command macro
|
||||
au BufNewFile,BufRead *.cm setf voscm
|
||||
|
||||
Index: vim-9.1.0330/runtime/syntax/ftl.vim
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ vim-9.1.0330/runtime/syntax/ftl.vim
|
||||
@@ -0,0 +1,36 @@
|
||||
+" Vim syntax file
|
||||
+" Language: FreeMarker Template Language (FTL)
|
||||
+" Maintainer: Stephan Müller <stephan@chaquotay.net>
|
||||
+" Last Change: 2003 Oct 7
|
||||
+
|
||||
+syn case match
|
||||
+
|
||||
+" directives and interpolations
|
||||
+syn region ftlStartDirective start=+<#+ end=+>+ contains=ftlKeyword, ftlDirective, ftlString, ftlComment
|
||||
+syn region ftlEndDirective start=+</#+ end=+>+ contains=ftlDirective
|
||||
+syn region ftlStartUserDirective start=+<@+ end=+>+ contains=ftlString, ftlComment
|
||||
+syn region ftlEndUserDirective start=+</@+ end=+>+
|
||||
+syn region ftlInterpolation start=+${+ end=+}+
|
||||
+syn region ftlInterpolation2 start=+#{+ end=+}+
|
||||
+syn region ftlString contained start=+"+ end=+"+
|
||||
+syn region ftlComment start=+<#--+ end=+-->+
|
||||
+
|
||||
+" keywords
|
||||
+syn keyword ftlDirective contained list if else macro import include switch case break
|
||||
+syn keyword ftlDirective contained assign local global nested recurse fallback visit
|
||||
+syn keyword ftlDirective contained function return t rt lt nt ftl
|
||||
+syn keyword ftlKeyword contained as in using
|
||||
+
|
||||
+" highlighting
|
||||
+highlight link ftlKeyword Statement
|
||||
+highlight link ftlDirective Statement
|
||||
+highlight link ftlStartDirective Function
|
||||
+highlight link ftlEndDirective Function
|
||||
+highlight link ftlStartUserDirective Function
|
||||
+highlight link ftlEndUserDirective Function
|
||||
+highlight link ftlInterpolation Constant
|
||||
+highlight link ftlInterpolation2 Constant
|
||||
+highlight link ftlString Constant
|
||||
+highlight link ftlComment Comment
|
||||
+
|
||||
+
|
26
vim-7.3-filetype_spec.patch
Normal file
26
vim-7.3-filetype_spec.patch
Normal file
@ -0,0 +1,26 @@
|
||||
Index: vim-9.1.0151/runtime/filetype.vim
|
||||
===================================================================
|
||||
--- vim-9.1.0151.orig/runtime/filetype.vim
|
||||
+++ vim-9.1.0151/runtime/filetype.vim
|
||||
@@ -2122,7 +2122,7 @@ au BufRead,BufNewFile *.sol setf solid
|
||||
au BufNewFile,BufRead *.rq,*.sparql setf sparql
|
||||
|
||||
" Spec (Linux RPM)
|
||||
-au BufNewFile,BufRead *.spec setf spec
|
||||
+au BufNewFile,BufRead *.spec,*.spec.in setf spec
|
||||
|
||||
" Speedup (AspenTech plant simulator)
|
||||
au BufNewFile,BufRead *.speedup,*.spdata,*.spd setf spup
|
||||
Index: vim-9.1.0151/runtime/syntax/spec.vim
|
||||
===================================================================
|
||||
--- vim-9.1.0151.orig/runtime/syntax/spec.vim
|
||||
+++ vim-9.1.0151/runtime/syntax/spec.vim
|
||||
@@ -102,7 +102,7 @@ syn case ignore
|
||||
"%% PreAmble Section %%
|
||||
"Copyright and Serial were deprecated by License and Epoch
|
||||
syn region specPreAmbleDeprecated oneline matchgroup=specError start='^\(Copyright\|Serial\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier
|
||||
-syn region specPreAmble oneline matchgroup=specCommand start='^\(Prereq\|Summary\|Name\|Version\|Packager\|Requires\|Recommends\|Suggests\|Supplements\|Enhances\|Icon\|URL\|SourceLicense\|Source\d*\|Patch\d*\|Prefix\|Packager\|Group\|License\|Release\|BuildRoot\|Distribution\|Vendor\|Provides\|ExclusiveArch\|ExcludeArch\|ExclusiveOS\|Obsoletes\|BuildArch\|BuildArchitectures\|BuildRequires\|BuildConflicts\|BuildPreReq\|Conflicts\|AutoRequires\|AutoReq\|AutoReqProv\|AutoProv\|Epoch\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier
|
||||
+syn region specPreAmble oneline matchgroup=specCommand start='^\(Prereq\|Summary\|Name\|Version\|Packager\|Requires\|Recommends\|Suggests\|Supplements\|Enhances\|Icon\|URL\|SourceLicense\|Source\d*\|Patch\d*\|Prefix\|Packager\|Group\|License\|Release\|BuildRoot\|Distribution\|Vendor\|Provides\|ExclusiveArch\|ExcludeArch\|ExclusiveOS\|Obsoletes\|BuildArch\|BuildArchitectures\|BuildRequires\|BuildConflicts\|BuildPreReq\|Conflicts\|AutoRequires\|AutoReq\|AutoReqProv\|AutoProv\|Epoch\|Freshens\|EssentialFor\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier
|
||||
|
||||
"%% Description Section %%
|
||||
syn region specDescriptionArea matchgroup=specSection start='^%description' end='^%'me=e-1 contains=specDescriptionOpts,specEmail,specURL,specNumber,specMacroIdentifier,specComment
|
44
vim-7.3-gvimrc_fontset.patch
Normal file
44
vim-7.3-gvimrc_fontset.patch
Normal file
@ -0,0 +1,44 @@
|
||||
Index: vim-8.2.2411/runtime/gvimrc_example.vim
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/runtime/gvimrc_example.vim
|
||||
+++ vim-8.2.2411/runtime/gvimrc_example.vim
|
||||
@@ -15,9 +15,6 @@
|
||||
" Make external commands work through a pipe instead of a pseudo-tty
|
||||
"set noguipty
|
||||
|
||||
-" set the X11 font to use
|
||||
-" set guifont=-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1
|
||||
-
|
||||
set ch=2 " Make command line two lines high
|
||||
|
||||
set mousehide " Hide the mouse when typing text
|
||||
@@ -53,3 +50,29 @@ if version >= 500
|
||||
highlight Special gui=NONE guibg=grey95
|
||||
|
||||
endif
|
||||
+
|
||||
+" Determine the LC_CTYPE locale category setting and try to set guifontset accordingly:
|
||||
+
|
||||
+let tmplang = $LC_ALL
|
||||
+if tmplang =~ "^$"
|
||||
+ let tmplang = $LC_CTYPE
|
||||
+endif
|
||||
+if tmplang =~ "^$"
|
||||
+ let tmplang = $LANG
|
||||
+endif
|
||||
+if tmplang =~ "^$"
|
||||
+ let tmplang = "en_US"
|
||||
+endif
|
||||
+
|
||||
+if tmplang =~ "^ko"
|
||||
+ set guifont=Luxi\ Mono
|
||||
+elseif tmplang =~ "^ja"
|
||||
+ set guifont=Luxi\ Mono
|
||||
+elseif tmplang =~ "^zh"
|
||||
+ set guifont=Luxi\ Mono
|
||||
+else
|
||||
+ set guifont=monospace
|
||||
+endif
|
||||
+
|
||||
+
|
||||
+" /etc/gvimrc ends here
|
12
vim-7.3-help_tags.patch
Normal file
12
vim-7.3-help_tags.patch
Normal file
@ -0,0 +1,12 @@
|
||||
Index: vim-8.2.2411/runtime/doc/Makefile
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/runtime/doc/Makefile
|
||||
+++ vim-8.2.2411/runtime/doc/Makefile
|
||||
@@ -331,6 +331,7 @@ CONVERTED = \
|
||||
all: tags vim.man evim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
|
||||
|
||||
# Use Vim to generate the tags file. Can only be used when Vim has been
|
||||
+ export VIMRUNTIME=../; \
|
||||
# compiled and installed. Supports multiple languages.
|
||||
vimtags: $(DOCS)
|
||||
@$(VIMEXE) --clean -esX -V1 -u doctags.vim
|
14
vim-7.3-mktemp_tutor.patch
Normal file
14
vim-7.3-mktemp_tutor.patch
Normal file
@ -0,0 +1,14 @@
|
||||
Index: vim-8.2.2411/src/vimtutor
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/src/vimtutor
|
||||
+++ vim-8.2.2411/src/vimtutor
|
||||
@@ -24,8 +24,7 @@ xx=$1
|
||||
export xx
|
||||
|
||||
# We need a temp file for the copy. First try using a standard command.
|
||||
-tmp="${TMPDIR-/tmp}"
|
||||
-TUTORCOPY=`mktemp $tmp/tutorXXXXXX || tempfile -p tutor || echo none`
|
||||
+TUTORCOPY=`mktemp /tmp/tutorXXXXXX || echo /tmp/tutor$$`
|
||||
|
||||
# If the standard commands failed then create a directory to put the copy in.
|
||||
# That is a secure way to make a temp file.
|
18
vim-7.3-name_vimrc.patch
Normal file
18
vim-7.3-name_vimrc.patch
Normal file
@ -0,0 +1,18 @@
|
||||
Index: vim-8.2.2411/src/feature.h
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/src/feature.h
|
||||
+++ vim-8.2.2411/src/feature.h
|
||||
@@ -813,11 +813,12 @@
|
||||
* SYS_VIMRC_FILE Name of the system-wide .vimrc file.
|
||||
*/
|
||||
// #define SYS_VIMRC_FILE "/etc/vimrc"
|
||||
-
|
||||
+#define SYS_VIMRC_FILE "/etc/vimrc"
|
||||
/*
|
||||
* SYS_GVIMRC_FILE Name of the system-wide .gvimrc file.
|
||||
*/
|
||||
// #define SYS_GVIMRC_FILE "/etc/gvimrc"
|
||||
+#define SYS_GVIMRC_FILE "/etc/gvimrc"
|
||||
|
||||
/*
|
||||
* DFLT_HELPFILE Name of the help file.
|
18
vim-7.3-sh_is_bash.patch
Normal file
18
vim-7.3-sh_is_bash.patch
Normal file
@ -0,0 +1,18 @@
|
||||
Index: vim-8.2.2411/runtime/syntax/sh.vim
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/runtime/syntax/sh.vim
|
||||
+++ vim-8.2.2411/runtime/syntax/sh.vim
|
||||
@@ -74,6 +74,13 @@ if exists("b:is_dash")
|
||||
let b:is_posix= 1
|
||||
endif
|
||||
|
||||
+" Neither is_kornshell nor is_bash was explicitly set, and
|
||||
+" /bin/sh is a bash on SUSE LINUX.
|
||||
+if exists("b:is_sh")
|
||||
+ let b:is_bash= 1
|
||||
+ unlet b:is_sh
|
||||
+endif
|
||||
+
|
||||
" set up default g:sh_fold_enabled {{{1
|
||||
" ================================
|
||||
if !exists("g:sh_fold_enabled")
|
10
vim-7.3-use_awk.patch
Normal file
10
vim-7.3-use_awk.patch
Normal file
@ -0,0 +1,10 @@
|
||||
Index: vim-8.2.2411/runtime/tools/mve.awk
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/runtime/tools/mve.awk
|
||||
+++ vim-8.2.2411/runtime/tools/mve.awk
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/nawk -f
|
||||
+#!/usr/bin/awk -f
|
||||
#
|
||||
# Change "nawk" to "awk" or "gawk" if you get errors.
|
||||
#
|
28
vim-7.4-disable_lang_no.patch
Normal file
28
vim-7.4-disable_lang_no.patch
Normal file
@ -0,0 +1,28 @@
|
||||
Index: vim-8.2.2411/src/po/Make_all.mak
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/src/po/Make_all.mak
|
||||
+++ vim-8.2.2411/src/po/Make_all.mak
|
||||
@@ -24,7 +24,6 @@ LANGUAGES = \
|
||||
lv \
|
||||
nb \
|
||||
nl \
|
||||
- no \
|
||||
pl \
|
||||
pl.UTF-8 \
|
||||
pl.cp1250 \
|
||||
@@ -109,7 +108,6 @@ MOFILES = \
|
||||
lv.mo \
|
||||
nb.mo \
|
||||
nl.mo \
|
||||
- no.mo \
|
||||
pl.mo \
|
||||
pt_BR.mo \
|
||||
ru.mo \
|
||||
@@ -159,7 +157,6 @@ CHECKFILES = \
|
||||
lv.ck \
|
||||
nb.ck \
|
||||
nl.ck \
|
||||
- no.ck \
|
||||
pl.UTF-8.ck \
|
||||
pl.ck \
|
||||
pl.cp1250.ck \
|
15
vim-7.4-filetype_apparmor.patch
Normal file
15
vim-7.4-filetype_apparmor.patch
Normal file
@ -0,0 +1,15 @@
|
||||
Index: vim-8.2.2411/runtime/filetype.vim
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/runtime/filetype.vim
|
||||
+++ vim-8.2.2411/runtime/filetype.vim
|
||||
@@ -104,6 +104,10 @@ au BufNewFile,BufRead *.ino,*.pde setf
|
||||
au BufNewFile,BufRead .htaccess,*/etc/httpd/*.conf setf apache
|
||||
au BufNewFile,BufRead */etc/apache2/sites-*/*.com setf apache
|
||||
|
||||
+" AppArmor
|
||||
+au BufNewFile,BufRead */etc/apparmor.d/* setf apparmor
|
||||
+au BufNewFile,BufRead */etc/apparmor/profiles/* setf apparmor
|
||||
+
|
||||
" XA65 MOS6510 cross assembler
|
||||
au BufNewFile,BufRead *.a65 setf a65
|
||||
|
13
vim-7.4-filetype_mine.patch
Normal file
13
vim-7.4-filetype_mine.patch
Normal file
@ -0,0 +1,13 @@
|
||||
Index: vim-8.2.2411/runtime/filetype.vim
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/runtime/filetype.vim
|
||||
+++ vim-8.2.2411/runtime/filetype.vim
|
||||
@@ -17,7 +17,7 @@ augroup filetypedetect
|
||||
|
||||
" Ignored extensions
|
||||
if exists("*fnameescape")
|
||||
-au BufNewFile,BufRead ?\+.orig,?\+.bak,?\+.old,?\+.new,?\+.dpkg-dist,?\+.dpkg-old,?\+.dpkg-new,?\+.dpkg-bak,?\+.rpmsave,?\+.rpmnew,?\+.pacsave,?\+.pacnew
|
||||
+au BufNewFile,BufRead ?\+.orig,?\+.bak,?\+.old,?\+.mine,?\+.new,?\+.dpkg-dist,?\+.dpkg-old,?\+.dpkg-new,?\+.dpkg-bak,?\+.rpmsave,?\+.rpmnew,?\+.pacsave,?\+.pacnew
|
||||
\ exe "doau filetypedetect BufRead " . fnameescape(expand("<afile>:r"))
|
||||
au BufNewFile,BufRead *~
|
||||
\ let s:name = expand("<afile>") |
|
13
vim-7.4-highlight_fstab.patch
Normal file
13
vim-7.4-highlight_fstab.patch
Normal file
@ -0,0 +1,13 @@
|
||||
Index: vim-9.0.1188/runtime/syntax/fstab.vim
|
||||
===================================================================
|
||||
--- vim-9.0.1188.orig/runtime/syntax/fstab.vim
|
||||
+++ vim-9.0.1188/runtime/syntax/fstab.vim
|
||||
@@ -35,7 +35,7 @@ syn match fsOperator /[,=:#]/
|
||||
" Device
|
||||
syn cluster fsDeviceCluster contains=fsOperator,fsDeviceKeyword,fsDeviceError
|
||||
syn match fsDeviceError /\%([^a-zA-Z0-9_\/#@:\.-]\|^\w\{-}\ze\W\)/ contained
|
||||
-syn keyword fsDeviceKeyword contained none proc linproc tmpfs devpts devtmpfs sysfs usbfs
|
||||
+syn keyword fsDeviceKeyword contained none proc linproc tmpfs debugfs devpts devtmpfs sysfs usbfs
|
||||
syn keyword fsDeviceKeyword contained LABEL nextgroup=fsDeviceLabel
|
||||
syn keyword fsDeviceKeyword contained UUID nextgroup=fsDeviceUUID
|
||||
syn keyword fsDeviceKeyword contained PARTLABEL nextgroup=fsDevicePARTLABEL
|
2
vim-7.4-rpmlintrc
Normal file
2
vim-7.4-rpmlintrc
Normal file
@ -0,0 +1,2 @@
|
||||
addFilter("vim-data.* file-not-in-%lang")
|
||||
|
27
vim-8.0.1568-defaults.patch
Normal file
27
vim-8.0.1568-defaults.patch
Normal file
@ -0,0 +1,27 @@
|
||||
Index: vim-8.2.2411/runtime/defaults.vim
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/runtime/defaults.vim
|
||||
+++ vim-8.2.2411/runtime/defaults.vim
|
||||
@@ -77,13 +77,15 @@ inoremap <C-U> <C-G>u<C-U>
|
||||
" can position the cursor, Visually select and scroll with the mouse.
|
||||
" Only xterm can grab the mouse events when using the shift key, for other
|
||||
" terminals use ":", select text and press Esc.
|
||||
-if has('mouse')
|
||||
- if &term =~ 'xterm'
|
||||
- set mouse=a
|
||||
- else
|
||||
- set mouse=nvi
|
||||
- endif
|
||||
-endif
|
||||
+" disabled in (open)SUSE to make copy&pase work as most people
|
||||
+" except it boo#1079185
|
||||
+"if has('mouse')
|
||||
+" if &term =~ 'xterm'
|
||||
+" set mouse=a
|
||||
+" else
|
||||
+" set mouse=nvi
|
||||
+" endif
|
||||
+"endif
|
||||
|
||||
" Only do this part when Vim was compiled with the +eval feature.
|
||||
if 1
|
16
vim-8.2.2411-globalvimrc.patch
Normal file
16
vim-8.2.2411-globalvimrc.patch
Normal file
@ -0,0 +1,16 @@
|
||||
Index: vim-9.1.0530/src/main.c
|
||||
===================================================================
|
||||
--- vim-9.1.0530.orig/src/main.c
|
||||
+++ vim-9.1.0530/src/main.c
|
||||
@@ -3251,7 +3251,10 @@ source_startup_scripts(mparm_T *parmp)
|
||||
* Get system wide defaults, if the file name is defined.
|
||||
*/
|
||||
#ifdef SYS_VIMRC_FILE
|
||||
- (void)do_source((char_u *)SYS_VIMRC_FILE, FALSE, DOSO_NONE, NULL);
|
||||
+ if (do_source((char_u *)SYS_VIMRC_FILE, FALSE, DOSO_NONE, NULL) == FAIL)
|
||||
+ {
|
||||
+ (void)do_source((char_u *)"$VIMRUNTIME/suse.vimrc", FALSE, DOSO_NONE, NULL);
|
||||
+ }
|
||||
#endif
|
||||
#ifdef MACOS_X
|
||||
(void)do_source((char_u *)"$VIMRUNTIME/macmap.vim", FALSE,
|
3
vim-9.1.0512.tar.gz
Normal file
3
vim-9.1.0512.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:df114f987c6c73d102800dd77416c3018c8dfa61addb7ba05954cabaa1a301d5
|
||||
size 17950920
|
3
vim-9.1.0718.tar.gz
Normal file
3
vim-9.1.0718.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:615154446ce5d98fdd4c038fe95911855f045a7d94bef8930d912c0d5f15706f
|
||||
size 18088845
|
BIN
vim-9.1.0836.tar.gz
(Stored with Git LFS)
Normal file
BIN
vim-9.1.0836.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
18200
vim.changes
Normal file
18200
vim.changes
Normal file
File diff suppressed because it is too large
Load Diff
784
vim.spec
Normal file
784
vim.spec
Normal file
@ -0,0 +1,784 @@
|
||||
#
|
||||
# spec file for package vim
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkg_version 9.1
|
||||
%define patchlevel 0836
|
||||
%define patchlevel_compact %{patchlevel}
|
||||
%define VIM_SUBDIR vim91
|
||||
%define site_runtimepath %{_datadir}/vim/site
|
||||
%define make make VIMRCLOC=%{_sysconfdir} VIMRUNTIMEDIR=%{_datadir}/vim/current MAKE="make -e" %{?_smp_mflags}
|
||||
%if 0%{?suse_version} > 1500
|
||||
%bcond_without libalternatives
|
||||
%else
|
||||
%bcond_with libalternatives
|
||||
%endif
|
||||
%bcond_without python2
|
||||
Name: vim
|
||||
Version: %{pkg_version}.%{patchlevel_compact}
|
||||
Release: 0
|
||||
Summary: Vi IMproved
|
||||
License: Vim
|
||||
URL: https://www.vim.org/
|
||||
Source: https://github.com/vim/vim/archive/v%{pkg_version}.%{patchlevel}.tar.gz#/vim-%{pkg_version}.%{patchlevel}.tar.gz
|
||||
Source3: suse.vimrc
|
||||
Source4: vimrc_example1
|
||||
Source5: vimrc_example2
|
||||
Source8: suse.gvimrc
|
||||
Source10: README.Japanese-XIM
|
||||
Source13: vitmp.c
|
||||
Source14: vitmp.1
|
||||
Source15: vim132
|
||||
Source19: gvim.desktop
|
||||
Source20: spec.skeleton
|
||||
Source21: spec.vim
|
||||
Source23: apparmor.vim
|
||||
# Generated using: epstopdf runtime/vimlogo.eps && pdf2svg runtime/vimlogo.pdf gvim.svg
|
||||
Source24: gvim.svg
|
||||
# Section Bitmap icons generated from gvim.svg using rsvg-convert
|
||||
Source25: gvim_24.png
|
||||
Source26: gvim_32.png
|
||||
Source27: gvim_48.png
|
||||
Source28: gvim_64.png
|
||||
Source29: gvim_96.png
|
||||
Source30: gvim_128.png
|
||||
Source31: gvim_256.png
|
||||
Source32: gvim_512.png
|
||||
# /Section
|
||||
Source99: %{name}-7.4-rpmlintrc
|
||||
Patch1: %{name}-7.4-disable_lang_no.patch
|
||||
Patch2: %{name}-7.3-gvimrc_fontset.patch
|
||||
Patch3: %{name}-7.3-sh_is_bash.patch
|
||||
Patch4: %{name}-7.3-filetype_ftl.patch
|
||||
Patch5: %{name}-7.3-use_awk.patch
|
||||
Patch6: %{name}-7.3-name_vimrc.patch
|
||||
Patch7: %{name}-7.3-mktemp_tutor.patch
|
||||
Patch8: %{name}-7.4-filetype_apparmor.patch
|
||||
Patch9: %{name}-7.3-filetype_spec.patch
|
||||
Patch10: %{name}-7.3-filetype_changes.patch
|
||||
Patch11: %{name}-7.4-filetype_mine.patch
|
||||
Patch12: %{name}73-no-static-libpython.patch
|
||||
Patch13: %{name}-8.0.1568-defaults.patch
|
||||
Patch14: %{name}-8.2.2411-globalvimrc.patch
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: db-devel
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: gettext-devel
|
||||
BuildRequires: gpm-devel
|
||||
BuildRequires: libtool
|
||||
BuildRequires: perl
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: ruby-devel
|
||||
BuildRequires: update-desktop-files
|
||||
BuildRequires: pkgconfig(form)
|
||||
BuildRequires: pkgconfig(formw)
|
||||
BuildRequires: pkgconfig(gtk+-3.0)
|
||||
BuildRequires: pkgconfig(krb5)
|
||||
BuildRequires: pkgconfig(libacl)
|
||||
BuildRequires: pkgconfig(lua)
|
||||
BuildRequires: pkgconfig(menu)
|
||||
BuildRequires: pkgconfig(menuw)
|
||||
BuildRequires: pkgconfig(ncurses)
|
||||
BuildRequires: pkgconfig(ncurses++)
|
||||
BuildRequires: pkgconfig(ncurses++w)
|
||||
BuildRequires: pkgconfig(ncursesw)
|
||||
BuildRequires: pkgconfig(panel)
|
||||
BuildRequires: pkgconfig(panelw)
|
||||
BuildRequires: pkgconfig(python3)
|
||||
BuildRequires: pkgconfig(tic)
|
||||
BuildRequires: pkgconfig(tinfo)
|
||||
BuildRequires: pkgconfig(xt)
|
||||
Requires: vim-data-common = %{version}-%{release}
|
||||
Requires: xxd = %{version}-%{release}
|
||||
Recommends: vim-data = %{version}-%{release}
|
||||
Conflicts: vim-base < 8.2
|
||||
Provides: vi
|
||||
Provides: vim-base = %{version}-%{release}
|
||||
Provides: vim-enhanced = %{version}-%{release}
|
||||
Provides: vim-python = %{version}-%{release}
|
||||
Obsoletes: vim-base < %{version}-%{release}
|
||||
Obsoletes: vim-enhanced < %{version}-%{release}
|
||||
Obsoletes: vim-python < %{version}-%{release}
|
||||
Provides: vim_client
|
||||
%{?libperl_requires}
|
||||
%if %{with libalternatives}
|
||||
Requires: alts
|
||||
%else
|
||||
Requires(post): update-alternatives
|
||||
Requires(postun):update-alternatives
|
||||
%endif
|
||||
%if %{with python2}
|
||||
BuildRequires: python2-devel
|
||||
%endif
|
||||
|
||||
%description
|
||||
Vim (Vi IMproved) is an almost compatible version of the UNIX editor
|
||||
vi. Almost every possible command can be performed using only ASCII
|
||||
characters. Only the 'Q' command is missing (you do not need it). Many
|
||||
new features have been added: multilevel undo, command line history,
|
||||
file name completion, block operations, and editing of binary data.
|
||||
|
||||
%package data
|
||||
Summary: Data files needed for extended vim functionality
|
||||
Requires: vim-data-common = %{version}-%{release}
|
||||
# Used to be in vim-plugins package
|
||||
Obsoletes: vim-plugin-matchit <= 1.13.2
|
||||
Provides: vim-plugin-matchit = 1.13.2
|
||||
# conflicts with nginx own plugin
|
||||
Obsoletes: vim-plugin-nginx < %{version}
|
||||
Provides: vim-plugin-nginx = %{version}
|
||||
BuildArch: noarch
|
||||
|
||||
%description data
|
||||
This package contains optional runtime & syntax files for vim.
|
||||
|
||||
%package data-common
|
||||
Summary: Common Data files for vim & gvim
|
||||
BuildArch: noarch
|
||||
|
||||
%description data-common
|
||||
This package contains basic runtime & syntax files for vim
|
||||
|
||||
%package -n gvim
|
||||
Summary: A GUI for Vi
|
||||
Requires: gvim_client
|
||||
Requires: vim-data = %{version}-%{release}
|
||||
Requires: xxd = %{version}-%{release}
|
||||
Conflicts: gvim < 8.2
|
||||
Provides: gvim-base = %{version}-%{release}
|
||||
Provides: gvim-enhanced = %{version}-%{release}
|
||||
Obsoletes: gvim-base < %{version}-%{release}
|
||||
Obsoletes: gvim-enhanced < %{version}-%{release}
|
||||
Provides: gvim_client
|
||||
Provides: vi
|
||||
Provides: vim_client
|
||||
%if %{with libalternatives}
|
||||
BuildRequires: alts
|
||||
Requires: alts
|
||||
%else
|
||||
Requires(post): update-alternatives
|
||||
Requires(postun):update-alternatives
|
||||
%endif
|
||||
|
||||
%description -n gvim
|
||||
Package gvim contains the largest set of features of vim, which is
|
||||
graphical windows and language interpreter, like python, ruby, or perl.
|
||||
You need package vim for the help and other documentation too. If you
|
||||
want less features, you might want to install vim instead.
|
||||
|
||||
%package small
|
||||
Summary: Vim with reduced features
|
||||
Requires: vim-data-common = %{version}-%{release}
|
||||
Provides: vi
|
||||
Provides: vim_client
|
||||
%if %{with libalternatives}
|
||||
BuildRequires: alts
|
||||
Requires: alts
|
||||
%else
|
||||
Requires(post): update-alternatives
|
||||
Requires(postun):update-alternatives
|
||||
%endif
|
||||
|
||||
%description small
|
||||
Vim compiled with reduced feature set such as no script
|
||||
interpreters built in
|
||||
|
||||
%package -n xxd
|
||||
Summary: A hex dump utility
|
||||
Conflicts: vim <= 9.0.1418
|
||||
|
||||
%description -n xxd
|
||||
xxd creates a hex dump of a given file or standard input. It can also convert
|
||||
a hex dump back to its original binary form.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{pkg_version}.%{patchlevel}
|
||||
|
||||
%patch -P 1 -p1
|
||||
%patch -P 2 -p1
|
||||
%patch -P 3 -p1
|
||||
%patch -P 4 -p1
|
||||
%patch -P 5 -p1
|
||||
%patch -P 6 -p1
|
||||
%patch -P 7 -p1
|
||||
cp %{SOURCE23} runtime/syntax/apparmor.vim
|
||||
%patch -P 8 -p1
|
||||
%patch -P 9 -p1
|
||||
%patch -P 10 -p1
|
||||
%patch -P 11 -p1
|
||||
%patch -P 12 -p1
|
||||
%patch -P 13 -p1
|
||||
%patch -P 14 -p1
|
||||
cp %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE8} %{SOURCE10} .
|
||||
|
||||
%build
|
||||
export CFLAGS="%{optflags} -Wall -pipe -fno-strict-aliasing"
|
||||
export CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/-D_FORTIFY_SOURCE=1}
|
||||
|
||||
export COMMON_OPTIONS="\
|
||||
--with-vim-name=vim \
|
||||
--with-ex-name=ex \
|
||||
--with-view-name=view \
|
||||
--enable-cscope \
|
||||
--enable-multibyte \
|
||||
--with-compiledby='http://www.opensuse.org/' \
|
||||
--with-tlib=tinfo \
|
||||
--with-global-runtime=%{site_runtimepath} \
|
||||
"
|
||||
|
||||
# yeah kind of weird to call this small when we then use the
|
||||
# "normal" set. Calling the package vim-normal is weird though as
|
||||
# huge is our default.
|
||||
export SMALL_OPTIONS="\
|
||||
$COMMON_OPTIONS \
|
||||
--with-features=small \
|
||||
--enable-luainterp=no \
|
||||
--enable-pythoninterp=no \
|
||||
--enable-perlinterp=no \
|
||||
--enable-python3interp=no \
|
||||
--enable-rubyinterp=no"
|
||||
|
||||
export HUGE_OPTIONS="\
|
||||
$COMMON_OPTIONS \
|
||||
--with-features=huge \
|
||||
--enable-luainterp=dynamic \
|
||||
--enable-perlinterp=yes \
|
||||
--enable-python3interp=dynamic \
|
||||
--enable-rubyinterp=dynamic
|
||||
--enable-pythoninterp=%{?with_python2:yes}%{!?with_python2:no}"
|
||||
|
||||
export GUI_OPTIONS="\
|
||||
--disable-icon-cache-update \
|
||||
--enable-xim \
|
||||
--enable-fontset \
|
||||
--enable-gui=gtk3"
|
||||
|
||||
export NOGUI_OPTIONS="\
|
||||
--disable-gui \
|
||||
--disable-gpm \
|
||||
--with-x=no \
|
||||
"
|
||||
|
||||
pushd src
|
||||
autoconf
|
||||
popd
|
||||
|
||||
# build smaller vim
|
||||
%configure ${SMALL_OPTIONS} ${NOGUI_OPTIONS}
|
||||
sed -i -e 's|define HAVE_DATE_TIME 1|undef HAVE_DATE_TIME|' src/auto/config.h
|
||||
%make_build
|
||||
cp src/vim vim-small
|
||||
|
||||
# build normal vim
|
||||
%make_build -j1 distclean
|
||||
%configure ${HUGE_OPTIONS} ${NOGUI_OPTIONS}
|
||||
sed -i -e 's|define HAVE_DATE_TIME 1|undef HAVE_DATE_TIME|' src/auto/config.h
|
||||
%make_build
|
||||
cp src/vim vim-nox11
|
||||
|
||||
# build gvim
|
||||
%make_build -j1 distclean
|
||||
%configure ${HUGE_OPTIONS} ${GUI_OPTIONS}
|
||||
sed -i -e 's|define HAVE_DATE_TIME 1|undef HAVE_DATE_TIME|' src/auto/config.h
|
||||
%make_build
|
||||
|
||||
#
|
||||
# build vitmp
|
||||
gcc %{optflags} %{SOURCE13} -o vitmp
|
||||
|
||||
%install
|
||||
%make_install STRIP=:
|
||||
# create icon directories and install the icons into it
|
||||
for SIZE in 24 32 48 64 96 128 256 512; do
|
||||
install -d -m 0755 %{buildroot}%{_datadir}/icons/hicolor/${SIZE}x${SIZE}/apps
|
||||
install -m 0644 %{_sourcedir}/gvim_${SIZE}.png %{buildroot}%{_datadir}/icons/hicolor/${SIZE}x${SIZE}/apps/gvim.png
|
||||
done
|
||||
install -d -m 0755 %{buildroot}%{_datadir}/icons/hicolor/scalable/apps
|
||||
install -m 0644 %{SOURCE24} %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/gvim.svg
|
||||
|
||||
# the last installed binary is gvim. preserve it
|
||||
mv %{buildroot}%{_bindir}/vim %{buildroot}%{_bindir}/gvim
|
||||
%if %{with libalternatives}
|
||||
for f in vimdiff ex view rview rvim; do
|
||||
rm %{buildroot}%{_bindir}/$f
|
||||
done
|
||||
%else
|
||||
# fix gvim symlinks. e* was added here as it doesnt make much sense in
|
||||
# console
|
||||
for f in egvim egview eview evim gex gvi gview gvimdiff rgview rgvim ; do
|
||||
ln -s -vf gvim %{buildroot}%{_bindir}/$f
|
||||
done
|
||||
%endif
|
||||
|
||||
# install vim
|
||||
install -D -m 0755 vim-small %{buildroot}%{_bindir}/vim-small
|
||||
install -D -m 0755 vim-nox11 %{buildroot}%{_bindir}/vim-nox11
|
||||
%if ! %{with libalternatives}
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/alternatives
|
||||
ln -s -f %{_sysconfdir}/alternatives/vim %{buildroot}%{_bindir}/vim
|
||||
ln -s -f %{_sysconfdir}/alternatives/vi %{buildroot}%{_bindir}/vi
|
||||
%else
|
||||
for f in vi vim rvim evim eview egview view rview vimdiff edit ex egvim gex gvi gview gvimdiff rgview rgvim ; do
|
||||
ln -sf %{_bindir}/alts %{buildroot}%{_bindir}/$f
|
||||
mkdir -p %{buildroot}%{_datadir}/libalternatives/$f
|
||||
done
|
||||
for f in vi vim rvim view rview vimdiff edit ex; do
|
||||
cat > %{buildroot}%{_datadir}/libalternatives/$f/20.conf <<EOF
|
||||
binary=%{_bindir}/vim-nox11
|
||||
group=vim,vi
|
||||
options=KeepArgv0
|
||||
EOF
|
||||
done
|
||||
for f in vi vim evim rvim egview eview view rview vimdiff edit ex egvim gex gvi gview gvimdiff rgview rgvim ; do
|
||||
cat > %{buildroot}%{_datadir}/libalternatives/$f/30.conf <<EOF
|
||||
binary=%{_bindir}/gvim
|
||||
group=vi,vim
|
||||
options=KeepArgv0
|
||||
EOF
|
||||
done
|
||||
for f in vim vi ; do
|
||||
cat > %{buildroot}%{_datadir}/libalternatives/$f/19.conf <<EOF
|
||||
binary=%{_bindir}/vim-small
|
||||
group=vim,vi
|
||||
options=KeepArgv0
|
||||
EOF
|
||||
done
|
||||
%endif
|
||||
|
||||
# compat symlinks
|
||||
mkdir %{buildroot}/bin
|
||||
%if 0%{?suse_version} < 1550
|
||||
ln -s -f %{_bindir}/vim %{buildroot}/bin/vi
|
||||
ln -s -f %{_bindir}/vim %{buildroot}/bin/vim
|
||||
%endif
|
||||
ln -s -f vim %{buildroot}%{_bindir}/edit
|
||||
%if 0%{?suse_version} < 1550
|
||||
ln -s -f %{_bindir}/vim %{buildroot}/bin/ex
|
||||
%endif
|
||||
|
||||
# man pages
|
||||
ln -s -f vim.1.gz %{buildroot}%{_mandir}/man1/vi.1.gz
|
||||
ln -s -f vim.1.gz %{buildroot}%{_mandir}/man1/ex.1.gz
|
||||
|
||||
# vitmp
|
||||
install -m 0755 vitmp %{buildroot}%{_bindir}/vitmp
|
||||
install -m 0644 %{SOURCE14} %{buildroot}%{_mandir}/man1/vitmp.1
|
||||
install -m 0755 %{SOURCE15} %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/tools/vim132
|
||||
|
||||
# make the vim settings more generic
|
||||
ln -s -f %{VIM_SUBDIR} %{buildroot}%{_datadir}/vim/current
|
||||
|
||||
# additional files
|
||||
install -D -m 0644 %{SOURCE3} %{buildroot}%{_datadir}/vim/current/suse.vimrc
|
||||
#install -D -m 0644 /dev/null %{buildroot}%{_sysconfdir}/vimrc
|
||||
install -D -m 0644 %{SOURCE8} %{buildroot}%{_sysconfdir}/gvimrc
|
||||
|
||||
# create site wide runtime directory
|
||||
mkdir -p -m 0755 %{buildroot}%{site_runtimepath}/after
|
||||
mkdir -m 0755 %{buildroot}%{site_runtimepath}/autoload
|
||||
mkdir -m 0755 %{buildroot}%{site_runtimepath}/colors
|
||||
mkdir -m 0755 %{buildroot}%{site_runtimepath}/doc
|
||||
mkdir -m 0755 %{buildroot}%{site_runtimepath}/plugin
|
||||
mkdir -m 0755 %{buildroot}%{site_runtimepath}/syntax
|
||||
mkdir -m 0755 %{buildroot}%{site_runtimepath}/ftdetect
|
||||
mkdir -m 0755 %{buildroot}%{site_runtimepath}/after/syntax
|
||||
mkdir -m 0755 %{buildroot}%{_datadir}/vim/current/skeletons
|
||||
mkdir -m 0755 %{buildroot}%{_sysconfdir}/skel
|
||||
|
||||
# install spec helper
|
||||
install -m 0644 %{SOURCE20} %{buildroot}%{_datadir}/vim/current/skeletons/skeleton.spec
|
||||
install -m 0644 %{SOURCE21} %{buildroot}%{_datadir}/vim/current/plugin/spec.vim
|
||||
|
||||
# desktop file for gvim
|
||||
install -D -m 0644 %{SOURCE19} %{buildroot}%{_datadir}/applications/gvim.desktop
|
||||
%suse_update_desktop_file gvim Utility TextEditor
|
||||
|
||||
#
|
||||
# documentation
|
||||
install -d -m 0755 %{buildroot}%{_docdir}/{,g}vim/
|
||||
install -D -m 0644 \
|
||||
vimrc_example1 vimrc_example2 suse.vimrc \
|
||||
README.txt READMEdir/README_src.txt READMEdir/README_unix.txt \
|
||||
%{buildroot}%{_docdir}/vim/
|
||||
# gvim
|
||||
install -D -m 0644 \
|
||||
README.Japanese-XIM runtime/gvimrc_example.vim suse.gvimrc \
|
||||
%{buildroot}%{_docdir}/gvim/
|
||||
|
||||
# remove unecessary duplicate manpages
|
||||
rm -rf %{buildroot}%{_mandir}/fr.ISO8859-1/
|
||||
rm -rf %{buildroot}%{_mandir}/fr.UTF-8/
|
||||
rm -rf %{buildroot}%{_mandir}/pl.ISO8859-2/
|
||||
rm -rf %{buildroot}%{_mandir}/pl.UTF-8/
|
||||
rm -rf %{buildroot}%{_mandir}/ru.KOI8-R/
|
||||
rm -rf %{buildroot}%{_mandir}/it.ISO8859-1/
|
||||
rm -rf %{buildroot}%{_mandir}/it.UTF-8/
|
||||
rm -rf %{buildroot}%{_mandir}/da.UTF-8/
|
||||
rm -rf %{buildroot}%{_mandir}/de.UTF-8/
|
||||
rm -rf %{buildroot}%{_mandir}/da.ISO8859-1/
|
||||
rm -rf %{buildroot}%{_mandir}/de.ISO8859-1/
|
||||
rm -Rf %{buildroot}%{_mandir}/tr.ISO8859-9/
|
||||
rm -Rf %{buildroot}%{_mandir}/tr.UTF-8/
|
||||
|
||||
# remove unnecessary files
|
||||
rm -rf %{buildroot}%{_datadir}/applications/vim.desktop
|
||||
rm -rf %{buildroot}%{_datadir}/icons/locolor
|
||||
|
||||
# and move russian manpages to a place where they can be found
|
||||
mv %{buildroot}%{_mandir}/ru.UTF-8 %{buildroot}%{_mandir}/ru
|
||||
|
||||
# remove some c source files
|
||||
rm -f %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/tools/*.c
|
||||
rm -f %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/macros/maze/*.c
|
||||
|
||||
# Remove sample server to avoid python dependency
|
||||
rm %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/tools/demoserver.py
|
||||
|
||||
# Create ghost files (see vim.conf)
|
||||
mkdir -p %{buildroot}%{_localstatedir}/run/vi.recover
|
||||
|
||||
%fdupes -s %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/lang
|
||||
%fdupes -s %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/tutor
|
||||
%fdupes -s %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/ftplugin
|
||||
|
||||
sed -i "s@%{_bindir}/env perl@%{_bindir}/perl@" %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/tools/*.pl
|
||||
sed -i "s@%{_bindir}/env perl@%{_bindir}/perl@" %{buildroot}%{_datadir}/vim/%{VIM_SUBDIR}/doc/vim2html.pl
|
||||
|
||||
%if %{with libalternatives}
|
||||
# with libalternatives
|
||||
%pre
|
||||
# removing old update-alternatives entries
|
||||
if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] && [ ! -e %{_bindir}/vim-nox11 ]; then
|
||||
%{_sbindir}/update-alternatives --remove vim %{_bindir}/vim-nox11
|
||||
fi
|
||||
|
||||
%pre -n gvim
|
||||
if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] && [ ! -e %{_bindir}/gvim ] ; then
|
||||
%{_sbindir}/update-alternatives --remove vim %{_bindir}/gvim
|
||||
fi
|
||||
|
||||
%pre small
|
||||
if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] && [ ! -e %{_bindir}/vim-small ]; then
|
||||
%{_sbindir}/update-alternatives --remove vim %{_bindir}/vim-small
|
||||
fi
|
||||
|
||||
%if 0%{?suse_version} <= 1315
|
||||
%post -n gvim
|
||||
%icon_theme_cache_post
|
||||
|
||||
%postun -n gvim
|
||||
%icon_theme_cache_postun
|
||||
%endif
|
||||
|
||||
%else
|
||||
|
||||
# without libalternatives
|
||||
%post
|
||||
%{_sbindir}/update-alternatives \
|
||||
--install %{_bindir}/vim vim %{_bindir}/vim-nox11 20 \
|
||||
--slave %{_bindir}/vi vi %{_bindir}/vim-nox11
|
||||
|
||||
%postun
|
||||
if [ ! -e %{_bindir}/vim-nox11 ] ; then
|
||||
%{_sbindir}/update-alternatives --remove vim %{_bindir}/vim-nox11
|
||||
fi
|
||||
|
||||
%post -n gvim
|
||||
%{_sbindir}/update-alternatives \
|
||||
--install %{_bindir}/vim vim %{_bindir}/gvim 30 \
|
||||
--slave %{_bindir}/vi vi %{_bindir}/gvim
|
||||
%if 0%{?suse_version} <= 1315
|
||||
%icon_theme_cache_post
|
||||
%endif
|
||||
|
||||
%postun -n gvim
|
||||
if [ ! -e %{_bindir}/gvim ] ; then
|
||||
%{_sbindir}/update-alternatives --remove vim %{_bindir}/gvim
|
||||
fi
|
||||
%if 0%{?suse_version} <= 1315
|
||||
%icon_theme_cache_postun
|
||||
%endif
|
||||
|
||||
%post small
|
||||
%{_sbindir}/update-alternatives \
|
||||
--install %{_bindir}/vim vim %{_bindir}/vim-small 19 \
|
||||
--slave %{_bindir}/vi vi %{_bindir}/vim-small
|
||||
|
||||
%postun small
|
||||
if [ ! -e %{_bindir}/vim-small ] ; then
|
||||
%{_sbindir}/update-alternatives --remove vim %{_bindir}/vim-small
|
||||
fi
|
||||
%endif
|
||||
|
||||
%files
|
||||
%if ! %{with libalternatives}
|
||||
%ghost %{_sysconfdir}/alternatives/vim
|
||||
%ghost %{_sysconfdir}/alternatives/vi
|
||||
%else
|
||||
%dir %{_datadir}/libalternatives
|
||||
%dir %{_datadir}/libalternatives/vi
|
||||
%{_datadir}/libalternatives/vi/20.conf
|
||||
%dir %{_datadir}/libalternatives/vim
|
||||
%{_datadir}/libalternatives/vim/20.conf
|
||||
%dir %{_datadir}/libalternatives/rvim
|
||||
%{_datadir}/libalternatives/rvim/20.conf
|
||||
%dir %{_datadir}/libalternatives/view
|
||||
%{_datadir}/libalternatives/view/20.conf
|
||||
%dir %{_datadir}/libalternatives/rview
|
||||
%{_datadir}/libalternatives/rview/20.conf
|
||||
%dir %{_datadir}/libalternatives/ex
|
||||
%{_datadir}/libalternatives/ex/20.conf
|
||||
%dir %{_datadir}/libalternatives/edit
|
||||
%{_datadir}/libalternatives/edit/20.conf
|
||||
%dir %{_datadir}/libalternatives/vimdiff
|
||||
%{_datadir}/libalternatives/vimdiff/20.conf
|
||||
%endif
|
||||
%{_bindir}/vim-nox11
|
||||
%{_bindir}/vim
|
||||
# symlinks
|
||||
%if 0%{?suse_version} < 1550
|
||||
/bin/vi
|
||||
/bin/vim
|
||||
/bin/ex
|
||||
%endif
|
||||
%{_bindir}/edit
|
||||
%{_bindir}/ex
|
||||
%{_bindir}/rview
|
||||
%{_bindir}/rvim
|
||||
%{_bindir}/vi
|
||||
%{_bindir}/view
|
||||
%{_bindir}/vimdiff
|
||||
# additional binaries
|
||||
%{_bindir}/vitmp
|
||||
%{_bindir}/vimtutor
|
||||
%{_bindir}/gvimtutor
|
||||
# man pages
|
||||
%{_mandir}/man1/eview.1%{?ext_man}
|
||||
%{_mandir}/man1/evim.1%{?ext_man}
|
||||
%{_mandir}/man1/ex.1%{?ext_man}
|
||||
%{_mandir}/man1/gview.1%{?ext_man}
|
||||
%{_mandir}/man1/gvim.1%{?ext_man}
|
||||
%{_mandir}/man1/gvimdiff.1%{?ext_man}
|
||||
%{_mandir}/man1/rgview.1%{?ext_man}
|
||||
%{_mandir}/man1/rgvim.1%{?ext_man}
|
||||
%{_mandir}/man1/rview.1%{?ext_man}
|
||||
%{_mandir}/man1/rvim.1%{?ext_man}
|
||||
%{_mandir}/man1/vi.1%{?ext_man}
|
||||
%{_mandir}/man1/view.1%{?ext_man}
|
||||
%{_mandir}/man1/vim.1%{?ext_man}
|
||||
%{_mandir}/man1/vimdiff.1%{?ext_man}
|
||||
%{_mandir}/man1/vimtutor.1%{?ext_man}
|
||||
%{_mandir}/man1/vitmp.1%{?ext_man}
|
||||
%dir %{_mandir}/da
|
||||
%dir %{_mandir}/da/man1/
|
||||
%{_mandir}/da/man1/*.1%{?ext_man}
|
||||
%dir %{_mandir}/de
|
||||
%dir %{_mandir}/de/man1/
|
||||
%{_mandir}/de/man1/*.1%{?ext_man}
|
||||
%dir %{_mandir}/fr
|
||||
%dir %{_mandir}/fr/man1/
|
||||
%{_mandir}/fr/man1/*.1%{?ext_man}
|
||||
%dir %{_mandir}/it
|
||||
%dir %{_mandir}/it/man1/
|
||||
%{_mandir}/it/man1/*.1%{?ext_man}
|
||||
%dir %{_mandir}/ru
|
||||
%dir %{_mandir}/ru/man1/
|
||||
%{_mandir}/ru/man1/*.1%{?ext_man}
|
||||
%dir %{_mandir}/pl
|
||||
%dir %{_mandir}/pl/man1/
|
||||
%{_mandir}/pl/man1/*.1%{?ext_man}
|
||||
%dir %{_mandir}/ja
|
||||
%dir %{_mandir}/ja/man1/
|
||||
%{_mandir}/ja/man1/*.1%{?ext_man}
|
||||
%dir %{_mandir}/tr
|
||||
%dir %{_mandir}/tr/man1/
|
||||
%{_mandir}/tr/man1/*.1%{?ext_man}
|
||||
|
||||
# docs and data file
|
||||
%license LICENSE
|
||||
%doc %{_docdir}/vim
|
||||
#
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/colors/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/compiler/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/doc/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/ftplugin/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/indent/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/import/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/import/dist/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/keymap/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/lang/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/macros/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/pack/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/plugin/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/print/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/spell/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/syntax/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/tools/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/tutor/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/skeletons/
|
||||
%dir %{site_runtimepath}
|
||||
%dir %{site_runtimepath}/autoload/
|
||||
%dir %{site_runtimepath}/colors/
|
||||
%dir %{site_runtimepath}/doc/
|
||||
%dir %{site_runtimepath}/plugin/
|
||||
%dir %{site_runtimepath}/syntax/
|
||||
%dir %{site_runtimepath}/ftdetect/
|
||||
%dir %{site_runtimepath}/after/
|
||||
%dir %{site_runtimepath}/after/syntax/
|
||||
|
||||
%files data
|
||||
# exclude common files
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/autoload/dist/ft.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/autoload/dist/script.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/colors/lists/default.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/syntax/nosyntax.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/syntax/resolv.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/syntax/sh.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/syntax/syncolor.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/syntax/synload.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/syntax/syntax.vim
|
||||
%exclude %{_datadir}/vim/%{VIM_SUBDIR}/syntax/vim.vim
|
||||
# data files
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/autoload/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/colors/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/compiler/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/doc/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/ftplugin/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/indent/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/import/dist/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/keymap/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/lang/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/macros/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/pack/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/plugin/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/print/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/skeletons/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/spell/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/tools/*
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/tutor/*
|
||||
|
||||
%files data-common
|
||||
# we can't currently own /etc/vimrc. If we keep owning it, an
|
||||
# existing, unmodified vimrc would not be removed. That results in a
|
||||
# duplicated definition of SKEL_spec().
|
||||
# see also https://github.com/rpm-software-management/rpm/issues/1296
|
||||
#%ghost %config(noreplace) %{_sysconfdir}/vimrc
|
||||
%{_datadir}/vim/current
|
||||
%dir %{_datadir}/vim/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/autoload/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/autoload/dist/
|
||||
%dir %{_datadir}/vim/%{VIM_SUBDIR}/syntax/
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/suse.vimrc
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/autoload/dist/ft.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/autoload/dist/script.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/colors/lists/default.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/nosyntax.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/resolv.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/sh.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/syncolor.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/synload.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/syntax.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/vim.vim
|
||||
%{_datadir}/vim/%{VIM_SUBDIR}/*.vim
|
||||
|
||||
%files -n gvim
|
||||
%doc runtime/doc/gui_x11.txt
|
||||
%ghost %config(missingok) %{_sysconfdir}/gvimrc
|
||||
%if ! %{with libalternatives}
|
||||
%ghost %{_sysconfdir}/alternatives/vim
|
||||
%ghost %{_sysconfdir}/alternatives/vi
|
||||
%else
|
||||
%dir %{_datadir}/libalternatives
|
||||
%dir %{_datadir}/libalternatives/vi
|
||||
%{_datadir}/libalternatives/vi/30.conf
|
||||
%dir %{_datadir}/libalternatives/vim
|
||||
%{_datadir}/libalternatives/vim/30.conf
|
||||
%dir %{_datadir}/libalternatives/rvim
|
||||
%{_datadir}/libalternatives/rvim/30.conf
|
||||
%dir %{_datadir}/libalternatives/view
|
||||
%{_datadir}/libalternatives/view/30.conf
|
||||
%dir %{_datadir}/libalternatives/rview
|
||||
%{_datadir}/libalternatives/rview/30.conf
|
||||
%dir %{_datadir}/libalternatives/eview
|
||||
%{_datadir}/libalternatives/eview/30.conf
|
||||
%dir %{_datadir}/libalternatives/ex
|
||||
%{_datadir}/libalternatives/ex/30.conf
|
||||
%dir %{_datadir}/libalternatives/edit
|
||||
%{_datadir}/libalternatives/edit/30.conf
|
||||
%dir %{_datadir}/libalternatives/vimdiff
|
||||
%{_datadir}/libalternatives/vimdiff/30.conf
|
||||
%dir %{_datadir}/libalternatives/egvim
|
||||
%{_datadir}/libalternatives/egvim/30.conf
|
||||
%dir %{_datadir}/libalternatives/egview
|
||||
%{_datadir}/libalternatives/egview/30.conf
|
||||
%dir %{_datadir}/libalternatives/evim
|
||||
%{_datadir}/libalternatives/evim/30.conf
|
||||
%dir %{_datadir}/libalternatives/gex
|
||||
%{_datadir}/libalternatives/gex/30.conf
|
||||
%dir %{_datadir}/libalternatives/gvi
|
||||
%{_datadir}/libalternatives/gvi/30.conf
|
||||
%dir %{_datadir}/libalternatives/gview
|
||||
%{_datadir}/libalternatives/gview/30.conf
|
||||
%dir %{_datadir}/libalternatives/gvimdiff
|
||||
%{_datadir}/libalternatives/gvimdiff/30.conf
|
||||
%dir %{_datadir}/libalternatives/rgvim
|
||||
%{_datadir}/libalternatives/rgvim/30.conf
|
||||
%dir %{_datadir}/libalternatives/rgview
|
||||
%{_datadir}/libalternatives/rgview/30.conf
|
||||
%endif
|
||||
%{_bindir}/vi
|
||||
%{_bindir}/vim
|
||||
%{_bindir}/egview
|
||||
%{_bindir}/egvim
|
||||
%{_bindir}/eview
|
||||
%{_bindir}/evim
|
||||
%{_bindir}/gex
|
||||
%{_bindir}/gvi
|
||||
%{_bindir}/gview
|
||||
%{_bindir}/gvim
|
||||
%{_bindir}/gvimdiff
|
||||
%{_bindir}/rgview
|
||||
%{_bindir}/rgvim
|
||||
# menu icon
|
||||
%{_datadir}/applications/gvim.desktop
|
||||
%{_datadir}/icons/hicolor/*/apps/gvim.*
|
||||
%doc %{_docdir}/gvim
|
||||
|
||||
%files small
|
||||
%license LICENSE
|
||||
%if ! %{with libalternatives}
|
||||
%ghost %{_sysconfdir}/alternatives/vim
|
||||
%ghost %{_sysconfdir}/alternatives/vi
|
||||
%else
|
||||
%dir %{_datadir}/libalternatives
|
||||
%dir %{_datadir}/libalternatives/vi
|
||||
%{_datadir}/libalternatives/vi/19.conf
|
||||
%dir %{_datadir}/libalternatives/vim
|
||||
%{_datadir}/libalternatives/vim/19.conf
|
||||
%endif
|
||||
%{_bindir}/vi
|
||||
%{_bindir}/vim
|
||||
%{_bindir}/vim-small
|
||||
|
||||
%files -n xxd
|
||||
%license LICENSE
|
||||
%{_bindir}/xxd
|
||||
%{_mandir}/man1/xxd.1%{?ext_man}
|
||||
|
||||
%changelog
|
10
vim132
Normal file
10
vim132
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Shell script for use with UNIX
|
||||
# Starts up Vim with the terminal in 132 column mode
|
||||
# Only works on VT-100 terminals and lookalikes
|
||||
# You need to have a termcap entry "vt100-w". Same as vt100 but 132 columns.
|
||||
#
|
||||
echo "[?3h"
|
||||
TERM=vt100-w vim "$@"
|
||||
echo "[?3l"
|
13
vim73-no-static-libpython.patch
Normal file
13
vim73-no-static-libpython.patch
Normal file
@ -0,0 +1,13 @@
|
||||
Index: vim-8.2.2411/src/configure.ac
|
||||
===================================================================
|
||||
--- vim-8.2.2411.orig/src/configure.ac
|
||||
+++ vim-8.2.2411/src/configure.ac
|
||||
@@ -1289,7 +1289,7 @@ eof
|
||||
vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python"
|
||||
fi
|
||||
else
|
||||
- vi_cv_path_python_plibs="-L${PYTHON_CONFDIR} -lpython${vi_cv_var_python_version}"
|
||||
+ vi_cv_path_python_plibs="-lpython${vi_cv_var_python_version}"
|
||||
dnl -- Check if the path contained in python_LINKFORSHARED is
|
||||
dnl usable for vim build. If not, make and try other
|
||||
dnl candidates.
|
161
vimrc_example1
Normal file
161
vimrc_example1
Normal file
@ -0,0 +1,161 @@
|
||||
" Vim
|
||||
" An example for a vimrc file.
|
||||
"
|
||||
" To use it, copy it to
|
||||
" for Unix and OS/2: ~/.vimrc
|
||||
" for Amiga: s:.vimrc
|
||||
" for MS-DOS and Win32: $VIM\_vimrc
|
||||
|
||||
set nocompatible " Use Vim defaults (much better!)
|
||||
set bs=2 " allow backspacing over everything in insert mode
|
||||
set ai " always set autoindenting on
|
||||
set backup " keep a backup file
|
||||
set viminfo='20,\"50 " read/write a .viminfo file, don't store more
|
||||
" than 50 lines of registers
|
||||
|
||||
|
||||
:set showmatch " jump emacs style to matching bracket
|
||||
|
||||
"these characters can move past end of line
|
||||
:set whichwrap=b,s,h,l
|
||||
|
||||
"default tabs are too wide IMO. uncomment to change them
|
||||
" :set tabstop=6
|
||||
|
||||
|
||||
" In text files, always limit the width of text to 78 characters
|
||||
autocmd BufRead *.txt set tw=78
|
||||
|
||||
" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries
|
||||
" let &guioptions = substitute(&guioptions, "t", "", "g")
|
||||
|
||||
" Don't use Ex mode, use Q for formatting
|
||||
map Q gq
|
||||
|
||||
" Switch syntax highlighting on, when the terminal has colors
|
||||
" Also switch on highlighting the last used search pattern.
|
||||
if &t_Co > 2 || has("gui_running")
|
||||
syntax on
|
||||
set hlsearch
|
||||
endif
|
||||
|
||||
augroup cprog
|
||||
" Remove all cprog autocommands
|
||||
au!
|
||||
|
||||
" When starting to edit a file:
|
||||
" For *.c and *.h files set formatting of comments and set C-indenting on.
|
||||
" For other files switch it off.
|
||||
" Don't change the order, it's important that the line with * comes first.
|
||||
autocmd BufRead * set formatoptions=tcql nocindent comments&
|
||||
autocmd BufRead *.c,*.h set formatoptions=croql cindent comments=sr:/*,mb:*,el:*/,://
|
||||
augroup END
|
||||
|
||||
augroup gzip
|
||||
" Remove all gzip autocommands
|
||||
au!
|
||||
|
||||
" Enable editing of gzipped files
|
||||
" read: set binary mode before reading the file
|
||||
" uncompress text in buffer after reading
|
||||
" write: compress file after writing
|
||||
" append: uncompress file, append, compress file
|
||||
autocmd BufReadPre,FileReadPre *.gz set bin
|
||||
autocmd BufReadPost,FileReadPost *.gz let ch_save = &ch|set ch=2
|
||||
autocmd BufReadPost,FileReadPost *.gz '[,']!gunzip
|
||||
autocmd BufReadPost,FileReadPost *.gz set nobin
|
||||
autocmd BufReadPost,FileReadPost *.gz let &ch = ch_save|unlet ch_save
|
||||
autocmd BufReadPost,FileReadPost *.gz execute ":doautocmd BufReadPost " . expand("%:r")
|
||||
|
||||
autocmd BufWritePost,FileWritePost *.gz !mv <afile> <afile>:r
|
||||
autocmd BufWritePost,FileWritePost *.gz !gzip <afile>:r
|
||||
|
||||
autocmd FileAppendPre *.gz !gunzip <afile>
|
||||
autocmd FileAppendPre *.gz !mv <afile>:r <afile>
|
||||
autocmd FileAppendPost *.gz !mv <afile> <afile>:r
|
||||
autocmd FileAppendPost *.gz !gzip <afile>:r
|
||||
augroup END
|
||||
|
||||
|
||||
"let bash_is_sh = 1
|
||||
"let is_bash = 1
|
||||
|
||||
" Uncomment to turn off arrow keys. Using arrow keys is a good habit to
|
||||
" get out of ...
|
||||
|
||||
":map <left> <Nop>
|
||||
":map <right> <Nop>
|
||||
":map <up> <Nop>
|
||||
":map <down> <Nop>
|
||||
|
||||
":imap <left> <Nop>
|
||||
":imap <right> <Nop>
|
||||
":imap <up> <Nop>
|
||||
":imap <down> <Nop>
|
||||
|
||||
" Some emacs/pico like keybindings for insert mode
|
||||
|
||||
":imap <C-A> <ESC>0i
|
||||
":imap <C-E> <ESC>$a
|
||||
":imap <C-P> <ESC>ki
|
||||
":imap <C-N> <ESC>ji
|
||||
":imap <C-B> <ESC>la
|
||||
":imap <C-F> <ESC>ha
|
||||
|
||||
" Some highlighting definitions
|
||||
|
||||
" THis is the default.
|
||||
" Doesn't use colours wisely IMO. Consider changing Repeat and Conditional
|
||||
" to make them stand out a little better.
|
||||
|
||||
" There are two sets of defaults: for a dark and a light background.
|
||||
if &background == "dark"
|
||||
hi Comment term=bold ctermfg=Cyan guifg=#80a0ff
|
||||
hi Constant term=underline ctermfg=Magenta guifg=#ffa0a0
|
||||
hi Special term=bold ctermfg=LightRed guifg=Orange
|
||||
hi Identifier term=underline cterm=bold ctermfg=Cyan guifg=#40ffff
|
||||
hi Statement term=bold ctermfg=Yellow guifg=#ffff60 gui=bold
|
||||
hi PreProc term=underline ctermfg=LightBlue guifg=#ff80ff
|
||||
hi Type term=underline ctermfg=LightGreen guifg=#60ff60 gui=bold
|
||||
hi Ignore ctermfg=black guifg=bg
|
||||
else
|
||||
hi Comment term=bold ctermfg=DarkBlue guifg=Blue
|
||||
hi Constant term=underline ctermfg=DarkRed guifg=Magenta
|
||||
hi Special term=bold ctermfg=DarkMagenta guifg=SlateBlue
|
||||
hi Identifier term=underline ctermfg=DarkCyan guifg=DarkCyan
|
||||
hi Statement term=bold ctermfg=Brown gui=bold guifg=Brown
|
||||
hi PreProc term=underline ctermfg=DarkMagenta guifg=Purple
|
||||
hi Type term=underline ctermfg=DarkGreen guifg=SeaGreen gui=bold
|
||||
hi Ignore ctermfg=white guifg=bg
|
||||
endif
|
||||
hi Error term=reverse ctermbg=Red ctermfg=White guibg=Red guifg=White
|
||||
hi Todo term=standout ctermbg=Yellow ctermfg=Black guifg=Blue guibg=Yellow
|
||||
|
||||
" Common groups that link to default highlighting.
|
||||
" You can specify other highlighting easily.
|
||||
hi link String Constant
|
||||
hi link Character Constant
|
||||
hi link Number Constant
|
||||
hi link Boolean Constant
|
||||
hi link Float Number
|
||||
hi link Function Identifier
|
||||
hi link Conditional Statement
|
||||
hi link Repeat Statement
|
||||
hi link Label Statement
|
||||
hi link Operator Statement
|
||||
hi link Keyword Statement
|
||||
hi link Exception Statement
|
||||
hi link Include PreProc
|
||||
hi link Define PreProc
|
||||
hi link Macro PreProc
|
||||
hi link PreCondit PreProc
|
||||
hi link StorageClass Type
|
||||
hi link Structure Type
|
||||
hi link Typedef Type
|
||||
hi link Tag Special
|
||||
hi link SpecialChar Special
|
||||
hi link Delimiter Special
|
||||
hi link SpecialComment Special
|
||||
hi link Debug Special
|
||||
|
||||
|
1530
vimrc_example2
Normal file
1530
vimrc_example2
Normal file
File diff suppressed because it is too large
Load Diff
38
vitmp.1
Normal file
38
vitmp.1
Normal file
@ -0,0 +1,38 @@
|
||||
.\" $Id: vitmp.1,v 1.2 2002/10/12 12:03:51 solar Exp $
|
||||
.TH VITMP 1 "25 April 2002" "Openwall Project"
|
||||
.SH NAME
|
||||
vitmp \- edit temporary files
|
||||
.SH SYNOPSIS
|
||||
.B vitmp
|
||||
.RI [ "VIM options" "] " FILE ...
|
||||
.SH DESCRIPTION
|
||||
.B vitmp
|
||||
is a wrapper around the VIM editor which may be used to invoke the
|
||||
editor in a way that is guaranteed to be suitable for editing temporary
|
||||
files used with programs such as
|
||||
.BR crontab (1)
|
||||
and
|
||||
.BR edquota (8).
|
||||
The instance of the editor that is invoked is
|
||||
.IR /bin/vi .
|
||||
.PP
|
||||
In particular, it is guaranteed that the file, if edited, will be
|
||||
overwritten in place such that the modified contents may be read back
|
||||
via a previously obtained file descriptor. Invoking the editor via
|
||||
.B vitmp
|
||||
also makes sure that no additional editor temporary files are used.
|
||||
.PP
|
||||
Please note that
|
||||
.B vitmp
|
||||
offers no crash recovery capabilities. If the editor crashes during
|
||||
the overwrite, data may be lost.
|
||||
.SH HISTORY
|
||||
.B vitmp
|
||||
first appeared in Openwall GNU/*/Linux 1.0.
|
||||
.SH AUTHORS
|
||||
Solar Designer <solar@owl.openwall.com>
|
||||
.SH SEE ALSO
|
||||
.BR crontab (1),
|
||||
.BR vi (1),
|
||||
.BR vim (1),
|
||||
.BR edquota (8)
|
30
vitmp.c
Normal file
30
vitmp.c
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* This is a wrapper around the VIM editor which may be used to invoke
|
||||
* the editor in a way that is guaranteed to be suitable for editing
|
||||
* temporary files used with programs such as crontab(1) and edquota(8).
|
||||
*
|
||||
* Written by Solar Designer <solar@owl.openwall.com> and placed in the
|
||||
* public domain.
|
||||
*
|
||||
* $Id: vitmp.c,v 1.2 2002/04/24 23:11:34 solar Exp $
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <string.h>
|
||||
|
||||
int main(int argc, const char * const *argv)
|
||||
{
|
||||
char *newargv[argc + 4]; /* GNU C */
|
||||
|
||||
newargv[0] = "/bin/vi";
|
||||
/* No swap files, use memory only */
|
||||
newargv[1] = "-n";
|
||||
/* Don't make a backup before overwriting a file */
|
||||
newargv[2] = "-c"; newargv[3] = "set nowritebackup";
|
||||
memcpy(&newargv[4], &argv[1], argc * sizeof(char *));
|
||||
|
||||
execv(newargv[0], newargv);
|
||||
perror("execv");
|
||||
|
||||
return 1;
|
||||
}
|
Loading…
Reference in New Issue
Block a user