]> granicus.if.org Git - vim/commitdiff
Update runtime files.
authorBram Moolenaar <Bram@vim.org>
Tue, 28 Aug 2018 20:58:02 +0000 (22:58 +0200)
committerBram Moolenaar <Bram@vim.org>
Tue, 28 Aug 2018 20:58:02 +0000 (22:58 +0200)
33 files changed:
runtime/autoload/haskellcomplete.vim [new file with mode: 0644]
runtime/autoload/tar.vim
runtime/doc/eval.txt
runtime/doc/filetype.txt
runtime/doc/if_pyth.txt
runtime/doc/indent.txt
runtime/doc/insert.txt
runtime/doc/options.txt
runtime/doc/quickfix.txt
runtime/doc/syntax.txt
runtime/doc/tabpage.txt
runtime/doc/tags
runtime/doc/terminal.txt
runtime/doc/todo.txt
runtime/doc/usr_11.txt
runtime/doc/usr_41.txt
runtime/ftplugin/haskell.vim
runtime/ftplugin/rmd.vim
runtime/ftplugin/rrst.vim
runtime/indent/dtd.vim
runtime/indent/html.vim
runtime/indent/r.vim
runtime/indent/rmd.vim
runtime/indent/rnoweb.vim
runtime/lang/menu_da.utf-8.vim
runtime/menu.vim
runtime/pack/dist/opt/cfilter/plugin/cfilter.vim
runtime/syntax/r.vim
runtime/syntax/rmd.vim
runtime/syntax/rnoweb.vim
runtime/syntax/rrst.vim
runtime/syntax/sudoers.vim
src/po/da.po

diff --git a/runtime/autoload/haskellcomplete.vim b/runtime/autoload/haskellcomplete.vim
new file mode 100644 (file)
index 0000000..520ab93
--- /dev/null
@@ -0,0 +1,3382 @@
+" Vim completion script
+" Language:        Haskell
+" Maintainer:      Daniel Campoverde <alx@sillybytes.net>
+" URL:             https://github.com/alx741/haskellcomplete.vim
+" Last Change:     2018 Aug 26
+
+" Usage:           setlocal omnifunc=haskellcomplete#Complete
+
+
+" Language extensions from:
+"   https://hackage.haskell.org/package/Cabal-2.2.0.1/docs/Language-Haskell-Extension.html
+"
+" GHC options from:
+"   https://downloads.haskell.org/~ghc/7.0.4/docs/html/users_guide/flag-reference.html
+"   https://downloads.haskell.org/~ghc/8.4.3/docs/html/users_guide/flags.html
+
+
+
+" Available completions
+let b:completingLangExtension = 0
+let b:completingOptionsGHC    = 0
+let b:completingModule        = 0
+
+function! haskellcomplete#Complete(findstart, base)
+    if a:findstart
+        let l:line = getline('.')
+        let l:start = col('.') - 1
+
+        if l:line =~ '^\s*{-#\s*LANGUAGE.*'
+            while l:start >= 0 && l:line[l:start - 1] !~ '[, ]'
+                let l:start -= 1
+            endwhile
+            let b:completingLangExtension = 1
+            return l:start
+
+        elseif l:line =~ '^\s*{-#\s*OPTIONS_GHC.*'
+            while l:start >= 0 && l:line[l:start - 1] !~ '[, ]'
+                let l:start -= 1
+            endwhile
+            let b:completingOptionsGHC = 1
+            return l:start
+
+        elseif l:line =~ '^\s*import\s*.*'
+            while l:start >= 0 && l:line[l:start - 1] !~ ' '
+                let l:start -= 1
+            endwhile
+            let b:completingModule = 1
+            return l:start
+
+        endif
+
+        return start
+    endif
+
+    if b:completingLangExtension
+        if a:base ==? ""
+            " Return all posible Lang extensions
+            return s:langExtensions
+        else
+            let l:matches = []
+            for extension in s:langExtensions
+                if extension =~? '^' . a:base
+                    call add(l:matches, extension)
+                endif
+            endfor
+            return l:matches
+        endif
+
+
+    elseif b:completingOptionsGHC
+        if a:base ==? ""
+            " Return all posible GHC options
+            return s:optionsGHC
+        else
+            let l:matches = []
+            for flag in s:optionsGHC
+                if flag =~? '^' . a:base
+                    call add(l:matches, flag)
+                endif
+            endfor
+            return l:matches
+        endif
+
+
+    elseif b:completingModule
+        if a:base ==? ""
+            " Return all posible modules
+            return s:commonModules
+        else
+            let l:matches = []
+            for module in s:commonModules
+                if module =~? '^' . a:base
+                    call add(l:matches, module)
+                endif
+            endfor
+            return l:matches
+        endif
+
+    endif
+
+    return -1
+endfunction
+
+let s:langExtensions =
+    \ [ "OverlappingInstances"
+    \ , "UndecidableInstances"
+    \ , "IncoherentInstances"
+    \ , "DoRec"
+    \ , "RecursiveDo"
+    \ , "ParallelListComp"
+    \ , "MultiParamTypeClasses"
+    \ , "MonomorphismRestriction"
+    \ , "FunctionalDependencies"
+    \ , "Rank2Types"
+    \ , "RankNTypes"
+    \ , "PolymorphicComponents"
+    \ , "ExistentialQuantification"
+    \ , "ScopedTypeVariables"
+    \ , "PatternSignatures"
+    \ , "ImplicitParams"
+    \ , "FlexibleContexts"
+    \ , "FlexibleInstances"
+    \ , "EmptyDataDecls"
+    \ , "CPP"
+    \ , "KindSignatures"
+    \ , "BangPatterns"
+    \ , "TypeSynonymInstances"
+    \ , "TemplateHaskell"
+    \ , "ForeignFunctionInterface"
+    \ , "Arrows"
+    \ , "Generics"
+    \ , "ImplicitPrelude"
+    \ , "NamedFieldPuns"
+    \ , "PatternGuards"
+    \ , "GeneralizedNewtypeDeriving"
+    \ , "ExtensibleRecords"
+    \ , "RestrictedTypeSynonyms"
+    \ , "HereDocuments"
+    \ , "MagicHash"
+    \ , "TypeFamilies"
+    \ , "StandaloneDeriving"
+    \ , "UnicodeSyntax"
+    \ , "UnliftedFFITypes"
+    \ , "InterruptibleFFI"
+    \ , "CApiFFI"
+    \ , "LiberalTypeSynonyms"
+    \ , "TypeOperators"
+    \ , "RecordWildCards"
+    \ , "RecordPuns"
+    \ , "DisambiguateRecordFields"
+    \ , "TraditionalRecordSyntax"
+    \ , "OverloadedStrings"
+    \ , "GADTs"
+    \ , "GADTSyntax"
+    \ , "MonoPatBinds"
+    \ , "RelaxedPolyRec"
+    \ , "ExtendedDefaultRules"
+    \ , "UnboxedTuples"
+    \ , "DeriveDataTypeable"
+    \ , "DeriveGeneric"
+    \ , "DefaultSignatures"
+    \ , "InstanceSigs"
+    \ , "ConstrainedClassMethods"
+    \ , "PackageImports"
+    \ , "ImpredicativeTypes"
+    \ , "NewQualifiedOperators"
+    \ , "PostfixOperators"
+    \ , "QuasiQuotes"
+    \ , "TransformListComp"
+    \ , "MonadComprehensions"
+    \ , "ViewPatterns"
+    \ , "XmlSyntax"
+    \ , "RegularPatterns"
+    \ , "TupleSections"
+    \ , "GHCForeignImportPrim"
+    \ , "NPlusKPatterns"
+    \ , "DoAndIfThenElse"
+    \ , "MultiWayIf"
+    \ , "LambdaCase"
+    \ , "RebindableSyntax"
+    \ , "ExplicitForAll"
+    \ , "DatatypeContexts"
+    \ , "MonoLocalBinds"
+    \ , "DeriveFunctor"
+    \ , "DeriveTraversable"
+    \ , "DeriveFoldable"
+    \ , "NondecreasingIndentation"
+    \ , "SafeImports"
+    \ , "Safe"
+    \ , "Trustworthy"
+    \ , "Unsafe"
+    \ , "ConstraintKinds"
+    \ , "PolyKinds"
+    \ , "DataKinds"
+    \ , "ParallelArrays"
+    \ , "RoleAnnotations"
+    \ , "OverloadedLists"
+    \ , "EmptyCase"
+    \ , "AutoDeriveTypeable"
+    \ , "NegativeLiterals"
+    \ , "BinaryLiterals"
+    \ , "NumDecimals"
+    \ , "NullaryTypeClasses"
+    \ , "ExplicitNamespaces"
+    \ , "AllowAmbiguousTypes"
+    \ , "JavaScriptFFI"
+    \ , "PatternSynonyms"
+    \ , "PartialTypeSignatures"
+    \ , "NamedWildCards"
+    \ , "DeriveAnyClass"
+    \ , "DeriveLift"
+    \ , "StaticPointers"
+    \ , "StrictData"
+    \ , "Strict"
+    \ , "ApplicativeDo"
+    \ , "DuplicateRecordFields"
+    \ , "TypeApplications"
+    \ , "TypeInType"
+    \ , "UndecidableSuperClasses"
+    \ , "MonadFailDesugaring"
+    \ , "TemplateHaskellQuotes"
+    \ , "OverloadedLabels"
+    \ , "TypeFamilyDependencies"
+    \ , "DerivingStrategies"
+    \ , "UnboxedSums"
+    \ , "HexFloatLiterals"
+    \ ]
+
+let s:optionsGHC =
+    \ [ "-n"
+    \ , "-v"
+    \ , "-vn"
+    \ , "-c"
+    \ , "-hcsuf"
+    \ , "-hidir"
+    \ , "-hisuf"
+    \ , "-o"
+    \ , "-odir"
+    \ , "-ohi"
+    \ , "-osuf"
+    \ , "-stubdir"
+    \ , "-outputdir"
+    \ , "-keep-hc-file"
+    \ , "-keep-llvm-file"
+    \ , "-keep-s-file"
+    \ , "-keep-raw-s-file"
+    \ , "-keep-tmp-files"
+    \ , "-tmpdir"
+    \ , "-ddump-hi"
+    \ , "-ddump-hi-diffs"
+    \ , "-ddump-minimal-imports"
+    \ , "-fforce-recomp"
+    \ , "-fno-force-recomp"
+    \ , "-fbreak-on-exception"
+    \ , "-fno-break-on-exception"
+    \ , "-fbreak-on-error"
+    \ , "-fno-break-on-error"
+    \ , "-fprint-evld-with-show"
+    \ , "-fno-print-evld-with-show"
+    \ , "-fprint-bind-result"
+    \ , "-fno-print-bind-result"
+    \ , "-fno-print-bind-contents"
+    \ , "-fno-implicit-import-qualified"
+    \ , "-package-name"
+    \ , "-no-auto-link-packages"
+    \ , "-fglasgow-exts"
+    \ , "-fno-glasgow-exts"
+    \ , "-XOverlappingInstances"
+    \ , "-XNoOverlappingInstances"
+    \ , "-XIncoherentInstances"
+    \ , "-XNoIncoherentInstances"
+    \ , "-XUndecidableInstances"
+    \ , "-XNoUndecidableInstances"
+    \ , "-fcontext-stack=Nn"
+    \ , "-XArrows"
+    \ , "-XNoArrows"
+    \ , "-XDisambiguateRecordFields"
+    \ , "-XNoDisambiguateRecordFields"
+    \ , "-XForeignFunctionInterface"
+    \ , "-XNoForeignFunctionInterface"
+    \ , "-XGenerics"
+    \ , "-XNoGenerics"
+    \ , "-XImplicitParams"
+    \ , "-XNoImplicitParams"
+    \ , "-firrefutable-tuples"
+    \ , "-fno-irrefutable-tuples"
+    \ , "-XNoImplicitPrelude"
+    \ , "-XImplicitPrelude"
+    \ , "-XRebindableSyntax"
+    \ , "-XNoRebindableSyntax"
+    \ , "-XNoMonomorphismRestriction"
+    \ , "-XMonomorphismRrestriction"
+    \ , "-XNoNPlusKPatterns"
+    \ , "-XNPlusKPatterns"
+    \ , "-XNoMonoPatBinds"
+    \ , "-XMonoPatBinds"
+    \ , "-XRelaxedPolyRec"
+    \ , "-XNoRelaxedPolyRec"
+    \ , "-XExtendedDefaultRules"
+    \ , "-XNoExtendedDefaultRules"
+    \ , "-XOverloadedStrings"
+    \ , "-XNoOverloadedStrings"
+    \ , "-XGADTs"
+    \ , "-XNoGADTs"
+    \ , "-XTypeFamilies"
+    \ , "-XNoTypeFamilies"
+    \ , "-XScopedTypeVariables"
+    \ , "-XNoScopedTypeVariables"
+    \ , "-XMonoLocalBinds"
+    \ , "-XNoMonoLocalBinds"
+    \ , "-XTemplateHaskell"
+    \ , "-XNoTemplateHaskell"
+    \ , "-XQuasiQuotes"
+    \ , "-XNoQuasiQuotes"
+    \ , "-XBangPatterns"
+    \ , "-XNoBangPatterns"
+    \ , "-XCPP"
+    \ , "-XNoCPP"
+    \ , "-XPatternGuards"
+    \ , "-XNoPatternGuards"
+    \ , "-XViewPatterns"
+    \ , "-XNoViewPatterns"
+    \ , "-XUnicodeSyntax"
+    \ , "-XNoUnicodeSyntax"
+    \ , "-XMagicHash"
+    \ , "-XNoMagicHash"
+    \ , "-XNewQualifiedOperators"
+    \ , "-XNoNewQualifiedOperators"
+    \ , "-XExplicitForALl"
+    \ , "-XNoExplicitForAll"
+    \ , "-XPolymorphicComponents"
+    \ , "-XNoPolymorphicComponents"
+    \ , "-XRank2Types"
+    \ , "-XNoRank2Types"
+    \ , "-XRankNTypes"
+    \ , "-XNoRankNTypes"
+    \ , "-XImpredicativeTypes"
+    \ , "-XNoImpredicativeTypes"
+    \ , "-XExistentialQuantification"
+    \ , "-XNoExistentialQuantification"
+    \ , "-XKindSignatures"
+    \ , "-XNoKindSignatures"
+    \ , "-XEmptyDataDecls"
+    \ , "-XNoEmptyDataDecls"
+    \ , "-XParallelListComp"
+    \ , "-XNoParallelListComp"
+    \ , "-XTransformListComp"
+    \ , "-XNoTransformListComp"
+    \ , "-XUnliftedFFITypes"
+    \ , "-XNoUnliftedFFITypes"
+    \ , "-XLiberalTypeSynonyms"
+    \ , "-XNoLiberalTypeSynonyms"
+    \ , "-XTypeOperators"
+    \ , "-XNoTypeOperators"
+    \ , "-XDoRec"
+    \ , "-XNoDoRec"
+    \ , "-XRecursiveDo"
+    \ , "-XNoRecursiveDo"
+    \ , "-XPArr"
+    \ , "-XNoPArr"
+    \ , "-XRecordWildCards"
+    \ , "-XNoRecordWildCards"
+    \ , "-XNamedFieldPuns"
+    \ , "-XNoNamedFieldPuns"
+    \ , "-XDisambiguateRecordFields"
+    \ , "-XNoDisambiguateRecordFields"
+    \ , "-XUnboxedTuples"
+    \ , "-XNoUnboxedTuples"
+    \ , "-XStandaloneDeriving"
+    \ , "-XNoStandaloneDeriving"
+    \ , "-XDeriveDataTypeable"
+    \ , "-XNoDeriveDataTypeable"
+    \ , "-XGeneralizedNewtypeDeriving"
+    \ , "-XNoGeneralizedNewtypeDeriving"
+    \ , "-XTypeSynonymInstances"
+    \ , "-XNoTypeSynonymInstances"
+    \ , "-XFlexibleContexts"
+    \ , "-XNoFlexibleContexts"
+    \ , "-XFlexibleInstances"
+    \ , "-XNoFlexibleInstances"
+    \ , "-XConstrainedClassMethods"
+    \ , "-XNoConstrainedClassMethods"
+    \ , "-XMultiParamTypeClasses"
+    \ , "-XNoMultiParamTypeClasses"
+    \ , "-XFunctionalDependencies"
+    \ , "-XNoFunctionalDependencies"
+    \ , "-XPackageImports"
+    \ , "-XNoPackageImports"
+    \ , "-W"
+    \ , "-w"
+    \ , "-w"
+    \ , "-Wall"
+    \ , "-w"
+    \ , "-Werror"
+    \ , "-Wwarn"
+    \ , "-Wwarn"
+    \ , "-Werror"
+    \ , "-fwarn-unrecognised-pragmas"
+    \ , "-fno-warn-unrecognised-pragmas"
+    \ , "-fwarn-warnings-deprecations"
+    \ , "-fno-warn-warnings-deprecations"
+    \ , "-fwarn-deprecated-flags"
+    \ , "-fno-warn-deprecated-flags"
+    \ , "-fwarn-duplicate-exports"
+    \ , "-fno-warn-duplicate-exports"
+    \ , "-fwarn-hi-shadowing"
+    \ , "-fno-warn-hi-shadowing"
+    \ , "-fwarn-implicit-prelude"
+    \ , "-fno-warn-implicit-prelude"
+    \ , "-fwarn-incomplete-patterns"
+    \ , "-fno-warn-incomplete-patterns"
+    \ , "-fwarn-incomplete-record-updates"
+    \ , "-fno-warn-incomplete-record-updates"
+    \ , "-fwarn-lazy-unlifted-bindings"
+    \ , "-fno-warn-lazy-unlifted-bindings"
+    \ , "-fwarn-missing-fields"
+    \ , "-fno-warn-missing-fields"
+    \ , "-fwarn-missing-import-lists"
+    \ , "-fnowarn-missing-import-lists"
+    \ , "-fwarn-missing-methods"
+    \ , "-fno-warn-missing-methods"
+    \ , "-fwarn-missing-signatures"
+    \ , "-fno-warn-missing-signatures"
+    \ , "-fwarn-name-shadowing"
+    \ , "-fno-warn-name-shadowing"
+    \ , "-fwarn-orphans"
+    \ , "-fno-warn-orphans"
+    \ , "-fwarn-overlapping-patterns"
+    \ , "-fno-warn-overlapping-patterns"
+    \ , "-fwarn-tabs"
+    \ , "-fno-warn-tabs"
+    \ , "-fwarn-type-defaults"
+    \ , "-fno-warn-type-defaults"
+    \ , "-fwarn-monomorphism-restriction"
+    \ , "-fno-warn-monomorphism-restriction"
+    \ , "-fwarn-unused-binds"
+    \ , "-fno-warn-unused-binds"
+    \ , "-fwarn-unused-imports"
+    \ , "-fno-warn-unused-imports"
+    \ , "-fwarn-unused-matches"
+    \ , "-fno-warn-unused-matches"
+    \ , "-fwarn-unused-do-bind"
+    \ , "-fno-warn-unused-do-bind"
+    \ , "-fwarn-wrong-do-bind"
+    \ , "-fno-warn-wrong-do-bind"
+    \ , "-O"
+    \ , "-O0"
+    \ , "-On"
+    \ , "-O0"
+    \ , "-fcase-merge"
+    \ , "-fno-case-merge"
+    \ , "-fmethod-sharing"
+    \ , "-fno-method-sharing"
+    \ , "-fdo-eta-reduction"
+    \ , "-fno-do-eta-reduction"
+    \ , "-fdo-lambda-eta-expansion"
+    \ , "-fno-do-lambda-eta-expansion"
+    \ , "-fexcess-precision"
+    \ , "-fno-excess-precision"
+    \ , "-fignore-asserts"
+    \ , "-fno-ignore-asserts"
+    \ , "-fignore-interface-pragmas"
+    \ , "-fno-ignore-interface-pragmas"
+    \ , "-fomit-interface-pragmas"
+    \ , "-fno-omit-interface-pragmas"
+    \ , "-fsimplifier-phases"
+    \ , "-fmax-simplifier-iterations"
+    \ , "-fcse"
+    \ , "-fno-cse"
+    \ , "-fspecialise"
+    \ , "-fno-specialise"
+    \ , "-ffull-laziness"
+    \ , "-fno-full-laziness"
+    \ , "-ffloat-in"
+    \ , "-fno-float-in"
+    \ , "-fenable-rewrite-rules"
+    \ , "-fno-enable-rewrite-rules"
+    \ , "-fstrictness"
+    \ , "-fno-strictness"
+    \ , "-fstrictness=before=n"
+    \ , "-fspec-constr"
+    \ , "-fno-spec-constr"
+    \ , "-fliberate-case"
+    \ , "-fno-liberate-case"
+    \ , "-fstatic-argument-transformation"
+    \ , "-fno-static-argument-transformation"
+    \ , "-funbox-strict-fields"
+    \ , "-fno-unbox-strict-fields"
+    \ , "-feager-blackholing"
+    \ , "-auto"
+    \ , "-no-auto"
+    \ , "-auto-all"
+    \ , "-no-auto-all"
+    \ , "-caf-all"
+    \ , "-no-caf-all"
+    \ , "-hpcdir"
+    \ , "-F"
+    \ , "-cpp"
+    \ , "-Dsymbol[=value]"
+    \ , "-Usymbol"
+    \ , "-Usymbol"
+    \ , "-Idir"
+    \ , "-fasm"
+    \ , "-fvia-C"
+    \ , "-fvia-C"
+    \ , "-fasm"
+    \ , "-fllvm"
+    \ , "-fasm"
+    \ , "-fno-code"
+    \ , "-fbyte-code"
+    \ , "-fobject-code"
+    \ , "-shared"
+    \ , "-dynamic"
+    \ , "-framework"
+    \ , "-framework-path"
+    \ , "-llib"
+    \ , "-Ldir"
+    \ , "-main-is"
+    \ , "--mk-dll"
+    \ , "-no-hs-main"
+    \ , "-rtsopts,"
+    \ , "-with-rtsopts=opts"
+    \ , "-no-link"
+    \ , "-split-objs"
+    \ , "-fno-gen-manifest"
+    \ , "-fno-embed-manifest"
+    \ , "-fno-shared-implib"
+    \ , "-dylib-install-name"
+    \ , "-pgmL"
+    \ , "-pgmP"
+    \ , "-pgmc"
+    \ , "-pgmm"
+    \ , "-pgms"
+    \ , "-pgma"
+    \ , "-pgml"
+    \ , "-pgmdll"
+    \ , "-pgmF"
+    \ , "-pgmwindres"
+    \ , "-optL"
+    \ , "-optP"
+    \ , "-optF"
+    \ , "-optc"
+    \ , "-optlo"
+    \ , "-optlc"
+    \ , "-optm"
+    \ , "-opta"
+    \ , "-optl"
+    \ , "-optdll"
+    \ , "-optwindres"
+    \ , "-msse2"
+    \ , "-monly-[432]-regs"
+    \ , "-fext-core"
+    \ , "-dcore-lint"
+    \ , "-ddump-asm"
+    \ , "-ddump-bcos"
+    \ , "-ddump-cmm"
+    \ , "-ddump-cpranal"
+    \ , "-ddump-cse"
+    \ , "-ddump-deriv"
+    \ , "-ddump-ds"
+    \ , "-ddump-flatC"
+    \ , "-ddump-foreign"
+    \ , "-ddump-hpc"
+    \ , "-ddump-inlinings"
+    \ , "-ddump-llvm"
+    \ , "-ddump-occur-anal"
+    \ , "-ddump-opt-cmm"
+    \ , "-ddump-parsed"
+    \ , "-ddump-prep"
+    \ , "-ddump-rn"
+    \ , "-ddump-rules"
+    \ , "-ddump-simpl"
+    \ , "-ddump-simpl-phases"
+    \ , "-ddump-simpl-iterations"
+    \ , "-ddump-spec"
+    \ , "-ddump-splices"
+    \ , "-ddump-stg"
+    \ , "-ddump-stranal"
+    \ , "-ddump-tc"
+    \ , "-ddump-types"
+    \ , "-ddump-worker-wrapper"
+    \ , "-ddump-if-trace"
+    \ , "-ddump-tc-trace"
+    \ , "-ddump-rn-trace"
+    \ , "-ddump-rn-stats"
+    \ , "-ddump-simpl-stats"
+    \ , "-dsource-stats"
+    \ , "-dcmm-lint"
+    \ , "-dstg-lint"
+    \ , "-dstg-stats"
+    \ , "-dverbose-core2core"
+    \ , "-dverbose-stg2stg"
+    \ , "-dshow-passes"
+    \ , "-dfaststring-stats"
+    \ , "-fno-asm-mangling"
+    \ , "-fno-ghci-sandbox"
+    \ , "-fdiagnostics-color="
+    \ , "-fdiagnostics-show-caret"
+    \ , "-fno-diagnostics-show-caret"
+    \ , "-ferror-spans"
+    \ , "-fhide-source-paths"
+    \ , "-fprint-equality-relations"
+    \ , "-fno-print-equality-relations"
+    \ , "-fprint-expanded-synonyms"
+    \ , "-fno-print-expanded-synonyms"
+    \ , "-fprint-explicit-coercions"
+    \ , "-fno-print-explicit-coercions"
+    \ , "-fprint-explicit-foralls"
+    \ , "-fno-print-explicit-foralls"
+    \ , "-fprint-explicit-kinds"
+    \ , "-fno-print-explicit-kinds"
+    \ , "-fprint-explicit-runtime-rep"
+    \ , "-fno-print-explicit-runtime-reps"
+    \ , "-fprint-explicit-runtime-reps"
+    \ , "-fno-print-explicit-runtime-reps"
+    \ , "-fprint-potential-instances"
+    \ , "-fno-print-potential-instances"
+    \ , "-fprint-typechecker-elaboration"
+    \ , "-fno-print-typechecker-elaboration"
+    \ , "-fprint-unicode-syntax"
+    \ , "-fno-print-unicode-syntax"
+    \ , "-fshow-hole-constraints"
+    \ , "-Rghc-timing"
+    \ , "-v"
+    \ , "-v"
+    \ , "-F"
+    \ , "-x"
+    \ , "--exclude-module="
+    \ , "-ddump-mod-cycles"
+    \ , "-dep-makefile"
+    \ , "-dep-suffix"
+    \ , "-dumpdir"
+    \ , "-hcsuf"
+    \ , "-hidir"
+    \ , "-hisuf"
+    \ , "-include-pkg-deps"
+    \ , "-o"
+    \ , "-odir"
+    \ , "-ohi"
+    \ , "-osuf"
+    \ , "-outputdir"
+    \ , "-stubdir"
+    \ , "-keep-hc-file,"
+    \ , "-keep-hi-files"
+    \ , "-no-keep-hi-files"
+    \ , "-keep-llvm-file,"
+    \ , "-keep-o-files"
+    \ , "-no-keep-o-files"
+    \ , "-keep-s-file,"
+    \ , "-keep-tmp-files"
+    \ , "-tmpdir"
+    \ , "-i"
+    \ , "-i[:]*"
+    \ , "-ddump-hi"
+    \ , "-ddump-hi-diffs"
+    \ , "-ddump-minimal-imports"
+    \ , "-fforce-recomp"
+    \ , "-fno-force-recomp"
+    \ , "-fignore-hpc-changes"
+    \ , "-fno-ignore-hpc-changes"
+    \ , "-fignore-optim-changes"
+    \ , "-fno-ignore-optim-changes"
+    \ , "-fbreak-on-error"
+    \ , "-fno-break-on-error"
+    \ , "-fbreak-on-exception"
+    \ , "-fno-break-on-exception"
+    \ , "-fghci-hist-size="
+    \ , "-flocal-ghci-history"
+    \ , "-fno-local-ghci-history"
+    \ , "-fprint-bind-result"
+    \ , "-fno-print-bind-result"
+    \ , "-fshow-loaded-modules"
+    \ , "-ghci-script"
+    \ , "-ignore-dot-ghci"
+    \ , "-interactive-print"
+    \ , "-clear-package-db"
+    \ , "-distrust"
+    \ , "-distrust-all-packages"
+    \ , "-fpackage-trust"
+    \ , "-global-package-db"
+    \ , "-hide-all-packages"
+    \ , "-hide-package"
+    \ , "-ignore-package"
+    \ , "-no-auto-link-packages"
+    \ , "-no-global-package-db"
+    \ , "-no-user-package-db"
+    \ , "-package"
+    \ , "-package-db"
+    \ , "-package-env"
+    \ , "-package-id"
+    \ , "-this-unit-id"
+    \ , "-trust"
+    \ , "-user-package-db"
+    \ , "-fdefer-out-of-scope-variables"
+    \ , "-fno-defer-out-of-scope-variables"
+    \ , "-fdefer-type-errors"
+    \ , "-fno-defer-type-errors"
+    \ , "-fdefer-typed-holes"
+    \ , "-fno-defer-typed-holes"
+    \ , "-fhelpful-errors"
+    \ , "-fno-helpful-errors"
+    \ , "-fmax-pmcheck-iterations="
+    \ , "-fshow-warning-groups"
+    \ , "-fno-show-warning-groups"
+    \ , "-W"
+    \ , "-w"
+    \ , "-w"
+    \ , "-Wall"
+    \ , "-w"
+    \ , "-Wall-missed-specialisations"
+    \ , "-Wno-all-missed-specialisations"
+    \ , "-Wamp"
+    \ , "-Wno-amp"
+    \ , "-Wcompat"
+    \ , "-Wno-compat"
+    \ , "-Wcpp-undef"
+    \ , "-Wdeferred-out-of-scope-variables"
+    \ , "-Wno-deferred-out-of-scope-variables"
+    \ , "-Wdeferred-type-errors"
+    \ , "-Wno-deferred-type-errors"
+    \ , "-Wdeprecated-flags"
+    \ , "-Wno-deprecated-flags"
+    \ , "-Wdeprecations"
+    \ , "-Wno-deprecations"
+    \ , "-Wdodgy-exports"
+    \ , "-Wno-dodgy-exports"
+    \ , "-Wdodgy-foreign-imports"
+    \ , "-Wno-dodgy-foreign-import"
+    \ , "-Wdodgy-imports"
+    \ , "-Wno-dodgy-imports"
+    \ , "-Wduplicate-constraints"
+    \ , "-Wno-duplicate-constraints"
+    \ , "-Wduplicate-exports"
+    \ , "-Wno-duplicate-exports"
+    \ , "-Wempty-enumerations"
+    \ , "-Wno-empty-enumerations"
+    \ , "-Werror"
+    \ , "-Wwarn"
+    \ , "-Weverything"
+    \ , "-Whi-shadowing"
+    \ , "-Wno-hi-shadowing"
+    \ , "-Widentities"
+    \ , "-Wno-identities"
+    \ , "-Wimplicit-prelude"
+    \ , "-Wno-implicit-prelude"
+    \ , "-Wincomplete-patterns"
+    \ , "-Wno-incomplete-patterns"
+    \ , "-Wincomplete-record-updates"
+    \ , "-Wno-incomplete-record-updates"
+    \ , "-Wincomplete-uni-patterns"
+    \ , "-Wno-incomplete-uni-patterns"
+    \ , "-Winline-rule-shadowing"
+    \ , "-Wno-inline-rule-shadowing"
+    \ , "-Wmissed-specialisations"
+    \ , "-Wno-missed-specialisations"
+    \ , "-Wmissing-export-lists"
+    \ , "-fnowarn-missing-export-lists"
+    \ , "-Wmissing-exported-signatures"
+    \ , "-Wno-missing-exported-signatures"
+    \ , "-Wmissing-exported-sigs"
+    \ , "-Wno-missing-exported-sigs"
+    \ , "-Wmissing-fields"
+    \ , "-Wno-missing-fields"
+    \ , "-Wmissing-home-modules"
+    \ , "-Wno-missing-home-modules"
+    \ , "-Wmissing-import-lists"
+    \ , "-fnowarn-missing-import-lists"
+    \ , "-Wmissing-local-signatures"
+    \ , "-Wno-missing-local-signatures"
+    \ , "-Wmissing-local-sigs"
+    \ , "-Wno-missing-local-sigs"
+    \ , "-Wmissing-methods"
+    \ , "-Wno-missing-methods"
+    \ , "-Wmissing-monadfail-instances"
+    \ , "-Wno-missing-monadfail-instances"
+    \ , "-Wmissing-pattern-synonym-signatures"
+    \ , "-Wno-missing-pattern-synonym-signatures"
+    \ , "-Wmissing-signatures"
+    \ , "-Wno-missing-signatures"
+    \ , "-Wmonomorphism-restriction"
+    \ , "-Wno-monomorphism-restriction"
+    \ , "-Wname-shadowing"
+    \ , "-Wno-name-shadowing"
+    \ , "-Wno-compat"
+    \ , "-Wcompat"
+    \ , "-Wnoncanonical-monad-instances"
+    \ , "-Wno-noncanonical-monad-instances"
+    \ , "-Wnoncanonical-monadfail-instances"
+    \ , "-Wno-noncanonical-monadfail-instances"
+    \ , "-Wnoncanonical-monoid-instances"
+    \ , "-Wno-noncanonical-monoid-instances"
+    \ , "-Worphans"
+    \ , "-Wno-orphans"
+    \ , "-Woverflowed-literals"
+    \ , "-Wno-overflowed-literals"
+    \ , "-Woverlapping-patterns"
+    \ , "-Wno-overlapping-patterns"
+    \ , "-Wpartial-fields"
+    \ , "-Wno-partial-fields"
+    \ , "-Wpartial-type-signatures"
+    \ , "-Wno-partial-type-signatures"
+    \ , "-Wredundant-constraints"
+    \ , "-Wno-redundant-constraints"
+    \ , "-Wsafe"
+    \ , "-Wno-safe"
+    \ , "-Wsemigroup"
+    \ , "-Wno-semigroup"
+    \ , "-Wsimplifiable-class-constraints"
+    \ , "-Wno-overlapping-patterns"
+    \ , "-Wtabs"
+    \ , "-Wno-tabs"
+    \ , "-Wtrustworthy-safe"
+    \ , "-Wno-safe"
+    \ , "-Wtype-defaults"
+    \ , "-Wno-type-defaults"
+    \ , "-Wtyped-holes"
+    \ , "-Wno-typed-holes"
+    \ , "-Wunbanged-strict-patterns"
+    \ , "-Wno-unbanged-strict-patterns"
+    \ , "-Wunrecognised-pragmas"
+    \ , "-Wno-unrecognised-pragmas"
+    \ , "-Wunrecognised-warning-flags"
+    \ , "-Wno-unrecognised-warning-flags"
+    \ , "-Wunsafe"
+    \ , "-Wno-unsafe"
+    \ , "-Wunsupported-calling-conventions"
+    \ , "-Wno-unsupported-calling-conventions"
+    \ , "-Wunsupported-llvm-version"
+    \ , "-Wno-monomorphism-restriction"
+    \ , "-Wunticked-promoted-constructors"
+    \ , "-Wno-unticked-promoted-constructors"
+    \ , "-Wunused-binds"
+    \ , "-Wno-unused-binds"
+    \ , "-Wunused-do-bind"
+    \ , "-Wno-unused-do-bind"
+    \ , "-Wunused-foralls"
+    \ , "-Wno-unused-foralls"
+    \ , "-Wunused-imports"
+    \ , "-Wno-unused-imports"
+    \ , "-Wunused-local-binds"
+    \ , "-Wno-unused-local-binds"
+    \ , "-Wunused-matches"
+    \ , "-Wno-unused-matches"
+    \ , "-Wunused-pattern-binds"
+    \ , "-Wno-unused-pattern-binds"
+    \ , "-Wunused-top-binds"
+    \ , "-Wno-unused-top-binds"
+    \ , "-Wunused-type-patterns"
+    \ , "-Wno-unused-type-patterns"
+    \ , "-Wwarn"
+    \ , "-Werror"
+    \ , "-Wwarnings-deprecations"
+    \ , "-Wno-warnings-deprecations"
+    \ , "-Wwrong-do-bind"
+    \ , "-Wno-wrong-do-bind"
+    \ , "-O,"
+    \ , "-O0"
+    \ , "-O0"
+    \ , "-O2"
+    \ , "-O0"
+    \ , "-Odph"
+    \ , "-fcall-arity"
+    \ , "-fno-call-arity"
+    \ , "-fcase-folding"
+    \ , "-fno-case-folding"
+    \ , "-fcase-merge"
+    \ , "-fno-case-merge"
+    \ , "-fcmm-elim-common-blocks"
+    \ , "-fno-cmm-elim-common-blocks"
+    \ , "-fcmm-sink"
+    \ , "-fno-cmm-sink"
+    \ , "-fcpr-anal"
+    \ , "-fno-cpr-anal"
+    \ , "-fcross-module-specialise"
+    \ , "-fno-cross-module-specialise"
+    \ , "-fcse"
+    \ , "-fno-cse"
+    \ , "-fdicts-cheap"
+    \ , "-fno-dicts-cheap"
+    \ , "-fdicts-strict"
+    \ , "-fno-dicts-strict"
+    \ , "-fdmd-tx-dict-sel"
+    \ , "-fno-dmd-tx-dict-sel"
+    \ , "-fdo-eta-reduction"
+    \ , "-fno-do-eta-reduction"
+    \ , "-fdo-lambda-eta-expansion"
+    \ , "-fno-do-lambda-eta-expansion"
+    \ , "-feager-blackholing"
+    \ , "-fenable-rewrite-rules"
+    \ , "-fno-enable-rewrite-rules"
+    \ , "-fexcess-precision"
+    \ , "-fno-excess-precision"
+    \ , "-fexitification"
+    \ , "-fno-exitification"
+    \ , "-fexpose-all-unfoldings"
+    \ , "-fno-expose-all-unfoldings"
+    \ , "-ffloat-in"
+    \ , "-fno-float-in"
+    \ , "-ffull-laziness"
+    \ , "-fno-full-laziness"
+    \ , "-ffun-to-thunk"
+    \ , "-fno-fun-to-thunk"
+    \ , "-fignore-asserts"
+    \ , "-fno-ignore-asserts"
+    \ , "-fignore-interface-pragmas"
+    \ , "-fno-ignore-interface-pragmas"
+    \ , "-flate-dmd-anal"
+    \ , "-fno-late-dmd-anal"
+    \ , "-fliberate-case"
+    \ , "-fno-liberate-case"
+    \ , "-fliberate-case-threshold="
+    \ , "-fno-liberate-case-threshold"
+    \ , "-fllvm-pass-vectors-in-regs"
+    \ , "-fno-llvm-pass-vectors-in-regs"
+    \ , "-floopification"
+    \ , "-fno-loopification"
+    \ , "-fmax-inline-alloc-size="
+    \ , "-fmax-inline-memcpy-insns="
+    \ , "-fmax-inline-memset-insns="
+    \ , "-fmax-relevant-binds="
+    \ , "-fno-max-relevant-bindings"
+    \ , "-fmax-simplifier-iterations="
+    \ , "-fmax-uncovered-patterns="
+    \ , "-fmax-valid-substitutions="
+    \ , "-fno-max-valid-substitutions"
+    \ , "-fmax-worker-args="
+    \ , "-fno-opt-coercion"
+    \ , "-fno-pre-inlining"
+    \ , "-fno-state-hack"
+    \ , "-fomit-interface-pragmas"
+    \ , "-fno-omit-interface-pragmas"
+    \ , "-fomit-yields"
+    \ , "-fno-omit-yields"
+    \ , "-foptimal-applicative-do"
+    \ , "-fno-optimal-applicative-do"
+    \ , "-fpedantic-bottoms"
+    \ , "-fno-pedantic-bottoms"
+    \ , "-fregs-graph"
+    \ , "-fno-regs-graph"
+    \ , "-fregs-iterative"
+    \ , "-fno-regs-iterative"
+    \ , "-fsimpl-tick-factor="
+    \ , "-fsimplifier-phases="
+    \ , "-fsolve-constant-dicts"
+    \ , "-fno-solve-constant-dicts"
+    \ , "-fspec-constr"
+    \ , "-fno-spec-constr"
+    \ , "-fspec-constr-count="
+    \ , "-fno-spec-constr-count"
+    \ , "-fspec-constr-keen"
+    \ , "-fno-spec-constr-keen"
+    \ , "-fspec-constr-threshold="
+    \ , "-fno-spec-constr-threshold"
+    \ , "-fspecialise"
+    \ , "-fno-specialise"
+    \ , "-fspecialise-aggressively"
+    \ , "-fno-specialise-aggressively"
+    \ , "-fstatic-argument-transformation"
+    \ , "-fno-static-argument-transformation"
+    \ , "-fstg-cse"
+    \ , "-fno-stg-cse"
+    \ , "-fstrictness"
+    \ , "-fno-strictness"
+    \ , "-fstrictness-before="
+    \ , "-funbox-small-strict-fields"
+    \ , "-fno-unbox-small-strict-fields"
+    \ , "-funbox-strict-fields"
+    \ , "-fno-unbox-strict-fields"
+    \ , "-funfolding-creation-threshold="
+    \ , "-funfolding-dict-discount="
+    \ , "-funfolding-fun-discount="
+    \ , "-funfolding-keeness-factor="
+    \ , "-funfolding-use-threshold="
+    \ , "-fvectorisation-avoidance"
+    \ , "-fno-vectorisation-avoidance"
+    \ , "-fvectorise"
+    \ , "-fno-vectorise"
+    \ , "-fno-prof-auto"
+    \ , "-fprof-auto"
+    \ , "-fno-prof-cafs"
+    \ , "-fprof-cafs"
+    \ , "-fno-prof-count-entries"
+    \ , "-fprof-count-entries"
+    \ , "-fprof-auto"
+    \ , "-fno-prof-auto"
+    \ , "-fprof-auto-calls"
+    \ , "-fno-prof-auto-calls"
+    \ , "-fprof-auto-exported"
+    \ , "-fno-prof-auto"
+    \ , "-fprof-auto-top"
+    \ , "-fno-prof-auto"
+    \ , "-fprof-cafs"
+    \ , "-fno-prof-cafs"
+    \ , "-prof"
+    \ , "-ticky"
+    \ , "-fhpc"
+    \ , "-cpp"
+    \ , "-D[=]"
+    \ , "-U"
+    \ , "-I"
+    \ , "-U"
+    \ , "-dynamic"
+    \ , "-too"
+    \ , "-fasm"
+    \ , "-fllvm"
+    \ , "-fbyte-code"
+    \ , "-fllvm"
+    \ , "-fasm"
+    \ , "-fno-code"
+    \ , "-fobject-code"
+    \ , "-fPIC"
+    \ , "-fPIE"
+    \ , "-fwrite-interface"
+    \ , "-debug"
+    \ , "-dylib-install-name"
+    \ , "-dynamic"
+    \ , "-dynload"
+    \ , "-eventlog"
+    \ , "-fno-embed-manifest"
+    \ , "-fno-gen-manifest"
+    \ , "-fno-shared-implib"
+    \ , "-framework"
+    \ , "-framework-path"
+    \ , "-fwhole-archive-hs-libs"
+    \ , "-L"
+    \ , "-l"
+    \ , "-main-is"
+    \ , "-no-hs-main"
+    \ , "-no-rtsopts-suggestions"
+    \ , "-package"
+    \ , "-pie"
+    \ , "-rdynamic"
+    \ , "-rtsopts[=]"
+    \ , "-shared"
+    \ , "-split-objs"
+    \ , "-split-sections"
+    \ , "-static"
+    \ , "-staticlib"
+    \ , "-threaded"
+    \ , "-with-rtsopts="
+    \ , "-fplugin-opt=:"
+    \ , "-fplugin="
+    \ , "-hide-all-plugin-packages"
+    \ , "-plugin-package"
+    \ , "-plugin-package-id"
+    \ , "-pgma"
+    \ , "-pgmc"
+    \ , "-pgmdll"
+    \ , "-pgmF"
+    \ , "-pgmi"
+    \ , "-pgmL"
+    \ , "-pgml"
+    \ , "-pgmlc"
+    \ , "-pgmlibtool"
+    \ , "-pgmlo"
+    \ , "-pgmP"
+    \ , "-pgms"
+    \ , "-pgmwindres"
+    \ , "-opta"
+    \ , "-optc"
+    \ , "-optdll"
+    \ , "-optF"
+    \ , "-opti"
+    \ , "-optL"
+    \ , "-optl"
+    \ , "-optlc"
+    \ , "-optlo"
+    \ , "-optP"
+    \ , "-optwindres"
+    \ , "-msse2"
+    \ , "-msse4.2"
+    \ , "-dcmm-lint"
+    \ , "-dcore-lint"
+    \ , "-ddump-asm"
+    \ , "-ddump-asm-expanded"
+    \ , "-ddump-asm-liveness"
+    \ , "-ddump-asm-native"
+    \ , "-ddump-asm-regalloc"
+    \ , "-ddump-asm-regalloc-stages"
+    \ , "-ddump-asm-stats"
+    \ , "-ddump-bcos"
+    \ , "-ddump-cmm"
+    \ , "-ddump-cmm-caf"
+    \ , "-ddump-cmm-cbe"
+    \ , "-ddump-cmm-cfg"
+    \ , "-ddump-cmm-cps"
+    \ , "-ddump-cmm-from-stg"
+    \ , "-ddump-cmm-info"
+    \ , "-ddump-cmm-proc"
+    \ , "-ddump-cmm-procmap"
+    \ , "-ddump-cmm-raw"
+    \ , "-ddump-cmm-sink"
+    \ , "-ddump-cmm-sp"
+    \ , "-ddump-cmm-split"
+    \ , "-ddump-cmm-switch"
+    \ , "-ddump-cmm-verbose"
+    \ , "-ddump-core-stats"
+    \ , "-ddump-cse"
+    \ , "-ddump-deriv"
+    \ , "-ddump-ds"
+    \ , "-ddump-ec-trace"
+    \ , "-ddump-foreign"
+    \ , "-ddump-if-trace"
+    \ , "-ddump-inlinings"
+    \ , "-ddump-json"
+    \ , "-ddump-llvm"
+    \ , "-ddump-occur-anal"
+    \ , "-ddump-opt-cmm"
+    \ , "-ddump-parsed"
+    \ , "-ddump-parsed-ast"
+    \ , "-ddump-prep"
+    \ , "-ddump-rn"
+    \ , "-ddump-rn-ast"
+    \ , "-ddump-rn-stats"
+    \ , "-ddump-rn-trace"
+    \ , "-ddump-rule-firings"
+    \ , "-ddump-rule-rewrites"
+    \ , "-ddump-rules"
+    \ , "-ddump-simpl"
+    \ , "-ddump-simpl-iterations"
+    \ , "-ddump-simpl-stats"
+    \ , "-ddump-spec"
+    \ , "-ddump-splices"
+    \ , "-ddump-stg"
+    \ , "-ddump-str-signatures"
+    \ , "-ddump-stranal"
+    \ , "-ddump-tc"
+    \ , "-ddump-tc-ast"
+    \ , "-ddump-tc-trace"
+    \ , "-ddump-timings"
+    \ , "-ddump-to-file"
+    \ , "-ddump-types"
+    \ , "-ddump-vect"
+    \ , "-ddump-vt-trace"
+    \ , "-ddump-worker-wrapper"
+    \ , "-dfaststring-stats"
+    \ , "-dinitial-unique="
+    \ , "-dno-debug-output"
+    \ , "-ddebug-output"
+    \ , "-dppr-case-as-let"
+    \ , "-dppr-cols="
+    \ , "-dppr-debug"
+    \ , "-dppr-user-length"
+    \ , "-dshow-passes"
+    \ , "-dstg-lint"
+    \ , "-dsuppress-all"
+    \ , "-dsuppress-coercions"
+    \ , "-dsuppress-idinfo"
+    \ , "-dsuppress-module-prefixes"
+    \ , "-dsuppress-stg-free-vars"
+    \ , "-dsuppress-ticks"
+    \ , "-dsuppress-type-applications"
+    \ , "-dsuppress-type-signatures"
+    \ , "-dsuppress-unfoldings"
+    \ , "-dsuppress-uniques"
+    \ , "-dsuppress-var-kinds"
+    \ , "-dth-dec-file="
+    \ , "-dunique-increment="
+    \ , "-dverbose-core2core"
+    \ , "-dverbose-stg2stg"
+    \ , "-falignment-sanitisation"
+    \ , "-fcatch-bottoms"
+    \ , "-fllvm-fill-undef-with-garbage"
+    \ , "-g,"
+    \ , "-fexternal-interpreter"
+    \ , "-fglasgow-exts"
+    \ , "-fno-glasgow-exts"
+    \ , "-ghcversion-file"
+    \ , "-H"
+    \ , "-j[]"
+    \ ]
+
+let s:commonModules =
+    \ [ "Distribution.Backpack"
+    \ , "Distribution.Backpack.ComponentsGraph"
+    \ , "Distribution.Backpack.Configure"
+    \ , "Distribution.Backpack.ConfiguredComponent"
+    \ , "Distribution.Backpack.DescribeUnitId"
+    \ , "Distribution.Backpack.FullUnitId"
+    \ , "Distribution.Backpack.LinkedComponent"
+    \ , "Distribution.Backpack.ModSubst"
+    \ , "Distribution.Backpack.ModuleShape"
+    \ , "Distribution.Backpack.PreModuleShape"
+    \ , "Distribution.CabalSpecVersion"
+    \ , "Distribution.Compat.Binary"
+    \ , "Distribution.Compat.CharParsing"
+    \ , "Distribution.Compat.CreatePipe"
+    \ , "Distribution.Compat.DList"
+    \ , "Distribution.Compat.Directory"
+    \ , "Distribution.Compat.Environment"
+    \ , "Distribution.Compat.Exception"
+    \ , "Distribution.Compat.Graph"
+    \ , "Distribution.Compat.Internal.TempFile"
+    \ , "Distribution.Compat.Lens"
+    \ , "Distribution.Compat.Map.Strict"
+    \ , "Distribution.Compat.Newtype"
+    \ , "Distribution.Compat.Parsing"
+    \ , "Distribution.Compat.Prelude.Internal"
+    \ , "Distribution.Compat.ReadP"
+    \ , "Distribution.Compat.Semigroup"
+    \ , "Distribution.Compat.Stack"
+    \ , "Distribution.Compat.Time"
+    \ , "Distribution.Compiler"
+    \ , "Distribution.FieldGrammar"
+    \ , "Distribution.FieldGrammar.Class"
+    \ , "Distribution.FieldGrammar.FieldDescrs"
+    \ , "Distribution.FieldGrammar.Parsec"
+    \ , "Distribution.FieldGrammar.Pretty"
+    \ , "Distribution.InstalledPackageInfo"
+    \ , "Distribution.License"
+    \ , "Distribution.Make"
+    \ , "Distribution.ModuleName"
+    \ , "Distribution.Package"
+    \ , "Distribution.PackageDescription"
+    \ , "Distribution.PackageDescription.Check"
+    \ , "Distribution.PackageDescription.Configuration"
+    \ , "Distribution.PackageDescription.FieldGrammar"
+    \ , "Distribution.PackageDescription.Parsec"
+    \ , "Distribution.PackageDescription.PrettyPrint"
+    \ , "Distribution.PackageDescription.Quirks"
+    \ , "Distribution.PackageDescription.Utils"
+    \ , "Distribution.ParseUtils"
+    \ , "Distribution.Parsec.Class"
+    \ , "Distribution.Parsec.Common"
+    \ , "Distribution.Parsec.ConfVar"
+    \ , "Distribution.Parsec.Field"
+    \ , "Distribution.Parsec.FieldLineStream"
+    \ , "Distribution.Parsec.Lexer"
+    \ , "Distribution.Parsec.LexerMonad"
+    \ , "Distribution.Parsec.Newtypes"
+    \ , "Distribution.Parsec.ParseResult"
+    \ , "Distribution.Parsec.Parser"
+    \ , "Distribution.Pretty"
+    \ , "Distribution.PrettyUtils"
+    \ , "Distribution.ReadE"
+    \ , "Distribution.SPDX"
+    \ , "Distribution.SPDX.License"
+    \ , "Distribution.SPDX.LicenseExceptionId"
+    \ , "Distribution.SPDX.LicenseExpression"
+    \ , "Distribution.SPDX.LicenseId"
+    \ , "Distribution.SPDX.LicenseReference"
+    \ , "Distribution.Simple"
+    \ , "Distribution.Simple.Bench"
+    \ , "Distribution.Simple.Build"
+    \ , "Distribution.Simple.Build.Macros"
+    \ , "Distribution.Simple.Build.PathsModule"
+    \ , "Distribution.Simple.BuildPaths"
+    \ , "Distribution.Simple.BuildTarget"
+    \ , "Distribution.Simple.BuildToolDepends"
+    \ , "Distribution.Simple.CCompiler"
+    \ , "Distribution.Simple.Command"
+    \ , "Distribution.Simple.Compiler"
+    \ , "Distribution.Simple.Configure"
+    \ , "Distribution.Simple.Doctest"
+    \ , "Distribution.Simple.GHC"
+    \ , "Distribution.Simple.GHCJS"
+    \ , "Distribution.Simple.Haddock"
+    \ , "Distribution.Simple.HaskellSuite"
+    \ , "Distribution.Simple.Hpc"
+    \ , "Distribution.Simple.Install"
+    \ , "Distribution.Simple.InstallDirs"
+    \ , "Distribution.Simple.JHC"
+    \ , "Distribution.Simple.LHC"
+    \ , "Distribution.Simple.LocalBuildInfo"
+    \ , "Distribution.Simple.PackageIndex"
+    \ , "Distribution.Simple.PreProcess"
+    \ , "Distribution.Simple.PreProcess.Unlit"
+    \ , "Distribution.Simple.Program"
+    \ , "Distribution.Simple.Program.Ar"
+    \ , "Distribution.Simple.Program.Builtin"
+    \ , "Distribution.Simple.Program.Db"
+    \ , "Distribution.Simple.Program.Find"
+    \ , "Distribution.Simple.Program.GHC"
+    \ , "Distribution.Simple.Program.HcPkg"
+    \ , "Distribution.Simple.Program.Hpc"
+    \ , "Distribution.Simple.Program.Internal"
+    \ , "Distribution.Simple.Program.Ld"
+    \ , "Distribution.Simple.Program.ResponseFile"
+    \ , "Distribution.Simple.Program.Run"
+    \ , "Distribution.Simple.Program.Script"
+    \ , "Distribution.Simple.Program.Strip"
+    \ , "Distribution.Simple.Program.Types"
+    \ , "Distribution.Simple.Register"
+    \ , "Distribution.Simple.Setup"
+    \ , "Distribution.Simple.SrcDist"
+    \ , "Distribution.Simple.Test"
+    \ , "Distribution.Simple.Test.ExeV10"
+    \ , "Distribution.Simple.Test.LibV09"
+    \ , "Distribution.Simple.Test.Log"
+    \ , "Distribution.Simple.UHC"
+    \ , "Distribution.Simple.UserHooks"
+    \ , "Distribution.Simple.Utils"
+    \ , "Distribution.System"
+    \ , "Distribution.TestSuite"
+    \ , "Distribution.Text"
+    \ , "Distribution.Types.AbiDependency"
+    \ , "Distribution.Types.AbiHash"
+    \ , "Distribution.Types.AnnotatedId"
+    \ , "Distribution.Types.Benchmark"
+    \ , "Distribution.Types.Benchmark.Lens"
+    \ , "Distribution.Types.BenchmarkInterface"
+    \ , "Distribution.Types.BenchmarkType"
+    \ , "Distribution.Types.BuildInfo"
+    \ , "Distribution.Types.BuildInfo.Lens"
+    \ , "Distribution.Types.BuildType"
+    \ , "Distribution.Types.Component"
+    \ , "Distribution.Types.ComponentId"
+    \ , "Distribution.Types.ComponentInclude"
+    \ , "Distribution.Types.ComponentLocalBuildInfo"
+    \ , "Distribution.Types.ComponentName"
+    \ , "Distribution.Types.ComponentRequestedSpec"
+    \ , "Distribution.Types.CondTree"
+    \ , "Distribution.Types.Condition"
+    \ , "Distribution.Types.Dependency"
+    \ , "Distribution.Types.DependencyMap"
+    \ , "Distribution.Types.ExeDependency"
+    \ , "Distribution.Types.Executable"
+    \ , "Distribution.Types.Executable.Lens"
+    \ , "Distribution.Types.ExecutableScope"
+    \ , "Distribution.Types.ExposedModule"
+    \ , "Distribution.Types.ForeignLib"
+    \ , "Distribution.Types.ForeignLib.Lens"
+    \ , "Distribution.Types.ForeignLibOption"
+    \ , "Distribution.Types.ForeignLibType"
+    \ , "Distribution.Types.GenericPackageDescription"
+    \ , "Distribution.Types.GenericPackageDescription.Lens"
+    \ , "Distribution.Types.HookedBuildInfo"
+    \ , "Distribution.Types.IncludeRenaming"
+    \ , "Distribution.Types.InstalledPackageInfo"
+    \ , "Distribution.Types.InstalledPackageInfo.FieldGrammar"
+    \ , "Distribution.Types.InstalledPackageInfo.Lens"
+    \ , "Distribution.Types.LegacyExeDependency"
+    \ , "Distribution.Types.Lens"
+    \ , "Distribution.Types.Library"
+    \ , "Distribution.Types.Library.Lens"
+    \ , "Distribution.Types.LocalBuildInfo"
+    \ , "Distribution.Types.Mixin"
+    \ , "Distribution.Types.Module"
+    \ , "Distribution.Types.ModuleReexport"
+    \ , "Distribution.Types.ModuleRenaming"
+    \ , "Distribution.Types.MungedPackageId"
+    \ , "Distribution.Types.MungedPackageName"
+    \ , "Distribution.Types.PackageDescription"
+    \ , "Distribution.Types.PackageDescription.Lens"
+    \ , "Distribution.Types.PackageId"
+    \ , "Distribution.Types.PackageId.Lens"
+    \ , "Distribution.Types.PackageName"
+    \ , "Distribution.Types.PkgconfigDependency"
+    \ , "Distribution.Types.PkgconfigName"
+    \ , "Distribution.Types.SetupBuildInfo"
+    \ , "Distribution.Types.SetupBuildInfo.Lens"
+    \ , "Distribution.Types.SourceRepo"
+    \ , "Distribution.Types.SourceRepo.Lens"
+    \ , "Distribution.Types.TargetInfo"
+    \ , "Distribution.Types.TestSuite"
+    \ , "Distribution.Types.TestSuite.Lens"
+    \ , "Distribution.Types.TestSuiteInterface"
+    \ , "Distribution.Types.TestType"
+    \ , "Distribution.Types.UnitId"
+    \ , "Distribution.Types.UnqualComponentName"
+    \ , "Distribution.Types.Version"
+    \ , "Distribution.Types.VersionInterval"
+    \ , "Distribution.Types.VersionRange"
+    \ , "Distribution.Utils.Generic"
+    \ , "Distribution.Utils.IOData"
+    \ , "Distribution.Utils.LogProgress"
+    \ , "Distribution.Utils.MapAccum"
+    \ , "Distribution.Utils.NubList"
+    \ , "Distribution.Utils.Progress"
+    \ , "Distribution.Utils.ShortText"
+    \ , "Distribution.Verbosity"
+    \ , "Distribution.Version"
+    \ , "Language.Haskell.Extension"
+    \ , "Graphics.GLU"
+    \ , "Graphics.GLU.Callbacks"
+    \ , "Graphics.GLU.Functions"
+    \ , "Graphics.GLU.Tokens"
+    \ , "Graphics.GLU.Types"
+    \ , "Graphics.UI.GLUT"
+    \ , "Graphics.UI.GLUT.Begin"
+    \ , "Graphics.UI.GLUT.Callbacks"
+    \ , "Graphics.UI.GLUT.Callbacks.Global"
+    \ , "Graphics.UI.GLUT.Callbacks.Window"
+    \ , "Graphics.UI.GLUT.Colormap"
+    \ , "Graphics.UI.GLUT.Debugging"
+    \ , "Graphics.UI.GLUT.DeviceControl"
+    \ , "Graphics.UI.GLUT.Fonts"
+    \ , "Graphics.UI.GLUT.GameMode"
+    \ , "Graphics.UI.GLUT.Initialization"
+    \ , "Graphics.UI.GLUT.Menu"
+    \ , "Graphics.UI.GLUT.Objects"
+    \ , "Graphics.UI.GLUT.Overlay"
+    \ , "Graphics.UI.GLUT.State"
+    \ , "Graphics.UI.GLUT.Window"
+    \ , "Network.Browser"
+    \ , "Network.BufferType"
+    \ , "Network.HTTP"
+    \ , "Network.HTTP.Auth"
+    \ , "Network.HTTP.Base"
+    \ , "Network.HTTP.Cookie"
+    \ , "Network.HTTP.HandleStream"
+    \ , "Network.HTTP.Headers"
+    \ , "Network.HTTP.Proxy"
+    \ , "Network.HTTP.Stream"
+    \ , "Network.Stream"
+    \ , "Network.StreamDebugger"
+    \ , "Network.StreamSocket"
+    \ , "Network.TCP"
+    \ , "Test.HUnit"
+    \ , "Test.HUnit.Base"
+    \ , "Test.HUnit.Lang"
+    \ , "Test.HUnit.Terminal"
+    \ , "Test.HUnit.Text"
+    \ , "Data.ObjectName"
+    \ , "Graphics.Rendering.OpenGL"
+    \ , "Graphics.Rendering.OpenGL.GL"
+    \ , "Graphics.Rendering.OpenGL.GL.Antialiasing"
+    \ , "Graphics.Rendering.OpenGL.GL.BeginEnd"
+    \ , "Graphics.Rendering.OpenGL.GL.Bitmaps"
+    \ , "Graphics.Rendering.OpenGL.GL.BufferObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.Clipping"
+    \ , "Graphics.Rendering.OpenGL.GL.ColorSum"
+    \ , "Graphics.Rendering.OpenGL.GL.Colors"
+    \ , "Graphics.Rendering.OpenGL.GL.ConditionalRendering"
+    \ , "Graphics.Rendering.OpenGL.GL.CoordTrans"
+    \ , "Graphics.Rendering.OpenGL.GL.DebugOutput"
+    \ , "Graphics.Rendering.OpenGL.GL.DisplayLists"
+    \ , "Graphics.Rendering.OpenGL.GL.Evaluators"
+    \ , "Graphics.Rendering.OpenGL.GL.Feedback"
+    \ , "Graphics.Rendering.OpenGL.GL.FlushFinish"
+    \ , "Graphics.Rendering.OpenGL.GL.Fog"
+    \ , "Graphics.Rendering.OpenGL.GL.Framebuffer"
+    \ , "Graphics.Rendering.OpenGL.GL.FramebufferObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.FramebufferObjects.Attachments"
+    \ , "Graphics.Rendering.OpenGL.GL.FramebufferObjects.FramebufferObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.FramebufferObjects.Queries"
+    \ , "Graphics.Rendering.OpenGL.GL.FramebufferObjects.RenderbufferObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.Hints"
+    \ , "Graphics.Rendering.OpenGL.GL.LineSegments"
+    \ , "Graphics.Rendering.OpenGL.GL.PerFragment"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles.ColorTable"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles.Convolution"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles.Histogram"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles.Minmax"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles.PixelMap"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles.PixelStorage"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles.PixelTransfer"
+    \ , "Graphics.Rendering.OpenGL.GL.PixelRectangles.Rasterization"
+    \ , "Graphics.Rendering.OpenGL.GL.PixellikeObject"
+    \ , "Graphics.Rendering.OpenGL.GL.Points"
+    \ , "Graphics.Rendering.OpenGL.GL.Polygons"
+    \ , "Graphics.Rendering.OpenGL.GL.PrimitiveMode"
+    \ , "Graphics.Rendering.OpenGL.GL.QueryObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.RasterPos"
+    \ , "Graphics.Rendering.OpenGL.GL.ReadCopyPixels"
+    \ , "Graphics.Rendering.OpenGL.GL.Rectangles"
+    \ , "Graphics.Rendering.OpenGL.GL.SavingState"
+    \ , "Graphics.Rendering.OpenGL.GL.Selection"
+    \ , "Graphics.Rendering.OpenGL.GL.Shaders"
+    \ , "Graphics.Rendering.OpenGL.GL.Shaders.Attribs"
+    \ , "Graphics.Rendering.OpenGL.GL.Shaders.Limits"
+    \ , "Graphics.Rendering.OpenGL.GL.Shaders.ProgramBinaries"
+    \ , "Graphics.Rendering.OpenGL.GL.Shaders.ProgramObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.Shaders.ShaderBinaries"
+    \ , "Graphics.Rendering.OpenGL.GL.Shaders.ShaderObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.Shaders.Uniform"
+    \ , "Graphics.Rendering.OpenGL.GL.StringQueries"
+    \ , "Graphics.Rendering.OpenGL.GL.SyncObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.Tensor"
+    \ , "Graphics.Rendering.OpenGL.GL.Texturing"
+    \ , "Graphics.Rendering.OpenGL.GL.Texturing.Application"
+    \ , "Graphics.Rendering.OpenGL.GL.Texturing.Environments"
+    \ , "Graphics.Rendering.OpenGL.GL.Texturing.Objects"
+    \ , "Graphics.Rendering.OpenGL.GL.Texturing.Parameters"
+    \ , "Graphics.Rendering.OpenGL.GL.Texturing.Queries"
+    \ , "Graphics.Rendering.OpenGL.GL.Texturing.Specification"
+    \ , "Graphics.Rendering.OpenGL.GL.TransformFeedback"
+    \ , "Graphics.Rendering.OpenGL.GL.VertexArrayObjects"
+    \ , "Graphics.Rendering.OpenGL.GL.VertexArrays"
+    \ , "Graphics.Rendering.OpenGL.GL.VertexSpec"
+    \ , "Graphics.Rendering.OpenGL.GLU"
+    \ , "Graphics.Rendering.OpenGL.GLU.Errors"
+    \ , "Graphics.Rendering.OpenGL.GLU.Initialization"
+    \ , "Graphics.Rendering.OpenGL.GLU.Matrix"
+    \ , "Graphics.Rendering.OpenGL.GLU.Mipmapping"
+    \ , "Graphics.Rendering.OpenGL.GLU.NURBS"
+    \ , "Graphics.Rendering.OpenGL.GLU.Quadrics"
+    \ , "Graphics.Rendering.OpenGL.GLU.Tessellation"
+    \ , "Graphics.GL"
+    \ , "Graphics.GL.AMD"
+    \ , "Graphics.GL.AMD.BlendMinmaxFactor"
+    \ , "Graphics.GL.AMD.DebugOutput"
+    \ , "Graphics.GL.AMD.DepthClampSeparate"
+    \ , "Graphics.GL.AMD.DrawBuffersBlend"
+    \ , "Graphics.GL.AMD.FramebufferMultisampleAdvanced"
+    \ , "Graphics.GL.AMD.FramebufferSamplePositions"
+    \ , "Graphics.GL.AMD.GPUShaderHalfFloat"
+    \ , "Graphics.GL.AMD.GPUShaderInt64"
+    \ , "Graphics.GL.AMD.InterleavedElements"
+    \ , "Graphics.GL.AMD.MultiDrawIndirect"
+    \ , "Graphics.GL.AMD.NameGenDelete"
+    \ , "Graphics.GL.AMD.OcclusionQueryEvent"
+    \ , "Graphics.GL.AMD.PerformanceMonitor"
+    \ , "Graphics.GL.AMD.PinnedMemory"
+    \ , "Graphics.GL.AMD.QueryBufferObject"
+    \ , "Graphics.GL.AMD.SamplePositions"
+    \ , "Graphics.GL.AMD.SeamlessCubemapPerTexture"
+    \ , "Graphics.GL.AMD.SparseTexture"
+    \ , "Graphics.GL.AMD.StencilOperationExtended"
+    \ , "Graphics.GL.AMD.TransformFeedback4"
+    \ , "Graphics.GL.AMD.VertexShaderTessellator"
+    \ , "Graphics.GL.APPLE"
+    \ , "Graphics.GL.APPLE.AuxDepthStencil"
+    \ , "Graphics.GL.APPLE.ClientStorage"
+    \ , "Graphics.GL.APPLE.ElementArray"
+    \ , "Graphics.GL.APPLE.Fence"
+    \ , "Graphics.GL.APPLE.FloatPixels"
+    \ , "Graphics.GL.APPLE.FlushBufferRange"
+    \ , "Graphics.GL.APPLE.ObjectPurgeable"
+    \ , "Graphics.GL.APPLE.RGB422"
+    \ , "Graphics.GL.APPLE.RowBytes"
+    \ , "Graphics.GL.APPLE.SpecularVector"
+    \ , "Graphics.GL.APPLE.TextureRange"
+    \ , "Graphics.GL.APPLE.TransformHint"
+    \ , "Graphics.GL.APPLE.VertexArrayObject"
+    \ , "Graphics.GL.APPLE.VertexArrayRange"
+    \ , "Graphics.GL.APPLE.VertexProgramEvaluators"
+    \ , "Graphics.GL.APPLE.YCbCr422"
+    \ , "Graphics.GL.ARB"
+    \ , "Graphics.GL.ARB.BaseInstance"
+    \ , "Graphics.GL.ARB.BindlessTexture"
+    \ , "Graphics.GL.ARB.BlendFuncExtended"
+    \ , "Graphics.GL.ARB.BufferStorage"
+    \ , "Graphics.GL.ARB.CLEvent"
+    \ , "Graphics.GL.ARB.ClearBufferObject"
+    \ , "Graphics.GL.ARB.ClearTexture"
+    \ , "Graphics.GL.ARB.ClipControl"
+    \ , "Graphics.GL.ARB.ColorBufferFloat"
+    \ , "Graphics.GL.ARB.CompressedTexturePixelStorage"
+    \ , "Graphics.GL.ARB.ComputeShader"
+    \ , "Graphics.GL.ARB.ComputeVariableGroupSize"
+    \ , "Graphics.GL.ARB.ConditionalRenderInverted"
+    \ , "Graphics.GL.ARB.CopyBuffer"
+    \ , "Graphics.GL.ARB.CopyImage"
+    \ , "Graphics.GL.ARB.CullDistance"
+    \ , "Graphics.GL.ARB.DebugOutput"
+    \ , "Graphics.GL.ARB.DepthBufferFloat"
+    \ , "Graphics.GL.ARB.DepthClamp"
+    \ , "Graphics.GL.ARB.DepthTexture"
+    \ , "Graphics.GL.ARB.DirectStateAccess"
+    \ , "Graphics.GL.ARB.DrawBuffers"
+    \ , "Graphics.GL.ARB.DrawBuffersBlend"
+    \ , "Graphics.GL.ARB.DrawElementsBaseVertex"
+    \ , "Graphics.GL.ARB.DrawIndirect"
+    \ , "Graphics.GL.ARB.DrawInstanced"
+    \ , "Graphics.GL.ARB.ES2Compatibility"
+    \ , "Graphics.GL.ARB.ES31Compatibility"
+    \ , "Graphics.GL.ARB.ES32Compatibility"
+    \ , "Graphics.GL.ARB.ES3Compatibility"
+    \ , "Graphics.GL.ARB.EnhancedLayouts"
+    \ , "Graphics.GL.ARB.ExplicitUniformLocation"
+    \ , "Graphics.GL.ARB.FragmentProgram"
+    \ , "Graphics.GL.ARB.FragmentShader"
+    \ , "Graphics.GL.ARB.FramebufferNoAttachments"
+    \ , "Graphics.GL.ARB.FramebufferObjectCompatibility"
+    \ , "Graphics.GL.ARB.FramebufferObjectCore"
+    \ , "Graphics.GL.ARB.FramebufferSRGB"
+    \ , "Graphics.GL.ARB.GPUShader5"
+    \ , "Graphics.GL.ARB.GPUShaderFP64"
+    \ , "Graphics.GL.ARB.GPUShaderInt64"
+    \ , "Graphics.GL.ARB.GeometryShader4"
+    \ , "Graphics.GL.ARB.GetProgramBinary"
+    \ , "Graphics.GL.ARB.GetTextureSubImage"
+    \ , "Graphics.GL.ARB.GlSpirv"
+    \ , "Graphics.GL.ARB.HalfFloatPixel"
+    \ , "Graphics.GL.ARB.HalfFloatVertex"
+    \ , "Graphics.GL.ARB.ImagingCompatibility"
+    \ , "Graphics.GL.ARB.ImagingCore"
+    \ , "Graphics.GL.ARB.IndirectParameters"
+    \ , "Graphics.GL.ARB.InstancedArrays"
+    \ , "Graphics.GL.ARB.InternalformatQuery"
+    \ , "Graphics.GL.ARB.InternalformatQuery2"
+    \ , "Graphics.GL.ARB.InvalidateSubdata"
+    \ , "Graphics.GL.ARB.MapBufferAlignment"
+    \ , "Graphics.GL.ARB.MapBufferRange"
+    \ , "Graphics.GL.ARB.MatrixPalette"
+    \ , "Graphics.GL.ARB.MultiBind"
+    \ , "Graphics.GL.ARB.MultiDrawIndirect"
+    \ , "Graphics.GL.ARB.Multisample"
+    \ , "Graphics.GL.ARB.Multitexture"
+    \ , "Graphics.GL.ARB.OcclusionQuery"
+    \ , "Graphics.GL.ARB.OcclusionQuery2"
+    \ , "Graphics.GL.ARB.ParallelShaderCompile"
+    \ , "Graphics.GL.ARB.PipelineStatisticsQuery"
+    \ , "Graphics.GL.ARB.PixelBufferObject"
+    \ , "Graphics.GL.ARB.PointParameters"
+    \ , "Graphics.GL.ARB.PointSprite"
+    \ , "Graphics.GL.ARB.PolygonOffsetClamp"
+    \ , "Graphics.GL.ARB.ProgramInterfaceQuery"
+    \ , "Graphics.GL.ARB.ProvokingVertex"
+    \ , "Graphics.GL.ARB.QueryBufferObject"
+    \ , "Graphics.GL.ARB.RobustnessCompatibility"
+    \ , "Graphics.GL.ARB.RobustnessCore"
+    \ , "Graphics.GL.ARB.SampleLocations"
+    \ , "Graphics.GL.ARB.SampleShading"
+    \ , "Graphics.GL.ARB.SamplerObjects"
+    \ , "Graphics.GL.ARB.SeamlessCubeMap"
+    \ , "Graphics.GL.ARB.SeamlessCubemapPerTexture"
+    \ , "Graphics.GL.ARB.SeparateShaderObjects"
+    \ , "Graphics.GL.ARB.ShaderAtomicCounters"
+    \ , "Graphics.GL.ARB.ShaderImageLoadStore"
+    \ , "Graphics.GL.ARB.ShaderObjects"
+    \ , "Graphics.GL.ARB.ShaderStorageBufferObject"
+    \ , "Graphics.GL.ARB.ShaderSubroutine"
+    \ , "Graphics.GL.ARB.ShadingLanguage100"
+    \ , "Graphics.GL.ARB.ShadingLanguageInclude"
+    \ , "Graphics.GL.ARB.Shadow"
+    \ , "Graphics.GL.ARB.ShadowAmbient"
+    \ , "Graphics.GL.ARB.SparseBuffer"
+    \ , "Graphics.GL.ARB.SparseTexture"
+    \ , "Graphics.GL.ARB.SpirvExtensions"
+    \ , "Graphics.GL.ARB.StencilTexturing"
+    \ , "Graphics.GL.ARB.Sync"
+    \ , "Graphics.GL.ARB.TessellationShader"
+    \ , "Graphics.GL.ARB.TextureBarrier"
+    \ , "Graphics.GL.ARB.TextureBorderClamp"
+    \ , "Graphics.GL.ARB.TextureBufferObject"
+    \ , "Graphics.GL.ARB.TextureBufferObjectRGB32"
+    \ , "Graphics.GL.ARB.TextureBufferRange"
+    \ , "Graphics.GL.ARB.TextureCompression"
+    \ , "Graphics.GL.ARB.TextureCompressionBPTC"
+    \ , "Graphics.GL.ARB.TextureCompressionRGTC"
+    \ , "Graphics.GL.ARB.TextureCubeMap"
+    \ , "Graphics.GL.ARB.TextureCubeMapArray"
+    \ , "Graphics.GL.ARB.TextureEnvCombine"
+    \ , "Graphics.GL.ARB.TextureEnvDot3"
+    \ , "Graphics.GL.ARB.TextureFilterAnisotropic"
+    \ , "Graphics.GL.ARB.TextureFilterMinmax"
+    \ , "Graphics.GL.ARB.TextureFloat"
+    \ , "Graphics.GL.ARB.TextureGather"
+    \ , "Graphics.GL.ARB.TextureMirrorClampToEdge"
+    \ , "Graphics.GL.ARB.TextureMirroredRepeat"
+    \ , "Graphics.GL.ARB.TextureMultisample"
+    \ , "Graphics.GL.ARB.TextureRG"
+    \ , "Graphics.GL.ARB.TextureRGB10A2UI"
+    \ , "Graphics.GL.ARB.TextureRectangle"
+    \ , "Graphics.GL.ARB.TextureStencil8"
+    \ , "Graphics.GL.ARB.TextureStorage"
+    \ , "Graphics.GL.ARB.TextureStorageMultisample"
+    \ , "Graphics.GL.ARB.TextureSwizzle"
+    \ , "Graphics.GL.ARB.TextureView"
+    \ , "Graphics.GL.ARB.TimerQuery"
+    \ , "Graphics.GL.ARB.TransformFeedback2"
+    \ , "Graphics.GL.ARB.TransformFeedback3"
+    \ , "Graphics.GL.ARB.TransformFeedbackInstanced"
+    \ , "Graphics.GL.ARB.TransformFeedbackOverflowQuery"
+    \ , "Graphics.GL.ARB.TransposeMatrix"
+    \ , "Graphics.GL.ARB.UniformBufferObject"
+    \ , "Graphics.GL.ARB.VertexArrayBGRA"
+    \ , "Graphics.GL.ARB.VertexArrayObject"
+    \ , "Graphics.GL.ARB.VertexAttrib64Bit"
+    \ , "Graphics.GL.ARB.VertexAttribBinding"
+    \ , "Graphics.GL.ARB.VertexBlend"
+    \ , "Graphics.GL.ARB.VertexBufferObject"
+    \ , "Graphics.GL.ARB.VertexProgram"
+    \ , "Graphics.GL.ARB.VertexShader"
+    \ , "Graphics.GL.ARB.VertexType10f11f11fRev"
+    \ , "Graphics.GL.ARB.VertexType2101010RevCompatibility"
+    \ , "Graphics.GL.ARB.VertexType2101010RevCore"
+    \ , "Graphics.GL.ARB.ViewportArray"
+    \ , "Graphics.GL.ARB.WindowPos"
+    \ , "Graphics.GL.ATI"
+    \ , "Graphics.GL.ATI.DrawBuffers"
+    \ , "Graphics.GL.ATI.ElementArray"
+    \ , "Graphics.GL.ATI.EnvmapBumpmap"
+    \ , "Graphics.GL.ATI.FragmentShader"
+    \ , "Graphics.GL.ATI.MapObjectBuffer"
+    \ , "Graphics.GL.ATI.Meminfo"
+    \ , "Graphics.GL.ATI.PNTriangles"
+    \ , "Graphics.GL.ATI.PixelFormatFloat"
+    \ , "Graphics.GL.ATI.SeparateStencil"
+    \ , "Graphics.GL.ATI.TextFragmentShader"
+    \ , "Graphics.GL.ATI.TextureEnvCombine3"
+    \ , "Graphics.GL.ATI.TextureFloat"
+    \ , "Graphics.GL.ATI.TextureMirrorOnce"
+    \ , "Graphics.GL.ATI.VertexArrayObject"
+    \ , "Graphics.GL.ATI.VertexAttribArrayObject"
+    \ , "Graphics.GL.ATI.VertexStreams"
+    \ , "Graphics.GL.Compatibility30"
+    \ , "Graphics.GL.Compatibility31"
+    \ , "Graphics.GL.Compatibility32"
+    \ , "Graphics.GL.Compatibility33"
+    \ , "Graphics.GL.Compatibility40"
+    \ , "Graphics.GL.Compatibility41"
+    \ , "Graphics.GL.Compatibility42"
+    \ , "Graphics.GL.Compatibility43"
+    \ , "Graphics.GL.Compatibility44"
+    \ , "Graphics.GL.Compatibility45"
+    \ , "Graphics.GL.Compatibility46"
+    \ , "Graphics.GL.Core30"
+    \ , "Graphics.GL.Core31"
+    \ , "Graphics.GL.Core32"
+    \ , "Graphics.GL.Core33"
+    \ , "Graphics.GL.Core40"
+    \ , "Graphics.GL.Core41"
+    \ , "Graphics.GL.Core42"
+    \ , "Graphics.GL.Core43"
+    \ , "Graphics.GL.Core44"
+    \ , "Graphics.GL.Core45"
+    \ , "Graphics.GL.Core46"
+    \ , "Graphics.GL.EXT"
+    \ , "Graphics.GL.EXT.ABGR"
+    \ , "Graphics.GL.EXT.BGRA"
+    \ , "Graphics.GL.EXT.BindableUniform"
+    \ , "Graphics.GL.EXT.BlendColor"
+    \ , "Graphics.GL.EXT.BlendEquationSeparate"
+    \ , "Graphics.GL.EXT.BlendFuncSeparate"
+    \ , "Graphics.GL.EXT.BlendMinmax"
+    \ , "Graphics.GL.EXT.BlendSubtract"
+    \ , "Graphics.GL.EXT.CMYKA"
+    \ , "Graphics.GL.EXT.ClipVolumeHint"
+    \ , "Graphics.GL.EXT.ColorSubtable"
+    \ , "Graphics.GL.EXT.CompiledVertexArray"
+    \ , "Graphics.GL.EXT.Convolution"
+    \ , "Graphics.GL.EXT.CoordinateFrame"
+    \ , "Graphics.GL.EXT.CopyTexture"
+    \ , "Graphics.GL.EXT.CullVertex"
+    \ , "Graphics.GL.EXT.DebugLabel"
+    \ , "Graphics.GL.EXT.DebugMarker"
+    \ , "Graphics.GL.EXT.DepthBoundsTest"
+    \ , "Graphics.GL.EXT.DirectStateAccess"
+    \ , "Graphics.GL.EXT.DrawBuffers2"
+    \ , "Graphics.GL.EXT.DrawInstanced"
+    \ , "Graphics.GL.EXT.DrawRangeElements"
+    \ , "Graphics.GL.EXT.EglImageStorage"
+    \ , "Graphics.GL.EXT.ExternalBuffer"
+    \ , "Graphics.GL.EXT.FogCoord"
+    \ , "Graphics.GL.EXT.FourTwoTwoPixels"
+    \ , "Graphics.GL.EXT.FramebufferBlit"
+    \ , "Graphics.GL.EXT.FramebufferMultisample"
+    \ , "Graphics.GL.EXT.FramebufferMultisampleBlitScaled"
+    \ , "Graphics.GL.EXT.FramebufferObject"
+    \ , "Graphics.GL.EXT.FramebufferSRGB"
+    \ , "Graphics.GL.EXT.GPUProgramParameters"
+    \ , "Graphics.GL.EXT.GPUShader4"
+    \ , "Graphics.GL.EXT.GeometryShader4"
+    \ , "Graphics.GL.EXT.Histogram"
+    \ , "Graphics.GL.EXT.IndexArrayFormats"
+    \ , "Graphics.GL.EXT.IndexFunc"
+    \ , "Graphics.GL.EXT.IndexMaterial"
+    \ , "Graphics.GL.EXT.LightTexture"
+    \ , "Graphics.GL.EXT.MemoryObject"
+    \ , "Graphics.GL.EXT.MemoryObjectFd"
+    \ , "Graphics.GL.EXT.MemoryObjectWin32"
+    \ , "Graphics.GL.EXT.MultiDrawArrays"
+    \ , "Graphics.GL.EXT.Multisample"
+    \ , "Graphics.GL.EXT.PackedDepthStencil"
+    \ , "Graphics.GL.EXT.PackedFloat"
+    \ , "Graphics.GL.EXT.PackedPixels"
+    \ , "Graphics.GL.EXT.PalettedTexture"
+    \ , "Graphics.GL.EXT.PixelBufferObject"
+    \ , "Graphics.GL.EXT.PixelTransform"
+    \ , "Graphics.GL.EXT.PointParameters"
+    \ , "Graphics.GL.EXT.PolygonOffset"
+    \ , "Graphics.GL.EXT.PolygonOffsetClamp"
+    \ , "Graphics.GL.EXT.ProvokingVertex"
+    \ , "Graphics.GL.EXT.RasterMultisample"
+    \ , "Graphics.GL.EXT.RescaleNormal"
+    \ , "Graphics.GL.EXT.SecondaryColor"
+    \ , "Graphics.GL.EXT.Semaphore"
+    \ , "Graphics.GL.EXT.SemaphoreFd"
+    \ , "Graphics.GL.EXT.SemaphoreWin32"
+    \ , "Graphics.GL.EXT.SeparateShaderObjects"
+    \ , "Graphics.GL.EXT.SeparateSpecularColor"
+    \ , "Graphics.GL.EXT.ShaderFramebufferFetch"
+    \ , "Graphics.GL.EXT.ShaderFramebufferFetchNonCoherent"
+    \ , "Graphics.GL.EXT.ShaderImageLoadStore"
+    \ , "Graphics.GL.EXT.SharedTexturePalette"
+    \ , "Graphics.GL.EXT.StencilClearTag"
+    \ , "Graphics.GL.EXT.StencilTwoSide"
+    \ , "Graphics.GL.EXT.StencilWrap"
+    \ , "Graphics.GL.EXT.Subtexture"
+    \ , "Graphics.GL.EXT.Texture"
+    \ , "Graphics.GL.EXT.Texture3D"
+    \ , "Graphics.GL.EXT.TextureArray"
+    \ , "Graphics.GL.EXT.TextureBufferObject"
+    \ , "Graphics.GL.EXT.TextureCompressionLATC"
+    \ , "Graphics.GL.EXT.TextureCompressionRGTC"
+    \ , "Graphics.GL.EXT.TextureCompressionS3TC"
+    \ , "Graphics.GL.EXT.TextureCubeMap"
+    \ , "Graphics.GL.EXT.TextureEnvCombine"
+    \ , "Graphics.GL.EXT.TextureEnvDot3"
+    \ , "Graphics.GL.EXT.TextureFilterAnisotropic"
+    \ , "Graphics.GL.EXT.TextureFilterMinmax"
+    \ , "Graphics.GL.EXT.TextureInteger"
+    \ , "Graphics.GL.EXT.TextureLODBias"
+    \ , "Graphics.GL.EXT.TextureMirrorClamp"
+    \ , "Graphics.GL.EXT.TextureObject"
+    \ , "Graphics.GL.EXT.TexturePerturbNormal"
+    \ , "Graphics.GL.EXT.TextureSNorm"
+    \ , "Graphics.GL.EXT.TextureSRGB"
+    \ , "Graphics.GL.EXT.TextureSRGBDecode"
+    \ , "Graphics.GL.EXT.TextureSharedExponent"
+    \ , "Graphics.GL.EXT.TextureSwizzle"
+    \ , "Graphics.GL.EXT.TimerQuery"
+    \ , "Graphics.GL.EXT.TransformFeedback"
+    \ , "Graphics.GL.EXT.VertexArray"
+    \ , "Graphics.GL.EXT.VertexArrayBGRA"
+    \ , "Graphics.GL.EXT.VertexAttrib64Bit"
+    \ , "Graphics.GL.EXT.VertexShader"
+    \ , "Graphics.GL.EXT.VertexWeighting"
+    \ , "Graphics.GL.EXT.Win32KeyedMutex"
+    \ , "Graphics.GL.EXT.WindowRectangles"
+    \ , "Graphics.GL.EXT.X11SyncObject"
+    \ , "Graphics.GL.Functions"
+    \ , "Graphics.GL.GREMEDY"
+    \ , "Graphics.GL.GREMEDY.FrameTerminator"
+    \ , "Graphics.GL.GREMEDY.StringMarker"
+    \ , "Graphics.GL.GetProcAddress"
+    \ , "Graphics.GL.Groups"
+    \ , "Graphics.GL.HP"
+    \ , "Graphics.GL.HP.ConvolutionBorderModes"
+    \ , "Graphics.GL.HP.ImageTransform"
+    \ , "Graphics.GL.HP.OcclusionTest"
+    \ , "Graphics.GL.HP.TextureLighting"
+    \ , "Graphics.GL.IBM"
+    \ , "Graphics.GL.IBM.CullVertex"
+    \ , "Graphics.GL.IBM.MultimodeDrawArrays"
+    \ , "Graphics.GL.IBM.RasterposClip"
+    \ , "Graphics.GL.IBM.StaticData"
+    \ , "Graphics.GL.IBM.TextureMirroredRepeat"
+    \ , "Graphics.GL.IBM.VertexArrayLists"
+    \ , "Graphics.GL.INGR"
+    \ , "Graphics.GL.INGR.BlendFuncSeparate"
+    \ , "Graphics.GL.INGR.ColorClamp"
+    \ , "Graphics.GL.INGR.InterlaceRead"
+    \ , "Graphics.GL.INTEL"
+    \ , "Graphics.GL.INTEL.BlackholeRender"
+    \ , "Graphics.GL.INTEL.ConservativeRasterization"
+    \ , "Graphics.GL.INTEL.FramebufferCmaa"
+    \ , "Graphics.GL.INTEL.MapTexture"
+    \ , "Graphics.GL.INTEL.ParallelArrays"
+    \ , "Graphics.GL.INTEL.PerformanceQuery"
+    \ , "Graphics.GL.KHR"
+    \ , "Graphics.GL.KHR.BlendEquationAdvanced"
+    \ , "Graphics.GL.KHR.BlendEquationAdvancedCoherent"
+    \ , "Graphics.GL.KHR.ContextFlushControl"
+    \ , "Graphics.GL.KHR.DebugCompatibility"
+    \ , "Graphics.GL.KHR.DebugCore"
+    \ , "Graphics.GL.KHR.NoError"
+    \ , "Graphics.GL.KHR.ParallelShaderCompile"
+    \ , "Graphics.GL.KHR.Robustness"
+    \ , "Graphics.GL.KHR.TextureCompressionASTCHDR"
+    \ , "Graphics.GL.KHR.TextureCompressionASTCLDR"
+    \ , "Graphics.GL.MESA"
+    \ , "Graphics.GL.MESA.PackInvert"
+    \ , "Graphics.GL.MESA.ProgramBinaryFormats"
+    \ , "Graphics.GL.MESA.ResizeBuffers"
+    \ , "Graphics.GL.MESA.TileRasterOrder"
+    \ , "Graphics.GL.MESA.WindowPos"
+    \ , "Graphics.GL.MESA.YCbCrTexture"
+    \ , "Graphics.GL.MESAX"
+    \ , "Graphics.GL.MESAX.TextureStack"
+    \ , "Graphics.GL.NV"
+    \ , "Graphics.GL.NV.AlphaToCoverageDitherControl"
+    \ , "Graphics.GL.NV.BindlessMultiDrawIndirect"
+    \ , "Graphics.GL.NV.BindlessMultiDrawIndirectCount"
+    \ , "Graphics.GL.NV.BindlessTexture"
+    \ , "Graphics.GL.NV.BlendEquationAdvanced"
+    \ , "Graphics.GL.NV.BlendEquationAdvancedCoherent"
+    \ , "Graphics.GL.NV.BlendMinmaxFactor"
+    \ , "Graphics.GL.NV.ClipSpaceWScaling"
+    \ , "Graphics.GL.NV.CommandList"
+    \ , "Graphics.GL.NV.ComputeProgram5"
+    \ , "Graphics.GL.NV.ConditionalRender"
+    \ , "Graphics.GL.NV.ConservativeRaster"
+    \ , "Graphics.GL.NV.ConservativeRasterDilate"
+    \ , "Graphics.GL.NV.ConservativeRasterPreSnap"
+    \ , "Graphics.GL.NV.ConservativeRasterPreSnapTriangles"
+    \ , "Graphics.GL.NV.CopyDepthToColor"
+    \ , "Graphics.GL.NV.CopyImage"
+    \ , "Graphics.GL.NV.DeepTexture3D"
+    \ , "Graphics.GL.NV.DepthBufferFloat"
+    \ , "Graphics.GL.NV.DepthClamp"
+    \ , "Graphics.GL.NV.DrawTexture"
+    \ , "Graphics.GL.NV.DrawVulkanImage"
+    \ , "Graphics.GL.NV.Evaluators"
+    \ , "Graphics.GL.NV.ExplicitMultisample"
+    \ , "Graphics.GL.NV.Fence"
+    \ , "Graphics.GL.NV.FillRectangle"
+    \ , "Graphics.GL.NV.FloatBuffer"
+    \ , "Graphics.GL.NV.FogDistance"
+    \ , "Graphics.GL.NV.FragmentCoverageToColor"
+    \ , "Graphics.GL.NV.FragmentProgram"
+    \ , "Graphics.GL.NV.FragmentProgram2"
+    \ , "Graphics.GL.NV.FramebufferMixedSamples"
+    \ , "Graphics.GL.NV.FramebufferMultisampleCoverage"
+    \ , "Graphics.GL.NV.GPUMulticast"
+    \ , "Graphics.GL.NV.GPUProgram4"
+    \ , "Graphics.GL.NV.GPUProgram5"
+    \ , "Graphics.GL.NV.GPUShader5"
+    \ , "Graphics.GL.NV.GeometryProgram4"
+    \ , "Graphics.GL.NV.HalfFloat"
+    \ , "Graphics.GL.NV.InternalformatSampleQuery"
+    \ , "Graphics.GL.NV.LightMaxExponent"
+    \ , "Graphics.GL.NV.MultisampleCoverage"
+    \ , "Graphics.GL.NV.MultisampleFilterHint"
+    \ , "Graphics.GL.NV.OcclusionQuery"
+    \ , "Graphics.GL.NV.PackedDepthStencil"
+    \ , "Graphics.GL.NV.ParameterBufferObject"
+    \ , "Graphics.GL.NV.PathRenderingCompatibility"
+    \ , "Graphics.GL.NV.PathRenderingCore"
+    \ , "Graphics.GL.NV.PathRenderingSharedEdge"
+    \ , "Graphics.GL.NV.PixelDataRange"
+    \ , "Graphics.GL.NV.PointSprite"
+    \ , "Graphics.GL.NV.PresentVideo"
+    \ , "Graphics.GL.NV.PrimitiveRestart"
+    \ , "Graphics.GL.NV.QueryResource"
+    \ , "Graphics.GL.NV.QueryResourceTag"
+    \ , "Graphics.GL.NV.RegisterCombiners"
+    \ , "Graphics.GL.NV.RegisterCombiners2"
+    \ , "Graphics.GL.NV.RobustnessVideoMemoryPurge"
+    \ , "Graphics.GL.NV.SampleLocations"
+    \ , "Graphics.GL.NV.ShaderBufferLoad"
+    \ , "Graphics.GL.NV.ShaderBufferStore"
+    \ , "Graphics.GL.NV.ShaderThreadGroup"
+    \ , "Graphics.GL.NV.TessellationProgram5"
+    \ , "Graphics.GL.NV.TexgenEmboss"
+    \ , "Graphics.GL.NV.TexgenReflection"
+    \ , "Graphics.GL.NV.TextureBarrier"
+    \ , "Graphics.GL.NV.TextureEnvCombine4"
+    \ , "Graphics.GL.NV.TextureExpandNormal"
+    \ , "Graphics.GL.NV.TextureMultisample"
+    \ , "Graphics.GL.NV.TextureRectangle"
+    \ , "Graphics.GL.NV.TextureShader"
+    \ , "Graphics.GL.NV.TextureShader2"
+    \ , "Graphics.GL.NV.TextureShader3"
+    \ , "Graphics.GL.NV.TransformFeedback"
+    \ , "Graphics.GL.NV.TransformFeedback2"
+    \ , "Graphics.GL.NV.UniformBufferUnifiedMemory"
+    \ , "Graphics.GL.NV.VDPAUInterop"
+    \ , "Graphics.GL.NV.VertexArrayRange"
+    \ , "Graphics.GL.NV.VertexArrayRange2"
+    \ , "Graphics.GL.NV.VertexAttribInteger64Bit"
+    \ , "Graphics.GL.NV.VertexBufferUnifiedMemory"
+    \ , "Graphics.GL.NV.VertexProgram"
+    \ , "Graphics.GL.NV.VertexProgram2Option"
+    \ , "Graphics.GL.NV.VertexProgram3"
+    \ , "Graphics.GL.NV.VertexProgram4"
+    \ , "Graphics.GL.NV.VideoCapture"
+    \ , "Graphics.GL.NV.ViewportSwizzle"
+    \ , "Graphics.GL.NVX"
+    \ , "Graphics.GL.NVX.ConditionalRender"
+    \ , "Graphics.GL.NVX.GPUMemoryInfo"
+    \ , "Graphics.GL.NVX.LinkedGPUMulticast"
+    \ , "Graphics.GL.OES"
+    \ , "Graphics.GL.OES.ByteCoordinates"
+    \ , "Graphics.GL.OES.CompressedPalettedTexture"
+    \ , "Graphics.GL.OES.FixedPoint"
+    \ , "Graphics.GL.OES.QueryMatrix"
+    \ , "Graphics.GL.OES.ReadFormat"
+    \ , "Graphics.GL.OES.SinglePrecision"
+    \ , "Graphics.GL.OML"
+    \ , "Graphics.GL.OML.Interlace"
+    \ , "Graphics.GL.OML.Resample"
+    \ , "Graphics.GL.OML.Subsample"
+    \ , "Graphics.GL.OVR"
+    \ , "Graphics.GL.OVR.Multiview"
+    \ , "Graphics.GL.PGI"
+    \ , "Graphics.GL.PGI.MiscHints"
+    \ , "Graphics.GL.PGI.VertexHints"
+    \ , "Graphics.GL.REND"
+    \ , "Graphics.GL.REND.ScreenCoordinates"
+    \ , "Graphics.GL.S3"
+    \ , "Graphics.GL.S3.S3TC"
+    \ , "Graphics.GL.SGI"
+    \ , "Graphics.GL.SGI.ColorMatrix"
+    \ , "Graphics.GL.SGI.ColorTable"
+    \ , "Graphics.GL.SGI.TextureColorTable"
+    \ , "Graphics.GL.SGIS"
+    \ , "Graphics.GL.SGIS.DetailTexture"
+    \ , "Graphics.GL.SGIS.FogFunction"
+    \ , "Graphics.GL.SGIS.GenerateMipmap"
+    \ , "Graphics.GL.SGIS.Multisample"
+    \ , "Graphics.GL.SGIS.PixelTexture"
+    \ , "Graphics.GL.SGIS.PointLineTexgen"
+    \ , "Graphics.GL.SGIS.PointParameters"
+    \ , "Graphics.GL.SGIS.SharpenTexture"
+    \ , "Graphics.GL.SGIS.Texture4D"
+    \ , "Graphics.GL.SGIS.TextureBorderClamp"
+    \ , "Graphics.GL.SGIS.TextureColorMask"
+    \ , "Graphics.GL.SGIS.TextureEdgeClamp"
+    \ , "Graphics.GL.SGIS.TextureFilter4"
+    \ , "Graphics.GL.SGIS.TextureLOD"
+    \ , "Graphics.GL.SGIS.TextureSelect"
+    \ , "Graphics.GL.SGIX"
+    \ , "Graphics.GL.SGIX.Async"
+    \ , "Graphics.GL.SGIX.AsyncHistogram"
+    \ , "Graphics.GL.SGIX.AsyncPixel"
+    \ , "Graphics.GL.SGIX.BlendAlphaMinmax"
+    \ , "Graphics.GL.SGIX.CalligraphicFragment"
+    \ , "Graphics.GL.SGIX.Clipmap"
+    \ , "Graphics.GL.SGIX.ConvolutionAccuracy"
+    \ , "Graphics.GL.SGIX.DepthTexture"
+    \ , "Graphics.GL.SGIX.FlushRaster"
+    \ , "Graphics.GL.SGIX.FogOffset"
+    \ , "Graphics.GL.SGIX.FragmentLighting"
+    \ , "Graphics.GL.SGIX.Framezoom"
+    \ , "Graphics.GL.SGIX.IglooInterface"
+    \ , "Graphics.GL.SGIX.Instruments"
+    \ , "Graphics.GL.SGIX.Interlace"
+    \ , "Graphics.GL.SGIX.IrInstrument1"
+    \ , "Graphics.GL.SGIX.ListPriority"
+    \ , "Graphics.GL.SGIX.PixelTexture"
+    \ , "Graphics.GL.SGIX.PixelTiles"
+    \ , "Graphics.GL.SGIX.PolynomialFFD"
+    \ , "Graphics.GL.SGIX.ReferencePlane"
+    \ , "Graphics.GL.SGIX.Resample"
+    \ , "Graphics.GL.SGIX.ScalebiasHint"
+    \ , "Graphics.GL.SGIX.Shadow"
+    \ , "Graphics.GL.SGIX.ShadowAmbient"
+    \ , "Graphics.GL.SGIX.Sprite"
+    \ , "Graphics.GL.SGIX.Subsample"
+    \ , "Graphics.GL.SGIX.TagSampleBuffer"
+    \ , "Graphics.GL.SGIX.TextureAddEnv"
+    \ , "Graphics.GL.SGIX.TextureCoordinateClamp"
+    \ , "Graphics.GL.SGIX.TextureLODBias"
+    \ , "Graphics.GL.SGIX.TextureMultiBuffer"
+    \ , "Graphics.GL.SGIX.TextureScaleBias"
+    \ , "Graphics.GL.SGIX.VertexPreclip"
+    \ , "Graphics.GL.SGIX.YCrCb"
+    \ , "Graphics.GL.SGIX.YCrCbA"
+    \ , "Graphics.GL.SUN"
+    \ , "Graphics.GL.SUN.ConvolutionBorderModes"
+    \ , "Graphics.GL.SUN.GlobalAlpha"
+    \ , "Graphics.GL.SUN.MeshArray"
+    \ , "Graphics.GL.SUN.SliceAccum"
+    \ , "Graphics.GL.SUN.TriangleList"
+    \ , "Graphics.GL.SUN.Vertex"
+    \ , "Graphics.GL.SUNX"
+    \ , "Graphics.GL.SUNX.ConstantData"
+    \ , "Graphics.GL.ThreeDFX"
+    \ , "Graphics.GL.ThreeDFX.Multisample"
+    \ , "Graphics.GL.ThreeDFX.Tbuffer"
+    \ , "Graphics.GL.ThreeDFX.TextureCompressionFXT1"
+    \ , "Graphics.GL.Tokens"
+    \ , "Graphics.GL.Types"
+    \ , "Graphics.GL.Version10"
+    \ , "Graphics.GL.Version11"
+    \ , "Graphics.GL.Version12"
+    \ , "Graphics.GL.Version13"
+    \ , "Graphics.GL.Version14"
+    \ , "Graphics.GL.Version15"
+    \ , "Graphics.GL.Version20"
+    \ , "Graphics.GL.Version21"
+    \ , "Graphics.GL.WIN"
+    \ , "Graphics.GL.WIN.PhongShading"
+    \ , "Graphics.GL.WIN.SpecularFog"
+    \ , "Test.QuickCheck"
+    \ , "Test.QuickCheck.All"
+    \ , "Test.QuickCheck.Arbitrary"
+    \ , "Test.QuickCheck.Exception"
+    \ , "Test.QuickCheck.Function"
+    \ , "Test.QuickCheck.Gen"
+    \ , "Test.QuickCheck.Gen.Unsafe"
+    \ , "Test.QuickCheck.Modifiers"
+    \ , "Test.QuickCheck.Monadic"
+    \ , "Test.QuickCheck.Poly"
+    \ , "Test.QuickCheck.Property"
+    \ , "Test.QuickCheck.Random"
+    \ , "Test.QuickCheck.State"
+    \ , "Test.QuickCheck.Test"
+    \ , "Test.QuickCheck.Text"
+    \ , "Data.StateVar"
+    \ , "Graphics.Win32"
+    \ , "Graphics.Win32.Control"
+    \ , "Graphics.Win32.Dialogue"
+    \ , "Graphics.Win32.GDI"
+    \ , "Graphics.Win32.GDI.AlphaBlend"
+    \ , "Graphics.Win32.GDI.Bitmap"
+    \ , "Graphics.Win32.GDI.Brush"
+    \ , "Graphics.Win32.GDI.Clip"
+    \ , "Graphics.Win32.GDI.Font"
+    \ , "Graphics.Win32.GDI.Graphics2D"
+    \ , "Graphics.Win32.GDI.HDC"
+    \ , "Graphics.Win32.GDI.Palette"
+    \ , "Graphics.Win32.GDI.Path"
+    \ , "Graphics.Win32.GDI.Pen"
+    \ , "Graphics.Win32.GDI.Region"
+    \ , "Graphics.Win32.GDI.Types"
+    \ , "Graphics.Win32.Icon"
+    \ , "Graphics.Win32.Key"
+    \ , "Graphics.Win32.LayeredWindow"
+    \ , "Graphics.Win32.Menu"
+    \ , "Graphics.Win32.Message"
+    \ , "Graphics.Win32.Misc"
+    \ , "Graphics.Win32.Resource"
+    \ , "Graphics.Win32.Window"
+    \ , "Graphics.Win32.Window.AnimateWindow"
+    \ , "Graphics.Win32.Window.ForegroundWindow"
+    \ , "Graphics.Win32.Window.HotKey"
+    \ , "Graphics.Win32.Window.IMM"
+    \ , "Graphics.Win32.Window.PostMessage"
+    \ , "Media.Win32"
+    \ , "System.Win32"
+    \ , "System.Win32.Automation"
+    \ , "System.Win32.Automation.Input"
+    \ , "System.Win32.Automation.Input.Key"
+    \ , "System.Win32.Automation.Input.Mouse"
+    \ , "System.Win32.Console"
+    \ , "System.Win32.Console.CtrlHandler"
+    \ , "System.Win32.Console.HWND"
+    \ , "System.Win32.Console.Title"
+    \ , "System.Win32.DLL"
+    \ , "System.Win32.DebugApi"
+    \ , "System.Win32.Encoding"
+    \ , "System.Win32.Exception.Unsupported"
+    \ , "System.Win32.File"
+    \ , "System.Win32.FileMapping"
+    \ , "System.Win32.HardLink"
+    \ , "System.Win32.Info"
+    \ , "System.Win32.Info.Computer"
+    \ , "System.Win32.Info.Version"
+    \ , "System.Win32.Mem"
+    \ , "System.Win32.MinTTY"
+    \ , "System.Win32.NLS"
+    \ , "System.Win32.Path"
+    \ , "System.Win32.Process"
+    \ , "System.Win32.Registry"
+    \ , "System.Win32.Security"
+    \ , "System.Win32.Shell"
+    \ , "System.Win32.SimpleMAPI"
+    \ , "System.Win32.String"
+    \ , "System.Win32.SymbolicLink"
+    \ , "System.Win32.Thread"
+    \ , "System.Win32.Time"
+    \ , "System.Win32.Types"
+    \ , "System.Win32.Utils"
+    \ , "System.Win32.Word"
+    \ , "Data.Array"
+    \ , "Data.Array.Base"
+    \ , "Data.Array.IArray"
+    \ , "Data.Array.IO"
+    \ , "Data.Array.IO.Internals"
+    \ , "Data.Array.IO.Safe"
+    \ , "Data.Array.MArray"
+    \ , "Data.Array.MArray.Safe"
+    \ , "Data.Array.ST"
+    \ , "Data.Array.ST.Safe"
+    \ , "Data.Array.Storable"
+    \ , "Data.Array.Storable.Internals"
+    \ , "Data.Array.Storable.Safe"
+    \ , "Data.Array.Unboxed"
+    \ , "Data.Array.Unsafe"
+    \ , "Control.Concurrent.Async"
+    \ , "Data.Attoparsec"
+    \ , "Data.Attoparsec.ByteString"
+    \ , "Data.Attoparsec.ByteString.Char8"
+    \ , "Data.Attoparsec.ByteString.Lazy"
+    \ , "Data.Attoparsec.Char8"
+    \ , "Data.Attoparsec.Combinator"
+    \ , "Data.Attoparsec.Internal"
+    \ , "Data.Attoparsec.Internal.Types"
+    \ , "Data.Attoparsec.Lazy"
+    \ , "Data.Attoparsec.Number"
+    \ , "Data.Attoparsec.Text"
+    \ , "Data.Attoparsec.Text.Lazy"
+    \ , "Data.Attoparsec.Types"
+    \ , "Data.Attoparsec.Zepto"
+    \ , "Control.Applicative"
+    \ , "Control.Arrow"
+    \ , "Control.Category"
+    \ , "Control.Concurrent"
+    \ , "Control.Concurrent.Chan"
+    \ , "Control.Concurrent.MVar"
+    \ , "Control.Concurrent.QSem"
+    \ , "Control.Concurrent.QSemN"
+    \ , "Control.Exception"
+    \ , "Control.Exception.Base"
+    \ , "Control.Monad"
+    \ , "Control.Monad.Fail"
+    \ , "Control.Monad.Fix"
+    \ , "Control.Monad.IO.Class"
+    \ , "Control.Monad.Instances"
+    \ , "Control.Monad.ST"
+    \ , "Control.Monad.ST.Lazy"
+    \ , "Control.Monad.ST.Lazy.Safe"
+    \ , "Control.Monad.ST.Lazy.Unsafe"
+    \ , "Control.Monad.ST.Safe"
+    \ , "Control.Monad.ST.Strict"
+    \ , "Control.Monad.ST.Unsafe"
+    \ , "Control.Monad.Zip"
+    \ , "Data.Bifoldable"
+    \ , "Data.Bifunctor"
+    \ , "Data.Bitraversable"
+    \ , "Data.Bits"
+    \ , "Data.Bool"
+    \ , "Data.Char"
+    \ , "Data.Coerce"
+    \ , "Data.Complex"
+    \ , "Data.Data"
+    \ , "Data.Dynamic"
+    \ , "Data.Either"
+    \ , "Data.Eq"
+    \ , "Data.Fixed"
+    \ , "Data.Foldable"
+    \ , "Data.Function"
+    \ , "Data.Functor"
+    \ , "Data.Functor.Classes"
+    \ , "Data.Functor.Compose"
+    \ , "Data.Functor.Const"
+    \ , "Data.Functor.Identity"
+    \ , "Data.Functor.Product"
+    \ , "Data.Functor.Sum"
+    \ , "Data.IORef"
+    \ , "Data.Int"
+    \ , "Data.Ix"
+    \ , "Data.Kind"
+    \ , "Data.List"
+    \ , "Data.List.NonEmpty"
+    \ , "Data.Maybe"
+    \ , "Data.Monoid"
+    \ , "Data.Ord"
+    \ , "Data.Proxy"
+    \ , "Data.Ratio"
+    \ , "Data.STRef"
+    \ , "Data.STRef.Lazy"
+    \ , "Data.STRef.Strict"
+    \ , "Data.Semigroup"
+    \ , "Data.String"
+    \ , "Data.Traversable"
+    \ , "Data.Tuple"
+    \ , "Data.Type.Bool"
+    \ , "Data.Type.Coercion"
+    \ , "Data.Type.Equality"
+    \ , "Data.Typeable"
+    \ , "Data.Unique"
+    \ , "Data.Version"
+    \ , "Data.Void"
+    \ , "Data.Word"
+    \ , "Debug.Trace"
+    \ , "Foreign"
+    \ , "Foreign.C"
+    \ , "Foreign.C.Error"
+    \ , "Foreign.C.String"
+    \ , "Foreign.C.Types"
+    \ , "Foreign.Concurrent"
+    \ , "Foreign.ForeignPtr"
+    \ , "Foreign.ForeignPtr.Safe"
+    \ , "Foreign.ForeignPtr.Unsafe"
+    \ , "Foreign.Marshal"
+    \ , "Foreign.Marshal.Alloc"
+    \ , "Foreign.Marshal.Array"
+    \ , "Foreign.Marshal.Error"
+    \ , "Foreign.Marshal.Pool"
+    \ , "Foreign.Marshal.Safe"
+    \ , "Foreign.Marshal.Unsafe"
+    \ , "Foreign.Marshal.Utils"
+    \ , "Foreign.Ptr"
+    \ , "Foreign.Safe"
+    \ , "Foreign.StablePtr"
+    \ , "Foreign.Storable"
+    \ , "GHC.Arr"
+    \ , "GHC.Base"
+    \ , "GHC.ByteOrder"
+    \ , "GHC.Char"
+    \ , "GHC.Clock"
+    \ , "GHC.Conc"
+    \ , "GHC.Conc.IO"
+    \ , "GHC.Conc.Signal"
+    \ , "GHC.Conc.Sync"
+    \ , "GHC.ConsoleHandler"
+    \ , "GHC.Constants"
+    \ , "GHC.Desugar"
+    \ , "GHC.Enum"
+    \ , "GHC.Environment"
+    \ , "GHC.Err"
+    \ , "GHC.Event"
+    \ , "GHC.Exception"
+    \ , "GHC.ExecutionStack"
+    \ , "GHC.ExecutionStack.Internal"
+    \ , "GHC.Exts"
+    \ , "GHC.Fingerprint"
+    \ , "GHC.Fingerprint.Type"
+    \ , "GHC.Float"
+    \ , "GHC.Float.ConversionUtils"
+    \ , "GHC.Float.RealFracMethods"
+    \ , "GHC.Foreign"
+    \ , "GHC.ForeignPtr"
+    \ , "GHC.GHCi"
+    \ , "GHC.Generics"
+    \ , "GHC.IO"
+    \ , "GHC.IO.Buffer"
+    \ , "GHC.IO.BufferedIO"
+    \ , "GHC.IO.Device"
+    \ , "GHC.IO.Encoding"
+    \ , "GHC.IO.Encoding.CodePage"
+    \ , "GHC.IO.Encoding.Failure"
+    \ , "GHC.IO.Encoding.Iconv"
+    \ , "GHC.IO.Encoding.Latin1"
+    \ , "GHC.IO.Encoding.Types"
+    \ , "GHC.IO.Encoding.UTF16"
+    \ , "GHC.IO.Encoding.UTF32"
+    \ , "GHC.IO.Encoding.UTF8"
+    \ , "GHC.IO.Exception"
+    \ , "GHC.IO.FD"
+    \ , "GHC.IO.Handle"
+    \ , "GHC.IO.Handle.FD"
+    \ , "GHC.IO.Handle.Internals"
+    \ , "GHC.IO.Handle.Lock"
+    \ , "GHC.IO.Handle.Text"
+    \ , "GHC.IO.Handle.Types"
+    \ , "GHC.IO.IOMode"
+    \ , "GHC.IO.Unsafe"
+    \ , "GHC.IOArray"
+    \ , "GHC.IORef"
+    \ , "GHC.Int"
+    \ , "GHC.List"
+    \ , "GHC.MVar"
+    \ , "GHC.Natural"
+    \ , "GHC.Num"
+    \ , "GHC.OldList"
+    \ , "GHC.OverloadedLabels"
+    \ , "GHC.PArr"
+    \ , "GHC.Pack"
+    \ , "GHC.Profiling"
+    \ , "GHC.Ptr"
+    \ , "GHC.RTS.Flags"
+    \ , "GHC.Read"
+    \ , "GHC.Real"
+    \ , "GHC.Records"
+    \ , "GHC.ST"
+    \ , "GHC.STRef"
+    \ , "GHC.Show"
+    \ , "GHC.Stable"
+    \ , "GHC.Stack"
+    \ , "GHC.Stack.CCS"
+    \ , "GHC.Stack.Types"
+    \ , "GHC.StaticPtr"
+    \ , "GHC.Stats"
+    \ , "GHC.Storable"
+    \ , "GHC.TopHandler"
+    \ , "GHC.TypeLits"
+    \ , "GHC.TypeNats"
+    \ , "GHC.Unicode"
+    \ , "GHC.Weak"
+    \ , "GHC.Word"
+    \ , "Numeric"
+    \ , "Numeric.Natural"
+    \ , "Prelude"
+    \ , "System.CPUTime"
+    \ , "System.Console.GetOpt"
+    \ , "System.Environment"
+    \ , "System.Environment.Blank"
+    \ , "System.Exit"
+    \ , "System.IO"
+    \ , "System.IO.Error"
+    \ , "System.IO.Unsafe"
+    \ , "System.Info"
+    \ , "System.Mem"
+    \ , "System.Mem.StableName"
+    \ , "System.Mem.Weak"
+    \ , "System.Posix.Internals"
+    \ , "System.Posix.Types"
+    \ , "System.Timeout"
+    \ , "Text.ParserCombinators.ReadP"
+    \ , "Text.ParserCombinators.ReadPrec"
+    \ , "Text.Printf"
+    \ , "Text.Read"
+    \ , "Text.Read.Lex"
+    \ , "Text.Show"
+    \ , "Text.Show.Functions"
+    \ , "Type.Reflection"
+    \ , "Type.Reflection.Unsafe"
+    \ , "Unsafe.Coerce"
+    \ , "Data.ByteString"
+    \ , "Data.ByteString.Builder"
+    \ , "Data.ByteString.Builder.Extra"
+    \ , "Data.ByteString.Builder.Internal"
+    \ , "Data.ByteString.Builder.Prim"
+    \ , "Data.ByteString.Builder.Prim.Internal"
+    \ , "Data.ByteString.Char8"
+    \ , "Data.ByteString.Internal"
+    \ , "Data.ByteString.Lazy"
+    \ , "Data.ByteString.Lazy.Builder"
+    \ , "Data.ByteString.Lazy.Builder.ASCII"
+    \ , "Data.ByteString.Lazy.Builder.Extras"
+    \ , "Data.ByteString.Lazy.Char8"
+    \ , "Data.ByteString.Lazy.Internal"
+    \ , "Data.ByteString.Short"
+    \ , "Data.ByteString.Short.Internal"
+    \ , "Data.ByteString.Unsafe"
+    \ , "Data.CallStack"
+    \ , "Data.CaseInsensitive"
+    \ , "Data.CaseInsensitive.Unsafe"
+    \ , "Network.CGI"
+    \ , "Network.CGI.Compat"
+    \ , "Network.CGI.Cookie"
+    \ , "Network.CGI.Monad"
+    \ , "Network.CGI.Protocol"
+    \ , "Data.Graph"
+    \ , "Data.IntMap"
+    \ , "Data.IntMap.Internal"
+    \ , "Data.IntMap.Internal.Debug"
+    \ , "Data.IntMap.Lazy"
+    \ , "Data.IntMap.Merge.Lazy"
+    \ , "Data.IntMap.Merge.Strict"
+    \ , "Data.IntMap.Strict"
+    \ , "Data.IntSet"
+    \ , "Data.IntSet.Internal"
+    \ , "Data.Map"
+    \ , "Data.Map.Internal"
+    \ , "Data.Map.Internal.Debug"
+    \ , "Data.Map.Lazy"
+    \ , "Data.Map.Lazy.Merge"
+    \ , "Data.Map.Merge.Lazy"
+    \ , "Data.Map.Merge.Strict"
+    \ , "Data.Map.Strict"
+    \ , "Data.Map.Strict.Internal"
+    \ , "Data.Map.Strict.Merge"
+    \ , "Data.Sequence"
+    \ , "Data.Sequence.Internal"
+    \ , "Data.Sequence.Internal.Sorting"
+    \ , "Data.Set"
+    \ , "Data.Set.Internal"
+    \ , "Data.Tree"
+    \ , "Utils.Containers.Internal.BitQueue"
+    \ , "Utils.Containers.Internal.BitUtil"
+    \ , "Utils.Containers.Internal.StrictPair"
+    \ , "Control.DeepSeq"
+    \ , "System.Directory"
+    \ , "System.Directory.Internal"
+    \ , "System.Directory.Internal.Prelude"
+    \ , "Control.Monad.Catch"
+    \ , "Control.Monad.Catch.Pure"
+    \ , "Control.Exception.Extensible"
+    \ , "Data.Graph.Inductive"
+    \ , "Data.Graph.Inductive.Basic"
+    \ , "Data.Graph.Inductive.Example"
+    \ , "Data.Graph.Inductive.Graph"
+    \ , "Data.Graph.Inductive.Internal.Heap"
+    \ , "Data.Graph.Inductive.Internal.Queue"
+    \ , "Data.Graph.Inductive.Internal.RootPath"
+    \ , "Data.Graph.Inductive.Internal.Thread"
+    \ , "Data.Graph.Inductive.Monad"
+    \ , "Data.Graph.Inductive.Monad.IOArray"
+    \ , "Data.Graph.Inductive.Monad.STArray"
+    \ , "Data.Graph.Inductive.NodeMap"
+    \ , "Data.Graph.Inductive.PatriciaTree"
+    \ , "Data.Graph.Inductive.Query"
+    \ , "Data.Graph.Inductive.Query.ArtPoint"
+    \ , "Data.Graph.Inductive.Query.BCC"
+    \ , "Data.Graph.Inductive.Query.BFS"
+    \ , "Data.Graph.Inductive.Query.DFS"
+    \ , "Data.Graph.Inductive.Query.Dominators"
+    \ , "Data.Graph.Inductive.Query.GVD"
+    \ , "Data.Graph.Inductive.Query.Indep"
+    \ , "Data.Graph.Inductive.Query.MST"
+    \ , "Data.Graph.Inductive.Query.MaxFlow"
+    \ , "Data.Graph.Inductive.Query.MaxFlow2"
+    \ , "Data.Graph.Inductive.Query.Monad"
+    \ , "Data.Graph.Inductive.Query.SP"
+    \ , "Data.Graph.Inductive.Query.TransClos"
+    \ , "Data.Graph.Inductive.Tree"
+    \ , "System.FilePath"
+    \ , "System.FilePath.Posix"
+    \ , "System.FilePath.Windows"
+    \ , "Numeric.Fixed"
+    \ , "Annotations"
+    \ , "ApiAnnotation"
+    \ , "Ar"
+    \ , "AsmCodeGen"
+    \ , "AsmUtils"
+    \ , "Avail"
+    \ , "Bag"
+    \ , "BasicTypes"
+    \ , "BinFingerprint"
+    \ , "BinIface"
+    \ , "Binary"
+    \ , "Bitmap"
+    \ , "BkpSyn"
+    \ , "BlockId"
+    \ , "BooleanFormula"
+    \ , "BufWrite"
+    \ , "BuildTyCl"
+    \ , "ByteCodeAsm"
+    \ , "ByteCodeGen"
+    \ , "ByteCodeInstr"
+    \ , "ByteCodeItbls"
+    \ , "ByteCodeLink"
+    \ , "ByteCodeTypes"
+    \ , "CLabel"
+    \ , "CPrim"
+    \ , "CSE"
+    \ , "CallArity"
+    \ , "CgUtils"
+    \ , "Check"
+    \ , "Class"
+    \ , "CmdLineParser"
+    \ , "Cmm"
+    \ , "CmmBuildInfoTables"
+    \ , "CmmCallConv"
+    \ , "CmmCommonBlockElim"
+    \ , "CmmContFlowOpt"
+    \ , "CmmExpr"
+    \ , "CmmImplementSwitchPlans"
+    \ , "CmmInfo"
+    \ , "CmmLayoutStack"
+    \ , "CmmLex"
+    \ , "CmmLint"
+    \ , "CmmLive"
+    \ , "CmmMachOp"
+    \ , "CmmMonad"
+    \ , "CmmNode"
+    \ , "CmmOpt"
+    \ , "CmmParse"
+    \ , "CmmPipeline"
+    \ , "CmmProcPoint"
+    \ , "CmmSink"
+    \ , "CmmSwitch"
+    \ , "CmmType"
+    \ , "CmmUtils"
+    \ , "CoAxiom"
+    \ , "CodeGen.Platform"
+    \ , "CodeGen.Platform.ARM"
+    \ , "CodeGen.Platform.ARM64"
+    \ , "CodeGen.Platform.NoRegs"
+    \ , "CodeGen.Platform.PPC"
+    \ , "CodeGen.Platform.PPC_Darwin"
+    \ , "CodeGen.Platform.SPARC"
+    \ , "CodeGen.Platform.X86"
+    \ , "CodeGen.Platform.X86_64"
+    \ , "CodeOutput"
+    \ , "Coercion"
+    \ , "ConLike"
+    \ , "Config"
+    \ , "Constants"
+    \ , "Convert"
+    \ , "CoreArity"
+    \ , "CoreFVs"
+    \ , "CoreLint"
+    \ , "CoreMonad"
+    \ , "CoreOpt"
+    \ , "CorePrep"
+    \ , "CoreSeq"
+    \ , "CoreStats"
+    \ , "CoreSubst"
+    \ , "CoreSyn"
+    \ , "CoreTidy"
+    \ , "CoreToStg"
+    \ , "CoreUnfold"
+    \ , "CoreUtils"
+    \ , "CostCentre"
+    \ , "Coverage"
+    \ , "Ctype"
+    \ , "DataCon"
+    \ , "Debug"
+    \ , "Debugger"
+    \ , "DebuggerUtils"
+    \ , "Demand"
+    \ , "Desugar"
+    \ , "Digraph"
+    \ , "DmdAnal"
+    \ , "DriverBkp"
+    \ , "DriverMkDepend"
+    \ , "DriverPhases"
+    \ , "DriverPipeline"
+    \ , "DsArrows"
+    \ , "DsBinds"
+    \ , "DsCCall"
+    \ , "DsExpr"
+    \ , "DsForeign"
+    \ , "DsGRHSs"
+    \ , "DsListComp"
+    \ , "DsMeta"
+    \ , "DsMonad"
+    \ , "DsUsage"
+    \ , "DsUtils"
+    \ , "Dwarf"
+    \ , "Dwarf.Constants"
+    \ , "Dwarf.Types"
+    \ , "DynFlags"
+    \ , "DynamicLoading"
+    \ , "Elf"
+    \ , "Encoding"
+    \ , "EnumSet"
+    \ , "ErrUtils"
+    \ , "Exception"
+    \ , "Exitify"
+    \ , "FV"
+    \ , "FamInst"
+    \ , "FamInstEnv"
+    \ , "FastFunctions"
+    \ , "FastMutInt"
+    \ , "FastString"
+    \ , "FastStringEnv"
+    \ , "FieldLabel"
+    \ , "FileCleanup"
+    \ , "Finder"
+    \ , "Fingerprint"
+    \ , "FiniteMap"
+    \ , "FlagChecker"
+    \ , "FloatIn"
+    \ , "FloatOut"
+    \ , "ForeignCall"
+    \ , "Format"
+    \ , "FunDeps"
+    \ , "GHC"
+    \ , "GHCi"
+    \ , "GhcMake"
+    \ , "GhcMonad"
+    \ , "GhcPlugins"
+    \ , "GraphBase"
+    \ , "GraphColor"
+    \ , "GraphOps"
+    \ , "GraphPpr"
+    \ , "HaddockUtils"
+    \ , "HeaderInfo"
+    \ , "Hooks"
+    \ , "Hoopl.Block"
+    \ , "Hoopl.Collections"
+    \ , "Hoopl.Dataflow"
+    \ , "Hoopl.Graph"
+    \ , "Hoopl.Label"
+    \ , "Hoopl.Unique"
+    \ , "HsBinds"
+    \ , "HsDecls"
+    \ , "HsDoc"
+    \ , "HsDumpAst"
+    \ , "HsExpr"
+    \ , "HsExtension"
+    \ , "HsImpExp"
+    \ , "HsLit"
+    \ , "HsPat"
+    \ , "HsSyn"
+    \ , "HsTypes"
+    \ , "HsUtils"
+    \ , "HscMain"
+    \ , "HscStats"
+    \ , "HscTypes"
+    \ , "IOEnv"
+    \ , "Id"
+    \ , "IdInfo"
+    \ , "IfaceEnv"
+    \ , "IfaceSyn"
+    \ , "IfaceType"
+    \ , "Inst"
+    \ , "InstEnv"
+    \ , "Instruction"
+    \ , "InteractiveEval"
+    \ , "InteractiveEvalTypes"
+    \ , "Json"
+    \ , "Kind"
+    \ , "KnownUniques"
+    \ , "Lexeme"
+    \ , "Lexer"
+    \ , "LiberateCase"
+    \ , "Linker"
+    \ , "ListSetOps"
+    \ , "ListT"
+    \ , "Literal"
+    \ , "Llvm"
+    \ , "Llvm.AbsSyn"
+    \ , "Llvm.MetaData"
+    \ , "Llvm.PpLlvm"
+    \ , "Llvm.Types"
+    \ , "LlvmCodeGen"
+    \ , "LlvmCodeGen.Base"
+    \ , "LlvmCodeGen.CodeGen"
+    \ , "LlvmCodeGen.Data"
+    \ , "LlvmCodeGen.Ppr"
+    \ , "LlvmCodeGen.Regs"
+    \ , "LlvmMangler"
+    \ , "LoadIface"
+    \ , "Match"
+    \ , "MatchCon"
+    \ , "MatchLit"
+    \ , "Maybes"
+    \ , "MkCore"
+    \ , "MkGraph"
+    \ , "MkId"
+    \ , "MkIface"
+    \ , "Module"
+    \ , "MonadUtils"
+    \ , "NCGMonad"
+    \ , "Name"
+    \ , "NameCache"
+    \ , "NameEnv"
+    \ , "NameSet"
+    \ , "NameShape"
+    \ , "OccName"
+    \ , "OccurAnal"
+    \ , "OptCoercion"
+    \ , "OrdList"
+    \ , "Outputable"
+    \ , "PIC"
+    \ , "PPC.CodeGen"
+    \ , "PPC.Cond"
+    \ , "PPC.Instr"
+    \ , "PPC.Ppr"
+    \ , "PPC.RegInfo"
+    \ , "PPC.Regs"
+    \ , "PackageConfig"
+    \ , "Packages"
+    \ , "Pair"
+    \ , "Panic"
+    \ , "Parser"
+    \ , "PatSyn"
+    \ , "PipelineMonad"
+    \ , "PlaceHolder"
+    \ , "Platform"
+    \ , "PlatformConstants"
+    \ , "Plugins"
+    \ , "PmExpr"
+    \ , "PprBase"
+    \ , "PprC"
+    \ , "PprCmm"
+    \ , "PprCmmDecl"
+    \ , "PprCmmExpr"
+    \ , "PprColour"
+    \ , "PprCore"
+    \ , "PprTyThing"
+    \ , "PrelInfo"
+    \ , "PrelNames"
+    \ , "PrelRules"
+    \ , "Pretty"
+    \ , "PrimOp"
+    \ , "ProfInit"
+    \ , "RdrHsSyn"
+    \ , "RdrName"
+    \ , "Reg"
+    \ , "RegAlloc.Graph.ArchBase"
+    \ , "RegAlloc.Graph.ArchX86"
+    \ , "RegAlloc.Graph.Coalesce"
+    \ , "RegAlloc.Graph.Main"
+    \ , "RegAlloc.Graph.Spill"
+    \ , "RegAlloc.Graph.SpillClean"
+    \ , "RegAlloc.Graph.SpillCost"
+    \ , "RegAlloc.Graph.Stats"
+    \ , "RegAlloc.Graph.TrivColorable"
+    \ , "RegAlloc.Linear.Base"
+    \ , "RegAlloc.Linear.FreeRegs"
+    \ , "RegAlloc.Linear.JoinToTargets"
+    \ , "RegAlloc.Linear.Main"
+    \ , "RegAlloc.Linear.PPC.FreeRegs"
+    \ , "RegAlloc.Linear.SPARC.FreeRegs"
+    \ , "RegAlloc.Linear.StackMap"
+    \ , "RegAlloc.Linear.State"
+    \ , "RegAlloc.Linear.Stats"
+    \ , "RegAlloc.Linear.X86.FreeRegs"
+    \ , "RegAlloc.Linear.X86_64.FreeRegs"
+    \ , "RegAlloc.Liveness"
+    \ , "RegClass"
+    \ , "RepType"
+    \ , "RnBinds"
+    \ , "RnEnv"
+    \ , "RnExpr"
+    \ , "RnFixity"
+    \ , "RnHsDoc"
+    \ , "RnModIface"
+    \ , "RnNames"
+    \ , "RnPat"
+    \ , "RnSource"
+    \ , "RnSplice"
+    \ , "RnTypes"
+    \ , "RnUnbound"
+    \ , "RnUtils"
+    \ , "RtClosureInspect"
+    \ , "Rules"
+    \ , "SAT"
+    \ , "SMRep"
+    \ , "SPARC.AddrMode"
+    \ , "SPARC.Base"
+    \ , "SPARC.CodeGen"
+    \ , "SPARC.CodeGen.Amode"
+    \ , "SPARC.CodeGen.Base"
+    \ , "SPARC.CodeGen.CondCode"
+    \ , "SPARC.CodeGen.Expand"
+    \ , "SPARC.CodeGen.Gen32"
+    \ , "SPARC.CodeGen.Gen64"
+    \ , "SPARC.CodeGen.Sanity"
+    \ , "SPARC.Cond"
+    \ , "SPARC.Imm"
+    \ , "SPARC.Instr"
+    \ , "SPARC.Ppr"
+    \ , "SPARC.Regs"
+    \ , "SPARC.ShortcutJump"
+    \ , "SPARC.Stack"
+    \ , "SetLevels"
+    \ , "SimplCore"
+    \ , "SimplEnv"
+    \ , "SimplMonad"
+    \ , "SimplStg"
+    \ , "SimplUtils"
+    \ , "Simplify"
+    \ , "SpecConstr"
+    \ , "Specialise"
+    \ , "SrcLoc"
+    \ , "State"
+    \ , "StaticPtrTable"
+    \ , "StgCmm"
+    \ , "StgCmmArgRep"
+    \ , "StgCmmBind"
+    \ , "StgCmmClosure"
+    \ , "StgCmmCon"
+    \ , "StgCmmEnv"
+    \ , "StgCmmExpr"
+    \ , "StgCmmExtCode"
+    \ , "StgCmmForeign"
+    \ , "StgCmmHeap"
+    \ , "StgCmmHpc"
+    \ , "StgCmmLayout"
+    \ , "StgCmmMonad"
+    \ , "StgCmmPrim"
+    \ , "StgCmmProf"
+    \ , "StgCmmTicky"
+    \ , "StgCmmUtils"
+    \ , "StgCse"
+    \ , "StgLint"
+    \ , "StgStats"
+    \ , "StgSyn"
+    \ , "Stream"
+    \ , "StringBuffer"
+    \ , "SysTools"
+    \ , "SysTools.BaseDir"
+    \ , "SysTools.ExtraObj"
+    \ , "SysTools.Info"
+    \ , "SysTools.Process"
+    \ , "SysTools.Tasks"
+    \ , "SysTools.Terminal"
+    \ , "THNames"
+    \ , "TargetReg"
+    \ , "TcAnnotations"
+    \ , "TcArrows"
+    \ , "TcBackpack"
+    \ , "TcBinds"
+    \ , "TcCanonical"
+    \ , "TcClassDcl"
+    \ , "TcDefaults"
+    \ , "TcDeriv"
+    \ , "TcDerivInfer"
+    \ , "TcDerivUtils"
+    \ , "TcEnv"
+    \ , "TcErrors"
+    \ , "TcEvidence"
+    \ , "TcExpr"
+    \ , "TcFlatten"
+    \ , "TcForeign"
+    \ , "TcGenDeriv"
+    \ , "TcGenFunctor"
+    \ , "TcGenGenerics"
+    \ , "TcHsSyn"
+    \ , "TcHsType"
+    \ , "TcIface"
+    \ , "TcInstDcls"
+    \ , "TcInteract"
+    \ , "TcMType"
+    \ , "TcMatches"
+    \ , "TcPat"
+    \ , "TcPatSyn"
+    \ , "TcPluginM"
+    \ , "TcRnDriver"
+    \ , "TcRnExports"
+    \ , "TcRnMonad"
+    \ , "TcRnTypes"
+    \ , "TcRules"
+    \ , "TcSMonad"
+    \ , "TcSigs"
+    \ , "TcSimplify"
+    \ , "TcSplice"
+    \ , "TcTyClsDecls"
+    \ , "TcTyDecls"
+    \ , "TcType"
+    \ , "TcTypeNats"
+    \ , "TcTypeable"
+    \ , "TcUnify"
+    \ , "TcValidity"
+    \ , "TidyPgm"
+    \ , "TmOracle"
+    \ , "ToIface"
+    \ , "TrieMap"
+    \ , "TyCoRep"
+    \ , "TyCon"
+    \ , "Type"
+    \ , "TysPrim"
+    \ , "TysWiredIn"
+    \ , "UnVarGraph"
+    \ , "UnariseStg"
+    \ , "Unify"
+    \ , "UniqDFM"
+    \ , "UniqDSet"
+    \ , "UniqFM"
+    \ , "UniqMap"
+    \ , "UniqSet"
+    \ , "UniqSupply"
+    \ , "Unique"
+    \ , "Util"
+    \ , "Var"
+    \ , "VarEnv"
+    \ , "VarSet"
+    \ , "Vectorise"
+    \ , "Vectorise.Builtins"
+    \ , "Vectorise.Builtins.Base"
+    \ , "Vectorise.Builtins.Initialise"
+    \ , "Vectorise.Convert"
+    \ , "Vectorise.Env"
+    \ , "Vectorise.Exp"
+    \ , "Vectorise.Generic.Description"
+    \ , "Vectorise.Generic.PADict"
+    \ , "Vectorise.Generic.PAMethods"
+    \ , "Vectorise.Generic.PData"
+    \ , "Vectorise.Monad"
+    \ , "Vectorise.Monad.Base"
+    \ , "Vectorise.Monad.Global"
+    \ , "Vectorise.Monad.InstEnv"
+    \ , "Vectorise.Monad.Local"
+    \ , "Vectorise.Monad.Naming"
+    \ , "Vectorise.Type.Classify"
+    \ , "Vectorise.Type.Env"
+    \ , "Vectorise.Type.TyConDecl"
+    \ , "Vectorise.Type.Type"
+    \ , "Vectorise.Utils"
+    \ , "Vectorise.Utils.Base"
+    \ , "Vectorise.Utils.Closure"
+    \ , "Vectorise.Utils.Hoisting"
+    \ , "Vectorise.Utils.PADict"
+    \ , "Vectorise.Utils.Poly"
+    \ , "Vectorise.Var"
+    \ , "Vectorise.Vect"
+    \ , "WorkWrap"
+    \ , "WwLib"
+    \ , "X86.CodeGen"
+    \ , "X86.Cond"
+    \ , "X86.Instr"
+    \ , "X86.Ppr"
+    \ , "X86.RegInfo"
+    \ , "X86.Regs"
+    \ , "Numeric.Half"
+    \ , "Data.Hashable"
+    \ , "Data.Hashable.Lifted"
+    \ , "Language.Haskell.Lexer"
+    \ , "Language.Haskell.ParseMonad"
+    \ , "Language.Haskell.ParseUtils"
+    \ , "Language.Haskell.Parser"
+    \ , "Language.Haskell.Pretty"
+    \ , "Language.Haskell.Syntax"
+    \ , "Control.Monad"
+    \ , "Data.Array"
+    \ , "Data.Bits"
+    \ , "Data.Char"
+    \ , "Data.Complex"
+    \ , "Data.Int"
+    \ , "Data.Ix"
+    \ , "Data.List"
+    \ , "Data.Maybe"
+    \ , "Data.Ratio"
+    \ , "Data.Word"
+    \ , "Foreign"
+    \ , "Foreign.C"
+    \ , "Foreign.C.Error"
+    \ , "Foreign.C.String"
+    \ , "Foreign.C.Types"
+    \ , "Foreign.ForeignPtr"
+    \ , "Foreign.Marshal"
+    \ , "Foreign.Marshal.Alloc"
+    \ , "Foreign.Marshal.Array"
+    \ , "Foreign.Marshal.Error"
+    \ , "Foreign.Marshal.Utils"
+    \ , "Foreign.Ptr"
+    \ , "Foreign.StablePtr"
+    \ , "Foreign.Storable"
+    \ , "Numeric"
+    \ , "Prelude"
+    \ , "System.Environment"
+    \ , "System.Exit"
+    \ , "System.IO"
+    \ , "System.IO.Error"
+    \ , "Array"
+    \ , "Bits"
+    \ , "CError"
+    \ , "CForeign"
+    \ , "CPUTime"
+    \ , "CString"
+    \ , "CTypes"
+    \ , "Char"
+    \ , "Complex"
+    \ , "Directory"
+    \ , "ForeignPtr"
+    \ , "IO"
+    \ , "Int"
+    \ , "Ix"
+    \ , "List"
+    \ , "Locale"
+    \ , "MarshalAlloc"
+    \ , "MarshalArray"
+    \ , "MarshalError"
+    \ , "MarshalUtils"
+    \ , "Maybe"
+    \ , "Monad"
+    \ , "Numeric"
+    \ , "Prelude"
+    \ , "Ptr"
+    \ , "Random"
+    \ , "Ratio"
+    \ , "StablePtr"
+    \ , "Storable"
+    \ , "System"
+    \ , "Time"
+    \ , "Word"
+    \ , "Trace.Hpc.Mix"
+    \ , "Trace.Hpc.Reflect"
+    \ , "Trace.Hpc.Tix"
+    \ , "Trace.Hpc.Util"
+    \ , "Text.Html"
+    \ , "Text.Html.BlockTable"
+    \ , "GHC.Integer.Logarithms.Compat"
+    \ , "Math.NumberTheory.Logarithms"
+    \ , "Math.NumberTheory.Powers.Integer"
+    \ , "Math.NumberTheory.Powers.Natural"
+    \ , "Control.Monad.Cont"
+    \ , "Control.Monad.Cont.Class"
+    \ , "Control.Monad.Error"
+    \ , "Control.Monad.Error.Class"
+    \ , "Control.Monad.Except"
+    \ , "Control.Monad.Identity"
+    \ , "Control.Monad.List"
+    \ , "Control.Monad.RWS"
+    \ , "Control.Monad.RWS.Class"
+    \ , "Control.Monad.RWS.Lazy"
+    \ , "Control.Monad.RWS.Strict"
+    \ , "Control.Monad.Reader"
+    \ , "Control.Monad.Reader.Class"
+    \ , "Control.Monad.State"
+    \ , "Control.Monad.State.Class"
+    \ , "Control.Monad.State.Lazy"
+    \ , "Control.Monad.State.Strict"
+    \ , "Control.Monad.Trans"
+    \ , "Control.Monad.Writer"
+    \ , "Control.Monad.Writer.Class"
+    \ , "Control.Monad.Writer.Lazy"
+    \ , "Control.Monad.Writer.Strict"
+    \ , "Network.Multipart"
+    \ , "Network.Multipart.Header"
+    \ , "Network"
+    \ , "Network.BSD"
+    \ , "Network.Socket"
+    \ , "Network.Socket.ByteString"
+    \ , "Network.Socket.ByteString.Lazy"
+    \ , "Network.Socket.Internal"
+    \ , "Network.URI"
+    \ , "System.Locale"
+    \ , "System.Time"
+    \ , "Control.Parallel"
+    \ , "Control.Parallel.Strategies"
+    \ , "Control.Seq"
+    \ , "Text.Parsec"
+    \ , "Text.Parsec.ByteString"
+    \ , "Text.Parsec.ByteString.Lazy"
+    \ , "Text.Parsec.Char"
+    \ , "Text.Parsec.Combinator"
+    \ , "Text.Parsec.Error"
+    \ , "Text.Parsec.Expr"
+    \ , "Text.Parsec.Language"
+    \ , "Text.Parsec.Perm"
+    \ , "Text.Parsec.Pos"
+    \ , "Text.Parsec.Prim"
+    \ , "Text.Parsec.String"
+    \ , "Text.Parsec.Text"
+    \ , "Text.Parsec.Text.Lazy"
+    \ , "Text.Parsec.Token"
+    \ , "Text.ParserCombinators.Parsec"
+    \ , "Text.ParserCombinators.Parsec.Char"
+    \ , "Text.ParserCombinators.Parsec.Combinator"
+    \ , "Text.ParserCombinators.Parsec.Error"
+    \ , "Text.ParserCombinators.Parsec.Expr"
+    \ , "Text.ParserCombinators.Parsec.Language"
+    \ , "Text.ParserCombinators.Parsec.Perm"
+    \ , "Text.ParserCombinators.Parsec.Pos"
+    \ , "Text.ParserCombinators.Parsec.Prim"
+    \ , "Text.ParserCombinators.Parsec.Token"
+    \ , "Text.PrettyPrint"
+    \ , "Text.PrettyPrint.Annotated"
+    \ , "Text.PrettyPrint.Annotated.HughesPJ"
+    \ , "Text.PrettyPrint.Annotated.HughesPJClass"
+    \ , "Text.PrettyPrint.HughesPJ"
+    \ , "Text.PrettyPrint.HughesPJClass"
+    \ , "Control.Monad.Primitive"
+    \ , "Data.Primitive"
+    \ , "Data.Primitive.Addr"
+    \ , "Data.Primitive.Array"
+    \ , "Data.Primitive.ByteArray"
+    \ , "Data.Primitive.MVar"
+    \ , "Data.Primitive.MachDeps"
+    \ , "Data.Primitive.MutVar"
+    \ , "Data.Primitive.PrimArray"
+    \ , "Data.Primitive.Ptr"
+    \ , "Data.Primitive.SmallArray"
+    \ , "Data.Primitive.Types"
+    \ , "Data.Primitive.UnliftedArray"
+    \ , "System.Cmd"
+    \ , "System.Process"
+    \ , "System.Process.Internals"
+    \ , "System.Random"
+    \ , "Text.Regex.Base"
+    \ , "Text.Regex.Base.Context"
+    \ , "Text.Regex.Base.Impl"
+    \ , "Text.Regex.Base.RegexLike"
+    \ , "Text.Regex"
+    \ , "Text.Regex.Posix"
+    \ , "Text.Regex.Posix.ByteString"
+    \ , "Text.Regex.Posix.ByteString.Lazy"
+    \ , "Text.Regex.Posix.Sequence"
+    \ , "Text.Regex.Posix.String"
+    \ , "Text.Regex.Posix.Wrap"
+    \ , "Data.ByteString.Builder.Scientific"
+    \ , "Data.Scientific"
+    \ , "Data.Text.Lazy.Builder.Scientific"
+    \ , "Data.List.Split"
+    \ , "Data.List.Split.Internals"
+    \ , "Control.Concurrent.STM"
+    \ , "Control.Concurrent.STM.TArray"
+    \ , "Control.Concurrent.STM.TBQueue"
+    \ , "Control.Concurrent.STM.TChan"
+    \ , "Control.Concurrent.STM.TMVar"
+    \ , "Control.Concurrent.STM.TQueue"
+    \ , "Control.Concurrent.STM.TSem"
+    \ , "Control.Concurrent.STM.TVar"
+    \ , "Control.Monad.STM"
+    \ , "Data.Generics"
+    \ , "Data.Generics.Aliases"
+    \ , "Data.Generics.Basics"
+    \ , "Data.Generics.Builders"
+    \ , "Data.Generics.Instances"
+    \ , "Data.Generics.Schemes"
+    \ , "Data.Generics.Text"
+    \ , "Data.Generics.Twins"
+    \ , "Generics.SYB"
+    \ , "Generics.SYB.Aliases"
+    \ , "Generics.SYB.Basics"
+    \ , "Generics.SYB.Builders"
+    \ , "Generics.SYB.Instances"
+    \ , "Generics.SYB.Schemes"
+    \ , "Generics.SYB.Text"
+    \ , "Generics.SYB.Twins"
+    \ , "Language.Haskell.TH"
+    \ , "Language.Haskell.TH.LanguageExtensions"
+    \ , "Language.Haskell.TH.Lib"
+    \ , "Language.Haskell.TH.Lib.Internal"
+    \ , "Language.Haskell.TH.Ppr"
+    \ , "Language.Haskell.TH.PprLib"
+    \ , "Language.Haskell.TH.Quote"
+    \ , "Language.Haskell.TH.Syntax"
+    \ , "Data.Text"
+    \ , "Data.Text.Array"
+    \ , "Data.Text.Encoding"
+    \ , "Data.Text.Encoding.Error"
+    \ , "Data.Text.Foreign"
+    \ , "Data.Text.IO"
+    \ , "Data.Text.Internal"
+    \ , "Data.Text.Internal.Builder"
+    \ , "Data.Text.Internal.Builder.Functions"
+    \ , "Data.Text.Internal.Builder.Int.Digits"
+    \ , "Data.Text.Internal.Builder.RealFloat.Functions"
+    \ , "Data.Text.Internal.Encoding.Fusion"
+    \ , "Data.Text.Internal.Encoding.Fusion.Common"
+    \ , "Data.Text.Internal.Encoding.Utf16"
+    \ , "Data.Text.Internal.Encoding.Utf32"
+    \ , "Data.Text.Internal.Encoding.Utf8"
+    \ , "Data.Text.Internal.Functions"
+    \ , "Data.Text.Internal.Fusion"
+    \ , "Data.Text.Internal.Fusion.CaseMapping"
+    \ , "Data.Text.Internal.Fusion.Common"
+    \ , "Data.Text.Internal.Fusion.Size"
+    \ , "Data.Text.Internal.Fusion.Types"
+    \ , "Data.Text.Internal.IO"
+    \ , "Data.Text.Internal.Lazy"
+    \ , "Data.Text.Internal.Lazy.Encoding.Fusion"
+    \ , "Data.Text.Internal.Lazy.Fusion"
+    \ , "Data.Text.Internal.Lazy.Search"
+    \ , "Data.Text.Internal.Private"
+    \ , "Data.Text.Internal.Read"
+    \ , "Data.Text.Internal.Search"
+    \ , "Data.Text.Internal.Unsafe"
+    \ , "Data.Text.Internal.Unsafe.Char"
+    \ , "Data.Text.Internal.Unsafe.Shift"
+    \ , "Data.Text.Lazy"
+    \ , "Data.Text.Lazy.Builder"
+    \ , "Data.Text.Lazy.Builder.Int"
+    \ , "Data.Text.Lazy.Builder.RealFloat"
+    \ , "Data.Text.Lazy.Encoding"
+    \ , "Data.Text.Lazy.IO"
+    \ , "Data.Text.Lazy.Internal"
+    \ , "Data.Text.Lazy.Read"
+    \ , "Data.Text.Read"
+    \ , "Data.Text.Unsafe"
+    \ , "System.Random.TF"
+    \ , "System.Random.TF.Gen"
+    \ , "System.Random.TF.Init"
+    \ , "System.Random.TF.Instances"
+    \ , "Data.Time"
+    \ , "Data.Time.Calendar"
+    \ , "Data.Time.Calendar.Easter"
+    \ , "Data.Time.Calendar.Julian"
+    \ , "Data.Time.Calendar.MonthDay"
+    \ , "Data.Time.Calendar.OrdinalDate"
+    \ , "Data.Time.Calendar.WeekDate"
+    \ , "Data.Time.Clock"
+    \ , "Data.Time.Clock.POSIX"
+    \ , "Data.Time.Clock.System"
+    \ , "Data.Time.Clock.TAI"
+    \ , "Data.Time.Format"
+    \ , "Data.Time.LocalTime"
+    \ , "Control.Applicative.Backwards"
+    \ , "Control.Applicative.Lift"
+    \ , "Control.Monad.Signatures"
+    \ , "Control.Monad.Trans.Accum"
+    \ , "Control.Monad.Trans.Class"
+    \ , "Control.Monad.Trans.Cont"
+    \ , "Control.Monad.Trans.Error"
+    \ , "Control.Monad.Trans.Except"
+    \ , "Control.Monad.Trans.Identity"
+    \ , "Control.Monad.Trans.List"
+    \ , "Control.Monad.Trans.Maybe"
+    \ , "Control.Monad.Trans.RWS"
+    \ , "Control.Monad.Trans.RWS.Lazy"
+    \ , "Control.Monad.Trans.RWS.Strict"
+    \ , "Control.Monad.Trans.Reader"
+    \ , "Control.Monad.Trans.Select"
+    \ , "Control.Monad.Trans.State"
+    \ , "Control.Monad.Trans.State.Lazy"
+    \ , "Control.Monad.Trans.State.Strict"
+    \ , "Control.Monad.Trans.Writer"
+    \ , "Control.Monad.Trans.Writer.Lazy"
+    \ , "Control.Monad.Trans.Writer.Strict"
+    \ , "Data.Functor.Constant"
+    \ , "Data.Functor.Reverse"
+    \ , "Control.Monad.Trans.Instances"
+    \ , "Data.Functor.Classes.Generic"
+    \ , "Data.Functor.Classes.Generic.Internal"
+    \ , "System.Posix"
+    \ , "System.Posix.ByteString"
+    \ , "System.Posix.ByteString.FilePath"
+    \ , "System.Posix.Directory"
+    \ , "System.Posix.Directory.ByteString"
+    \ , "System.Posix.DynamicLinker"
+    \ , "System.Posix.DynamicLinker.ByteString"
+    \ , "System.Posix.DynamicLinker.Module"
+    \ , "System.Posix.DynamicLinker.Module.ByteString"
+    \ , "System.Posix.DynamicLinker.Prim"
+    \ , "System.Posix.Env"
+    \ , "System.Posix.Env.ByteString"
+    \ , "System.Posix.Error"
+    \ , "System.Posix.Fcntl"
+    \ , "System.Posix.Files"
+    \ , "System.Posix.Files.ByteString"
+    \ , "System.Posix.IO"
+    \ , "System.Posix.IO.ByteString"
+    \ , "System.Posix.Process"
+    \ , "System.Posix.Process.ByteString"
+    \ , "System.Posix.Process.Internals"
+    \ , "System.Posix.Resource"
+    \ , "System.Posix.Semaphore"
+    \ , "System.Posix.SharedMem"
+    \ , "System.Posix.Signals"
+    \ , "System.Posix.Signals.Exts"
+    \ , "System.Posix.Temp"
+    \ , "System.Posix.Temp.ByteString"
+    \ , "System.Posix.Terminal"
+    \ , "System.Posix.Terminal.ByteString"
+    \ , "System.Posix.Time"
+    \ , "System.Posix.Unistd"
+    \ , "System.Posix.User"
+    \ , "Data.HashMap.Lazy"
+    \ , "Data.HashMap.Strict"
+    \ , "Data.HashSet"
+    \ , "Data.Vector"
+    \ , "Data.Vector.Fusion.Bundle"
+    \ , "Data.Vector.Fusion.Bundle.Monadic"
+    \ , "Data.Vector.Fusion.Bundle.Size"
+    \ , "Data.Vector.Fusion.Stream.Monadic"
+    \ , "Data.Vector.Fusion.Util"
+    \ , "Data.Vector.Generic"
+    \ , "Data.Vector.Generic.Base"
+    \ , "Data.Vector.Generic.Mutable"
+    \ , "Data.Vector.Generic.Mutable.Base"
+    \ , "Data.Vector.Generic.New"
+    \ , "Data.Vector.Internal.Check"
+    \ , "Data.Vector.Mutable"
+    \ , "Data.Vector.Primitive"
+    \ , "Data.Vector.Primitive.Mutable"
+    \ , "Data.Vector.Storable"
+    \ , "Data.Vector.Storable.Internal"
+    \ , "Data.Vector.Storable.Mutable"
+    \ , "Data.Vector.Unboxed"
+    \ , "Data.Vector.Unboxed.Base"
+    \ , "Data.Vector.Unboxed.Mutable"
+    \ , "Text.XHtml"
+    \ , "Text.XHtml.Debug"
+    \ , "Text.XHtml.Frameset"
+    \ , "Text.XHtml.Strict"
+    \ , "Text.XHtml.Table"
+    \ , "Text.XHtml.Transitional"
+    \ , "Codec.Compression.GZip"
+    \ , "Codec.Compression.Zlib"
+    \ , "Codec.Compression.Zlib.Internal"
+    \ , "Codec.Compression.Zlib.Raw"
+    \ , "Web.Spock"
+    \ , "Web.Spock.Config"
+    \ , "Web.Spock.Internal.SessionManager"
+    \ , "Web.Spock.Internal.SessionVault"
+    \ , "Web.Spock.SessionActions"
+    \ , "Web.Spock.Api"
+    \ , "Web.Spock.Auth"
+    \ , "Web.Spock.Action"
+    \ , "Web.Spock.Core"
+    \ , "Web.Spock.Internal.Cookies"
+    \ , "Web.Spock.Internal.Util"
+    \ , "Web.Spock.Routing"
+    \ , "Web.Spock.Digestive"
+    \ , "Database.Esqueleto"
+    \ , "Database.Esqueleto.Internal.Language"
+    \ , "Database.Esqueleto.Internal.Sql"
+    \ , "Database.Esqueleto.PostgreSQL"
+    \ , "Database.Persist"
+    \ , "Database.Persist.Class"
+    \ , "Database.Persist.Quasi"
+    \ , "Database.Persist.Sql"
+    \ , "Database.Persist.Sql.Types.Internal"
+    \ , "Database.Persist.Sql.Util"
+    \ , "Database.Persist.Types"
+    \ , "Database.Persist.MySQL"
+    \ , "Database.Persist.Postgresql"
+    \ , "Database.Persist.Postgresql.JSON"
+    \ , "Database.Persist.Redis"
+    \ , "Database.Persist.Sqlite"
+    \ , "Database.Sqlite"
+    \ , "Servant.API"
+    \ , "Servant.API.Alternative"
+    \ , "Servant.API.BasicAuth"
+    \ , "Servant.API.Capture"
+    \ , "Servant.API.ContentTypes"
+    \ , "Servant.API.Description"
+    \ , "Servant.API.Empty"
+    \ , "Servant.API.Experimental.Auth"
+    \ , "Servant.API.Generic"
+    \ , "Servant.API.Header"
+    \ , "Servant.API.HttpVersion"
+    \ , "Servant.API.Internal.Test.ComprehensiveAPI"
+    \ , "Servant.API.IsSecure"
+    \ , "Servant.API.Modifiers"
+    \ , "Servant.API.QueryParam"
+    \ , "Servant.API.Raw"
+    \ , "Servant.API.RemoteHost"
+    \ , "Servant.API.ReqBody"
+    \ , "Servant.API.ResponseHeaders"
+    \ , "Servant.API.Stream"
+    \ , "Servant.API.Sub"
+    \ , "Servant.API.TypeLevel"
+    \ , "Servant.API.Vault"
+    \ , "Servant.API.Verbs"
+    \ , "Servant.API.WithNamedContext"
+    \ , "Servant.Links"
+    \ , "Servant.Utils.Enter"
+    \ , "Servant.Utils.Links"
+    \ , "Servant.Auth"
+    \ , "Servant.Client"
+    \ , "Servant.Client.Internal.HttpClient"
+    \ , "Servant"
+    \ , "Servant.Server"
+    \ , "Servant.Server.Experimental.Auth"
+    \ , "Servant.Server.Generic"
+    \ , "Servant.Server.Internal"
+    \ , "Servant.Server.Internal.BasicAuth"
+    \ , "Servant.Server.Internal.Context"
+    \ , "Servant.Server.Internal.Handler"
+    \ , "Servant.Server.Internal.Router"
+    \ , "Servant.Server.Internal.RoutingApplication"
+    \ , "Servant.Server.Internal.ServantErr"
+    \ , "Servant.Server.StaticFiles"
+    \ , "Servant.Utils.StaticFiles"
+    \ ]
index 9c518cb9d0adfc8ac2d7fc25d9268c0c11b5bf02..34eab9670946adba13e01dff814ec468af9d7ae9 100644 (file)
@@ -155,7 +155,7 @@ fun! tar#Browse(tarfile)
   let curlast= line("$")
   if tarfile =~# '\.\(gz\|tgz\)$'
 "   call Decho("1: exe silent r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
-   exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
+   exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
   elseif tarfile =~# '\.lrp'
 "   call Decho("2: exe silent r! cat -- ".shellescape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - ")
    exe "sil! r! cat -- ".shellescape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - "
@@ -292,7 +292,7 @@ fun! tar#Read(fname,mode)
    exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
   elseif tarfile =~# '\.\(gz\|tgz\)$'
 "   call Decho("5: exe silent r! gzip -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd.' -'.g:tar_readoptions.' - '.tar_secure.shellescape(fname,1))
-   exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
+   exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
   elseif tarfile =~# '\.lrp$'
 "   call Decho("6: exe silent r! cat ".shellescape(tarfile,1)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp)
    exe "sil! r! cat -- ".shellescape(tarfile,1)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
index 2e5bf7f3d1f1d1d404910548ffcf90d0d3b185a5..e8383956398107ca0eea82c995ad4976910cbc5f 100644 (file)
@@ -954,6 +954,13 @@ These three can be repeated and mixed.  Examples:
 
 expr8                                                  *expr8*
 -----
+This expression is either |expr9| or a sequence of the alternatives below,
+in any order.  E.g., these are all possible:
+       expr9[expr1].name
+       expr9.name[expr1]
+       expr9(expr1, ...)[expr1].name
+
+
 expr8[expr1]           item of String or |List|        *expr-[]* *E111*
                                                        *E909* *subscript*
 If expr8 is a Number or String this results in a String that contains the
@@ -8014,6 +8021,7 @@ swapinfo({fname})                                 swapinfo()
                        mtime   last modification time in seconds
                        inode   Optional: INODE number of the file
                        dirty   1 if file was modified, 0 if not
+               Note that "user" and "host" are truncated to at most 39 bytes.
                In case of failure an "error" item is added with the reason:
                        Cannot open file: file not found or in accessible
                        Cannot read file: cannot read first block
index b08e3d73f966ed7db474628c65b176492a16dcee..da3f260d1ab99e12f7402ec311164136815106bc 100644 (file)
@@ -638,11 +638,31 @@ By default the following options are set, in accordance with PEP8: >
 
        setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8
 
-To disable this behaviour, set the following variable in your vimrc: >
+To disable this behavior, set the following variable in your vimrc: >
 
        let g:python_recommended_style = 0
 
 
+R MARKDOWN                                             *ft-rmd-plugin*
+
+By default ftplugin/html.vim is not sourced. If you want it sourced, add to
+your |vimrc|: >
+       let rmd_include_html = 1
+
+The 'formatexpr' option is set dynamically with different values for R code
+and for Markdown code. If you prefer that 'formatexpr' is not set, add to your
+|vimrc|: >
+       let rmd_dynamic_comments = 0
+
+
+R RESTRUCTURED TEXT                                    *ft-rrst-plugin*
+
+The 'formatexpr' option is set dynamically with different values for R code
+and for ReStructured text. If you prefer that 'formatexpr' is not set, add to
+your |vimrc|: >
+       let rrst_dynamic_comments = 0
+
+
 RPM SPEC                                               *ft-spec-plugin*
 
 Since the text for this plugin is rather long it has been put in a separate
index 30a3a726a031b1706d99bc8b74a6db019750ee2a..d21de4b469d2ad60d3fc4e8458b4981153089e13 100644 (file)
@@ -168,11 +168,15 @@ vim.eval(str)                                             *python-eval*
        - a dictionary if the Vim expression evaluates to a Vim dictionary
        Dictionaries and lists are recursively expanded.
        Examples: >
+           :" value of the 'textwidth' option
            :py text_width = vim.eval("&tw")
-           :py str = vim.eval("12+12")         # NB result is a string! Use
-                                               # string.atoi() to convert to
-                                               # a number.
-
+           :
+           :" contents of the 'a' register
+           :py a_reg = vim.eval("@a") 
+           :
+           :" Result is a string! Use string.atoi() to convert to a number.
+           :py str = vim.eval("12+12")
+           :
            :py tagList = vim.eval('taglist("eval_expr")')
 <      The latter will return a python list of python dicts, for instance:
        [{'cmd': '/^eval_expr(arg, nextcmd)$/', 'static': 0, 'name': ~
index 54fb52618b389a0b67392e9587b7a3d24453f908..b1f44b7d7913d246ce06dd3cb75ba98c1065d738 100644 (file)
@@ -978,6 +978,11 @@ Below is an example of indentation with and without this option enabled:
        paste(x)                                      paste(x)
    }                                             }
 <
+The code will be indented after lines that match the pattern
+`'\(&\||\|+\|-\|\*\|/\|=\|\~\|%\|->\)\s*$'`. If you want indentation after
+lines that match a different pattern, you should set the appropriate value of
+`r_indent_op_pattern` in your |vimrc|.
+
 
 SHELL                                                  *ft-sh-indent*
 
index e145cacf318a328b38ac29d2aae1f43000dda45d..a200fc5ca8efd54fde7326cfd2873f30025920d6 100644 (file)
@@ -1051,13 +1051,13 @@ The function must return the column where the completion starts.  It must be a
 number between zero and the cursor column "col('.')".  This involves looking
 at the characters just before the cursor and including those characters that
 could be part of the completed item.  The text between this column and the
-cursor column will be replaced with the matches.
+cursor column will be replaced with the matches.  If the returned value is
+larger than the cursor column, the cursor column is used.
 
-Special return values:
-   -1 If no completion can be done, the completion will be cancelled with an
-      error message.
-   -2 To cancel silently and stay in completion mode.
-   -3 To cancel silently and leave completion mode.
+Negative return values:
+   -2  To cancel silently and stay in completion mode.
+   -3  To cancel silently and leave completion mode.
+   Another negative value: completion starts at the cursor column
 
 On the second invocation the arguments are:
    a:findstart  0
index 2343d634251f8aa1ac06f241647a8b255a6e1ef0..9d2d6bfc4e2de506556eaaef7e07c07ad4118f5a 100644 (file)
@@ -4480,8 +4480,18 @@ A jump table for the options with a short description can be found at |Q_op|.
        so far, matches.  The matched string is highlighted.  If the pattern
        is invalid or not found, nothing is shown.  The screen will be updated
        often, this is only useful on fast terminals.
-       Also applies to the `:s`, `:g` and `:v` commands.
-       Note that the match will be shown, but the cursor will return to its
+       Also applies to the pattern in commands: >
+               :global
+               :lvimgrep
+               :lvimgrepadd
+               :smagic
+               :snomagic
+               :sort
+               :substitute
+               :vglobal
+               :vimgrep
+               :vimgrepadd
+<      Note that the match will be shown, but the cursor will return to its
        original position when no match is found and when pressing <Esc>.  You
        still need to finish the search command with <Enter> to move the
        cursor to the match.
index 211fe961171ef4ea845d1dd00dbac4a359583248..3ef3be8e68e0376450f888b7ed1522dec56d4373 100644 (file)
@@ -1557,8 +1557,8 @@ reduce the number of entries.  Load the plugin with: >
    packadd cfilter
 
 Then you can use these command: >
-   :Cfilter[!] {pat}
-   :Lfilter[!] {pat}
+   :Cfilter[!] /{pat}/
+   :Lfilter[!] /{pat}/
 
 :Cfilter creates a new quickfix list from entries matching {pat} in the
 current quickfix list. Both the file name and the text of the entries are
index b1a1e7258f3b68531e52642950c18977c6acef63..8d9029a4a3385db4eef9f23eccb6bb1cda90e561 100644 (file)
@@ -1265,7 +1265,7 @@ doxygen_javadoc_autobrief 1       Set to 0 to disable javadoc autobrief
 doxygen_end_punctuation                '[.]'   Set to regexp match for the ending
                                        punctuation of brief
 
-There are also some hilight groups worth mentioning as they can be useful in
+There are also some highlight groups worth mentioning as they can be useful in
 configuration.
 
 Highlight                      Effect ~
@@ -2641,6 +2641,48 @@ Any combination of these three variables is legal, but might highlight more
 commands than are actually available to you by the game.
 
 
+R                                                      *r.vim* *ft-r-syntax*
+
+The parsing of R code for syntax highlight starts 40 lines backwards, but you
+can set a different value in your |vimrc|. Example: >
+       let r_syntax_minlines = 60
+
+You can also turn off syntax highlighting of ROxygen: >
+       let r_syntax_hl_roxygen = 0
+
+enable folding of code delimited by parentheses, square brackets and curly
+braces: >
+       let r_syntax_folding = 1
+
+and highlight as functions all keywords followed by an opening parenthesis: >
+       let r_syntax_fun_pattern = 1
+
+
+R MARKDOWN                                     *rmd.vim* *ft-rmd-syntax*
+
+To disable syntax highlight of YAML header, add to your |vimrc|: >
+       let rmd_syn_hl_yaml = 0
+
+To disable syntax highlighting of citation keys: >
+       let rmd_syn_hl_citations = 0
+
+To highlight R code in knitr chunk headers: >
+       let rmd_syn_hl_chunk = 1
+
+By default, chunks of R code will be highlighted following the rules of R
+language. If you want proper syntax highlighting of chunks of other languages,
+you should add them to either `markdown_fenced_languages` or
+`rmd_fenced_languages`. For example to properly highlight both R and Python,
+you may add this to your |vimrc|: >
+       let rmd_fenced_languages = ['r', 'python']
+
+
+R RESTRUCTURED TEXT                            *rrst.vim* *ft-rrst-syntax*
+
+To highlight R code in knitr chunk headers, add to your |vimrc|: >
+       let rrst_syn_hl_chunk = 1
+
+
 READLINE                               *readline.vim* *ft-readline-syntax*
 
 The readline library is primarily used by the BASH shell, which adds quite a
index 1d3365c3cd250e540134b6c6ec7c6f40ae9cbd16..57224f62d3da1604a600cbf2d32b9ccd6da8ce0a 100644 (file)
@@ -243,7 +243,7 @@ REORDERING TAB PAGES:
                Move the current tab page to after tab page N.  Use zero to
                make the current tab page the first one.  N is counted before
                the move, thus if the second tab is the current one,
-               `:tabmove 1`` and `:tabmove 2`  have no effect.
+               `:tabmove 1` and `:tabmove 2`  have no effect.
                Without N the tab page is made the last one. >
                    :.tabmove   " do nothing
                    :-tabmove   " move the tab page to the left
index ed262d4b68d9f6c48aa1734866a482d147d14369..75615fe2c1866ec329081727bc2ee88e14d8d8af 100644 (file)
@@ -6270,8 +6270,13 @@ ft-python-plugin filetype.txt    /*ft-python-plugin*
 ft-python-syntax       syntax.txt      /*ft-python-syntax*
 ft-quake-syntax        syntax.txt      /*ft-quake-syntax*
 ft-r-indent    indent.txt      /*ft-r-indent*
+ft-r-syntax    syntax.txt      /*ft-r-syntax*
 ft-readline-syntax     syntax.txt      /*ft-readline-syntax*
 ft-rexx-syntax syntax.txt      /*ft-rexx-syntax*
+ft-rmd-plugin  filetype.txt    /*ft-rmd-plugin*
+ft-rmd-syntax  syntax.txt      /*ft-rmd-syntax*
+ft-rrst-plugin filetype.txt    /*ft-rrst-plugin*
+ft-rrst-syntax syntax.txt      /*ft-rrst-syntax*
 ft-rst-syntax  syntax.txt      /*ft-rst-syntax*
 ft-ruby-omni   insert.txt      /*ft-ruby-omni*
 ft-ruby-syntax syntax.txt      /*ft-ruby-syntax*
@@ -8200,6 +8205,7 @@ quotes.txt        quotes.txt      /*quotes.txt*
 quotestar      gui.txt /*quotestar*
 quote~ change.txt      /*quote~*
 r      change.txt      /*r*
+r.vim  syntax.txt      /*r.vim*
 range()        eval.txt        /*range()*
 raw-terminal-mode      term.txt        /*raw-terminal-mode*
 rcp    pi_netrw.txt    /*rcp*
@@ -8264,8 +8270,10 @@ right-justify    change.txt      /*right-justify*
 rileft rileft.txt      /*rileft*
 rileft.txt     rileft.txt      /*rileft.txt*
 riscos os_risc.txt     /*riscos*
+rmd.vim        syntax.txt      /*rmd.vim*
 rot13  change.txt      /*rot13*
 round()        eval.txt        /*round()*
+rrst.vim       syntax.txt      /*rrst.vim*
 rst.vim        syntax.txt      /*rst.vim*
 rsync  pi_netrw.txt    /*rsync*
 ruby   if_ruby.txt     /*ruby*
index 7bdef48297f2bfd5800319eaf28299cf9c592e8c..b954715b8a2d5e432cdeb34993c8bc15ce178b77 100644 (file)
@@ -228,6 +228,10 @@ Syntax ~
 
                        If you want to use more options use the |term_start()|
                        function.
+                       If you want to split the window vertically, use: >
+                               :vertical terminal
+<                      Or short: >
+                               :vert ter
 
 When the buffer associated with the terminal is forcibly unloaded or wiped out
 the job is killed, similar to calling `job_stop(job, "kill")` .
index 4b1739bdb460857018655fd702702a3b229be2c2..818cb3741c12b58b99cacc3125ab85eb1ffb5971 100644 (file)
@@ -38,6 +38,15 @@ browser use: https://github.com/vim/vim/issues/1234
                                                        *known-bugs*
 -------------------- Known bugs and current work -----------------------
 
+'incsearch' with :s: (#3321)
+- :/foo/s//<Esc>  changes last search pattern.  Also E486.
+- :s/foo  using CTRL-G moves to another line, should not happen, or use the
+  correct line (it uses the last but one line) (Lifepillar, Aug 18, #3345)
+- Also support range: :/foo/,/bar/delete
+- :%s/foo should take the first match below the cursor line, unless there
+  isn't one?
+  Then :%s?foo should take the first match above the cursor line.
+
 Prompt buffer:
 - Add a command line history.
 - delay next prompt until plugin gives OK?
@@ -50,11 +59,16 @@ Terminal debugger:
   initializing mzscheme avoid the problem, thus it's not some #ifdef.
 
 Terminal emulator window:
+- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
+  (#3327)
 - When the job in the terminal doesn't use mouse events, let the scroll wheel
   scroll the scrollback, like a terminal does at the shell prompt. #2490
   And use modeless selection.  #2962
+- Allow for specifying the directory, with ++cwd={dir}.
 - With a vertical split only one window is updated. (Linwei, 2018 Jun 2,
   #2977)
+- Add a way to make ":term cmd" run "cmd" in a shell, instead of executing it
+  directly.  Perhaps ":term ++shell cmd". (#3340)
 - When pasting should call vterm_keyboard_start_paste(), e.g. when using
   K_MIDDLEMOUSE, calling insert_reg().
 - Users expect parsing the :term argument like a shell does, also support
@@ -74,35 +88,12 @@ Terminal emulator window:
 - When 'encoding' is not utf-8, or the job is using another encoding, setup
   conversions.
 
-Patch to support ":tag <tagkind> <tagname". (emmrk, 2018 May 7, #2871)
-
-Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
-#2546)  Fixes #1057.  Missing a test.
-
-Problem with quickfix giving E42 when filtering the error list.
-(Nobuhiro Takasaki, 2018 Aug 1, #3270)
-Patch with test from Yegappan, Aug 2.
-
-Patch to add variable name after "scope add". (Eddie Lebow, 2018 Feb 7, #2620)
-Maybe not needed?
-
-Patch in issue 3268, fix suggestion window appearing on wrong screen.
-Also from Ken Takata, 2018 Aug 2.
-
-Patch for Lua support. (Kazunobu Kuriyama, 2018 May 26)
-
-Patch to use NGETTEXT() in many more places. (Sergey Alyoshin, 2018 May 25)
-Updated patch May 27.
-
-Patch to add winlayout() function. (Yegappan Lakshmanan, 2018 Jan 4)
-
-Patch to fix profiling condition lines. (Ozaki Kiichi,, 2017 Dec 26, #2499)
-
-Issue #686: apply 'F' in 'shortmess' to more messages.  Also #3221.
-Patch on #3221 from Christian.  Does it work now?
-
-Patch to include a cfilter plugin to filter quickfix/location lists.
-(Yegappan Lakshmanan, 2018 May 12)
+Not possible to have a comment in between line continuation.  Use |\":
+       let array = [
+           \ item,
+           |\" comment
+           \ item,
+           \ ]
 
 Does not build with MinGW out of the box:
 - _stat64 is not defined, need to use "struct stat" in vim.h
@@ -111,9 +102,6 @@ Does not build with MinGW out of the box:
 Crash when mixing matchadd and substitute()? (Max Christian Pohle, 2018 May
 13, #2910)  Can't reproduce?
 
-On Win32 when not in the console and t_Co >= 256, allow using 'tgc'.
-(Nobuhiro Takasaki, #2833)  Also check t_Co.
-
 Errors found with random data:
     heap-buffer-overflow in alist_add (#2472)
 
@@ -121,7 +109,15 @@ Improve fallback for menu translations, to avoid having to create lots of
 files that source the actual file.  E.g. menu_da_de -> menu_da
 Include part of #3242?
 
-Inlcude Chinese-Taiwan translations. (bystar, #3261)
+Using ":file" in quickfix window during an autocommand doesn't work. 
+(Jason Franklin, 2018 May 23) Allow for using it when there is no argument.
+Patch should now work. (Jason Franklin, 2018 Aug 12)
+
+Include Chinese-Taiwan translations. (bystar, #3261)
+
+Screendump test fails even though characters are the same.
+Some attribute difference that isn't included in the screenshot?
+(Elimar Riesebieter, 2018 Aug 21)
 
 Completion mixes results from the current buffer with tags and other files.
 Happens when typing CTRL-N while still search for results.  E.g., type "b_" in
@@ -129,8 +125,10 @@ terminal.c and then CTRL-N twice.
 Should do current file first and not split it up when more results are found.
 (Also #1890)
 
-Using mouse for inputlist() doesn't work after patch 8.0.1756. (Dominique
-Pelle, 2018 Jul 22, #3239)  Also see 8.0.0722.  Check both console and GUI.
+Patch to support VTP better. (Nobuhiro Takasaki, 2018 Aug 19, #3347)
+
+Patch with improvement for ccomplete: #3350
+Try it out.  Perhaps write a test?
 
 More warnings from static analysis:
 https://lgtm.com/projects/g/vim/vim/alerts/?mode=list
@@ -138,12 +136,12 @@ https://lgtm.com/projects/g/vim/vim/alerts/?mode=list
 Pasting foo} causes Vim to behave weird. (John Little, 2018 Jun 17)
 Related to bracketed paste.  I cannot reproduce it.
 
-Using ":file" in quickfix window during an autocommand doesn't work. 
-(Jason Franklin, 2018 May 23) Allow for using it when there is no argument.
-
 Patch in pull request #2967: Allow white space in sign text. (Ben Jackson)
 Test fails in AppVeyor.
 
+Patch to add script line number to script ID. (ichizok, Ozaki Kiichi, 2018 Aug
+24, #3362)
+
 Removing flags from 'cpoptions' breaks the Winbar buttons in termdebug.
 (Dominique Pelle, 2018 Jul 16)
 
@@ -186,6 +184,10 @@ Delete the src/main.aap file?
 matchaddpos() gets slow with many matches.  Proposal by Rick Howe, 2018 Jul
 19.
 
+Patch to support ":tag <tagkind> <tagname>". (emmrk, 2018 May 7, #2871)
+Use something like ":tag {kind}/{tagname}".
+Not ready to include.
+
 home_replace() uses $HOME instead of "homedir". (Cesar Martins, 2018 Aug 9)
 
 Adjust windows installer explanation of behavior. (scootergrisen, #3310)
@@ -193,6 +195,17 @@ Adjust windows installer explanation of behavior. (scootergrisen, #3310)
 Set g:actual_curbuf when evaluating 'statusline', not just with an expression.
 (Daniel Hahler, 2018 Aug 8, #3299)
 
+Difference between two regexp engines: #3373
+
+When the last line wraps, selecting with the mouse below that line only
+includes the first screen line. (2018 Aug 23, #3368)
+
+Refactored HTML indent file. (Michael Lee, #1821)
+
+Patch to add getregpoint() and setreg() with an option to set "".
+(Andy Massimino, 2018 Aug 24, #3370)
+Better name?
+
 Script generated by :mksession does not work well if there are windows with
 modified buffers
   change "silent only" into "silent only!"
@@ -209,6 +222,12 @@ Compiler warnings (geeknik, 2017 Oct 26):
 Win32 console: <F11> and <F12> typed in Insert mode don't result in normal
 characters. (#3246)
 
+Height of quickfix window is not retained with vertical splits. (Lifepillar,
+2018 Aug 24, #2998)
+
+Window size is wrong when using quickfix window. (Lifepillar, 2018 Aug 24,
+#2999)
+
 Tests failing for "make testgui" with GTK:
 - Test_setbufvar_options()
 - Test_exit_callback_interval()
@@ -224,6 +243,7 @@ On Win32 it stops showing, because showState is already ShS_SHOWING.
 balloon_show() does not work properly in the terminal. (Ben Jackson, 2017 Dec
 20, #2481)
 Also see #2352, want better control over balloon, perhaps set the position.
+Should also be possible to add highlighting, like in the status line?
 
 Try out background make plugin: 
   https://github.com/AndrewVos/vim-make-background
@@ -239,9 +259,14 @@ used for git temp files.
 
 Cursor in wrong position when line wraps. (#2540)
 
+Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
+#2546)  Fixes #1057.  Missing a test.
+
 Make {skip} argument of searchpair() consistent with other places where we
 pass an expression to evaluate.  Allow passing zero for "never skip".
 
+The 'scrolloff' option is global, make it global-local. #3195
+
 Add an option similar to 'lazyredraw' to skip redrawing while executing a
 script or function.
 
@@ -281,6 +306,9 @@ How to test that it works well for all Vim users?
 
 Alternative manpager.vim. (Enno, 2018 Jan 5, #2529)
 
+Delete all the speficic stuff for the Borland compiler? (#3374)
+Patch in #3377 (Thomas Dziedzic)
+
 Does setting 'cursorline' cause syntax highlighting to slow down?  Perhaps is
 mess up the cache?  (Mike Lee Williams, 2018 Jan 27, #2539)
 Also: 'foldtext' is evaluated too often. (Daniel Hahler, #2773)
@@ -320,7 +348,8 @@ sequence of these commands. (Andy Stewart, 2018 Mar 16)
 ch_sendraw() with long string does not try to read in between, which may cause
 a deadlock if the reading side is waiting for the write to finish. (Nate
 Bosch, 2018 Jan 13, #2548)
-Perhaps just make chunks of 1024 bytes?  Make the write non-blocking?
+Perhaps just make chunks of 1024 bytes?
+Probably better: Make the write non-blocking
 Also a problem on MS-Windows: #2828.
 
 Add Makefiles to the runtime/spell directory tree, since nobody uses Aap.
@@ -388,6 +417,8 @@ No profile information for function that executes ":quit". (Daniel Hahler,
 
 A function on a dictionary is not profiled. (ZyX, 2010 Dec 25)
 
+Add script number to profile?  (#3330 breaks tests).
+
 A function defined locally and lambda's are not easily recognized.
 Mention where they were defined somewhere.
 
@@ -486,8 +517,6 @@ It can replace the BeOS code, which is likely not used anymore.
 Now on github: #1856.  Updated Oct 2017
 Got permission to include this under the Vim license.
 
-Refactored HTML indent file. (Michael Lee, #1821)
-
 Test_writefile_fails_conversion failure on Solaris because if different iconv
 behavior.  Skip when "uname" returns "SunOS"? (Pavel Heimlich, #1872)
 
@@ -566,7 +595,7 @@ Profile of a dict function is lost when the dict is deleted.  Would it be
 possible to collect this?  (Daniel Hahler, #2350)
 
 Add `:filter` support for various commands (Marcin Szamotulski, 2017 Nov 12
-#2322)  Now in #2327?
+#2322)  Patch now in #2856.
 
 When checking if a bufref is valid, also check the buffer number, to catch the
 case of :bwipe followed by :new.
@@ -751,6 +780,7 @@ receiving Vim?  Or make an exception for #, it's not useful remotely.
 vertical split. (Haldean Brown, 2017 Mar 1)
 
 Use ADDR_OTHER instead of ADDR_LINES for many more commands.
+E.g. all the location list commands use a count.
 Add tests for using number larger than number of lines in buffer.
 
 Might be useful to have isreadonly(), like we have islocked().
index 727228ce07dfeb7b774877b5214671b63273ef53..4cffc7debe9a2c4b7e25c143ccd75a5d1876ea3f 100644 (file)
@@ -284,6 +284,7 @@ If you really don't want to see this message, you can add the 'A' flag to the
 'shortmess' option.  But it's very unusual that you need this.
 
 For remarks about encryption and the swap file, see |:recover-crypt|.
+For programatic access to the swap file, see |swapinfo()|.
 
 ==============================================================================
 *11.4* Further reading
index cf343632f808713584d46adabb9eda0915536eba..1ec743a56cb36b8a1ab460a4a4d1ea1d90ed34d4 100644 (file)
@@ -809,6 +809,7 @@ Buffers, windows and the argument list:
        getwininfo()            get a list with window information
        getchangelist()         get a list of change list entries
        getjumplist()           get a list of jump list entries
+       swapinfo()              information about a swap file
 
 Command line:                                  *command-line-functions*
        getcmdline()            get the current command line
index de77bdfb8abd3e5dc4fff29be94646331a2b76da..84f4d0563b99a6f34ed5bed6fbad24ed8f66c84a 100644 (file)
@@ -1,7 +1,8 @@
 " Vim filetype plugin file
 " Language:             Haskell
+" Maintainer:           Daniel Campoverde <alx@sillybytes.net>
 " Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
-" Latest Revision:      2008-07-09
+" Latest Revision:      2018-08-27
 
 if exists("b:did_ftplugin")
   finish
@@ -15,6 +16,7 @@ let b:undo_ftplugin = "setl com< cms< fo<"
 
 setlocal comments=s1fl:{-,mb:-,ex:-},:-- commentstring=--\ %s
 setlocal formatoptions-=t formatoptions+=croql
+setlocal omnifunc=haskellcomplete#Complete
 
 let &cpo = s:cpo_save
 unlet s:cpo_save
index 8c092ac13ff6725a6d821c5a8d720d75b7709bc4..7b0db8dbb5efdd98b3390a9a2c36fb7c5c31d4a9 100644 (file)
@@ -2,7 +2,7 @@
 " Language: R Markdown file
 " Maintainer: Jakson Alves de Aquino <jalvesaq@gmail.com>
 " Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Mon Jun 06, 2016  09:41PM
+" Last Change: Sun Jul 22, 2018  06:51PM
 " Original work by Alex Zvoleff (adjusted from R help for rmd by Michel Kuhlmann)
 
 " Only do this when not yet done for this buffer
@@ -10,19 +10,12 @@ if exists("b:did_ftplugin")
   finish
 endif
 
-runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
-
-" Nvim-R plugin needs this
-if exists("*CompleteR")
-  if &omnifunc == "CompleteR"
-    let b:rplugin_nonr_omnifunc = ""
-  else
-    let b:rplugin_nonr_omnifunc = &omnifunc
-  endif
-  set omnifunc=CompleteR
+if exists('g:rmd_include_html') && g:rmd_include_html
+  runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
 endif
 
-setlocal comments=fb:*,fb:-,fb:+,n:> commentstring=>\ %s
+setlocal comments=fb:*,fb:-,fb:+,n:>
+setlocal commentstring=#\ %s
 setlocal formatoptions+=tcqln
 setlocal formatlistpat=^\\s*\\d\\+\\.\\s\\+\\\|^\\s*[-*+]\\s\\+
 setlocal iskeyword=@,48-57,_,.
@@ -30,6 +23,22 @@ setlocal iskeyword=@,48-57,_,.
 let s:cpo_save = &cpo
 set cpo&vim
 
+function! FormatRmd()
+  if search("^[ \t]*```[ ]*{r", "bncW") > search("^[ \t]*```$", "bncW")
+    setlocal comments=:#',:###,:##,:#
+  else
+    setlocal comments=fb:*,fb:-,fb:+,n:>
+  endif
+  return 1
+endfunction
+
+" If you do not want 'comments' dynamically defined, put in your vimrc:
+" let g:rmd_dynamic_comments = 0
+if !exists("g:rmd_dynamic_comments") || (exists("g:rmd_dynamic_comments") && g:rmd_dynamic_comments == 1)
+  setlocal formatexpr=FormatRmd()
+endif
+
+
 " Enables pandoc if it is installed
 unlet! b:did_ftplugin
 runtime ftplugin/pandoc.vim
index ecfd6e87a1361e7a9c103bcf96da42179f64976f..3e82847d35c088c34412a89f0fc8ccb52302025c 100644 (file)
@@ -2,7 +2,7 @@
 " Language: reStructuredText documentation format with R code
 " Maintainer: Jakson Alves de Aquino <jalvesaq@gmail.com>
 " Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Tue Apr 07, 2015  04:38PM
+" Last Change: Wed Nov 01, 2017  10:47PM
 " Original work by Alex Zvoleff
 
 " Only do this when not yet done for this buffer
@@ -16,11 +16,27 @@ let b:did_ftplugin = 1
 let s:cpo_save = &cpo
 set cpo&vim
 
-setlocal comments=fb:*,fb:-,fb:+,n:> commentstring=>\ %s
+setlocal comments=fb:*,fb:-,fb:+,n:>
+setlocal commentstring=#\ %s
 setlocal formatoptions+=tcqln
 setlocal formatlistpat=^\\s*\\d\\+\\.\\s\\+\\\|^\\s*[-*+]\\s\\+
 setlocal iskeyword=@,48-57,_,.
 
+function! FormatRrst()
+  if search('^\.\. {r', "bncW") > search('^\.\. \.\.$', "bncW")
+    setlocal comments=:#',:###,:##,:#
+  else
+    setlocal comments=fb:*,fb:-,fb:+,n:>
+  endif
+  return 1
+endfunction
+
+" If you do not want 'comments' dynamically defined, put in your vimrc:
+" let g:rrst_dynamic_comments = 0
+if !exists("g:rrst_dynamic_comments") || (exists("g:rrst_dynamic_comments") && g:rrst_dynamic_comments == 1)
+  setlocal formatexpr=FormatRrst()
+endif
+
 if has("gui_win32") && !exists("b:browsefilter")
   let b:browsefilter = "R Source Files (*.R *.Rnw *.Rd *.Rmd *.Rrst)\t*.R;*.Rnw;*.Rd;*.Rmd;*.Rrst\n" .
         \ "All Files (*.*)\t*.*\n"
index 5633362367465ef1ccb3637e9068cf9651fbc638..963ac408efb7294aef8141725bfc0e8673fd17c5 100644 (file)
@@ -3,9 +3,6 @@
 " Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
 " Latest Revision:      2011-07-08
 
-let s:cpo_save = &cpo
-set cpo&vim
-
 setlocal indentexpr=GetDTDIndent()
 setlocal indentkeys=!^F,o,O,>
 setlocal nosmartindent
@@ -14,6 +11,9 @@ if exists("*GetDTDIndent")
   finish
 endif
 
+let s:cpo_save = &cpo
+set cpo&vim
+
 " TODO: Needs to be adjusted to stop at [, <, and ].
 let s:token_pattern = '^[^[:space:]]\+'
 
index ba043e968ab069da7792a8a3c050f0d837e4ee85..6c866594c5ce144119b12ea49a35c2cc5e1ca2fc 100644 (file)
@@ -663,7 +663,7 @@ func! s:CSSIndent()
     else
       let cur_hasfield = curtext =~ '^\s*[a-zA-Z0-9-]\+:'
       let prev_unfinished = s:CssUnfinished(prev_text)
-      if !cur_hasfield && (prev_hasfield || prev_unfinished)
+      if prev_unfinished
         " Continuation line has extra indent if the previous line was not a
         " continuation line.
         let extra = shiftwidth()
@@ -716,9 +716,13 @@ func! s:CSSIndent()
 endfunc "}}}
 
 " Inside <style>: Whether a line is unfinished.
+"      tag:
+"      tag: blah
+"      tag: blah &&
+"      tag: blah ||
 func! s:CssUnfinished(text)
   "{{{
-  return a:text =~ '\s\(||\|&&\|:\)\s*$'
+  return a:text =~ '\(||\|&&\|:\|\k\)\s*$'
 endfunc "}}}
 
 " Search back for the first unfinished line above "lnum".
index 373b0e65dfaae90dfed2d63de7f9c6719ce21f9b..ca85a2e62d4e96d08c03209ad21e02e959858942 100644 (file)
@@ -2,7 +2,7 @@
 " Language:    R
 " Author:      Jakson Alves de Aquino <jalvesaq@gmail.com>
 " Homepage:     https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Thu Feb 18, 2016  06:32AM
+" Last Change: Sun Aug 19, 2018  09:13PM
 
 
 " Only load this indent file when no other was loaded.
@@ -19,22 +19,16 @@ if exists("*GetRIndent")
   finish
 endif
 
+let s:cpo_save = &cpo
+set cpo&vim
+
 " Options to make the indentation more similar to Emacs/ESS:
-if !exists("g:r_indent_align_args")
-  let g:r_indent_align_args = 1
-endif
-if !exists("g:r_indent_ess_comments")
-  let g:r_indent_ess_comments = 0
-endif
-if !exists("g:r_indent_comment_column")
-  let g:r_indent_comment_column = 40
-endif
-if ! exists("g:r_indent_ess_compatible")
-  let g:r_indent_ess_compatible = 0
-endif
-if ! exists("g:r_indent_op_pattern")
-  let g:r_indent_op_pattern = '\(&\||\|+\|-\|\*\|/\|=\|\~\|%\|->\)\s*$'
-endif
+let g:r_indent_align_args     = get(g:, 'r_indent_align_args',      1)
+let g:r_indent_ess_comments   = get(g:, 'r_indent_ess_comments',    0)
+let g:r_indent_comment_column = get(g:, 'r_indent_comment_column', 40)
+let g:r_indent_ess_compatible = get(g:, 'r_indent_ess_compatible',  0)
+let g:r_indent_op_pattern     = get(g:, 'r_indent_op_pattern',
+      \ '\(&\||\|+\|-\|\*\|/\|=\|\~\|%\|->\)\s*$')
 
 function s:RDelete_quotes(line)
   let i = 0
@@ -231,7 +225,7 @@ function GetRIndent()
 
   let cline = SanitizeRLine(cline)
 
-  if cline =~ '^\s*}' || cline =~ '^\s*}\s*)$'
+  if cline =~ '^\s*}'
     let indline = s:Get_matching_brace(clnum, '{', '}', 1)
     if indline > 0 && indline != clnum
       let iline = SanitizeRLine(getline(indline))
@@ -244,6 +238,11 @@ function GetRIndent()
     endif
   endif
 
+  if cline =~ '^\s*)$'
+    let indline = s:Get_matching_brace(clnum, '(', ')', 1)
+    return indent(indline)
+  endif
+
   " Find the first non blank line above the current line
   let lnum = s:Get_prev_line(clnum)
   " Hit the start of the file, use zero indent.
@@ -515,7 +514,9 @@ function GetRIndent()
   endwhile
 
   return ind
-
 endfunction
 
+let &cpo = s:cpo_save
+unlet s:cpo_save
+
 " vim: sw=2
index 88904405e84b10063fd04fd24c0a377a50a71de1..182b07cbaab24ba956da5e2c6dcda319e629ed4e 100644 (file)
@@ -2,7 +2,7 @@
 " Language:    Rmd
 " Author:      Jakson Alves de Aquino <jalvesaq@gmail.com>
 " Homepage:     https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Tue Apr 07, 2015  04:38PM
+" Last Change: Sun Aug 19, 2018  09:14PM
 
 
 " Only load this indent file when no other was loaded.
@@ -20,7 +20,10 @@ if exists("*GetRmdIndent")
   finish
 endif
 
-function GetMdIndent()
+let s:cpo_save = &cpo
+set cpo&vim
+
+function s:GetMdIndent()
   let pline = getline(v:lnum - 1)
   let cline = getline(v:lnum)
   if prevnonblank(v:lnum - 1) < v:lnum - 1 || cline =~ '^\s*[-\+\*]\s' || cline =~ '^\s*\d\+\.\s\+'
@@ -33,15 +36,31 @@ function GetMdIndent()
   return indent(prevnonblank(v:lnum - 1))
 endfunction
 
+function s:GetYamlIndent()
+  let pline = getline(v:lnum - 1)
+  if pline =~ ':\s*$'
+    return indent(v:lnum) + &sw
+  elseif pline =~ '^\s*- '
+    return indent(v:lnum) + 2
+  endif
+  return indent(prevnonblank(v:lnum - 1))
+endfunction
+
 function GetRmdIndent()
   if getline(".") =~ '^[ \t]*```{r .*}$' || getline(".") =~ '^[ \t]*```$'
     return 0
   endif
   if search('^[ \t]*```{r', "bncW") > search('^[ \t]*```$', "bncW")
     return s:RIndent()
+  elseif v:lnum > 1 && search('^---$', "bnW") == 1 &&
+        \ (search('^---$', "nW") > v:lnum || search('^...$', "nW") > v:lnum)
+    return s:GetYamlIndent()
   else
-    return GetMdIndent()
+    return s:GetMdIndent()
   endif
 endfunction
 
+let &cpo = s:cpo_save
+unlet s:cpo_save
+
 " vim: sw=2
index 8c11e85cb377404de659e4ac2f75e737bd50175a..73966868b876f56baac8ef3444c784784e21c35b 100644 (file)
@@ -21,7 +21,7 @@ else
   let s:TeXIndent = function(substitute(&indentexpr, "()", "", ""))
 endif
 
-unlet b:did_indent
+unlet! b:did_indent
 runtime indent/r.vim
 let s:RIndent = function(substitute(&indentexpr, "()", "", ""))
 let b:did_indent = 1
index e5f14d27a5f9d08ea1527c7ad1c239c26bdddc30..8bb19443594509cd21ccd661354d98fa8ae1d294 100644 (file)
@@ -1,6 +1,6 @@
-" Menu Translations:   Danish / Dansk
+" Menu Translations:   Danish
 " Maintainer:          scootergrisen
-" Last Change:         2018 Jun 23
+" Last Change:         2018 Aug 17
 
 " Quit when menu translations have already been done.
 if exists("did_menu_trans")
@@ -43,7 +43,7 @@ menut &Save<Tab>:w    Gem<Tab>:w
 menut Save\ &As\.\.\.<Tab>:sav Gem\ som\.\.\.<Tab>:sav
 " -SEP2-
 menut Split\ &Diff\ with\.\.\. Opdel\ diff\ med\.\.\.
-menut Split\ Patched\ &By\.\.\.        Opdel\ "patchet\ af"\.\.\.
+menut Split\ Patched\ &By\.\.\.        Opdel\ patchet\ af\.\.\.
 " -SEP3-
 menut &Print   Udskriv
 " -SEP4-
@@ -79,7 +79,7 @@ menut Question        Spørgsmål
 " Edit
 
 menut Toggle\ Pattern\ &Highlight<Tab>:set\ hls!       Fremhævning\ af\ mønster\ til/fra<Tab>:set\ hls!
-menut Toggle\ &Ignoring\ Case<Tab>:set\ ic!    Ignorerer\ "forskel\ på\ store\ og\ små\ bogstaver"\ til/fra<Tab>:set\ ic!
+menut Toggle\ &Ignoring\ Case<Tab>:set\ ic!    Ignorerer\ forskel\ på\ store\ og\ små\ bogstaver\ til/fra<Tab>:set\ ic!
 menut Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm!   Viser\ matchende\ par\ til/fra<Tab>:set\ sm!
 
 menut &Context\ lines  Kontekstlinjer
@@ -117,20 +117,20 @@ menut Toggle\ Tab\ &expanding<Tab>:set\ et!       Udvidelse\ af\ tabulator\ til/fra<Ta
 menut Toggle\ &Auto\ Indenting<Tab>:set\ ai!   Automatisk\ indrykning\ til/fra<Tab>:set\ ai!
 menut Toggle\ &C-Style\ Indenting<Tab>:set\ cin!       Indrykning\ i\ &C-stil\ til/fra<Tab>:set\ cin!
 " -SEP2-
-menut &Shiftwidth      "Shiftwidth"
-" menut &Shiftwidth.2<Tab>:set\ sw=2\ sw?<CR>  "Shiftwidth".2<Tab>:set\ sw=2\ sw?<CR>
-" menut &Shiftwidth.3<Tab>:set\ sw=3\ sw?<CR>  "Shiftwidth".3<Tab>:set\ sw=3\ sw?<CR>
-" menut &Shiftwidth.4<Tab>:set\ sw=4\ sw?<CR>  "Shiftwidth".4<Tab>:set\ sw=4\ sw?<CR>
-" menut &Shiftwidth.5<Tab>:set\ sw=5\ sw?<CR>  "Shiftwidth".5<Tab>:set\ sw=5\ sw?<CR>
-" menut &Shiftwidth.6<Tab>:set\ sw=6\ sw?<CR>  "Shiftwidth".6<Tab>:set\ sw=6\ sw?<CR>
-" menut &Shiftwidth.8<Tab>:set\ sw=8\ sw?<CR>  "Shiftwidth".8<Tab>:set\ sw=8\ sw?<CR>
+menut &Shiftwidth      Shiftwidth
+" menut &Shiftwidth.2<Tab>:set\ sw=2\ sw?<CR>  Shiftwidth.2<Tab>:set\ sw=2\ sw?<CR>
+" menut &Shiftwidth.3<Tab>:set\ sw=3\ sw?<CR>  Shiftwidth.3<Tab>:set\ sw=3\ sw?<CR>
+" menut &Shiftwidth.4<Tab>:set\ sw=4\ sw?<CR>  Shiftwidth.4<Tab>:set\ sw=4\ sw?<CR>
+" menut &Shiftwidth.5<Tab>:set\ sw=5\ sw?<CR>  Shiftwidth.5<Tab>:set\ sw=5\ sw?<CR>
+" menut &Shiftwidth.6<Tab>:set\ sw=6\ sw?<CR>  Shiftwidth.6<Tab>:set\ sw=6\ sw?<CR>
+" menut &Shiftwidth.8<Tab>:set\ sw=8\ sw?<CR>  Shiftwidth.8<Tab>:set\ sw=8\ sw?<CR>
 menut Soft\ &Tabstop   Blødt\ tabulatorstop
-" menut Soft\ &Tabstop.2<Tab>:set\ sts=2\ sts? Blødt\ "Tabstop".2<Tab>:set\ sts=2\ sts?
-" menut Soft\ &Tabstop.3<Tab>:set\ sts=3\ sts? Blødt\ "Tabstop".3<Tab>:set\ sts=3\ sts?
-" menut Soft\ &Tabstop.4<Tab>:set\ sts=4\ sts? Blødt\ "Tabstop".4<Tab>:set\ sts=4\ sts?
-" menut Soft\ &Tabstop.5<Tab>:set\ sts=5\ sts? Blødt\ "Tabstop".5<Tab>:set\ sts=5\ sts?
-" menut Soft\ &Tabstop.6<Tab>:set\ sts=6\ sts? Blødt\ "Tabstop".6<Tab>:set\ sts=6\ sts?
-" menut Soft\ &Tabstop.8<Tab>:set\ sts=8\ sts? Blødt\ "Tabstop".8<Tab>:set\ sts=8\ sts?
+" menut Soft\ &Tabstop.2<Tab>:set\ sts=2\ sts? Blødt\ Tabstop.2<Tab>:set\ sts=2\ sts?
+" menut Soft\ &Tabstop.3<Tab>:set\ sts=3\ sts? Blødt\ Tabstop.3<Tab>:set\ sts=3\ sts?
+" menut Soft\ &Tabstop.4<Tab>:set\ sts=4\ sts? Blødt\ Tabstop.4<Tab>:set\ sts=4\ sts?
+" menut Soft\ &Tabstop.5<Tab>:set\ sts=5\ sts? Blødt\ Tabstop.5<Tab>:set\ sts=5\ sts?
+" menut Soft\ &Tabstop.6<Tab>:set\ sts=6\ sts? Blødt\ Tabstop.6<Tab>:set\ sts=6\ sts?
+" menut Soft\ &Tabstop.8<Tab>:set\ sts=8\ sts? Blødt\ Tabstop.8<Tab>:set\ sts=8\ sts?
 menut Te&xt\ Width\.\.\.       Tekstbredde\.\.\.
 menut &File\ Format\.\.\.      Filformat\.\.\.
 
@@ -168,11 +168,11 @@ menut None        Intet
 " menut arabic arabisk
 " menut armenian-eastern       armensk\ (østlig)
 " menut armenian-western       armensk\ (vestlig)
-" menut belarusian-jcuken      hviderussisk"\ [belarusian-jcuken]"
+" menut belarusian-jcuken      hviderussisk\ [belarusian-jcuken]
 " menut czech  tjekkisk
 " menut greek  græsk
 " menut hebrew hebraisk
-" menut hebrewp        hebraisk"\ [hebrewp]"
+" menut hebrewp        hebraisk\ [hebrewp]
 " menut magyar ungarsk
 " menut persian        persisk
 " menut serbian        serbisk
@@ -362,8 +362,10 @@ if has("toolbar")
 endif
 
 let g:menutrans_set_lang_to = "Sæt sprog til"
-let g:menutrans_spell_change_ARG_to = 'Ændr "%s" til'
-let g:menutrans_spell_add_ARG_to_word_list = 'Tilføj "%s" til ordliste'
+
+" stavegenvejsmenu pop op ting
+let g:menutrans_spell_change_ARG_to = 'Ændr\ "%s"\ til'
+let g:menutrans_spell_add_ARG_to_word_list = 'Tilføj\ "%s"\ til\ ordliste'
 let g:menutrans_spell_ignore_ARG = 'Ignorer "%s"'
 
 let &cpo = s:keepcpo
index b4c59dd92bc5ebbca5a8c8e6e1ce8f1f01111828..5e4bd1f11b4d4b907f5206c37f2fdb9ceda50793 100644 (file)
@@ -356,6 +356,8 @@ func! s:SetupColorSchemes() abort
   let s:did_setup_color_schemes = 1
 
   let n = globpath(&runtimepath, "colors/*.vim", 1, 1)
+  let n += globpath(&runtimepath, "pack/*/start/*/colors/*.vim", 1, 1)
+  let n += globpath(&runtimepath, "pack/*/opt/*/colors/*.vim", 1, 1)
 
   " Ignore case for VMS and windows, sort on name
   let names = sort(map(n, 'substitute(v:val, "\\c.*[/\\\\:\\]]\\([^/\\\\:]*\\)\\.vim", "\\1", "")'), 1)
index 7a6464fc988b36b7b9d919ba5f46cc7ff45e362a..fe4455fe2ee0aafc69da569a9c2344d752d0c9e1 100644 (file)
@@ -1,15 +1,17 @@
 " cfilter.vim: Plugin to filter entries from a quickfix/location list
-" Last Change:         May 12, 2018
-" Maintainer:  Yegappan Lakshmanan (yegappan AT yahoo DOT com)
-" Version:     1.0
+" Last Change: Aug 23, 2018
+" Maintainer: Yegappan Lakshmanan (yegappan AT yahoo DOT com)
+" Version: 1.1
 "
 " Commands to filter the quickfix list:
-"   :Cfilter[!] {pat}
+"   :Cfilter[!] /{pat}/
 "       Create a new quickfix list from entries matching {pat} in the current
 "       quickfix list. Both the file name and the text of the entries are
 "       matched against {pat}. If ! is supplied, then entries not matching
-"       {pat} are used.
-"   :Lfilter[!] {pat}
+"       {pat} are used. The pattern can be optionally enclosed using one of
+"       the following characters: ', ", /. If the pattern is empty, then the
+"       last used search pattern is used.
+"   :Lfilter[!] /{pat}/
 "       Same as :Cfilter but operates on the current location list.
 "
 if exists("loaded_cfilter")
@@ -17,7 +19,7 @@ if exists("loaded_cfilter")
 endif
 let loaded_cfilter = 1
 
-func s:Qf_filter(qf, pat, bang)
+func s:Qf_filter(qf, searchpat, bang)
     if a:qf
        let Xgetlist = function('getqflist')
        let Xsetlist = function('setqflist')
@@ -28,14 +30,31 @@ func s:Qf_filter(qf, pat, bang)
        let cmd = ':Lfilter' . a:bang
     endif
 
+    let firstchar = a:searchpat[0]
+    let lastchar = a:searchpat[-1:]
+    if firstchar == lastchar &&
+               \ (firstchar == '/' || firstchar == '"' || firstchar == "'")
+       let pat = a:searchpat[1:-2]
+       if pat == ''
+           " Use the last search pattern
+           let pat = @/
+       endif
+    else
+       let pat = a:searchpat
+    endif
+
+    if pat == ''
+       return
+    endif
+
     if a:bang == '!'
-       let cond = 'v:val.text !~# a:pat && bufname(v:val.bufnr) !~# a:pat'
+       let cond = 'v:val.text !~# pat && bufname(v:val.bufnr) !~# pat'
     else
-       let cond = 'v:val.text =~# a:pat || bufname(v:val.bufnr) =~# a:pat'
+       let cond = 'v:val.text =~# pat || bufname(v:val.bufnr) =~# pat'
     endif
 
     let items = filter(Xgetlist(), cond)
-    let title = cmd . ' ' . a:pat
+    let title = cmd . ' /' . pat . '/'
     call Xsetlist([], ' ', {'title' : title, 'items' : items})
 endfunc
 
index 45ff498b3bed5a0f0a2e62530d44bf3d155e149e..9e25dae36321ae7c975c88236ff9a57056b8662b 100644 (file)
@@ -5,7 +5,7 @@
 "                    Tom Payne <tom@tompayne.org>
 " Contributor:        Johannes Ranke <jranke@uni-bremen.de>
 " Homepage:           https://github.com/jalvesaq/R-Vim-runtime
-" Last Change:       Sat Apr 08, 2017  07:01PM
+" Last Change:       Wed Aug 01, 2018  10:10PM
 " Filenames:         *.R *.r *.Rhistory *.Rt
 "
 " NOTE: The highlighting of R functions might be defined in
@@ -43,15 +43,17 @@ endif
 if exists("g:r_syntax_folding") && g:r_syntax_folding
   setlocal foldmethod=syntax
 endif
-if !exists("g:r_syntax_hl_roxygen")
-  let g:r_syntax_hl_roxygen = 1
-endif
+
+let g:r_syntax_hl_roxygen = get(g:, 'r_syntax_hl_roxygen', 1)
 
 syn case match
 
 " Comment
 syn match rCommentTodo contained "\(BUG\|FIXME\|NOTE\|TODO\):"
-syn match rComment contains=@Spell,rCommentTodo,rOBlock "#.*"
+syn match rTodoParen contained "\(BUG\|FIXME\|NOTE\|TODO\)\s*(.\{-})\s*:" contains=rTodoKeyw,rTodoInfo transparent
+syn keyword rTodoKeyw BUG FIXME NOTE TODO contained
+syn match rTodoInfo "(\zs.\{-}\ze)" contained
+syn match rComment contains=@Spell,rCommentTodo,rTodoParen,rOBlock "#.*"
 
 " Roxygen
 if g:r_syntax_hl_roxygen
@@ -65,7 +67,7 @@ if g:r_syntax_hl_roxygen
 
   " First we match all roxygen blocks as containing only a title. In case an
   " empty roxygen line ending the title or a tag is found, this will be
-  " overriden later by the definitions of rOBlock.
+  " overridden later by the definitions of rOBlock.
   syn match rOTitleBlock "\%^\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag
   syn match rOTitleBlock "^\s*\n\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag
 
@@ -91,7 +93,7 @@ if g:r_syntax_hl_roxygen
   syn match rOTitle "^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" contained contains=rOCommentKey,rOTitleTag
   syn match rOTitleTag contained "@title"
 
-  syn match rOCommentKey "#\{1,2}'" contained
+  syn match rOCommentKey "^\s*#\{1,2}'" contained
   syn region rOExamples start="^#\{1,2}' @examples.*"rs=e+1,hs=e+1 end="^\(#\{1,2}' @.*\)\@=" end="^\(#\{1,2}'\)\@!" contained contains=rOTag fold
 
   " rOTag list generated from the lists in
@@ -256,6 +258,7 @@ if exists("g:r_syntax_folding")
   syn region rRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError fold
   syn region rRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError fold
   syn region rRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError fold
+  syn region rSection matchgroup=Title start=/^#.*[-=#]\{4,}/ end=/^#.*[-=#]\{4,}/ms=s-2,me=s-1 transparent contains=ALL fold
 else
   syn region rRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError
   syn region rRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError
@@ -282,13 +285,8 @@ endif
 if g:r_syntax_fun_pattern == 1
   syn match rFunction '[0-9a-zA-Z_\.]\+\s*\ze('
 else
-  if !exists("g:R_hi_fun")
-    let g:R_hi_fun = 1
-  endif
-  if g:R_hi_fun
-    " Nvim-R:
-    runtime R/functions.vim
-  endif
+  " Nvim-R:
+  runtime R/functions.vim
 endif
 
 syn match rDollar display contained "\$"
@@ -311,7 +309,7 @@ syn keyword rType array category character complex double function integer list
 
 " Name of object with spaces
 if &filetype != "rmd" && &filetype != "rrst"
-  syn region rNameWSpace start="`" end="`"
+  syn region rNameWSpace start="`" end="`" contains=rSpaceFun
 endif
 
 if &filetype == "rhelp"
@@ -331,7 +329,10 @@ hi def link rAssign      Statement
 hi def link rBoolean     Boolean
 hi def link rBraceError  Error
 hi def link rComment     Comment
+hi def link rTodoParen   Comment
+hi def link rTodoInfo    SpecialComment
 hi def link rCommentTodo Todo
+hi def link rTodoKeyw    Todo
 hi def link rComplex     Number
 hi def link rConditional Conditional
 hi def link rConstant    Constant
@@ -341,6 +342,7 @@ hi def link rDollar      SpecialChar
 hi def link rError       Error
 hi def link rFloat       Float
 hi def link rFunction    Function
+hi def link rSpaceFun    Function
 hi def link rHelpIdent   Identifier
 hi def link rhPreProc    PreProc
 hi def link rhSection    PreCondit
index 05435354ad05f773ee1957cea7889b21bc49de62..a26389024d17bfe25eea4e6f158666e313cc0062 100644 (file)
 " markdown Text with R statements
 " Language: markdown with R code chunks
 " Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Sat Jan 28, 2017  10:06PM
-"
-" CONFIGURATION:
-"   To highlight chunk headers as R code, put in your vimrc (e.g. .config/nvim/init.vim):
-"   let rmd_syn_hl_chunk = 1
+" Last Change: Sat Aug 25, 2018  03:44PM
 "
 "   For highlighting pandoc extensions to markdown like citations and TeX and
 "   many other advanced features like folding of markdown sections, it is
 "   recommended to install the vim-pandoc filetype plugin as well as the
 "   vim-pandoc-syntax filetype plugin from https://github.com/vim-pandoc.
-"
-" TODO:
-"   - Provide highlighting for rmarkdown parameters in yaml header
+
 
 if exists("b:current_syntax")
   finish
 endif
 
-" load all of pandoc info, e.g. from
+" Configuration if not using pandoc syntax:
+" Add syntax highlighting of YAML header
+let g:rmd_syn_hl_yaml = get(g:, 'rmd_syn_hl_yaml', 1)
+" Add syntax highlighting of citation keys
+let g:rmd_syn_hl_citations = get(g:, 'rmd_syn_hl_citations', 1)
+" Highlight the header of the chunk of R code
+let g:rmd_syn_hl_chunk = get(g:, 'g:rmd_syn_hl_chunk', 0)
+
+" Pandoc-syntax has more features, but it is slower.
 " https://github.com/vim-pandoc/vim-pandoc-syntax
+let g:pandoc#syntax#codeblocks#embeds#langs = get(g:, 'pandoc#syntax#codeblocks#embeds#langs', ['r'])
 runtime syntax/pandoc.vim
 if exists("b:current_syntax")
-  let rmdIsPandoc = 1
-  unlet b:current_syntax
-else
-  let rmdIsPandoc = 0
-  runtime syntax/markdown.vim
-  if exists("b:current_syntax")
-    unlet b:current_syntax
-  endif
-
-  " load all of the yaml syntax highlighting rules into @yaml
-  syntax include @yaml syntax/yaml.vim
-  if exists("b:current_syntax")
-    unlet b:current_syntax
-  endif
-
-  " highlight yaml block commonly used for front matter
-  syntax region rmdYamlBlock matchgroup=rmdYamlBlockDelim start="^---" matchgroup=rmdYamlBlockDelim end="^---" contains=@yaml keepend fold
+  " Fix recognition of R code
+  syn region pandocDelimitedCodeBlock_r start=/^```{r\>.*}$/ end=/^```$/ contained containedin=pandocDelimitedCodeBlock contains=@R
+  syn region rmdrInline matchgroup=rmdInlineDelim start="`r "  end="`" contains=@R containedin=pandocLaTeXRegion,yamlFlowString keepend
+  hi def link rmdInlineDelim Delimiter
+  let b:current_syntax = "rmd"
+  finish
 endif
 
-if !exists("g:rmd_syn_langs")
-  let g:rmd_syn_langs = ["r"]
-else
-  let s:hasr = 0
-  for s:lng in g:rmd_syn_langs
-    if s:lng == "r"
-      let s:hasr = 1
-    endif
-  endfor
-  if s:hasr == 0
-    let g:rmd_syn_langs += ["r"]
+let s:cpo_save = &cpo
+set cpo&vim
+
+" R chunks will not be highlighted by syntax/markdown because their headers
+" follow a non standard pattern: "```{lang" instead of "^```lang".
+" Make a copy of g:markdown_fenced_languages to highlight the chunks later:
+if exists('g:markdown_fenced_languages')
+  if !exists('g:rmd_fenced_languages')
+    let g:rmd_fenced_languages = deepcopy(g:markdown_fenced_languages)
+    let g:markdown_fenced_languages = []
   endif
+else
+  let g:rmd_fenced_languages = ['r']
 endif
 
-for s:lng in g:rmd_syn_langs
-  exe 'syntax include @' . toupper(s:lng) . ' syntax/'. s:lng . '.vim'
-  if exists("b:current_syntax")
-    unlet b:current_syntax
-  endif
-  exe 'syntax region rmd' . toupper(s:lng) . 'Chunk start="^[ \t]*``` *{\(' . s:lng . '\|r.*engine\s*=\s*["' . "']" . s:lng . "['" . '"]\).*}$" end="^[ \t]*```$" contains=@' . toupper(s:lng) . ',rmd' . toupper(s:lng) . 'ChunkDelim keepend fold'
+runtime syntax/markdown.vim
 
-  if exists("g:rmd_syn_hl_chunk") && s:lng == "r"
-    " highlight R code inside chunk header
-    syntax match rmdRChunkDelim "^[ \t]*```{r" contained
-    syntax match rmdRChunkDelim "}$" contained
+" Now highlight chunks:
+for s:type in g:rmd_fenced_languages
+  if s:type =~ '='
+    let s:lng = substitute(s:type, '=.*', '')
+    let s:nm  = substitute(s:type, '.*=', '')
   else
-    exe 'syntax match rmd' . toupper(s:lng) . 'ChunkDelim "^[ \t]*```{\(' . s:lng . '\|r.*engine\s*=\s*["' . "']" . s:lng . "['" . '"]\).*}$" contained'
+    let s:lng = s:type
+    let s:nm  = s:type
   endif
-  exe 'syntax match rmd' . toupper(s:lng) . 'ChunkDelim "^[ \t]*```$" contained'
-endfor
-
-
-" also match and syntax highlight in-line R code
-syntax region rmdrInline matchgroup=rmdInlineDelim start="`r "  end="`" contains=@R containedin=pandocLaTeXRegion,yamlFlowString keepend
-" I was not able to highlight rmdrInline inside a pandocLaTeXCommand, although
-" highlighting works within pandocLaTeXRegion and yamlFlowString. 
-syntax cluster texMathZoneGroup add=rmdrInline
-
-" match slidify special marker
-syntax match rmdSlidifySpecial "\*\*\*"
-
-
-if rmdIsPandoc == 0
-  syn match rmdBlockQuote /^\s*>.*\n\(.*\n\@<!\n\)*/ skipnl
-  " LaTeX
-  syntax include @LaTeX syntax/tex.vim
-  if exists("b:current_syntax")
-    unlet b:current_syntax
+  unlet! b:current_syntax
+  exe 'syn include @Rmd'.s:nm.' syntax/'.s:lng.'.vim'
+  if g:rmd_syn_hl_chunk
+    exe 'syn region rmd'.s:nm.'ChunkDelim matchgroup=rmdCodeDelim start="^\s*```\s*{\s*'.s:nm.'\>" matchgroup=rmdCodeDelim end="}$" keepend containedin=rmd'.s:nm.'Chunk contains=@Rmd'.s:nm
+    exe 'syn region rmd'.s:nm.'Chunk start="^\s*```\s*{\s*'.s:nm.'\>.*$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend contains=rmd'.s:nm.'ChunkDelim,@Rmd'.s:nm
+  else
+    exe 'syn region rmd'.s:nm.'Chunk matchgroup=rmdCodeDelim start="^\s*```\s*{\s*'.s:nm.'\>.*$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend contains=@Rmd'.s:nm
   endif
-  " Inline
-  syntax match rmdLaTeXInlDelim "\$"
-  syntax match rmdLaTeXInlDelim "\\\$"
-  syn region texMathZoneX      matchgroup=Delimiter start="\$" skip="\\\\\|\\\$"       matchgroup=Delimiter end="\$" end="%stopzone\>" contains=@texMathZoneGroup
-  " Region
-  syntax match rmdLaTeXRegDelim "\$\$" contained
-  syntax match rmdLaTeXRegDelim "\$\$latex$" contained
-  syntax match rmdLaTeXSt "\\[a-zA-Z]\+"
-  syntax region rmdLaTeXRegion start="^\$\$" skip="\\\$" end="\$\$$" contains=@LaTeX,rmdLaTeXRegDelim keepend
-  syntax region rmdLaTeXRegion2 start="^\\\[" end="\\\]" contains=@LaTeX,rmdLaTeXRegDelim keepend
-  hi def link rmdBlockQuote Comment
-  hi def link rmdLaTeXSt Statement
-  hi def link rmdLaTeXInlDelim Special
-  hi def link rmdLaTeXRegDelim Special
-endif
-
-for s:lng in g:rmd_syn_langs
-  exe 'syn sync match rmd' . toupper(s:lng) . 'SyncChunk grouphere rmd' . toupper(s:lng) . 'Chunk /^[ \t]*``` *{\(' . s:lng . '\|r.*engine\s*=\s*["' . "']" . s:lng . "['" . '"]\)/'
+  exe 'syn region rmd'.s:nm.'Inline matchgroup=rmdInlineDelim start="`'.s:nm.' "  end="`" contains=@Rmd'.s:nm.' keepend'
 endfor
+unlet! s:type
+
+hi def link rmdInlineDelim Delimiter
+hi def link rmdCodeDelim Delimiter
+
+" You don't need this if either your markdown/syntax.vim already highlights
+" the YAML header or you are writing standard markdown
+if g:rmd_syn_hl_yaml
+  " Minimum highlighting of yaml header
+  syn match rmdYamlFieldTtl /^\s*\zs\w*\ze:/ contained
+  syn match rmdYamlFieldTtl /^\s*-\s*\zs\w*\ze:/ contained
+  syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start='"' skip='\\"' end='"' contains=yamlEscape,rmdrInline contained
+  syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start="'" skip="''"  end="'" contains=yamlSingleEscape,rmdrInline contained
+  syn match  yamlEscape contained '\\\%([\\"abefnrtv\^0_ NLP\n]\|x\x\x\|u\x\{4}\|U\x\{8}\)'
+  syn match  yamlSingleEscape contained "''"
+  syn region pandocYAMLHeader matchgroup=rmdYamlBlockDelim start=/\%(\%^\|\_^\s*\n\)\@<=\_^-\{3}\ze\n.\+/ end=/^\([-.]\)\1\{2}$/ keepend contains=rmdYamlFieldTtl,yamlFlowString
+  hi def link rmdYamlBlockDelim Delimiter
+  hi def link rmdYamlFieldTtl Identifier
+  hi def link yamlFlowString String
+endif
 
-hi def link rmdYamlBlockDelim Delim
-for s:lng in g:rmd_syn_langs
-  exe 'hi def link rmd' . toupper(s:lng) . 'ChunkDelim Special'
-endfor
-hi def link rmdInlineDelim Special
-hi def link rmdSlidifySpecial Special
+" You don't need this if either your markdown/syntax.vim already highlights
+" citations or you are writing standard markdown
+if g:rmd_syn_hl_citations
+  " From vim-pandoc-syntax
+  " parenthetical citations
+  syn match pandocPCite /\^\@<!\[[^\[\]]\{-}-\{0,1}@[[:alnum:]_][[:alnum:]à-öø-ÿÀ-ÖØ-ß_:.#$%&\-+?<>~\/]*.\{-}\]/ contains=pandocEmphasis,pandocStrong,pandocLatex,pandocCiteKey,@Spell,pandocAmpersandEscape display
+  " in-text citations with location
+  syn match pandocICite /@[[:alnum:]_][[:alnum:]à-öø-ÿÀ-ÖØ-ß_:.#$%&\-+?<>~\/]*\s\[.\{-1,}\]/ contains=pandocCiteKey,@Spell display
+  " cite keys
+  syn match pandocCiteKey /\(-\=@[[:alnum:]_][[:alnum:]à-öø-ÿÀ-ÖØ-ß_:.#$%&\-+?<>~\/]*\)/ containedin=pandocPCite,pandocICite contains=@NoSpell display
+  syn match pandocCiteAnchor /[-@]/ contained containedin=pandocCiteKey display
+  syn match pandocCiteLocator /[\[\]]/ contained containedin=pandocPCite,pandocICite
+  hi def link pandocPCite Operator
+  hi def link pandocICite Operator
+  hi def link pandocCiteKey Label
+  hi def link pandocCiteAnchor Operator
+  hi def link pandocCiteLocator Operator
+endif
 
 let b:current_syntax = "rmd"
 
+let &cpo = s:cpo_save
+unlet s:cpo_save
+
 " vim: ts=8 sw=2
index 665acc53e21ef7e105a6cf7dcc90fcec3b72d819..b2ba17d68dee8b2c20a86b65d80663822e9dd645 100644 (file)
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language:    R noweb Files
 " Maintainer:  Johannes Ranke <jranke@uni-bremen.de>
-" Last Change: Sat Feb 06, 2016  06:47AM
+" Last Change: Thu Apr 05, 2018  11:06PM
 " Version:     0.9.1
 " Remarks:     - This file is inspired by the proposal of 
 "                Fernando Henrique Ferraz Pereira da Rosa <feferraz@ime.usp.br>
@@ -16,7 +16,7 @@ syn case match
 
 " Extension of Tex clusters {{{1
 runtime syntax/tex.vim
-unlet b:current_syntax
+unlet! b:current_syntax
 
 syn cluster texMatchGroup add=@rnoweb
 syn cluster texMathMatchGroup add=rnowebSexpr
index b643af32851510fbb52329d149903c3c17148bc0..3a56342cd8f5a9a0cdd59f07b81d2a5b9ace2f62 100644 (file)
@@ -2,7 +2,7 @@
 " Language: reST with R code chunks
 " Maintainer: Alex Zvoleff, azvoleff@mail.sdsu.edu
 " Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Tue Jun 28, 2016  08:53AM
+" Last Change: Thu Apr 05, 2018  11:06PM
 "
 " CONFIGURATION:
 "   To highlight chunk headers as R code, put in your vimrc:
@@ -14,7 +14,7 @@ endif
 
 " load all of the rst info
 runtime syntax/rst.vim
-unlet b:current_syntax
+unlet! b:current_syntax
 
 " load all of the r syntax highlighting rules into @R
 syntax include @R syntax/r.vim
index 31f5f2b7ed02eb3fbdb639ec6eb843b1de5f4e6a..019b0ada32fe64d6937818360cb6236e7d696242 100644 (file)
@@ -1,8 +1,9 @@
 " Vim syntax file
 " Language:             sudoers(5) configuration files
 " Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
-" Latest Revision:      2018-07-19
+" Latest Revision:      2018-08-18
 " Recent Changes:      Support for #include and #includedir.
+"                      Added many new options (Samuel D. Leslie)
 
 if exists("b:current_syntax")
   finish
@@ -152,77 +153,120 @@ syn match   sudoersDefaultTypeGreaterThan contained '>' nextgroup=@sudoersUser s
 " TODO: could also deal with special characters here
 syn match   sudoersBooleanParameter contained '!' nextgroup=sudoersBooleanParameter skipwhite skipnl
 syn keyword sudoersBooleanParameter contained skipwhite skipnl
+                                  \ always_query_group_plugin
                                   \ always_set_home
                                   \ authenticate
                                   \ closefrom_override
+                                  \ compress_io
                                   \ env_editor
                                   \ env_reset
+                                  \ exec_background
+                                  \ fast_glob
                                   \ fqdn
+                                  \ ignore_audit_errors
                                   \ ignore_dot
+                                  \ ignore_iolog_errors
                                   \ ignore_local_sudoers
+                                  \ ignore_logfile_errors
+                                  \ ignore_unknown_defaults
                                   \ insults
                                   \ log_host
+                                  \ log_input
+                                  \ log_output
                                   \ log_year
                                   \ long_otp_prompt
+                                  \ mail_all_cmnds
                                   \ mail_always
                                   \ mail_badpass
                                   \ mail_no_host
                                   \ mail_no_perms
                                   \ mail_no_user
+                                  \ match_group_by_gid
+                                  \ netgroup_tuple
                                   \ noexec
-                                  \ path_info
+                                  \ pam_session
+                                  \ pam_setcred
                                   \ passprompt_override
+                                  \ path_info
                                   \ preserve_groups
+                                  \ pwfeedback
                                   \ requiretty
                                   \ root_sudo
                                   \ rootpw
                                   \ runaspw
                                   \ set_home
                                   \ set_logname
+                                  \ set_utmp
                                   \ setenv
                                   \ shell_noargs
                                   \ stay_setuid
+                                  \ sudoedit_checkdir
+                                  \ sudoedit_fellow
+                                  \ syslog_pid
                                   \ targetpw
                                   \ tty_tickets
+                                  \ umask_override
+                                  \ use_netgroups
+                                  \ use_pty
+                                  \ user_command_timeouts
+                                  \ utmp_runas
                                   \ visiblepw
 
 syn keyword sudoersIntegerParameter contained
                                   \ nextgroup=sudoersIntegerParameterEquals
                                   \ skipwhite skipnl
                                   \ closefrom
-                                  \ passwd_tries
+                                  \ command_timeout
                                   \ loglinelen
+                                  \ maxseq
                                   \ passwd_timeout
+                                  \ passwd_tries
+                                  \ syslog_maxlen
                                   \ timestamp_timeout
                                   \ umask
 
 syn keyword sudoersStringParameter  contained
                                   \ nextgroup=sudoersStringParameterEquals
                                   \ skipwhite skipnl
+                                  \ askpass
                                   \ badpass_message
                                   \ editor
-                                  \ mailsub
-                                  \ noexec_file
-                                  \ passprompt
-                                  \ runas_default
-                                  \ syslog_badpri
-                                  \ syslog_goodpri
-                                  \ sudoers_locale
-                                  \ timestampdir
-                                  \ timestampowner
-                                  \ askpass
                                   \ env_file
                                   \ exempt_group
+                                  \ fdexec
+                                  \ group_plugin
+                                  \ iolog_dir
+                                  \ iolog_file
+                                  \ iolog_flush
+                                  \ iolog_group
+                                  \ iolog_mode
+                                  \ iolog_user
                                   \ lecture
                                   \ lecture_file
+                                  \ lecture_status_dir
                                   \ listpw
                                   \ logfile
                                   \ mailerflags
                                   \ mailerpath
                                   \ mailfrom
+                                  \ mailsub
                                   \ mailto
+                                  \ noexec_file
+                                  \ pam_login_service
+                                  \ pam_service
+                                  \ passprompt
+                                  \ restricted_env_file
+                                  \ role
+                                  \ runas_default
                                   \ secure_path
+                                  \ sudoers_locale
                                   \ syslog
+                                  \ syslog_badpri
+                                  \ syslog_goodpri
+                                  \ timestamp_type
+                                  \ timestampdir
+                                  \ timestampowner
+                                  \ type
                                   \ verifypw
 
 syn keyword sudoersListParameter    contained
index 58cd19210b3dfb9f8b6891b3761518f8112b6215..f5e11da004526dab9cd997900e544e5fa3aa3ea1 100644 (file)
@@ -6,8 +6,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Vim 8.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-06-08 22:09+0200\n"
-"PO-Revision-Date: 2018-06-23 23:30+0200\n"
+"POT-Creation-Date: 2018-07-18 21:20+0200\n"
+"PO-Revision-Date: 2018-08-17 00:15+0200\n"
 "Last-Translator: scootergrisen\n"
 "Language-Team: Danish\n"
 "Language: da\n"
@@ -184,10 +184,10 @@ msgid "All"
 msgstr "Alt"
 
 msgid "Bot"
-msgstr "Ned"
+msgstr "Nederst"
 
 msgid "Top"
-msgstr "Øve"
+msgstr "Øverst"
 
 msgid ""
 "\n"
@@ -565,7 +565,8 @@ msgid "E115: Missing quote: %s"
 msgstr "E115: Manglende citationstegn: %s"
 
 msgid "Not enough memory to set references, garbage collection aborted!"
-msgstr "Ikke nok hukommelse til at sætte referencer, affaldsindsamling afbrudt!"
+msgstr ""
+"Ikke nok hukommelse til at sætte referencer, affaldsindsamling afbrudt!"
 
 msgid "E724: variable nested too deep for displaying"
 msgstr "E724: variabel indlejret for dybt til at blive vist"
@@ -1415,6 +1416,9 @@ msgstr "E784: Kan ikke lukke sidste fanebladsside"
 msgid "Already only one tab page"
 msgstr "Allerede kun én fanebladsside"
 
+msgid "Edit File in new tab page"
+msgstr "Rediger fil i ny fanebladsside"
+
 msgid "Edit File in new window"
 msgstr "Rediger fil i nyt vindue"
 
@@ -1645,7 +1649,7 @@ msgid ""
 "# %s History (newest to oldest):\n"
 msgstr ""
 "\n"
-"# %s Historik (nyeste til ældste):\n"
+"# %s historik (nyeste til ældste):\n"
 
 msgid "Command Line"
 msgstr "Kommandolinje"
@@ -1672,7 +1676,7 @@ msgid "E812: Autocommands changed buffer or buffer name"
 msgstr "E812: Autokommandoer ændrede buffer eller buffernavn"
 
 msgid "Illegal file name"
-msgstr "Ulovlig filnavn"
+msgstr "Ulovligt filnavn"
 
 msgid "is a directory"
 msgstr "er en mappe"
@@ -1957,7 +1961,8 @@ msgstr "Se \":help W12\" for mere info."
 
 #, c-format
 msgid "W11: Warning: File \"%s\" has changed since editing started"
-msgstr "W11: Advarsel: Filen \"%s\" er blevet ændret siden redigeringen startede"
+msgstr ""
+"W11: Advarsel: Filen \"%s\" er blevet ændret siden redigeringen startede"
 
 msgid "See \":help W11\" for more info."
 msgstr "Se \":help W11\" for mere info."
@@ -1965,8 +1970,8 @@ msgstr "Se \":help W11\" for mere info."
 #, c-format
 msgid "W16: Warning: Mode of file \"%s\" has changed since editing started"
 msgstr ""
-"W16: Advarsel: Tilstanden af filen \"%s\" er blevet ændret siden redigeringen "
-"startede"
+"W16: Advarsel: Tilstanden af filen \"%s\" er blevet ændret siden "
+"redigeringen startede"
 
 msgid "See \":help W16\" for more info."
 msgstr "Se \":help W16\" for mere info."
@@ -2025,10 +2030,10 @@ msgstr "E216: Ingen sådan gruppe eller hændelse: %s"
 
 msgid ""
 "\n"
-"--- Auto-Commands ---"
+"--- Autocommands ---"
 msgstr ""
 "\n"
-"--- Auto-kommandoer ---"
+"--- Autokommandoer ---"
 
 #, c-format
 msgid "E680: <buffer=%d>: invalid buffer number "
@@ -2044,8 +2049,8 @@ msgid "E218: autocommand nesting too deep"
 msgstr "E218: autokommando indlejret for dyb"
 
 #, c-format
-msgid "%s Auto commands for \"%s\""
-msgstr "%s Auto-kommandoer for \"%s\""
+msgid "%s Autocommands for \"%s\""
+msgstr "%s Autokommandoer for \"%s\""
 
 #, c-format
 msgid "Executing %s"
@@ -2291,10 +2296,10 @@ msgstr "&Fortryd"
 msgid "Open tab..."
 msgstr "Åbn faneblad..."
 
-msgid "Find string (use '\\\\' to find  a '\\')"
+msgid "Find string (use '\\\\' to find a '\\')"
 msgstr "Find streng (brug '\\\\' til at finde et '\\')"
 
-msgid "Find & Replace (use '\\\\' to find  a '\\')"
+msgid "Find & Replace (use '\\\\' to find a '\\')"
 msgstr "Find og erstat (brug '\\\\' til at finde et '\\')"
 
 msgid "Not Used"
@@ -2878,7 +2883,8 @@ msgstr "Affald efter tilvalgsargument"
 
 msgid "Too many \"+command\", \"-c command\" or \"--cmd command\" arguments"
 msgstr ""
-"For mange \"+kommando\"-, \"-c kommando\"- eller \"--cmd kommando\"-argumenter"
+"For mange \"+kommando\"-, \"-c kommando\"- eller \"--cmd kommando\"-"
+"argumenter"
 
 msgid "Invalid argument for"
 msgstr "Ugyldigt argument for"
@@ -2931,7 +2937,7 @@ msgstr ""
 "\n"
 "Mere info med: \"vim -h\"\n"
 
-msgid "[file ..]       edit specified file(s)"
+msgid "[file ..]  edit specified file(s)"
 msgstr "[fil ..]        rediger angivne fil(er)"
 
 msgid "-               read text from stdin"
@@ -2946,11 +2952,11 @@ msgstr "-q [fejlfil]    rediger fil med første fejl"
 msgid ""
 "\n"
 "\n"
-"usage:"
+"Usage:"
 msgstr ""
 "\n"
 "\n"
-"anvendelse:"
+"Anvendelse:"
 
 msgid " vim [arguments] "
 msgstr " vim [argumenter] "
@@ -3063,8 +3069,8 @@ msgstr "-f\t\t\tBrug ikke newcli til at åbne vindue"
 msgid "-dev <device>\t\tUse <device> for I/O"
 msgstr "-dev <enhed>\t\tBrug <enhed> til I/O"
 
-msgid "-A\t\t\tstart in Arabic mode"
-msgstr "-A\t\t\tstart i arabisk tilstand"
+msgid "-A\t\t\tStart in Arabic mode"
+msgstr "-A\t\t\tStart i arabisk tilstand"
 
 msgid "-H\t\t\tStart in Hebrew mode"
 msgstr "-H\t\t\tStart i hebraisk tilstand"
@@ -3113,7 +3119,8 @@ msgid "-c <command>\t\tExecute <command> after loading the first file"
 msgstr "-c <kommando>\tUdfør <kommando> efter indlæsning af den første fil"
 
 msgid "-S <session>\t\tSource file <session> after loading the first file"
-msgstr "-S <session>\t\tSource filen <session> efter indlæsning af den første fil"
+msgstr ""
+"-S <session>\t\tSource filen <session> efter indlæsning af den første fil"
 
 msgid "-s <scriptin>\tRead Normal mode commands from file <scriptin>"
 msgstr "-s <scriptind>\tLæs normal tilstand-kommandoer fra filen <scriptind>"
@@ -3180,7 +3187,8 @@ msgid "-i <viminfo>\t\tUse <viminfo> instead of .viminfo"
 msgstr "-i <viminfo>\t\tBrug <viminfo> i stedet for .viminfo"
 
 msgid "--clean\t\t'nocompatible', Vim defaults, no plugins, no viminfo"
-msgstr "--clean\t\t'nocompatible', Vim-standarder, ingen plugins, ingen viminfo"
+msgstr ""
+"--clean\t\t'nocompatible', Vim-standarder, ingen plugins, ingen viminfo"
 
 msgid "-h  or  --help\tPrint Help (this message) and exit"
 msgstr "-h eller --help\tUdskriv hjælp (denne meddelelse) og afslut"
@@ -3486,21 +3494,22 @@ msgid ""
 "If you entered a new crypt key but did not write the text file,"
 msgstr ""
 "\n"
-"Hvis du indtastede en ny crypt-nøgle men ikke skrev tekstfilen,"
+"Hvis du indtastede en ny krypteringsnøgle men ikke skrev tekstfilen,"
 
 msgid ""
 "\n"
 "enter the new crypt key."
 msgstr ""
 "\n"
-"så indtast den nye crypt-nøgle."
+"så indtast den nye krypteringsnøgle."
 
 msgid ""
 "\n"
 "If you wrote the text file after changing the crypt key press enter"
 msgstr ""
 "\n"
-"Hvis du skrev tekstfilen efter crypt-nøglen blev ændret, så tryk på enter"
+"Hvis du skrev tekstfilen efter krypteringsnøglen blev ændret, så tryk på "
+"enter"
 
 msgid ""
 "\n"
@@ -3547,8 +3556,7 @@ msgstr "E311: Gendannelse afbrudt"
 msgid ""
 "E312: Errors detected while recovering; look for lines starting with ???"
 msgstr ""
-"E312: Fejl registreret ved gendannelse; kig efter linjer som begynder med "
-"???"
+"E312: Fejl registreret ved gendannelse; kig efter linjer som begynder med ???"
 
 msgid "See \":help E312\" for more information."
 msgstr "Se \":help E312\" for mere information."
@@ -3580,16 +3588,16 @@ msgstr ""
 "\n"
 
 msgid "Using crypt key from swap file for the text file.\n"
-msgstr "Bruger crypt-nøglen fra swap-filen til tekstfilen.\n"
+msgstr "Bruger krypteringsnøglen fra swap-filen til tekstfilen.\n"
 
 msgid "Swap files found:"
 msgstr "Swap-filer fundet:"
 
 msgid "   In current directory:\n"
-msgstr "   I nuværende mappe:\n"
+msgstr "      I nuværende mappe:\n"
 
 msgid "   Using specified name:\n"
-msgstr "   Bruger angivne navn:\n"
+msgstr "    Bruger angivne navn:\n"
 
 msgid "   In directory "
 msgstr "   I mappe "
@@ -3598,13 +3606,13 @@ msgid "      -- none --\n"
 msgstr "      -- ingen --\n"
 
 msgid "          owned by: "
-msgstr "          ejet af: "
+msgstr "           ejet af: "
 
 msgid "   dated: "
-msgstr "   dateret: "
+msgstr " dateret: "
 
 msgid "             dated: "
-msgstr "             dateret: "
+msgstr "           dateret: "
 
 msgid "         [from Vim version 3.0]"
 msgstr "         [fra Vim version 3.0]"
@@ -3613,14 +3621,14 @@ msgid "         [does not look like a Vim swap file]"
 msgstr "         [ligner ikke en Vim swap-fil]"
 
 msgid "         file name: "
-msgstr "         filnavn: "
+msgstr "           filnavn: "
 
 msgid ""
 "\n"
 "          modified: "
 msgstr ""
 "\n"
-"          ændret: "
+"            ændret: "
 
 msgid "YES"
 msgstr "JA"
@@ -3633,7 +3641,7 @@ msgid ""
 "         user name: "
 msgstr ""
 "\n"
-"         brugernavn: "
+"        brugernavn: "
 
 msgid "   host name: "
 msgstr "   værtsnavn: "
@@ -3650,7 +3658,7 @@ msgid ""
 "        process ID: "
 msgstr ""
 "\n"
-"        proces-ID: "
+"         proces-ID: "
 
 msgid " (still running)"
 msgstr " (kører stadig)"
@@ -3758,9 +3766,11 @@ msgid ""
 "    file when making changes.  Quit, or continue with caution.\n"
 msgstr ""
 "\n"
-"(1) Et andet program redigere muligvis den samme fil. Hvis det er tilfældet,\n"
+"(1) Et andet program redigere muligvis den samme fil. Hvis det er "
+"tilfældet,\n"
 "    så pas på ikke at ende med to forskellige instanser af den samme\n"
-"    fil når der foretages ændringer. Afslut, eller fortsæt med forsigtighed.\n"
+"    fil når der foretages ændringer. Afslut, eller fortsæt med "
+"forsigtighed.\n"
 
 msgid "(2) An edit session for this file crashed.\n"
 msgstr "(2) En redigeringssession for filen holdt op med at virke.\n"
@@ -4059,7 +4069,8 @@ msgstr "E347: Ikke flere fil \"%s\" fundet i path"
 
 #, c-format
 msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\""
-msgstr "E668: Forkert adgangstilstand for NetBeans-forbindelsens info-fil: \"%s\""
+msgstr ""
+"E668: Forkert adgangstilstand for NetBeans-forbindelsens info-fil: \"%s\""
 
 #, c-format
 msgid "E658: NetBeans connection lost for buffer %ld"
@@ -4214,8 +4225,8 @@ msgid ""
 "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
 "%lld Bytes"
 msgstr ""
-"Markerede %s%ld af %ld linje; %lld af %lld ord; %lld af %lld tegn; %lld af %"
-"lld byte"
+"Markerede %s%ld af %ld linje; %lld af %lld ord; %lld af %lld tegn; %lld af "
+"%lld byte"
 
 #, c-format
 msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
@@ -4226,8 +4237,8 @@ msgid ""
 "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
 "%lld of %lld"
 msgstr ""
-"Kol %s af %s; Linje %ld af %ld; Ord %lld af %lld; Tegn %lld af %lld; Byte %"
-"lld af %lld"
+"Kol %s af %s; Linje %ld af %ld; Ord %lld af %lld; Tegn %lld af %lld; Byte "
+"%lld af %lld"
 
 #, c-format
 msgid "(+%lld for BOM)"
@@ -4746,8 +4757,8 @@ msgstr "E55: Ikke-matchet %s)"
 msgid "E66: \\z( not allowed here"
 msgstr "E66: \\z( ikke tilladt her"
 
-msgid "E67: \\z1 et al. not allowed here"
-msgstr "E67: \\z1 og andre ikke tilladt her"
+msgid "E67: \\z1 - \\z9 not allowed here"
+msgstr "E67: \\z1 - \\z9 ikke tilladt her"
 
 #, c-format
 msgid "E69: Missing ] after %s%%["
@@ -4757,6 +4768,9 @@ msgstr "E69: Manglende ] efter %s%%["
 msgid "E70: Empty %s%%[]"
 msgstr "E70: Tom %s%%[]"
 
+msgid "E956: Cannot use pattern recursively"
+msgstr "E956: Kan ikke bruge mønster rekursivt"
+
 msgid "E65: Illegal back reference"
 msgstr "E65: Ulovlig tilbage-reference"
 
@@ -4859,8 +4873,8 @@ msgstr "E869: (NFA) Ukendt operator '\\@%c'"
 msgid "E870: (NFA regexp) Error reading repetition limits"
 msgstr "E870: (NFA regexp) Fejl ved læsning af gentagelsesgrænser"
 
-msgid "E871: (NFA regexp) Can't have a multi follow a multi !"
-msgstr "E871: (NFA regexp) En multi må ikke efterfølges af en multi !"
+msgid "E871: (NFA regexp) Can't have a multi follow a multi"
+msgstr "E871: (NFA regexp) En multi må ikke efterfølges af en multi"
 
 msgid "E872: (NFA regexp) Too many '('"
 msgstr "E872: (NFA regexp) For mange '('"
@@ -4871,8 +4885,11 @@ msgstr "E879: (NFA regexp) For mange \\z("
 msgid "E873: (NFA regexp) proper termination error"
 msgstr "E873: (NFA regexp) fejl ved korrekt terminering"
 
-msgid "E874: (NFA) Could not pop the stack !"
-msgstr "E874: (NFA) Kunne ikke pop'e stakken !"
+msgid "Could not open temporary log file for writing, displaying on stderr... "
+msgstr "Kunne ikke åbne midlertidig logfil til skrivning, viser på stderr... "
+
+msgid "E874: (NFA) Could not pop the stack!"
+msgstr "E874: (NFA) Kunne ikke pop'e stakken!"
 
 msgid ""
 "E875: (NFA regexp) (While converting from postfix to NFA), too many states "
@@ -4887,17 +4904,6 @@ msgstr "E876: (NFA regexp) Ikke nok plads til at lagre hele NFA'en "
 msgid "E878: (NFA) Could not allocate memory for branch traversal!"
 msgstr "E878: (NFA) Kunne ikke allokere hukommelse til gennemgang af gren!"
 
-msgid ""
-"Could not open temporary log file for writing, displaying on stderr ... "
-msgstr "Kunne ikke åbne midlertidig logfil til skrivning, viser på stderr ... "
-
-#, c-format
-msgid "(NFA) COULD NOT OPEN %s !"
-msgstr "(NFA) KUNNE IKKE ÅBNE %s !"
-
-msgid "Could not open temporary log file for writing "
-msgstr "Kunne ikke åbne midlertidig logfil til skrivning "
-
 msgid " VREPLACE"
 msgstr " VERSTAT"
 
@@ -5008,6 +5014,7 @@ msgstr "E389: Kunne ikke finde mønster"
 msgid "Substitute "
 msgstr "Erstatning "
 
+# scootergrisen: find ud af om "Søgemønster" skal være med stort eller lille
 #, c-format
 msgid ""
 "\n"
@@ -5023,11 +5030,13 @@ msgstr "E756: Stavekontrol er ikke aktiveret"
 
 #, c-format
 msgid "Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\""
-msgstr "Advarsel: Kan ikke finde ordlisten \"%s_%s.spl\" eller \"%s_ascii.spl\""
+msgstr ""
+"Advarsel: Kan ikke finde ordlisten \"%s_%s.spl\" eller \"%s_ascii.spl\""
 
 #, c-format
 msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""
-msgstr "Advarsel: Kan ikke finde ordlisten \"%s.%s.spl\" eller \"%s.ascii.spl\""
+msgstr ""
+"Advarsel: Kan ikke finde ordlisten \"%s.%s.spl\" eller \"%s.ascii.spl\""
 
 msgid "E797: SpellFileMissing autocommand deleted buffer"
 msgstr "E797: SpellFileMissing-autokommando slettede buffer"
@@ -5115,8 +5124,8 @@ msgid "E782: error while reading .sug file: %s"
 msgstr "E782: fejl ved læsning af .sug-fil: %s"
 
 #, c-format
-msgid "Reading affix file %s ..."
-msgstr "Læser affix-filen %s ..."
+msgid "Reading affix file %s..."
+msgstr "Læser affix-filen %s..."
 
 #, c-format
 msgid "Conversion failure for word in %s line %d: %s"
@@ -5251,8 +5260,8 @@ msgid "%s value differs from what is used in another .aff file"
 msgstr "%s-værdi er ikke den samme som bruges i en anden .aff-fil"
 
 #, c-format
-msgid "Reading dictionary file %s ..."
-msgstr "Læser ordbogsfilen %s ..."
+msgid "Reading dictionary file %s..."
+msgstr "Læser ordbogsfilen %s..."
 
 #, c-format
 msgid "E760: No word count in %s"
@@ -5279,8 +5288,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s"
 msgstr "Ignorerede %d ord med ikke-ASCII-tegn i %s"
 
 #, c-format
-msgid "Reading word file %s ..."
-msgstr "Læser ordfilen %s ..."
+msgid "Reading word file %s..."
+msgstr "Læser ordfilen %s..."
 
 #, c-format
 msgid "Duplicate /encoding= line ignored in %s line %d: %s"
@@ -5336,8 +5345,8 @@ msgid "Total number of words: %d"
 msgstr "Samlet antal ord: %d"
 
 #, c-format
-msgid "Writing suggestion file %s ..."
-msgstr "Skriver forslagsfilen %s ..."
+msgid "Writing suggestion file %s..."
+msgstr "Skriver forslagsfilen %s..."
 
 #, c-format
 msgid "Estimated runtime memory use: %d bytes"
@@ -5358,8 +5367,8 @@ msgid "Warning: both compounding and NOBREAK specified"
 msgstr "Advarsel: både compounding og NOBREAK angivet"
 
 #, c-format
-msgid "Writing spell file %s ..."
-msgstr "Skriver spell-filen %s ..."
+msgid "Writing spell file %s..."
+msgstr "Skriver spell-filen %s..."
 
 msgid "Done!"
 msgstr "Færdig!"
@@ -5386,10 +5395,10 @@ msgid "No Syntax items defined for this buffer"
 msgstr "Ingen syntakspunkter defineret for denne buffer"
 
 msgid "syntax conceal on"
-msgstr "syntax conceal on"
+msgstr "syntax conceal til"
 
 msgid "syntax conceal off"
-msgstr "syntax conceal off"
+msgstr "syntax conceal fra"
 
 #, c-format
 msgid "E390: Illegal argument: %s"
@@ -5981,7 +5990,8 @@ msgstr "E129: Funktionsnavn kræves"
 
 #, c-format
 msgid "E128: Function name must start with a capital or \"s:\": %s"
-msgstr "E128: Funktionsnavnet skal begynde med et stort bogstav eller \"s:\": %s"
+msgstr ""
+"E128: Funktionsnavnet skal begynde med et stort bogstav eller \"s:\": %s"
 
 #, c-format
 msgid "E884: Function name cannot contain a colon: %s"
@@ -6032,6 +6042,10 @@ msgstr "E133: :return ikke i en funktion"
 msgid "E107: Missing parentheses: %s"
 msgstr "E107: Manglende parenteser: %s"
 
+#, c-format
+msgid "%s (%s, compiled %s)"
+msgstr "%s (%s, kompileret %s)"
+
 msgid ""
 "\n"
 "MS-Windows 64-bit GUI version"
@@ -6264,7 +6278,7 @@ msgid "type  :help version8<Enter>   for version info"
 msgstr "skriv :help version8<Enter>   for versionsinfo"
 
 msgid "Running in Vi compatible mode"
-msgstr "Kører i Vi-kompatibel-tilstand"
+msgstr "Kører i Vi-kompatibel tilstand"
 
 msgid "type  :set nocp<Enter>        for Vim defaults"
 msgstr "skriv :set nocp<Enter>        for Vim-standarder"
@@ -6410,8 +6424,7 @@ msgstr "E11: Ugyldig i kommandolinjevindue; <CR> udfører, CTRL-C afslutter"
 
 msgid "E12: Command not allowed from exrc/vimrc in current dir or tag search"
 msgstr ""
-"E12: Kommando ikke tilladt fra exrc/vimrc i nuværende mappe- eller "
-"tagsøgning"
+"E12: Kommando ikke tilladt fra exrc/vimrc i nuværende mappe- eller tagsøgning"
 
 msgid "E171: Missing :endif"
 msgstr "E171: Manglende :endif"
@@ -6530,9 +6543,7 @@ msgid "E26: Hebrew cannot be used: Not enabled at compile time\n"
 msgstr "E26: Hebraisk kan ikke bruges: Ikke aktiveret ved kompileringstid\n"
 
 msgid "E27: Farsi cannot be used: Not enabled at compile time\n"
-msgstr ""
-"E27: Persisk kan ikke bruges: Ikke aktiveret ved kompileringstid\n"
-"\n"
+msgstr "E27: Persisk kan ikke bruges: Ikke aktiveret ved kompileringstid\n"
 
 msgid "E800: Arabic cannot be used: Not enabled at compile time\n"
 msgstr "E800: Arabisk kan ikke bruges: Ikke aktiveret ved kompileringstid\n"
@@ -6852,8 +6863,7 @@ msgstr "ventede 3-tuple som imp.find_module() resultat, men fik %s"
 #, c-format
 msgid "expected 3-tuple as imp.find_module() result, but got tuple of size %d"
 msgstr ""
-"ventede 3-tuple som imp.find_module() resultat, men fik tuple af størrelse %"
-"d"
+"ventede 3-tuple som imp.find_module() resultat, men fik tuple af størrelse %d"
 
 msgid "internal error: imp.find_module returned tuple with NULL"
 msgstr "intern fejl: imp.find_module returnerede tuple med NULL"