Compare commits

..

111 Commits

Author SHA1 Message Date
Kazuki Sakamoto 7ac45012c6 MacVim Snapshot 93
Binary targets OS X 10.8(Mountain Lion), 10.9(Mavericks), 10.10(Yosemite), and 10.11(El Capitan)

- Vim patch 7.4.1129

Script interfaces have compatibility with these versions

- Lua 5.2
- Perl 5.16
- Python2 2.7
- Python3 3.5
- Ruby 2.0
2016-01-17 22:33:12 -08:00
Kazuki Sakamoto e793669ceb Improve test in Travis-CI 2016-01-17 22:29:43 -08:00
Kazuki Sakamoto 39c08b5cd7 Merge remote-tracking branch 'vim/master' 2016-01-17 21:00:42 -08:00
Kazuki Sakamoto 1d10a62c5f Merge pull request #213 from macvim-dev/fix/update_sparkle
Sparkle v1.13.0
2016-01-17 20:24:58 -08:00
Kazuki Sakamoto 8bbd6d3c21 Sparkle v1.13.0 2016-01-17 19:38:25 -08:00
Bram Moolenaar 77324fc9d3 patch 7.4.1129
Problem:    Python None value can't be converted to a Vim value.
Solution:   Just use zero. (Damien)
2016-01-17 22:37:03 +01:00
Bram Moolenaar 85084ef1e9 Update help files. 2016-01-17 22:26:33 +01:00
Bram Moolenaar 203258c3ad patch 7.4.1128
Problem:    MS-Windows: delete() does not recognize junctions.
Solution:   Add mch_isrealdir() for MS-Windows. Update mch_is_symbolic_link().
            (Ken Takata)
2016-01-17 22:15:16 +01:00
Bram Moolenaar 021b593e7e patch 7.4.1127
Problem:    Both old and new style tests for Perl.
Solution:   Merge the old tests with the new style tests.
2016-01-17 22:05:48 +01:00
Bram Moolenaar c970330676 patch 7.4.1126
Problem:    Can only get the directory of the current window.
Solution:   Add window and tab arguments to getcwd() and haslocaldir().
            (Thinca, Hirohito Higashi)
2016-01-17 21:49:33 +01:00
Bram Moolenaar e9b892ebcd patch 7.4.1125
Problem:    There is no perleval().
Solution:   Add perleval(). (Damien)
2016-01-17 21:15:58 +01:00
Bram Moolenaar 25b2b94ea7 patch 7.4.1124
Problem:    MS-Windows: dead key behavior is not ideal.
Solution:   Handle dead keys differently when not in Insert or Select mode.
            (John Wellesz, closes #399)
2016-01-17 20:53:12 +01:00
Bram Moolenaar a24f0a550f patch 7.4.1123
Problem:    Using ":argadd" when there are no arguments results in the second
            argument to be the current one. (Yegappan Lakshmanan)
Solution:   Correct the w_arg_idx value.
2016-01-17 19:39:00 +01:00
Kazuki Sakamoto 9ec66d3833 MacVim Snapshot 92
Binary targets OS X 10.8(Mountain Lion), 10.9(Mavericks), 10.10(Yosemite), and 10.11(El Capitan)

- Vim patch 7.4.1122
- Enabled Sparkle for auto update

Script interfaces have compatibility with these versions

- Lua 5.2
- Perl 5.16
- Python2 2.7
- Python3 3.5
- Ruby 2.0
2016-01-17 09:59:16 -08:00
Kazuki Sakamoto fde7641622 Merge pull request #211 from macvim-dev/feature/sparkle
Enable sparkle update
2016-01-17 09:56:05 -08:00
Kazuki Sakamoto 5fa7ca57b3 Merge remote-tracking branch 'vim/master' 2016-01-17 09:52:26 -08:00
Bram Moolenaar 42c9cfa7f4 patch 7.4.1122
Problem:    Test 92 and 93 fail when using gvim on a system with a non utf-8
            locale.
Solution:   Avoid using .gvimrc by adding -U NONE. (Yukihiro Nakadaira)
2016-01-17 18:49:57 +01:00
Bram Moolenaar 08b270a8a4 patch 7.4.1121
Problem:    test_expand leaves files behind.
Solution:   Edit another file before deleting, otherwise the swap file
            remains.
2016-01-17 18:34:19 +01:00
Bram Moolenaar 336bd622c3 patch 7.4.1120
Problem:    delete(x, 'rf') fails if a directory is empty. (Lcd)
Solution:   Ignore not finding matches in an empty directory.
2016-01-17 18:23:58 +01:00
Bram Moolenaar 72defda84e patch 7.4.1119
Problem:    argidx() has a wrong value after ":%argdelete". (Yegappan
            Lakshmanan)
Solution:   Correct the value of w_arg_idx.  Add a test.
2016-01-17 18:04:33 +01:00
Bram Moolenaar a99b90437a patch 7.4.1118
Problem:    Tests hang in 24 line terminal.
Solution:   Set the 'more' option off.
2016-01-17 17:10:59 +01:00
Bram Moolenaar d82103ed85 patch 7.4.1117
Problem:    No longer get "." and ".." in directory list.
Solution:   Do not skip "." and ".." unless EW_DODOT is set.
2016-01-17 17:04:05 +01:00
Bram Moolenaar b0967d587f patch 7.4.1116
Problem:    delete(x, 'rf') does not delete files starting with a dot.
Solution:   Also delete files starting with a dot.
2016-01-17 16:49:43 +01:00
Bram Moolenaar d0232917ce patch 7.4.1115
Problem:    MS-Windows: make clean in testdir doesn't clean everything.
Solution:   Add command to delete X* directories. (Ken Takata)
2016-01-17 16:15:32 +01:00
Bram Moolenaar 43a34f9f74 patch 7.4.1114
Problem:    delete() does not work well with symbolic links.
Solution:   Recognize symbolik links.
2016-01-17 15:56:34 +01:00
Bram Moolenaar 4119cf80e1 patch 7.4.1113
Problem:    Using {ns} in variable name does not work. (lilydjwg)
Solution:   Fix recognizing colon.  Add a test.
2016-01-17 14:59:01 +01:00
Bram Moolenaar 2db5c3b3ce patch 7.4.1112
Problem:    When using ":next" with an illegal file name no error is reported.
Solution:   Give an error message.
2016-01-16 22:49:34 +01:00
Bram Moolenaar f60b796fa9 patch 7.4.1111
Problem:    test_expand fails on MS-Windows.
Solution:   Always use forward slashes.  Remove references to test27.
2016-01-16 22:47:23 +01:00
Bram Moolenaar 8c600052fa patch 7.4.1110
Problem:    Test 108 fails when language is French.
Solution:   Force English messages. (Dominique Pelle)
2016-01-16 22:08:11 +01:00
Bram Moolenaar 4cf7679383 patch 7.4.1109
Problem:    MS-Windows doesn't have rmdir().
Solution:   Add mch_rmdir().
2016-01-16 22:02:57 +01:00
Bram Moolenaar 58adb14739 patch 7.4.1108
Problem:    Expanding "~" halfway a file name.
Solution:   Handle the file name as one name. (Marco Hinz)  Add a test.
            Closes #564.
2016-01-16 21:50:51 +01:00
Bram Moolenaar da440d21a6 patch 7.4.1107
Problem:    Vim can create a directory but not delete it.
Solution:   Add an argument to delete() to make it possible to delete a
            directory, also recursively.
2016-01-16 21:27:23 +01:00
Kazuki Sakamoto f1add63bf6 Rename dmg name 2016-01-16 12:14:34 -08:00
Kazuki Sakamoto b73174039d Replace Sparkle.framework 2016-01-16 11:30:46 -08:00
Kazuki Sakamoto a1e013d9df Enable sparkle update 2016-01-16 11:30:46 -08:00
Kazuki Sakamoto c66ee271ee Merge remote-tracking branch 'vim/master' 2016-01-16 11:29:18 -08:00
Bram Moolenaar 286eacd3f6 patch 7.4.1106
Problem:    The nsis script can't be used from the appveyor build.
Solution:   Add "ifndef" to allow for variables to be set from the command
            line. Remove duplicate SetCompressor command. Support using other
            gettext binaries. (Ken Takata)  Update build instructions to use
            libintl-8.dll.
2016-01-16 18:05:50 +01:00
Bram Moolenaar 9bbf63dbf8 patch 7.4.1105
Problem:    When using slices there is a mixup of variable name and namespace.
Solution:   Recognize variables that can't be a namespace. (Hirohito Higashi)
2016-01-16 16:49:28 +01:00
Bram Moolenaar 4e640bd930 patch 7.4.1104
Problem:    Various problems building with MzScheme/Racket.
Solution:   Make it work with new versions of Racket. (Yukihiro Nakadaira, Ken
            Takata)
2016-01-16 16:20:38 +01:00
Bram Moolenaar d125001297 patch 7.4.1103
Problem:    Removed file still in distribution.
Solution:   Remove Make_cyg.mak from the list of files.
2016-01-16 15:45:15 +01:00
Bram Moolenaar f1f60f859c patch 7.4.1102
Problem:    Debugger has no stack backtrace support.
Solution:   Add "backtrace", "frame", "up" and "down" commands. (Alberto
            Fanjul, closes #433)
2016-01-16 15:40:53 +01:00
Bram Moolenaar e39b3d9fb4 patch 7.4.1101
Problem:    With 'rightleft' and concealing the cursor may move to the wrong
            position.
Solution:   Compute the column differently when 'rightleft' is set. (Hirohito
            Higashi)
2016-01-15 22:52:22 +01:00
Bram Moolenaar abfa9efb98 patch 7.4.1100
Problem:    Cygwin makefiles are unused.
Solution:   Remove them.
2016-01-15 22:34:45 +01:00
Bram Moolenaar 36d7cd8965 patch 7.4.1099
Problem:    It's not easy to know if Vim supports blowfish. (Smu Johnson)
Solution:   Add has('crypt-blowfish') and has('crypt-blowfish2').
2016-01-15 22:08:23 +01:00
Bram Moolenaar b7604cc19f patch 7.4.1098
Problem:    Still using old style C function declarations.
Solution:   Always define __ARGS() to include types.  Turn a few functions
            into ANSI style to find out if this causes problems for anyone.
2016-01-15 21:23:22 +01:00
Bram Moolenaar 345efa013d Update runtime files 2016-01-15 20:57:49 +01:00
Bram Moolenaar 065ee9aebf patch 7.4.1097
Problem:    Looking up the alloc ID for tests fails.
Solution:   Fix the line computation.  Use assert_fails() for unlet test.
2016-01-15 20:53:38 +01:00
Bram Moolenaar a260b87d9d patch 7.4.1096
Problem:    Need several lines to verify a command produces an error.
Solution:   Add assert_fails(). (suggested by Nikolay Pavlov)
            Make the quickfix alloc test actually work.
2016-01-15 20:48:22 +01:00
Bram Moolenaar 3d6d5cc3a4 patch 7.4.1095
Problem:    Can't build GvimExt with SDK 7.1.
Solution:   Support using setenv.bat instead of vcvars32.bat. (Ken Takata)
2016-01-15 18:03:32 +01:00
Bram Moolenaar 5a46a58eb6 Add missing test file. 2016-01-15 15:56:58 +01:00
Bram Moolenaar ccb80989f2 patch 7.4.1094
Problem:    Test for :hardcopy fails on MS-Windows.
Solution:   Check for the +postscript feature.
2016-01-15 15:56:35 +01:00
Bram Moolenaar 24c4d539ee patch 7.4.1093
Problem:    Typo in test goes unnoticed.
Solution:   Fix the typo. Give error for wrong arguments to cursor().
            (partly by Hirohito Higashi) Add a test for cursor().
2016-01-15 15:37:20 +01:00
Bram Moolenaar a803c7f940 patch 7.4.1092
Problem:    It is not simple to test for an exception and give a proper error
            message.
Solution:   Add assert_exception().
2016-01-15 15:31:39 +01:00
Bram Moolenaar b01f357791 patch 7.4.1091
Problem:    When making a change while need_wait_return is set there is a two
            second delay.
Solution:   Do not assume the ATTENTION prompt was given when need_wait_return
            was set already.
2016-01-15 15:17:04 +01:00
Kazuki Sakamoto 944363144a MacVim Snapshot 91
Binary targets OS X 10.8(Mountain Lion), 10.9(Mavericks), 10.10(Yosemite), and 10.11(El Capitan)

- Vim patch 7.4.1090
- Fix renderer defaults settings, Core Text Renderer should be the default
- Yosemite style Tab bar based on https://github.com/b4winckler/macvim/pull/45

Script interfaces have compatibility with these versions

- Lua 5.2
- Perl 5.16
- Python2 2.7
- Python3 3.5
- Ruby 2.0
2016-01-14 21:44:24 -08:00
Kazuki Sakamoto 7cdd910164 Merge pull request #193 from macvim-dev/feature/yosemite-tab-style
Yosemite Tab Style based of https://github.com/b4winckler/macvim/pull/45
2016-01-14 21:42:40 -08:00
Kazuki Sakamoto 24d55e3b5f Fix overflow-pop-up button 2016-01-14 21:38:55 -08:00
Kazuki Sakamoto 8015cac16f Suppress warnings and remove unneeded #if-endif 2016-01-14 21:38:50 -08:00
Kazuki Sakamoto e268fb8d67 Yosemite Tab Style based of https://github.com/b4winckler/macvim/pull/45 2016-01-14 21:38:50 -08:00
Kazuki Sakamoto 2791ea7877 Merge remote-tracking branch 'vim/master' 2016-01-14 20:46:05 -08:00
Bram Moolenaar b5690794cf patch 7.4.1090
Problem:    No tests for :hardcopy and related options.
Solution:   Add test_hardcopy.
2016-01-14 22:10:41 +01:00
Kazuki Sakamoto 1738058e27 Merge pull request #208 from macvim-dev/fix/defaults_renderer
Fix renderer defaults value migration
2016-01-14 06:01:52 -08:00
Kazuki Sakamoto da22ab4d96 Fix renderer defaults value migration 2016-01-14 05:44:36 -08:00
Kazuki Sakamoto 8a3df4e50b MacVim Snapshot 90
Binary targets OS X 10.8(Mountain Lion), 10.9(Mavericks), 10.10(Yosemite), and 10.11(El Capitan)

- Vim patch 7.4.1089

Script interfaces have compatibility with these versions

- Lua 5.2
- Perl 5.16
- Python2 2.7
- Python3 3.5
- Ruby 2.0
2016-01-13 19:41:15 -08:00
Kazuki Sakamoto 7ae4136fcd Merge remote-tracking branch 'vim/master' 2016-01-12 20:45:34 -08:00
Kazuki Sakamoto 616c7a5e61 Merge pull request #205 from rhendric/issue-204
Make Preferences.nib readable by XCode 3.2
2016-01-12 15:38:18 -08:00
Bram Moolenaar ef2b5036b3 patch 7.4.1089
Problem:    Repeating CTRL-A doesn't work.
Solution:   Call prep_redo_cmd(). (Hirohito Higashi)
2016-01-12 22:20:58 +01:00
Bram Moolenaar 7ae4fbca55 patch 7.4.1088
Problem:    Coverity warns for uninitialized variables.  Only one is an actual
            problem.
Solution:   Move the conditions.  Don't use endpos if handling an error.
2016-01-12 21:00:40 +01:00
Ryan Hendrickson fdab75e5b9 Change atsuiButtonClicked to coreTextButtonClicked 2016-01-12 13:52:37 -05:00
Ryan Hendrickson 0fa9a5392d Make Preferences.nib readable by XCode 3.2
I resurrected the Preferences.nib from 2f913f7, and then changed its
Document Versioning targets in XCode to 10.6 and 3.2.
2016-01-11 22:12:41 -05:00
Kazuki Sakamoto adaa23b0e4 Merge remote-tracking branch 'vim/master' 2016-01-10 20:12:42 -08:00
Bram Moolenaar d79e55016c patch 7.4.1087
Problem:    CTRL-A and CTRL-X do not work properly with blockwise visual
            selection if there is a mix of Tab and spaces.
Solution:   Add OP_NR_ADD and OP_NR_SUB. (Hirohito Higashi)
2016-01-10 22:13:02 +01:00
Bram Moolenaar 507edf63df patch 7.4.1086
Problem:    Crash with an extremely long buffer name.
Solution:   Limit the return value of vim_snprintf(). (Dominique Pelle)
2016-01-10 20:54:17 +01:00
Bram Moolenaar a52dfaed10 patch 7.4.1085
Problem:    The CTRL-A and CTRL-X commands do not update the '[ and '] marks.
Solution:   (Yukihiro Nakadaira)
2016-01-10 20:21:57 +01:00
Bram Moolenaar e1edc1caba patch 7.4.1084
Problem:    Using "." to repeat CTRL-A in Visual mode increments the wrong
            numbers.
Solution:   Append right size to the redo buffer. (Ozaki Kiichi)
2016-01-10 20:08:03 +01:00
Bram Moolenaar 4514d2769b patch 7.4.1083
Problem:    Building GvimExt with VS2015 may fail.
Solution:   Adjust the makefile. (Mike Williams)
2016-01-10 19:21:36 +01:00
Bram Moolenaar 858b96f382 patch 7.4.1082
Problem:    The Tcl interface is always skipping memory free on exit.
Solution:   Only skip for dynamically loaded Tcl.
2016-01-10 16:12:24 +01:00
Bram Moolenaar 254b105b75 patch 7.4.1081
Problem:    No test for what previously caused a crash.
Solution:   Add test for unletting errmsg.
2016-01-10 16:10:17 +01:00
Bram Moolenaar f32c5cd6e0 patch 7.4.1080
Problem:    VS2015 has a function HandleToLong() that is shadowed by the macro
            that Vim defines.
Solution:   Do not define HandleToLong() for MSVC version 1400 and later.
            (Mike Williams)
2016-01-10 16:07:44 +01:00
Bram Moolenaar b86a343280 patch 7.4.1079
Problem:    New include file missing from distribution.  Missing changes to
            quickfix code.
Solution:   Add alloc.h to the list of distributed files. Use the enum in
            quickfix code.
2016-01-10 16:00:53 +01:00
Bram Moolenaar acb4f221c7 Updated runtime files. 2016-01-10 15:59:26 +01:00
Bram Moolenaar d08a8d4a31 patch 7.4.1078
Problem:    MSVC: "make clean" doesn't cleanup in the tee directory.
Solution:   Add the commands to cleanup tee. (Erich Ritz)
2016-01-10 15:20:29 +01:00
Bram Moolenaar 30a89473ee patch 7.4.1077
Problem:    The build instructions for MS-Windows are incomplete.
Solution:   Add explanations for how to build with various interfaces. (Ken
            Takata)
2016-01-10 14:35:58 +01:00
Bram Moolenaar 6a3c8aff04 patch 7.4.1076
Problem:    CTRL-A does not work well in right-left mode.
Solution:   Remove reversing the line, add a test. (Hirohito Higashi)
2016-01-10 14:13:40 +01:00
Bram Moolenaar 05fe017c1a patch 7.4.1075
Problem:    Crash when using an invalid command.
Solution:   Fix generating the error message. (Dominique Pelle)
2016-01-10 13:54:48 +01:00
Bram Moolenaar 5fa4d448fb patch 7.4.1074
Problem:    Warning from VX2015 compiler.
Solution:   Add a type cast. (Mike Williams)
2016-01-10 13:25:55 +01:00
Kazuki Sakamoto 523f23de6e Merge remote-tracking branch 'vim/master' 2016-01-09 15:46:00 -08:00
Bram Moolenaar 28fb79db6b patch 7.4.1073
Problem:    Alloc_id depends on numbers, may use the same one twice.  It's not
            clear from the number what it's for.
Solution:   Use an enum.  Add a function to lookup the enum value from the
            name.
2016-01-09 22:28:33 +01:00
Bram Moolenaar 44132a10ae add missing test file 2016-01-09 21:09:10 +01:00
Bram Moolenaar 450919587d patch 7.4.1072
Problem:    Increment test is old style.
Solution:   Make the increment test a new style test. (Hirohito Higashi)
2016-01-09 21:08:35 +01:00
Bram Moolenaar cfc0a350a9 patch 7.4.1071
Problem:    New style tests are executed in arbitrary order.
Solution:   Sort the test function names. (Hirohito Higashi)
            Fix the quickfix test that depended on the order.
2016-01-09 20:23:00 +01:00
Bram Moolenaar 8a5115cf18 patch 7.4.1070
Problem:    The Tcl interface can't be loaded dynamically on Unix.
Solution:   Make it possible to load it dynamically. (Ken Takata)
2016-01-09 19:41:11 +01:00
Bram Moolenaar 5f24542e5e patch 7.4.1069
Problem:    Compiler warning for unused argument.
Solution:   Add UNUSED.
2016-01-09 18:52:40 +01:00
Bram Moolenaar 71bcfdf301 patch 7.4.1068
Problem:    Wrong way to check for unletting internal variables.
Solution:   Use a better way. (Olaf Dabrunz)
2016-01-09 18:20:46 +01:00
Bram Moolenaar 449538c3d2 patch 7.4.1067
Problem:    Can't build with MingW and Python on MS-Windows.
Solution:   Move the build flags to CFLAGS.
2016-01-09 17:49:15 +01:00
Bram Moolenaar 64496ffc9c patch 7.4.1066
Problem:    Build fails on MS-Windows.
Solution:   Adjust the #ifdefs for "dll" options.
2016-01-09 15:08:03 +01:00
Bram Moolenaar 25e4fcde76 patch 7.4.1065
Problem:    Cannot use the "dll" options on MS-Windows.
Solution:   Support the options on all platforms.  Use the built-in name as
            the default, so that it's clear what Vim is looking for.
2016-01-09 14:57:47 +01:00
Bram Moolenaar 7b877b3605 patch 7.4.1064
Problem:    When a spell file has single letter compounding creating
            suggestions takes an awful long time.
Solution:   Add th eNOCOMPOUNDSUGS flag.
2016-01-09 13:51:34 +01:00
Bram Moolenaar 4d1c0a4441 Update to newer English spell files,
but without the COMPOUND rules that make suggestions very slow.
2016-01-09 13:23:54 +01:00
Kazuki Sakamoto d161d7b64a Merge remote-tracking branch 'vim/master' 2016-01-07 21:29:36 -08:00
Bram Moolenaar eca99bd45f patch 7.4.1063
Problem:    TCL_VER_LONG and DYNAMIC_TCL_VER are not set when building with
            Cygwin and MingW.
Solution:   Add TCL_VER_LONG and DYNAMIC_TCL_VER to the makefile.
2016-01-07 22:50:05 +01:00
Bram Moolenaar 0bee2fe25a patch 7.4.1062
Problem:    Building with Ruby on MS-Windows requires a lot of arguments.
Solution:   Make it simpler. (Ken Takata)
2016-01-07 22:45:09 +01:00
Bram Moolenaar 285bf84b4b patch 7.4.1061
Problem:    Compiler warning for ignoring return value of fwrite().
Solution:   Do use the return value. (idea: Charles Campbell)
2016-01-07 22:34:01 +01:00
Bram Moolenaar 6602af7fe0 patch 7.4.1060
Problem:    Instructions for writing tests are outdated.
Solution:   Mention Make_all.mak.  Add steps for new style tests.
2016-01-07 22:01:01 +01:00
Bram Moolenaar fd39d08fb6 patch 7.4.1059
Problem:    Code will never be executed.
Solution:   Remove the code.
2016-01-07 21:28:24 +01:00
Bram Moolenaar 75bdf6aa30 patch 7.4.1058
Problem:    It is not possible to test code that is only reached when memory
            allocation fails.
Solution:   Add the alloc_fail() function.  Try it out with :vimgrep.
2016-01-07 21:25:08 +01:00
Bram Moolenaar 2b7db933b0 patch 7.4.1057
Problem:    Typos in the :options window.
Solution:   Fix the typos. (Dominique Pelle)
2016-01-07 16:52:10 +01:00
Bram Moolenaar ca1fe98517 patch 7.4.1056
Problem:    Don't know why finding spell suggestions is slow.
Solution:   Add some code to gather profiling information.
2016-01-07 16:22:06 +01:00
Bram Moolenaar a61018d7e0 Revert English spell file update 2016-01-07 16:19:13 +01:00
Kazuki Sakamoto 72c357d44d Merge remote-tracking branch 'vim/master' 2016-01-06 19:34:29 -08:00
Bram Moolenaar e7893a4088 patch 7.4.1055
Problem:    Running "make newtests" in src/testdir has no output.
Solution:   List the messages file when a test fails. (Christian Brabandt)
            Update the list of tests.
2016-01-06 21:23:56 +01:00
342 changed files with 9265 additions and 3868 deletions
+8 -2
View File
@@ -17,6 +17,7 @@ env:
vi_cv_dll_name_perl=/System/Library/Perl/5.16/darwin-thread-multi-2level/CORE/libperl.dylib
vi_cv_dll_name_python=/System/Library/Frameworks/Python.framework/Versions/2.7/Python
vi_cv_dll_name_python3=/usr/local/Frameworks/Python.framework/Versions/3.5/Python
VIM=src/MacVim/build/Release/MacVim.app/Contents/MacOS/Vim
"CONFOPT='--with-features=huge --enable-multibyte --enable-netbeans --with-tlib=ncurses --enable-cscope --enable-perlinterp=dynamic --enable-pythoninterp=dynamic --enable-python3interp=dynamic --enable-rubyinterp=dynamic --enable-luainterp=dynamic --with-lua-prefix=/usr/local --enable-gui=macvim'"
sudo: false
@@ -34,7 +35,12 @@ script:
- grep -q -- "-DDYNAMIC_PYTHON3_DLL=\\\\\"$vi_cv_dll_name_python3\\\\\"" src/auto/config.mk
- make -j$NPROC
- cat src/auto/config.mk
- ./src/vim --version
- $VIM -g -c "redir>result" -c version -c "redir END" -c q; sleep 1; cat result; cat result|grep -q -w "MacVim GUI"; rm result
- $VIM -g -c "redir>result" -c lua 'print(\"Lua\")' -c "redir END" -c q; sleep 1; grep -q -w Lua; rm result
- $VIM -g -c "redir>result" -c perl 'VIM::Msg(\"Perl\")' -c "redir END" -c q; sleep 1; grep -q -w Perl; rm result
- $VIM -g -c "redir>result" -c py 'print(\"Python\")' -c "redir END" -c q; sleep 1; grep -q -w Python; rm result
- $VIM -g -c "redir>result" -c py3 'print(\"Python3\")' -c "redir END" -c q; sleep 1; grep -q -w Python3; rm result
- $VIM -g -c "redir>result" -c ruby 'puts(\"Ruby\")' -c "redir END" -c q; sleep 1; grep -q -w Ruby; rm result
- make test
before_deploy:
@@ -43,7 +49,7 @@ deploy:
provider: releases
api_key:
secure: HYHKVbuSG2Trc5zEN+aQO0TO/020qtTokoaaatd9GhQ/ImOI2uhOuVsk47mcViCINyE9+wwVEr23Tk7GqzsJBS66FoZJeOsgYoO/LFlQjCYyya+48Ajez6I2VAIGKn0JD6jpW+ZYIX7MAWLCQKv/vW03MrBMDLZvjB89pHe72MLQFlVcEzxsWnr7smTzLcuKShkV+AVZopE/HRdY1k/zjWf/TzcJgqXwThuJOPYY+CcGUv1CMJjWB8pBuH31pbQ2AVOXV7VG5oxy2HSbCeDRShKT3GooecWj7xjh9SApNqEIzC44RlufgyC73M0DeILUasmbF0g2Q+AsDaj3+9w3LbLbmfpV5kEM9E/PbzWEn+0EgRKV+HCscZnPMlzkiVWKnjzfwKGMOmTwD0aN4Bt6Y9z+UvQKfsQN+6wHmh7xcSpaeR1J6PBeaCd+QyhD7t9ZxP2qmZWCBMFpnkqO4+LoclJNV+IxYstNFjaKIvxEe/S9GM2w+i2cSDDrxSNz+kUGWzshyu6HXxRtrNo+qM6sCO8TiOMMALPAkLCJT2P/TPMRkdy2wjCDwprc1ePDqikIHIGGwQ8Csd5IqFUcJs405xw4HfVkOuhWL/SpLuI6OHOVQqAkqMEMaEhlfh1swFNkT4ffDJGzvklB8v2980B003eWbcHr6lMGtpqQecqgS9A=
file: src/MacVim/build/Release/MacVim-7.4.dmg
file: src/MacVim/build/Release/MacVim.dmg
skip_cleanup: true
on:
all_branches: true
+1 -1
View File
@@ -7,6 +7,7 @@ SRC_ALL = \
.travis.yml \
appveyor.yml \
src/README.txt \
src/alloc.h \
src/arabic.c \
src/arabic.h \
src/ascii.h \
@@ -350,7 +351,6 @@ SRC_DOS = \
src/xpm_w32.h \
src/xxd/Make_bc3.mak \
src/xxd/Make_bc5.mak \
src/xxd/Make_cyg.mak \
src/xxd/Make_djg.mak \
src/xxd/Make_ming.mak \
src/xxd/Make_mvc.mak \
+5 -1
View File
@@ -131,6 +131,9 @@ MINOR = 4
#
# MS-Windows:
# - Run make on Unix to update the ".mo" files.
# - Get libintl-8.dll and libiconv-2.dll. E.g. from
# https://mlocati.github.io/gettext-iconv-windows/ .
# Put them in the top directory, "make dosrt" uses them.
# - > make dossrc
# > make dosrt
# Unpack dist/vim##rt.zip and dist/vim##src.zip on an MS-Windows PC.
@@ -493,7 +496,8 @@ dosrt_files: dist prepare no_title.vim
cp $$i dist/vim/$(VIMRTDIR)/lang/$$n/LC_MESSAGES/vim.mo; \
fi \
done
cp libintl.dll dist/vim/$(VIMRTDIR)/
cp libintl-8.dll dist/vim/$(VIMRTDIR)/
cp libiconv-2.dll dist/vim/$(VIMRTDIR)/
# Used before uploading. Don't delete the AAPDIR/sign files!
+14 -8
View File
@@ -6,13 +6,19 @@
# because uninstall deletes most files in $0.
# Location of gvim_ole.exe, vimw32.exe, GvimExt/*, etc.
!define VIMSRC "..\src"
!ifndef VIMSRC
!define VIMSRC "..\src"
!endif
# Location of runtime files
!define VIMRT ".."
!ifndef VIMRT
!define VIMRT ".."
!endif
# Location of extra tools: diff.exe
!define VIMTOOLS ..\..
!ifndef VIMTOOLS
!define VIMTOOLS ..\..
!endif
# Comment the next line if you don't have UPX.
# Get it at http://upx.sourceforge.net
@@ -32,9 +38,10 @@
Name "Vim ${VER_MAJOR}.${VER_MINOR}"
OutFile gvim${VER_MAJOR}${VER_MINOR}.exe
CRCCheck force
SetCompressor lzma
SetCompressor /SOLID lzma
SetDatablockOptimize on
RequestExecutionLevel highest
XPStyle on
ComponentText "This will install Vim ${VER_MAJOR}.${VER_MINOR} on your computer."
DirText "Choose a directory to install Vim (should contain 'vim')"
@@ -55,9 +62,6 @@ LicenseData ${VIMRT}\doc\uganda.nsis.txt
!packhdr temp.dat "upx --best --compress-icons=1 temp.dat"
!endif
SetCompressor /SOLID lzma
XPStyle on
# This adds '\vim' to the user choice automagically. The actual value is
# obtained below with ReadINIStr.
InstallDir "$PROGRAMFILES\Vim"
@@ -355,7 +359,9 @@ SectionEnd
File ${VIMRT}\keymap\README.txt
File ${VIMRT}\keymap\*.vim
SetOutPath $0
File ${VIMRT}\libintl.dll
File ${VIMRT}\libintl-8.dll
File ${VIMRT}\libiconv-2.dll
File /nonfatal ${VIMRT}\libwinpthread-1.dll
SectionEnd
!endif
+12 -1
View File
@@ -1,4 +1,4 @@
*editing.txt* For Vim version 7.4. Last change: 2016 Jan 03
*editing.txt* For Vim version 7.4. Last change: 2016 Jan 17
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -639,6 +639,7 @@ list of the current window.
:0argadd x x a b c
:1argadd x a x b c
:$argadd x a b c x
And after the last one:
:+2argadd y a b c x y
There is no check for duplicates, it is possible to
add a file to the argument list twice.
@@ -1458,6 +1459,16 @@ using zip, "[blowfish]" when using blowfish, etc.
When writing an undo file, the same key and method will be used for the text
in the undo file. |persistent-undo|.
To test for blowfish support you can use these conditions: >
has('crypt-blowfish')
has('crypt-blowfish2')
This works since Vim 7.4.1099 while blowfish support was added earlier.
Thus the condition failing doesn't mean blowfish is not supported. You can
test for blowfish with: >
v:version >= 703
And for blowfish2 with: >
v:version > 704 || (v:version == 704 && has('patch401'))
<
*E817* *E818* *E819* *E820*
When encryption does not work properly, you would be able to write your text
to a file and never be able to read it back. Therefore a test is performed to
+98 -27
View File
@@ -1,4 +1,4 @@
*eval.txt* For Vim version 7.4. Last change: 2016 Jan 03
*eval.txt* For Vim version 7.4. Last change: 2016 Jan 17
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -873,7 +873,7 @@ cursor: >
:let c = getline(".")[col(".") - 1]
If the length of the String is less than the index, the result is an empty
String. A negative index always results in an empty string (reason: backwards
String. A negative index always results in an empty string (reason: backward
compatibility). Use [-1:] to get the last byte.
If expr8 is a |List| then it results the item at index expr1. See |list-index|
@@ -919,6 +919,11 @@ just above, except that indexes out of range cause an error. Examples: >
Using expr8[expr1] or expr8[expr1a : expr1b] on a |Funcref| results in an
error.
Watch out for confusion between a namespace and a variable followed by a colon
for a sublist: >
mylist[n:] " uses variable n
mylist[s:] " uses namespace s:, error!
expr8.name entry in a |Dictionary| *expr-entry*
@@ -1739,6 +1744,8 @@ USAGE RESULT DESCRIPTION ~
abs( {expr}) Float or Number absolute value of {expr}
acos( {expr}) Float arc cosine of {expr}
add( {list}, {item}) List append {item} to |List| {list}
alloc_fail( {id}, {countdown}, {repeat})
none make memory allocation fail
and( {expr}, {expr}) Number bitwise AND
append( {lnum}, {string}) Number append {string} below line {lnum}
append( {lnum}, {list}) Number append lines {list} below line {lnum}
@@ -1748,9 +1755,11 @@ arglistid( [{winnr} [, {tabnr}]])
Number argument list id
argv( {nr}) String {nr} entry of the argument list
argv( ) List the argument list
assert_equal( {exp}, {act} [, {msg}]) none assert that {exp} equals {act}
assert_false( {actual} [, {msg}]) none assert that {actual} is false
assert_true( {actual} [, {msg}]) none assert that {actual} is true
assert_equal( {exp}, {act} [, {msg}]) none assert {exp} equals {act}
assert_exception({error} [, {msg}]) none assert {error} is in v:exception
assert_fails( {cmd} [, {error}]) none assert {cmd} fails
assert_false( {actual} [, {msg}]) none assert {actual} is false
assert_true( {actual} [, {msg}]) none assert {actual} is true
asin( {expr}) Float arc sine of {expr}
atan( {expr}) Float arc tangent of {expr}
atan2( {expr}, {expr}) Float arc tangent of {expr1} / {expr2}
@@ -1790,7 +1799,7 @@ cursor( {lnum}, {col} [, {off}])
Number move cursor to {lnum}, {col}, {off}
cursor( {list}) Number move cursor to position in {list}
deepcopy( {expr} [, {noref}]) any make a full copy of {expr}
delete( {fname}) Number delete file {fname}
delete( {fname} [, {flags}]) Number delete the file or directory {fname}
did_filetype() Number TRUE if FileType autocommand event used
diff_filler( {lnum}) Number diff filler lines about {lnum}
diff_hlID( {lnum}, {col}) Number diff highlighting at {lnum}/{col}
@@ -1842,7 +1851,7 @@ getcmdpos() Number return cursor position in command-line
getcmdtype() String return current command-line type
getcmdwintype() String return current command-line window type
getcurpos() List position of the cursor
getcwd() String the current working directory
getcwd( [{winnr} [, {tabnr}]]) String get the current working directory
getfontname( [{name}]) String name of font being used
getfperm( {fname}) String file permissions of file {fname}
getfsize( {fname}) Number size in bytes of file {fname}
@@ -1873,7 +1882,8 @@ globpath( {path}, {expr} [, {nosuf} [, {list} [, {alllinks}]]])
String do glob({expr}) for all dirs in {path}
has( {feature}) Number TRUE if feature {feature} supported
has_key( {dict}, {key}) Number TRUE if {dict} has entry {key}
haslocaldir() Number TRUE if current window executed |:lcd|
haslocaldir( [{winnr} [, {tabnr}]])
Number TRUE if the window executed |:lcd|
hasmapto( {what} [, {mode} [, {abbr}]])
Number TRUE if mapping to {what} exists
histadd( {history},{item}) String add an item to a history
@@ -1941,6 +1951,7 @@ nextnonblank( {lnum}) Number line nr of non-blank line >= {lnum}
nr2char( {expr}[, {utf8}]) String single char with ASCII/UTF8 value {expr}
or( {expr}, {expr}) Number bitwise OR
pathshorten( {expr}) String shorten directory names in a path
perleval( {expr}) any evaluate |Perl| expression
pow( {x}, {y}) Float {x} to the power of {y}
prevnonblank( {lnum}) Number line nr of non-blank line <= {lnum}
printf( {fmt}, {expr1}...) String format text
@@ -2118,6 +2129,13 @@ add({list}, {expr}) *add()*
Use |insert()| to add an item at another position.
alloc_fail({id}, {countdown}, {repeat}) *alloc_fail()*
This is for testing: If the memory allocation with {id} is
called, then decrement {countdown}, and when it reaches zero
let memory allocation fail {repeat} times. When {repeat} is
smaller than one it fails one time.
and({expr}, {expr}) *and()*
Bitwise AND on the two arguments. The arguments are converted
to a number. A List, Dict or Float argument causes an error.
@@ -2170,7 +2188,7 @@ argv([{nr}]) The result is the {nr}th file in the argument list of the
returned.
*assert_equal()*
assert_equal({expected}, {actual}, [, {msg}])
assert_equal({expected}, {actual} [, {msg}])
When {expected} and {actual} are not equal an error message is
added to |v:errors|.
There is no automatic conversion, the String "4" is different
@@ -2184,18 +2202,36 @@ assert_equal({expected}, {actual}, [, {msg}])
< Will result in a string to be added to |v:errors|:
test.vim line 12: Expected 'foo' but got 'bar' ~
assert_false({actual}, [, {msg}]) *assert_false()*
assert_exception({error} [, {msg}]) *assert_exception()*
When v:exception does not contain the string {error} an error
message is added to |v:errors|.
This can be used to assert that a command throws an exception.
Using the error number, followed by a colon, avoids problems
with translations: >
try
commandthatfails
call assert_false(1, 'command should have failed')
catch
call assert_exception('E492:')
endtry
assert_fails({cmd} [, {error}]) *assert_fails()*
Run {cmd} and add an error message to |v:errors| if it does
NOT produce an error.
When {error} is given it must match |v:errmsg|.
assert_false({actual} [, {msg}]) *assert_false()*
When {actual} is not false an error message is added to
|v:errors|, like with |assert_equal()|..
|v:errors|, like with |assert_equal()|.
A value is false when it is zero. When "{actual}" is not a
number the assert fails.
When {msg} is omitted an error in the form "Expected False but
got {actual}" is produced.
assert_true({actual}, [, {msg}]) *assert_true()*
assert_true({actual} [, {msg}]) *assert_true()*
When {actual} is not true an error message is added to
|v:errors|, like with |assert_equal()|..
A value is true when it is a non-zeron number. When {actual}
|v:errors|, like with |assert_equal()|.
A value is true when it is a non-zero number. When {actual}
is not a number the assert fails.
When {msg} is omitted an error in the form "Expected True but
got {actual}" is produced.
@@ -2719,10 +2755,20 @@ deepcopy({expr}[, {noref}]) *deepcopy()* *E698*
{noref} set to 1 will fail.
Also see |copy()|.
delete({fname}) *delete()*
Deletes the file by the name {fname}. The result is a Number,
which is 0 if the file was deleted successfully, and non-zero
when the deletion failed.
delete({fname} [, {flags}]) *delete()*
Without {flags} or with {flags} empty: Deletes the file by the
name {fname}. This also works when {fname} is a symbolic link.
When {flags} is "d": Deletes the directory by the name
{fname}. This fails when directory {fname} is not empty.
When {flags} is "rf": Deletes the directory by the name
{fname} and everything in it, recursively. BE CAREFUL!
A symbolic link itself is deleted, not what it points to.
The result is a Number, which is 0 if the delete operation was
successful and -1 when the deletion failed or partly failed.
Use |remove()| to delete an item from a |List|.
To delete a line from the buffer use |:delete|. Use |:exe|
when the line number is in a variable.
@@ -3468,7 +3514,7 @@ getcmdwintype() *getcmdwintype()*
*getcurpos()*
getcurpos() Get the position of the cursor. This is like getpos('.'), but
includes an extra item in the list:
[bufnum, lnum, col, off, curswant]
[bufnum, lnum, col, off, curswant] ~
The "curswant" number is the preferred column when moving the
cursor vertically.
This can be used to save and restore the cursor position: >
@@ -3477,8 +3523,16 @@ getcurpos() Get the position of the cursor. This is like getpos('.'), but
call setpos('.', save_cursor)
<
*getcwd()*
getcwd() The result is a String, which is the name of the current
getcwd([{winnr} [, {tabnr}]])
The result is a String, which is the name of the current
working directory.
Without arguments, for the current window.
With {winnr} return the local current directory of this window
in the current tab page.
With {winnr} and {tabnr} return the local current directory of
the window in the specified tab page.
Return an empty string if the arguments are invalid.
getfsize({fname}) *getfsize()*
The result is a Number, which is the size in bytes of the
@@ -3814,9 +3868,15 @@ has_key({dict}, {key}) *has_key()*
The result is a Number, which is 1 if |Dictionary| {dict} has
an entry with key {key}. Zero otherwise.
haslocaldir() *haslocaldir()*
The result is a Number, which is 1 when the current
window has set a local path via |:lcd|, and 0 otherwise.
haslocaldir([{winnr} [, {tabnr}]]) *haslocaldir()*
The result is a Number, which is 1 when the window has set a
local path via |:lcd|, and 0 otherwise.
Without arguments use the current window.
With {winnr} use this window in the current tab page.
With {winnr} and {tabnr} use the window in the specified tab
page.
Return 0 if the arguments are invalid.
hasmapto({what} [, {mode} [, {abbr}]]) *hasmapto()*
The result is a Number, which is 1 if there is a mapping that
@@ -4503,8 +4563,8 @@ matchadd({group}, {pattern}[, {priority}[, {id} [, {dict}]]])
respectively. If the {id} argument is not specified or -1,
|matchadd()| automatically chooses a free ID.
The optional {dict} argmument allows for further custom
values. Currently this is used to specify a match specifc
The optional {dict} argument allows for further custom
values. Currently this is used to specify a match specific
conceal character that will be shown for |hl-Conceal|
highlighted matches. The dict can have the following members:
@@ -4734,6 +4794,17 @@ pathshorten({expr}) *pathshorten()*
< ~/.v/a/myfile.vim ~
It doesn't matter if the path exists or not.
perleval({expr}) *perleval()*
Evaluate Perl expression {expr} in scalar context and return
its result converted to Vim data structures. If value can't be
converted, it is returned as a string Perl representation.
Note: If you want an array or hash, {expr} must return a
reference to it.
Example: >
:echo perleval('[1 .. 4]')
< [1, 2, 3, 4]
{only available when compiled with the |+perl| feature}
pow({x}, {y}) *pow()*
Return the power of {x} to the exponent {y} as a |Float|.
{x} and {y} must evaluate to a |Float| or a |Number|.
@@ -5248,7 +5319,7 @@ search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
'ignorecase', 'smartcase' and 'magic' are used.
When the 'z' flag is not given seaching always starts in
When the 'z' flag is not given, searching always starts in
column zero and then matches before the cursor are skipped.
When the 'c' flag is present in 'cpo' the next search starts
after the match. Without the 'c' flag the next search starts
@@ -7614,7 +7685,7 @@ This does NOT work: >
From Vim version 4.5 until 5.0, every Ex command in
between the ":if" and ":endif" is ignored. These two
commands were just to allow for future expansions in a
backwards compatible way. Nesting was allowed. Note
backward compatible way. Nesting was allowed. Note
that any ":else" or ":elseif" was ignored, the "else"
part was not executed either.
+7 -5
View File
@@ -1,4 +1,4 @@
*help.txt* For Vim version 7.4. Last change: 2015 Jun 21
*help.txt* For Vim version 7.4. Last change: 2016 Jan 10
VIM - main help file
k
@@ -10,14 +10,14 @@ Close this window: Use ":q<Enter>".
Jump to a subject: Position the cursor on a tag (e.g. |bars|) and hit CTRL-].
With the mouse: ":set mouse=a" to enable the mouse (in xterm or GUI).
Double-click the left mouse button on a tag, e.g. |bars|.
Jump back: Type CTRL-T or CTRL-O (repeat to go further back).
Jump back: Type CTRL-T or CTRL-O. Repeat to go further back.
Get specific help: It is possible to go directly to whatever you want help
on, by giving an argument to the |:help| command.
It is possible to further specify the context:
*help-context*
Prepend something to specify the context: *help-context*
WHAT PREPEND EXAMPLE ~
Normal mode command (nothing) :help x
Normal mode command :help x
Visual mode command v_ :help v_u
Insert mode command i_ :help i_<Esc>
Command-line command : :help :quit
@@ -25,6 +25,8 @@ Get specific help: It is possible to go directly to whatever you want help
Vim command argument - :help -r
Option ' :help 'textwidth'
Regular expression / :help /[
See |help-summary| for more contexts and an explanation.
Search for help: Type ":help word", then hit CTRL-D to see matching
help entries for "word".
Or use ":helpgrep word". |:helpgrep|
+24 -1
View File
@@ -1,4 +1,4 @@
*if_mzsch.txt* For Vim version 7.4. Last change: 2012 Dec 17
*if_mzsch.txt* For Vim version 7.4. Last change: 2016 Jan 16
VIM REFERENCE MANUAL by Sergey Khorev
@@ -13,6 +13,7 @@ The MzScheme Interface to Vim *mzscheme* *MzScheme*
5. mzeval() Vim function |mzscheme-mzeval|
6. Using Function references |mzscheme-funcref|
7. Dynamic loading |mzscheme-dynamic|
8. MzScheme setup |mzscheme-setup|
{Vi does not have any of these commands}
@@ -272,6 +273,9 @@ output then includes |+mzscheme/dyn|.
This means that Vim will search for the MzScheme DLL files only when needed.
When you don't use the MzScheme interface you don't need them, thus you can
use Vim without these DLL files.
NOTE: Newer version of MzScheme (Racket) require earlier (trampolined)
initialisation via scheme_main_setup. So Vim always loads the MzScheme DLL at
startup if possible.
To use the MzScheme interface the MzScheme DLLs must be in your search path.
In a console window type "path" to see what directories are used.
@@ -282,5 +286,24 @@ For MzScheme version 209 they will be "libmzsch209_000.dll" and
command, look for -DDYNAMIC_MZSCH_DLL="something" and
-DDYNAMIC_MZGC_DLL="something" in the "Compilation" info.
For example, if MzScheme (Racket) is installed at C:\Racket63, you may need
to set the environment variable as the following: >
PATH=%PATH%;C:\Racket63\lib
PLTCOLLECTS=C:\Racket63\collects
PLTCONFIGDIR=C:\Racket63\etc
<
==============================================================================
8. MzScheme setup *mzscheme-setup*
Vim requires "racket/base" module for if_mzsch core (fallback to "scheme/base"
if it doesn't exist), "r5rs" module for test and "raco ctool" command for
building Vim. If MzScheme did not have them, you can install them with
MzScheme's raco command:
>
raco pkg install scheme-lib # scheme/base module
raco pkg install r5rs-lib # r5rs module
raco pkg install cext-lib # raco ctool command
<
======================================================================
vim:tw=78:ts=8:sts=4:ft=help:norl:
+15 -5
View File
@@ -515,12 +515,15 @@ startup file (usually "~/.vimrc" on Unix):
==============================================================================
9. Dynamic loading *tcl-dynamic*
On MS-Windows the Tcl library can be loaded dynamically. The |:version|
output then includes |+tcl/dyn|.
On MS-Windows and Unix the Tcl library can be loaded dynamically. The
|:version| output then includes |+tcl/dyn|.
This means that Vim will search for the Tcl DLL file only when needed. When
you don't use the Tcl interface you don't need it, thus you can use Vim
without this DLL file.
This means that Vim will search for the Tcl DLL or shared library file only
when needed. When you don't use the Tcl interface you don't need it, thus you
can use Vim without this file.
MS-Windows ~
To use the Tcl interface the Tcl DLL must be in your search path. In a
console window type "path" to see what directories are used.
@@ -529,5 +532,12 @@ The name of the DLL must match the Tcl version Vim was compiled with.
Currently the name is "tcl86.dll". That is for Tcl 8.6. To know for sure
edit "gvim.exe" and search for "tcl\d*.dll\c".
Unix ~
The 'tcldll' option can be used to specify the Tcl shared library file instead
of DYNAMIC_TCL_DLL file what was specified at compile time. The version of
the shared library must match the Tcl version Vim was compiled with.
==============================================================================
vim:tw=78:ts=8:ft=help:norl:
+7 -7
View File
@@ -1,4 +1,4 @@
*index.txt* For Vim version 7.4. Last change: 2016 Jan 03
*index.txt* For Vim version 7.4. Last change: 2016 Jan 10
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1055,7 +1055,7 @@ tag command action in Command-line editing mode ~
|c_<Insert>| <Insert> toggle insert/overstrike mode
|c_<LeftMouse>| <LeftMouse> cursor at mouse click
You found it, Arthur! *holy-grail*
You found it, Arthur! *holy-grail* *:smile*
==============================================================================
5. EX commands *ex-cmd-index* *:index*
@@ -1176,7 +1176,7 @@ tag command action ~
|:cpfile| :cpf[ile] go to last error in previous file
|:cquit| :cq[uit] quit Vim with an error code
|:crewind| :cr[ewind] go to the specified error, default first one
|:cscope| :cs[cope] execute cscope command
|:cscope| :cs[cope] execute cscope command
|:cstag| :cst[ag] use cscope to jump to a tag
|:cunmap| :cu[nmap] like ":unmap" but for Command-line mode
|:cunabbrev| :cuna[bbrev] like ":unabbrev" but for Command-line mode
@@ -1297,7 +1297,7 @@ tag command action ~
|:lcd| :lc[d] change directory locally
|:lchdir| :lch[dir] change directory locally
|:lclose| :lcl[ose] close location window
|:lcscope| :lcs[cope] like ":cscope" but uses location list
|:lcscope| :lcs[cope] like ":cscope" but uses location list
|:ldo| :ld[o] execute command in valid location list entries
|:lfdo| :lfd[o] execute command in each file in location list
|:left| :le[ft] left align lines
@@ -1353,7 +1353,7 @@ tag command action ~
|:marks| :marks list all marks
|:match| :mat[ch] define a match to highlight
|:menu| :me[nu] enter a new menu item
|:menutranslate| :menut[ranslate] add a menu translation item
|:menutranslate| :menut[ranslate] add a menu translation item
|:messages| :mes[sages] view previously displayed messages
|:mkexrc| :mk[exrc] write current mappings and settings to a file
|:mksession| :mks[ession] write session info to a file
@@ -1497,7 +1497,7 @@ tag command action ~
|:smap| :smap like ":map" but for Select mode
|:smapclear| :smapc[lear] remove all mappings for Select mode
|:smenu| :sme[nu] add menu for Select mode
|:smile| :smi[le] make the user happy
|:smile| :smi[le] make the user happy
|:snext| :sn[ext] split window and go to next file in the
argument list
|:sniff| :sni[ff] send request to sniff
@@ -1520,7 +1520,7 @@ tag command action ~
|:stop| :st[op] suspend the editor or escape to a shell
|:stag| :sta[g] split window and jump to a tag
|:startinsert| :star[tinsert] start Insert mode
|:startgreplace| :startg[replace] start Virtual Replace mode
|:startgreplace| :startg[replace] start Virtual Replace mode
|:startreplace| :startr[eplace] start Replace mode
|:stopinsert| :stopi[nsert] stop Insert mode
|:stjump| :stj[ump] do ":tjump" and split window
+8 -8
View File
@@ -1,4 +1,4 @@
*map.txt* For Vim version 7.4. Last change: 2014 Dec 08
*map.txt* For Vim version 7.4. Last change: 2016 Jan 10
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -483,7 +483,7 @@ internal code is written to the script file.
1.6 SPECIAL CHARACTERS *:map-special-chars*
*map_backslash*
*map_backslash* *map-backslash*
Note that only CTRL-V is mentioned here as a special character for mappings
and abbreviations. When 'cpoptions' does not contain 'B', a backslash can
also be used like CTRL-V. The <> notation can be fully used then |<>|. But
@@ -494,21 +494,21 @@ To map a backslash, or use a backslash literally in the {rhs}, the special
sequence "<Bslash>" can be used. This avoids the need to double backslashes
when using nested mappings.
*map_CTRL-C*
*map_CTRL-C* *map-CTRL-C*
Using CTRL-C in the {lhs} is possible, but it will only work when Vim is
waiting for a key, not when Vim is busy with something. When Vim is busy
CTRL-C interrupts/breaks the command.
When using the GUI version on MS-Windows CTRL-C can be mapped to allow a Copy
command to the clipboard. Use CTRL-Break to interrupt Vim.
*map_space_in_lhs*
*map_space_in_lhs* *map-space_in_lhs*
To include a space in {lhs} precede it with a CTRL-V (type two CTRL-Vs for
each space).
*map_space_in_rhs*
*map_space_in_rhs* *map-space_in_rhs*
If you want a {rhs} that starts with a space, use "<Space>". To be fully Vi
compatible (but unreadable) don't use the |<>| notation, precede {rhs} with a
single CTRL-V (you have to type CTRL-V two times).
*map_empty_rhs*
*map_empty_rhs* *map-empty-rhs*
You can create an empty {rhs} by typing nothing after a single CTRL-V (you
have to type CTRL-V two times). Unfortunately, you cannot do this in a vimrc
file.
@@ -583,7 +583,7 @@ Upper and lowercase differences are ignored.
It is not possible to put a comment after these commands, because the '"'
character is considered to be part of the {lhs} or {rhs}.
*map_bar*
*map_bar* *map-bar*
Since the '|' character is used to separate a map command from the next
command, you will have to do something special to include a '|' in {rhs}.
There are three methods:
@@ -601,7 +601,7 @@ When 'b' is present in 'cpoptions', "\|" will be recognized as a mapping
ending in a '\' and then another command. This is Vi compatible, but
illogical when compared to other commands.
*map_return*
*map_return* *map-return*
When you have a mapping that contains an Ex command, you need to put a line
terminator after it to have it executed. The use of <CR> is recommended for
this (see |<>|). Example: >
+6 -4
View File
@@ -1,4 +1,4 @@
*mlang.txt* For Vim version 7.4. Last change: 2012 Jan 15
*mlang.txt* For Vim version 7.4. Last change: 2016 Jan 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -97,13 +97,15 @@ If you used the self-installing .exe file, message translations should work
already. Otherwise get the libintl.dll file if you don't have it yet:
http://sourceforge.net/projects/gettext
Or:
https://mlocati.github.io/gettext-iconv-windows/
This also contains tools xgettext, msgformat and others.
libintl.dll should be placed in same directory with (g)vim.exe, or some
place where PATH environment value describe. Message files (vim.mo)
have to be placed in "$VIMRUNTIME/lang/xx/LC_MESSAGES", where "xx" is the
abbreviation of the language (mostly two letters).
place where PATH environment value describe. Vim also finds libintl-8.dll.
Message files (vim.mo) have to be placed in "$VIMRUNTIME/lang/xx/LC_MESSAGES",
where "xx" is the abbreviation of the language (mostly two letters).
If you write your own translations you need to generate the .po file and
convert it to a .mo file. You need to get the source distribution and read
+36 -22
View File
@@ -1,4 +1,4 @@
*options.txt* For Vim version 7.4. Last change: 2016 Jan 03
*options.txt* For Vim version 7.4. Last change: 2016 Jan 09
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -4958,13 +4958,13 @@ A jump table for the options with a short description can be found at |Q_op|.
reset this option. |-u| |--noplugin|
*'luadll'*
'luadll' string (default empty)
'luadll' string (default depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+lua/dyn|
feature}
Specifies the path of the Lua shared library instead of DYNAMIC_LUA_DLL
what was specified at compile time.
Specifies the name of the Lua shared library. The default is
DYNAMIC_LUA_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -5433,7 +5433,7 @@ A jump table for the options with a short description can be found at |Q_op|.
Negative or zero value means no thread scheduling.
*'nrformats'* *'nf'*
'nrformats' 'nf' string (default "octal,hex")
'nrformats' 'nf' string (default "bin,octal,hex")
local to buffer
{not in Vi}
This defines what bases Vim will consider for numbers when using the
@@ -5447,6 +5447,9 @@ A jump table for the options with a short description can be found at |Q_op|.
hex If included, numbers starting with "0x" or "0X" will be
considered to be hexadecimal. Example: Using CTRL-X on
"0x100" results in "0x0ff".
bin If included, numbers starting with "0b" or "0B" will be
considered to be binary. Example: Using CTRL-X on
"0b1000" subtracts one, resulting in "0b0111".
Numbers which simply begin with a digit in the range 1-9 are always
considered decimal. This also happens for numbers that are not
recognized as octal or hex.
@@ -5701,13 +5704,13 @@ A jump table for the options with a short description can be found at |Q_op|.
this doesn't work when $INCL contains a comma or white space.
*'perldll'*
'perldll' string (default empty)
'perldll' string (default depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+perl/dyn|
feature}
Specifies the path of the Perl shared library instead of
DYNAMIC_PERL_DLL what was specified at compile time.
Specifies the name of the Perl shared library. The default is
DYNAMIC_PERL_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -5838,24 +5841,24 @@ A jump table for the options with a short description can be found at |Q_op|.
|ins-completion-menu|.
*'pythondll'*
'pythondll' string (default empty)
'pythondll' string (default depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+python/dyn|
feature}
Specifies the path of the Python 2.x shared library instead of
DYNAMIC_PYTHON_DLL what was specified at compile time.
Specifies the name of the Python 2.x shared library. The default is
DYNAMIC_PYTHON_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
*'pythonthreedll'*
'pythonthreedll' string (default empty)
'pythonthreedll' string (default depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+python3/dyn|
feature}
Specifies the path of the Python 3 shared library instead of
DYNAMIC_PYTHON3_DLL what was specified at compile time.
Specifies the name of the Python 3 shared library. The default is
DYNAMIC_PYTHON3_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -6079,13 +6082,13 @@ A jump table for the options with a short description can be found at |Q_op|.
The 'rightleft' option must be set for 'rightleftcmd' to take effect.
*'rubydll'*
'rubydll' string (default empty)
'rubydll' string (default: depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+ruby/dyn|
feature}
Specifies the path of the Ruby shared library instead of
DYNAMIC_RUBY_DLL what was specified at compile time.
Specifies the name of the Ruby shared library. The default is
DYNAMIC_RUBY_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -7570,6 +7573,17 @@ A jump table for the options with a short description can be found at |Q_op|.
Resetting this option is useful when using a ":tag" command in a
mapping which should not change the tagstack.
*'tcldll'*
'tcldll' string (default depends on the build)
global
{not in Vi}
{only available when compiled with the |+tcl/dyn|
feature}
Specifies the name of the Tcl shared library. The default is
DYNAMIC_TCL_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
*'term'* *E529* *E530* *E531*
'term' string (default is $TERM, if that fails:
in the GUI: "builtin_gui"
+1
View File
@@ -914,6 +914,7 @@ Short explanation of each option: *option-list*
'tagrelative' 'tr' file names in tag file are relative
'tags' 'tag' list of file names used by the tag command
'tagstack' 'tgst' push tags onto the tag stack
'tcldll' name of the Tcl dynamic library
'term' name of the terminal
'termbidi' 'tbidi' terminal takes care of bi-directionality
'termencoding' 'tenc' character encoding used by the terminal
+30 -2
View File
@@ -1,4 +1,4 @@
*repeat.txt* For Vim version 7.4. Last change: 2015 Apr 13
*repeat.txt* For Vim version 7.4. Last change: 2016 Jan 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -483,16 +483,44 @@ Additionally, these commands can be used:
finish Finish the current script or user function and come
back to debug mode for the command after the one that
sourced or called it.
*>bt*
*>backtrace*
*>where*
backtrace Show the call stacktrace for current debugging session.
bt
where
*>frame*
frame N Goes to N bactrace level. + and - signs make movement
relative. E.g., ":frame +3" goes three frames up.
*>up*
up Goes one level up from call stacktrace.
*>down*
down Goes one level down from call stacktrace.
About the additional commands in debug mode:
- There is no command-line completion for them, you get the completion for the
normal Ex commands only.
- You can shorten them, up to a single character: "c", "n", "s" and "f".
- You can shorten them, up to a single character, unless more then one command
starts with the same letter. "f" stands for "finish", use "fr" for "frame".
- Hitting <CR> will repeat the previous one. When doing another command, this
is reset (because it's not clear what you want to repeat).
- When you want to use the Ex command with the same name, prepend a colon:
":cont", ":next", ":finish" (or shorter).
The backtrace shows the hierarchy of function calls, e.g.:
>bt ~
3 function One[3] ~
2 Two[3] ~
->1 Three[3] ~
0 Four ~
line 1: let four = 4 ~
The "->" points to the current frame. Use "up", "down" and "frame N" to
select another frame.
In the current frame you can evaluate the local function variables. There is
no way to see the command at the current line yet.
DEFINING BREAKPOINTS
*:breaka* *:breakadd*
+9 -1
View File
@@ -1,4 +1,4 @@
*spell.txt* For Vim version 7.4. Last change: 2014 Sep 19
*spell.txt* For Vim version 7.4. Last change: 2016 Jan 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1386,6 +1386,14 @@ the item name. Case is always ignored.
The Hunspell feature to use three arguments and flags is not supported.
*spell-NOCOMPOUNDSUGS*
This item indicates that using compounding to make suggestions is not a good
idea. Use this when compounding is used with very short or one-character
words. E.g. to make numbers out of digits. Without this flag creating
suggestions would spend most time trying all kind of weird compound words.
NOCOMPOUNDSUGS ~
*spell-SYLLABLE*
The SYLLABLE item defines characters or character sequences that are used to
count the number of syllables in a word. Example:
+22
View File
@@ -1048,6 +1048,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
'tbis' options.txt /*'tbis'*
'tbs' options.txt /*'tbs'*
'tc' options.txt /*'tc'*
'tcldll' options.txt /*'tcldll'*
'tenc' options.txt /*'tenc'*
'term' options.txt /*'term'*
'termbidi' options.txt /*'termbidi'*
@@ -2872,6 +2873,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:smapclear map.txt /*:smapclear*
:sme gui.txt /*:sme*
:smenu gui.txt /*:smenu*
:smile index.txt /*:smile*
:sn windows.txt /*:sn*
:snext windows.txt /*:snext*
:sni if_sniff.txt /*:sni*
@@ -3402,12 +3404,18 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
== change.txt /*==*
> change.txt /*>*
>> change.txt /*>>*
>backtrace repeat.txt /*>backtrace*
>bt repeat.txt /*>bt*
>cont repeat.txt /*>cont*
>down repeat.txt /*>down*
>finish repeat.txt /*>finish*
>frame repeat.txt /*>frame*
>interrupt repeat.txt /*>interrupt*
>next repeat.txt /*>next*
>quit repeat.txt /*>quit*
>step repeat.txt /*>step*
>up repeat.txt /*>up*
>where repeat.txt /*>where*
? pattern.txt /*?*
?<CR> pattern.txt /*?<CR>*
@ repeat.txt /*@*
@@ -4922,6 +4930,7 @@ added-win32-GUI version5.txt /*added-win32-GUI*
aff-dic-format spell.txt /*aff-dic-format*
after-directory options.txt /*after-directory*
aleph options.txt /*aleph*
alloc_fail() eval.txt /*alloc_fail()*
alt intro.txt /*alt*
alt-input debugger.txt /*alt-input*
alt-movement gui_mac.txt /*alt-movement*
@@ -4952,6 +4961,8 @@ asm.vim syntax.txt /*asm.vim*
asm68k syntax.txt /*asm68k*
asmh8300.vim syntax.txt /*asmh8300.vim*
assert_equal() eval.txt /*assert_equal()*
assert_exception() eval.txt /*assert_exception()*
assert_fails() eval.txt /*assert_fails()*
assert_false() eval.txt /*assert_false()*
assert_true() eval.txt /*assert_true()*
at motion.txt /*at*
@@ -7011,9 +7022,13 @@ man.vim filetype.txt /*man.vim*
manual-copyright usr_01.txt /*manual-copyright*
map() eval.txt /*map()*
map-<SID> map.txt /*map-<SID>*
map-CTRL-C map.txt /*map-CTRL-C*
map-ambiguous map.txt /*map-ambiguous*
map-backslash map.txt /*map-backslash*
map-backtick tips.txt /*map-backtick*
map-bar map.txt /*map-bar*
map-comments map.txt /*map-comments*
map-empty-rhs map.txt /*map-empty-rhs*
map-error map.txt /*map-error*
map-examples map.txt /*map-examples*
map-keys-fails map.txt /*map-keys-fails*
@@ -7022,7 +7037,10 @@ map-modes map.txt /*map-modes*
map-multibyte map.txt /*map-multibyte*
map-overview map.txt /*map-overview*
map-precedence map.txt /*map-precedence*
map-return map.txt /*map-return*
map-self-destroy tips.txt /*map-self-destroy*
map-space_in_lhs map.txt /*map-space_in_lhs*
map-space_in_rhs map.txt /*map-space_in_rhs*
map-typing map.txt /*map-typing*
map-which-keys map.txt /*map-which-keys*
map.txt map.txt /*map.txt*
@@ -7167,6 +7185,7 @@ mzscheme-examples if_mzsch.txt /*mzscheme-examples*
mzscheme-funcref if_mzsch.txt /*mzscheme-funcref*
mzscheme-mzeval if_mzsch.txt /*mzscheme-mzeval*
mzscheme-sandbox if_mzsch.txt /*mzscheme-sandbox*
mzscheme-setup if_mzsch.txt /*mzscheme-setup*
mzscheme-threads if_mzsch.txt /*mzscheme-threads*
mzscheme-vim if_mzsch.txt /*mzscheme-vim*
mzscheme-vimext if_mzsch.txt /*mzscheme-vimext*
@@ -7613,6 +7632,7 @@ perl-overview if_perl.txt /*perl-overview*
perl-patterns pattern.txt /*perl-patterns*
perl-using if_perl.txt /*perl-using*
perl.vim syntax.txt /*perl.vim*
perleval() eval.txt /*perleval()*
persistent-undo undo.txt /*persistent-undo*
pexpr-option print.txt /*pexpr-option*
pfn-option print.txt /*pfn-option*
@@ -8077,6 +8097,7 @@ spell-NAME spell.txt /*spell-NAME*
spell-NEEDAFFIX spell.txt /*spell-NEEDAFFIX*
spell-NEEDCOMPOUND spell.txt /*spell-NEEDCOMPOUND*
spell-NOBREAK spell.txt /*spell-NOBREAK*
spell-NOCOMPOUNDSUGS spell.txt /*spell-NOCOMPOUNDSUGS*
spell-NOSPLITSUGS spell.txt /*spell-NOSPLITSUGS*
spell-NOSUGFILE spell.txt /*spell-NOSUGFILE*
spell-NOSUGGEST spell.txt /*spell-NOSUGGEST*
@@ -9048,6 +9069,7 @@ winwidth() eval.txt /*winwidth()*
word motion.txt /*word*
word-count editing.txt /*word-count*
word-motions motion.txt /*word-motions*
wordcount() eval.txt /*wordcount()*
workbench starting.txt /*workbench*
workshop workshop.txt /*workshop*
workshop-commands workshop.txt /*workshop-commands*
+31 -46
View File
@@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.4. Last change: 2016 Jan 03
*todo.txt* For Vim version 7.4. Last change: 2016 Jan 17
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -76,10 +76,11 @@ Regexp problems:
matches the empty string. (Dominique Pelle, 2015 Oct 2, Nov 24)
- Search for \\~ causes error E874.
Need better instructions about how to install all interfaces and how to build
Vim with them.
For Ruby: https://github.com/ruby/ruby/tree/trunk/win32
Or use Ken Takata's hack.
Need to try out instructions in INSSTALLpc.txt about how to install all
interfaces and how to build Vim with them.
Appveyor build with self-installing executable, includes getting most
interfaces: https://github.com/k-takata/vim/tree/chrisbra-appveyor-build
result: https://ci.appveyor.com/project/k-takata/vim/history
Still using freed memory after using setloclist(). (lcd, 2014 Jul 23)
More info Jul 24. Not clear why.
@@ -105,7 +106,10 @@ directory exists. (Sergio Gallelli, 2013 Dec 29)
Using ":windo" to set options in all windows has the side effect that it
changes the window layout and the current window. Make a variant that saves
and restores. Use in the matchparen plugin.
Perhaps we can use "window <restore> {cmd}"?
Perhaps we can use ":windo <restore> {cmd}"?
Patch to add <restore> to :windo, :bufdo, etc. (Christian Brabandt, 2015 Jan
6, 2nd message)
Alternative: ":keeppos" command modifier: ":keeppos windo {cmd}".
Illegal memory access, requires ASAN to see. (Dominique Pelle, 2015 Jul 28)
@@ -114,58 +118,37 @@ Gvim: when both Tab and CTRL-I are mapped, use CTRL-I not for Tab.
Unexpected delay when using CTRL-O u. It's not timeoutlen.
(Gary Johnson, 2015 Aug 28)
Instead of separately uploading patches to the ftp site, can we get them from
github? This URL works:
Instead of separately uploading patches to the ftp site, we can get them from
github with a URL like this:
https://github.com/vim/vim/compare/v7.4.920%5E...v7.4.920.diff
Diff for version.c contains more context, can't skip a patch.
>
Can src/GvimExt/Make_cyg.mak be removed?
Same for src/xxd/Make_cyg.mak
When t_Co is changed from termresponse, the OptionSet autocmmand event isn't
triggered. Use the code from the end of set_num_option() in
set_color_count().
Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
Patch to add wordcount(). (Christian Brabandt, 2015 Nov 27)
Plugin to use Vim in MANPAGER. Konfekt, PR #491
Using uninitialized memory. (Dominique Pelle, 2015 Nov 4)
Patch to recognize string slice for variable followed by colon.
(Hirohito Higashi, 2015 Nov 24)
Patch to add debug backtrace. (Alberto Fanjul, 2015 Sep 27)
Update 2016 Jan 2. Issue #433
MS-Windows: When editing a file with a leading space, writing it uses the
wrong name. (Aram, 2014 Nov 7) Vim 7.4.
Can't recognize the $ProgramFiles(x86) environment variable. Recognize it
specifically? First try with the parens, then without.
Patch to fix "." after CTRL-A in Visual block mode. (Ozaki Kiichi, 2015 Oct
24)
Half-finished patch to fix the Problem using cgn to change a search hit when
replacement includes hit. Reported by John Beckett, fix by Christian Brabandt,
2015 Dec 14, Update Dec 15.
Patch to fix pointer cast warning in VS2015. (Mike Williams, 2015 Dec 13)
Patch to make building GVimExt with VS2015. (Mike Williams, 2015 Dec 13)
2016 Jan 11.
Value returned by virtcol() changes depending on how lines wrap. This is
inconsistent with the documentation.
Patch to add perleval(). (Damien, 2015 Dec 8)
Can we cache the syntax attributes, so that updates for 'relativenumber' and
'cursorline'/'cursorcolumn' are a lot faster?
Patch to add window and tab arguments to getcwd(). (Thinca, 2015 Nov 15)
Build with Python on Mac does not always use the right library.
(Kazunobu Kuriyama, 2015 Mar 28)
@@ -178,6 +161,10 @@ library: http://userguide.icu-project.org/boundaryanalysis
When complete() first argument is before where insert started and 'backspace'
is Vi compatible, the completion fails. (Hirohito Higashi, 2015 Feb 19)
Patch to fix bug in searchpair(). (Christian Brabandt, 2016 Jan 11)
Problem reported by David Fishburn, using searchpair() with synID() used in
the skip expression.
Test 44 fails when [[=A=]] is changed to [[=À=]]. Caused by getcmdline() not
handling the 0x80 as a second byte correctly? (Dominique Pelle, 2015 Jun 10)
@@ -195,6 +182,11 @@ Nov 29)
If libiconv.dll is not found search for libiconv2.dll. (Yasuhiro Matsumoto,
2015 Oct 7)
Using an external diff is inefficient. Not all systems have a good diff
program available (esp. MS-Windows). Would be nice to have in internal diff
implementation. Can then also use this for displaying changes within a line.
Olaf Dabrunz is working on this.
The OptionSet autocommand event is not always triggered. (Rick Howe, 2015 Sep
24): :diffthis, :diffoff.
@@ -227,12 +219,16 @@ Sep 10)
Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6)
Update Sep 7. Update by Christian Brabandt, 2015 Sep 8.
Patch to improve I/O for Perl. (Damine, 2015 Jan 9)
Patch to set antialiasing style on Windows. (Ondrej Balaz, 2013 Mar 14)
Needs a different check for CLEARTYPE_QUALITY.
Problem mentioned by Christian Brabandt, 2016 Jan 4.
Example in editing.txt uses $HOME with the expectating that it ends in a
slash. For me it does, but perhaps not for everybody. Add a function that
inserts a slash when needed? pathconcat(dir, path) (Thilo Six, 2015 Aug 12)
Patch to load TCL dynamically. (Ken Takata, 2015 Nov 11)
ml_updatechunk() is slow when retrying for another encoding. (John Little,
2014 Sep 11)
@@ -255,7 +251,7 @@ Is this the right solution? Need to cleanup langmap behavior:
- Remove LANGMAP_ADJUST() in other parts of the code. Make sure the mode is
covered by the above change.
So that replaying the register doesn't use keymap/langmap and still does the
same thing. Remarks on issue 543.
same thing. Remarks on issue 543 (Roland Puntaier).
Patch to add grepfile(). (Scott Prager, 2015 May 26)
Work in progress.
@@ -263,9 +259,6 @@ Work in progress.
Patch for global-local options consistency. (Arnaud Decara, 2015 Jul 22)
Is this right?
Patch to have CTRL-A and CTRL-X update the '[ and '] marks.
(Yukihiro Nakadaira, 2015 Aug 23)
Patch to make getregtype() return the right size for non-linux systems.
(Yasuhiro Matsumoto, 2014 Jul 8)
Breaks test_eval. Inefficient, can we only compute y_width when needed?
@@ -312,9 +305,6 @@ When two SIGWINCH arrive very quickly, the second one may be lost.
Make comments in the test Makefile silent. (Kartik Agaram, 2014 Sep 24)
Patch to improve behavior of dead keys on MS-Windows. (John Wellesz, 2015 Aug
25) https://github.com/vim/vim/pull/399.diff
Result of systemlist() does not show whether text ended in line break.
(Bjorn Linse, 2014 Nov 27)
@@ -359,7 +349,7 @@ Patch for ordered dict. (Ozaki Kiichi, 2015 May 7)
Patch to make closed folds line up. (Charles Campbell, 2014 Sep 12)
Remark from Roland Eggner: does it cause crashes? (2014 Dec 12)
Updated patch by Roland Eggner, Dec 16
Updated patch from Charles, Dec 29.
Updated patch from Charles, 2016 Jan 4.
Patch to open folds for 'incsearch'. (Christian Brabandt, 2015 Jan 6)
@@ -672,9 +662,6 @@ Patch by Christian Brabandt, 2013 Apr 20, unfinished.
Bug: findfile("any", "file:///tmp;") does not work.
Patch to set antialiasing style on Windows. (Ondrej Balaz, 2013 Mar 14)
Needs a different check for CLEARTYPE_QUALITY.
In the ATTENTION message about an existing swap file, mention the name of the
process that is running. It might actually be some other program, e.g. after
a reboot.
@@ -2746,8 +2733,7 @@ Macintosh:
8 On MS-Windows ":make" doesn't show output while it is working. Use the
tee.exe from http://unxutils.sourceforge.net/ ? About 16 Kbyte in the
UnxUtils.zip archive.
Alternate one: http://www.pramodx.20m.com/tee_for_win32.htm, but Walter
Briscoe says it's not as good.
Is it better than what we have in src/tee?
8 When doing Insert mode completion a mapping cannot recursively call
edit(), because the completion information is global. Put everything in
an allocated structure?
@@ -4632,7 +4618,6 @@ Visual mode:
6 ":left" and ":right" should work in Visual block mode.
7 CTRL-I and CTRL-O should work in Visual mode, but only jump to marks in the
current buffer.
7 CTRL-A and CTRL-X should increase/decrease all numbers in the Visual area.
6 In non-Block mode, "I" should insert the same text in front of each line,
before the first non-blank, "gI" in column 1.
6 In non-Block mode, "A" should append the same text after each line.
+196 -61
View File
@@ -1,4 +1,4 @@
*usr_02.txt* For Vim version 7.4. Last change: 2015 Apr 12
*usr_02.txt* For Vim version 7.4. Last change: 2016 Jan 16
VIM USER MANUAL - by Bram Moolenaar
@@ -408,7 +408,15 @@ original version of the file.
Everything you always wanted to know can be found in the Vim help files.
Don't be afraid to ask!
To get generic help use this command: >
If you know what you are looking for, it is usually easier to search for it
using the help system, instead of using Google. Because the subjects follow
a certain style guide.
Also the help has the advantage of belonging to your particular Vim version.
You won't see help for commands added later. These would not work for you.
To get generic help use this command: >
:help
@@ -482,7 +490,7 @@ example, use the following command: >
:help 'number'
The table with all mode prefixes can be found here: |help-context|.
The table with all mode prefixes can be found below: |help-summary|.
Special keys are enclosed in angle brackets. To find help on the up-arrow key
in Insert mode, for instance, use this command: >
@@ -499,64 +507,191 @@ You can use the error ID at the start to find help about it: >
Summary: *help-summary* >
:help
< Gives you very general help. Scroll down to see a list of all
helpfiles, including those added locally (i.e. not distributed
with Vim). >
:help user-toc.txt
< Table of contents of the User Manual. >
:help :subject
< Ex-command "subject", for instance the following: >
:help :help
< Help on getting help. >
:help abc
< normal-mode command "abc". >
:help CTRL-B
< Control key <C-B> in Normal mode. >
:help i_abc
:help i_CTRL-B
< The same in Insert mode. >
:help v_abc
:help v_CTRL-B
< The same in Visual mode. >
:help c_abc
:help c_CTRL-B
< The same in Command-line mode. >
:help 'subject'
< Option 'subject'. >
:help subject()
< Function "subject". >
:help -subject
< Command-line argument "-subject". >
:help +subject
< Compile-time feature "+subject". >
:help /*
< Regular expression item "*" >
:help EventName
< Autocommand event "EventName". >
:help digraphs.txt
< The top of the helpfile "digraph.txt".
Similarly for any other helpfile. >
:help pattern<Tab>
< Find a help tag starting with "pattern". Repeat <Tab> for
others. >
:help pattern<Ctrl-D>
< See all possible help tag matches "pattern" at once. >
:helpgrep pattern
< Search the whole text of all help files for pattern "pattern".
Jumps to the first match. Jump to other matches with: >
:cn
< next match >
:cprev
:cN
< previous match >
:cfirst
:clast
< first or last match >
:copen
:cclose
< open/close the quickfix window; press <Enter> to jump
to the item under the cursor
1) Use Ctrl-D after typing a topic and let Vim show all available topics.
Or press Tab to complete: >
:help some<Tab>
< More information on how to use the help: >
:help helphelp
2) Follow the links in bars to related help. You can go from the detailed
help to the user documentation, which describes certain commands more from
a user perspective and less detailed. E.g. after: >
:help pattern.txt
< You can see the user guide topics |03.9| and |usr_27.txt| in the
introduction.
3) Options are enclosed in single apostrophes. To go to the help topic for the
list option: >
:help 'list'
< If you only know you are looking for a certain option, you can also do: >
:help options.txt
< to open the help page which describes all option handling and then search
using regular expressions, e.g. textwidth.
Certain options have their own namespace, e.g.: >
:help cpo-<letter>
< for the corresponding flag of the 'cpoptions' settings, substitute <letter>
by a specific flag, e.g.: >
:help cpo-;
< And for the guioption flags: >
:help go-<letter>
4) Normal mode commands do not have a prefix. To go to the help page for the
"gt" command: >
:help gt
5) Insert mode commands start with i_. Help for deleting a word: >
:help i_CTRL-W
6) Visual mode commands start with v_. Help for jumping to the other side of
the Visual area: >
:help v_o
7) Command line editing and arguments start with c_. Help for using the
command argument %: >
:help c_%
8) Ex-commands always start with ":", so to go to the :s command help: >
:help :s
9) Commands specifically for debugging start with ">". To go to to the help
for the "cont" debug command: >
:help >cont
10) Key combinations. They usually start with a single letter indicating
the mode for which they can be used. E.g.: >
:help i_CTRL-X
< takes you to the family of Ctrl-X commands for insert mode which can be
used to auto complete different things. Note, that certain keys will
always be written the same, e.g. Control will always be CTRL.
For normal mode commands there is no prefix and the topic is available at
:h CTRL-<Letter>. E.g. >
:help CTRL-W
< In contrast >
:help c_CTRL-R
< will describe what the Ctrl-R does when entering commands in the Command
line and >
:help v_Ctrl-A
< talks about incrementing numbers in visual mode and >
:help g_CTRL-A
< talks about the g<C-A> command (e.g. you have to press "g" then <Ctrl-A>).
Here the "g" stand for the normal command "g" which always expects a second
key before doing something similar to the commands starting with "z"
11) Regexp items always start with /. So to get help for the "\+" quantifier
in Vim regexes: >
:help /\+
< If you need to know everything about regular expressions, start reading
at: >
:help pattern.txt
12) Registers always start with "quote". To find out about the special ":"
register: >
:help quote:
13) Vim Script (VimL) is available at >
:help eval.txt
< Certain aspects of the language are available at :h expr-X where "X" is a
single letter. E.g. >
:help expr-!
< will take you to the topic describing the "!" (Not) operator for
VimScript.
Also important is >
:help function-list
< to find a short description of all functions available. Help topics for
VimL functions always include the "()", so: >
:help append()
< talks about the append VimL function rather than how to append text in the
current buffer.
14) Mappings are talked about in the help page :h |map.txt|. Use >
:help mapmode-i
< to find out about the |:imap| command. Also use :map-topic
to find out about certain subtopics particular for mappings. e.g: >
:help :map-local
< for buffer-local mappings or >
:help map-bar
< for how the '|' is handled in mappings.
15) Command definitions are talked about :h command-topic, so use >
:help command-bar
< to find out about the '!' argument for custom commands.
16) Window management commands always start with CTRL-W, so you find the
corresponding help at :h CTRL-W_letter. E.g. >
:help CTRL-W_p
< for moving the previous accessed window. You can also access >
:help windows.txt
< and read your way through if you are looking for window handling
commands.
17) Use |:helpgrep| to search in all help pages (and also of any installed
plugins). See |:helpgrep| for how to use it.
To search for a topic: >
:helpgrep topic
< This takes you to the first match. To go to the next one: >
:cnext
< All matches are available in the quickfix window which can be opened
with: >
:copen
< Move around to the match you like and press Enter to jump to that help.
18) The user manual. This describes help topics for beginners in a rather
friendly way. Start at |usr_toc.txt| to find the table of content (as you
might have guessed): >
:help usr_toc.txt
< Skim over the contents to find interesting topics. The "Digraphs" and
"Entering special characters" items are in chapter 24, so to go to that
particular help page: >
:help usr_24.txt
< Also if you want to access a certain chapter in the help, the chapter
number can be accessed directly like this: >
:help 10.1
< goes to chapter 10.1 in |usr_10.txt| and talks about recording macros.
19) Highlighting groups. Always start with hl-groupname. E.g. >
:help hl-WarningMsg
< talks about the WarningMsg highlighting group.
20) Syntax highlighting is namespaced to :syn-topic e.g. >
:help :syn-conceal
< talks about the conceal argument for the :syn command.
21) Quickfix commands usually start with :c while location list commands
usually start with :l
22) Autocommand events can be found by their name: >
:help BufWinLeave
< To see all possible events: >
:help autocommands-events
23) Command-line switches always start with "-". So for the help of the -f
command switch of Vim use: >
:help -f
24) Optional features always start with "+". To find out about the
conceal feature use: >
:help +conceal
25) Documentation for included filetype specific functionality is usually
available in the form ft-<filetype>-<functionality>. So >
:help ft-c-syntax
< talks about the C syntax file and the option it provides. Sometimes,
additional sections for omni completion >
:help ft-php-omni
< or filetype plugins >
:help ft-tex-plugin
< are available.
26) Error and Warning codes can be looked up directly in the help. So >
:help E297
< takes you exactly to the description of the swap error message and >
:help W10
< talks about the warning "Changing a readonly file".
Sometimes however, those error codes are not described, but rather are
listed at the Vim command that usually causes this. So: >
:help E128
< takes you to the |:function| command
==============================================================================
+3 -3
View File
@@ -1,4 +1,4 @@
*usr_03.txt* For Vim version 7.4. Last change: 2015 Dec 12
*usr_03.txt* For Vim version 7.4. Last change: 2016 Jan 05
VIM USER MANUAL - by Bram Moolenaar
@@ -413,8 +413,8 @@ in "the" use: >
/the\>
The "\>" item is a special marker that only matches at the end of a word.
Similarly "\<" only matches at the begin of a word. Thus to search for the
word "the" only: >
Similarly "\<" only matches at the beginning of a word. Thus to search for
the word "the" only: >
/\<the\>
+1
View File
@@ -921,6 +921,7 @@ Various: *various-functions*
luaeval() evaluate Lua expression
mzeval() evaluate |MzScheme| expression
perleval() evaluate Perl expression (|+perl|)
py3eval() evaluate Python expression (|+python3|)
pyeval() evaluate Python expression (|+python|)
wordcount() get byte/word/char count of buffer
+2 -1
View File
@@ -1,4 +1,4 @@
*various.txt* For Vim version 7.4. Last change: 2015 Nov 15
*various.txt* For Vim version 7.4. Last change: 2016 Jan 10
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -650,6 +650,7 @@ K Run a program to lookup the keyword under the
g CTRL-A Only when Vim was compiled with MEM_PROFILING defined
(which is very rare): print memory usage statistics.
Only useful for debugging Vim.
For incrementing in Visual mode see |v_g_CTRL-A|.
==============================================================================
2. Using Vim like less or more *less*
+16
View File
@@ -0,0 +1,16 @@
" Vim filetype plugin file
" Language: hg (Mercurial) commit file
" Maintainer: Ken Takata <kentkt at csc dot jp>
" Last Change: 2016 Jan 6
" Filenames: hg-editor-*.txt
" License: VIM License
" URL: https://github.com/k-takata/hg-vim
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
setlocal nomodeline
let b:undo_ftplugin = 'setl modeline<'
+3 -3
View File
@@ -2,7 +2,7 @@
" Language: Lua script
" Maintainer: Marcus Aurelius Farias <marcus.cf 'at' bol.com.br>
" First Author: Max Ischenko <mfi 'at' ukr.net>
" Last Change: 2014 Nov 12
" Last Change: 2016 Jan 10
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@@ -52,9 +52,9 @@ function! GetLuaIndent()
endif
endif
" Subtract a 'shiftwidth' on end, else (and elseif), until and '}'
" Subtract a 'shiftwidth' on end, else, elseif, until and '}'
" This is the part that requires 'indentkeys'.
let midx = match(getline(v:lnum), '^\s*\%(end\>\|else\>\|until\>\|}\)')
let midx = match(getline(v:lnum), '^\s*\%(end\>\|else\>\|elseif\>\|until\>\|}\)')
if midx != -1 && synIDattr(synID(v:lnum, midx + 1, 1), "name") != "luaComment"
let ind = ind - &shiftwidth
endif
+6 -2
View File
@@ -809,7 +809,7 @@ call append("$", "infercase\tadjust case of a keyword completion match")
call append("$", "\t(local to buffer)")
call <SID>BinOptionL("inf")
if has("digraphs")
call append("$", "digraph\tenable entering digraps with c1 <BS> c2")
call append("$", "digraph\tenable entering digraphs with c1 <BS> c2")
call <SID>BinOptionG("dg", &dg)
endif
call append("$", "tildeop\tthe \"~\" command behaves like an operator")
@@ -1214,7 +1214,7 @@ if has("arabic")
call <SID>BinOptionG("tbidi", &tbidi)
endif
if has("keymap")
call append("$", "keymap\tname of a keyboard mappping")
call append("$", "keymap\tname of a keyboard mapping")
call <SID>OptionL("kmp")
endif
if has("langmap")
@@ -1346,6 +1346,10 @@ if exists("&rubydll")
call append("$", "rubydll\tname of the Ruby dynamic library")
call <SID>OptionG("rubydll", &rubydll)
endif
if exists("&tcldll")
call append("$", "tcldll\tname of the Tcl dynamic library")
call <SID>OptionG("tcldll", &tcldll)
endif
set cpo&vim
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+77 -48
View File
@@ -1,5 +1,5 @@
*** en_AU.orig.aff 2010-05-15 13:03:47.000000000 +0200
--- en_AU.aff 2015-12-30 19:08:16.916527503 +0100
--- en_AU.aff 2016-01-09 13:15:38.426627871 +0100
***************
*** 7,9 ****
SET ISO8859-1
@@ -148,7 +148,8 @@
!
REP 24
***************
*** 34,53 ****
*** 33,53 ****
REP ght t
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -169,7 +170,25 @@
PFX E Y 1
! PFX E 0 dis .
PFX F Y 5
--- 172,191 ----
--- 171,208 ----
REP ght t
+
+ # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
+ # suggestions is extremely slow.
+ ## ordinal numbers
+ #COMPOUNDMIN 1
+ ## only in compounds: 1th, 2th, 3th
+ #ONLYINCOMPOUND ,
+ ## compound rules:
+ ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
+ ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
+ #COMPOUNDRULE 2
+ #COMPOUNDRULE (*:)
+ #COMPOUNDRULE (*{}
+ #NOCOMPOUNDSUGS
+
+ # WORDCHARS 0123456789
+
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -587,7 +606,7 @@
SFX T y iest [^aeiou]y
! SFX T 0 er [aeiou]y
SFX T 0 est [aeiou]y
--- 195,589 ----
--- 212,606 ----
PFX F 0 col l
! PFX F 0 con [^abehilmopru].
PFX K Y 1
@@ -1671,7 +1690,7 @@
! SFX 3 0 ist's [aeioubp]y
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
--- 596,1305 ----
--- 613,1322 ----
SFX R Y 72
! SFX R 0 r e
! SFX R 0 rs e
@@ -2383,20 +2402,30 @@
! # a few more for consistency
! COMMON five six seven eight nine ten hundred thousand
*** en_AU.orig.dic 2010-05-15 13:03:48.000000000 +0200
--- en_AU.dic 2015-12-30 19:07:42.620898655 +0100
--- en_AU.dic 2016-01-08 23:03:18.342461841 +0100
***************
*** 1,2 ****
! 45654
AA
--- 1,2 ----
--- 1,12 ----
! 45653
! 0th
! 1st
! 2nd
! 3rd
! 4th
! 5th
! 6th
! 7th
! 8th
! 9th
AA
***************
*** 912,914 ****
Alaska/M
! al/AY
albacore/MS
--- 912,914 ----
--- 922,924 ----
Alaska/M
! really
albacore/MS
@@ -2405,10 +2434,10 @@
bozo/SM
- b/pb
bpi
--- 4885,4886 ----
--- 4895,4896 ----
***************
*** 4921,4922 ****
--- 4920,4922 ----
--- 4930,4932 ----
Brahms
+ Bram/M
braid/DGS
@@ -2417,22 +2446,22 @@
cad/ZSM
- c/aE
CAE
--- 5753,5754 ----
--- 5763,5764 ----
***************
*** 8535,8537 ****
coniferous
- conj
conjectural
--- 8534,8535 ----
--- 8544,8545 ----
***************
*** 8544,8545 ****
--- 8542,8544 ----
--- 8552,8554 ----
conjunctiva/MS
+ conj.
conjunctive/S
***************
*** 10288,10289 ****
--- 10287,10291 ----
--- 10297,10301 ----
dB/M
+ dBi
+ dBm
@@ -2443,10 +2472,10 @@
DNA
- d/o
DOB
--- 11783,11784 ----
--- 11793,11794 ----
***************
*** 12468,12469 ****
--- 12469,12471 ----
--- 12479,12481 ----
Dutch/5m
+ Farsi
Dutchwomen/M
@@ -2455,19 +2484,19 @@
dystrophy/M
- e
ea
--- 12518,12519 ----
--- 12528,12529 ----
***************
*** 12792,12794 ****
e.g.
- e.g..
egad
--- 12793,12794 ----
--- 12803,12804 ----
***************
*** 13779,13781 ****
estuary/MS
! et
ETA
--- 13779,13782 ----
--- 13789,13792 ----
estuary/MS
! et cetera
! et al.
@@ -2477,7 +2506,7 @@
fjord/SM
! f/K
flab/2zZM
--- 15297,15299 ----
--- 15307,15309 ----
fjord/SM
! pref
flab/2zZM
@@ -2486,19 +2515,19 @@
FYI
- g/7
gabardine/SM
--- 16481,16482 ----
--- 16491,16492 ----
***************
*** 18599,18601 ****
HDTV
- h/E
headache/SM
--- 18599,18600 ----
--- 18609,18610 ----
***************
*** 19214,19216 ****
Hobbes
! hobbit
hobble/RGSD
--- 19213,19215 ----
--- 19223,19225 ----
Hobbes
! hobbit/MS
hobble/RGSD
@@ -2507,34 +2536,34 @@
jive/DSMG
- j/k
jnr.
--- 21790,21791 ----
--- 21800,21801 ----
***************
*** 22125,22127 ****
kcal
- k/E
Keane
--- 22123,22124 ----
--- 22133,22134 ----
***************
*** 22606,22608 ****
Kyushu/M
- l/3
label/AGaSD
--- 22603,22604 ----
--- 22613,22614 ----
***************
*** 22885,22887 ****
lass/SM
- last-ditch
lasted/e
--- 22881,22882 ----
--- 22891,22892 ----
***************
*** 22890,22892 ****
last/kJYDSG
- last-minute
lasts/e
--- 22885,22886 ----
--- 22895,22896 ----
***************
*** 26417,26418 ****
--- 26411,26413 ----
--- 26421,26423 ----
Moolawatana
+ Moolenaar/M
Moomba
@@ -2545,7 +2574,7 @@
nationhood/M
! nation/M
nationwide
--- 27183,27187 ----
--- 27193,27197 ----
nationals/4
! national/sQq3SZ
nationhood/M
@@ -2553,7 +2582,7 @@
nationwide
***************
*** 27194,27195 ****
--- 27189,27192 ----
--- 27199,27202 ----
nativity/MS
+ natively
+ nativeness
@@ -2563,28 +2592,28 @@
nuzzle/SDG
- n/xvuNVn
Nyah
--- 28362,28363 ----
--- 28372,28373 ----
***************
*** 29464,29466 ****
oz
- o/z
Ozark/MS
--- 29460,29461 ----
--- 29470,29471 ----
***************
*** 31035,31037 ****
Pk
- p/KF
pl.
--- 31030,31031 ----
--- 31040,31041 ----
***************
*** 31288,31289 ****
--- 31282,31284 ----
--- 31292,31294 ----
pneumonia/MS
+ pneumonic
PO
***************
*** 31460,31461 ****
--- 31455,31457 ----
--- 31465,31467 ----
pompom/MS
+ pompon/M
pomposity/MS
@@ -2593,25 +2622,25 @@
pyx/S
- q
Qatar
--- 32861,32862 ----
--- 32871,32872 ----
***************
*** 33378,33380 ****
razzmatazz
- r/d
Rd/M
--- 33373,33374 ----
--- 33383,33384 ----
***************
*** 34979,34981 ****
RSPCA
- rte
rub-a-dub
--- 34973,34974 ----
--- 34983,34984 ----
***************
*** 36012,36014 ****
sec.
! s/eca
secant/MS
--- 36005,36007 ----
--- 36015,36017 ----
sec.
! outs
secant/MS
@@ -2620,7 +2649,7 @@
Szechwan/M
! t/7k
Ta
--- 40235,40237 ----
--- 40245,40247 ----
Szechwan/M
! tingly
Ta
@@ -2629,10 +2658,10 @@
Tyson/M
- u
ubiquitousness
--- 42609,42610 ----
--- 42619,42620 ----
***************
*** 42990,42991 ****
--- 42982,42984 ----
--- 42992,42994 ----
unscrupulous
+ searchable
unsearchable
@@ -2641,13 +2670,13 @@
Uzi/M
- v
vacancy/MS
--- 43245,43246 ----
--- 43255,43256 ----
***************
*** 43749,43751 ****
Vilnius/M
! vim/M
vinaigrette/MS
--- 43741,43744 ----
--- 43751,43754 ----
Vilnius/M
! Vim/M
! vim/?
@@ -2657,16 +2686,16 @@
yippee
- y/K
YMCA
--- 45487,45488 ----
--- 45497,45498 ----
***************
*** 45586,45588 ****
zap/SGRD
- z/d
Zealanders
--- 45578,45579 ----
--- 45588,45589 ----
***************
*** 45655 ****
--- 45646,45660 ----
--- 45656,45670 ----
zymurgy/S
+ nd
+ PayPal
+208 -151
View File
@@ -1,14 +1,25 @@
*** en_CA.orig.aff 2015-12-30 18:18:20.076952127 +0100
--- en_CA.aff 2015-12-30 18:32:50.395546116 +0100
--- en_CA.aff 2016-01-09 13:15:51.306488848 +0100
***************
*** 2,7 ****
*** 2,18 ****
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
! ICONV 1
! ICONV '
NOSUGGEST !
# ordinal numbers
--- 2,146 ----
! # ordinal numbers
! COMPOUNDMIN 1
! # only in compounds: 1th, 2th, 3th
! ONLYINCOMPOUND c
! # compound rules:
! # 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
! # 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
! COMPOUNDRULE 2
! COMPOUNDRULE n*1t
! COMPOUNDRULE n*mp
! WORDCHARS 0123456789
--- 2,161 ----
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
!
! # ICONV 1
@@ -16,158 +27,204 @@
!
NOSUGGEST !
+ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
+
+ MIDWORD '
+
+ RARE ?
+ BAD %
+
+ MAP 9
+ MAP aàáâãäå
+ MAP eèéêë
+ MAP iìíîï
+ MAP oòóôõö
+ MAP uùúûü
+ MAP nñ
+ MAP cç
+ MAP yÿý
+ MAP sß
+
+ # This comes from Aspell en_phonet.dat, version 1.1, 2000-01-07
+
+ SAL AH(AEIOUY)-^ *H
+ SAL AR(AEIOUY)-^ *R
+ SAL A(HR)^ *
+ SAL A^ *
+ SAL AH(AEIOUY)- H
+ SAL AR(AEIOUY)- R
+ SAL A(HR) _
+ SAL À^ *
+ SAL Å^ *
+ SAL BB- _
+ SAL B B
+ SAL CQ- _
+ SAL CIA X
+ SAL CH X
+ SAL C(EIY)- S
+ SAL CK K
+ SAL COUGH^ KF
+ SAL CC< C
+ SAL C K
+ SAL DG(EIY) K
+ SAL DD- _
+ SAL D T
+ SAL É< E
+ SAL EH(AEIOUY)-^ *H
+ SAL ER(AEIOUY)-^ *R
+ SAL E(HR)^ *
+ SAL ENOUGH^$ *NF
+ SAL E^ *
+ SAL EH(AEIOUY)- H
+ SAL ER(AEIOUY)- R
+ SAL E(HR) _
+ SAL FF- _
+ SAL F F
+ SAL GN^ N
+ SAL GN$ N
+ SAL GNS$ NS
+ SAL GNED$ N
+ SAL GH(AEIOUY)- K
+ SAL GH _
+ SAL GG9 K
+ SAL G K
+ SAL H H
+ SAL IH(AEIOUY)-^ *H
+ SAL IR(AEIOUY)-^ *R
+ SAL I(HR)^ *
+ SAL I^ *
+ SAL ING6 N
+ SAL IH(AEIOUY)- H
+ SAL IR(AEIOUY)- R
+ SAL I(HR) _
+ SAL J K
+ SAL KN^ N
+ SAL KK- _
+ SAL K K
+ SAL LAUGH^ LF
+ SAL LL- _
+ SAL L L
+ SAL MB$ M
+ SAL MM M
+ SAL M M
+ SAL NN- _
+ SAL N N
+ SAL OH(AEIOUY)-^ *H
+ SAL OR(AEIOUY)-^ *R
+ SAL O(HR)^ *
+ SAL O^ *
+ SAL OH(AEIOUY)- H
+ SAL OR(AEIOUY)- R
+ SAL O(HR) _
+ SAL PH F
+ SAL PN^ N
+ SAL PP- _
+ SAL P P
+ SAL Q K
+ SAL RH^ R
+ SAL ROUGH^ RF
+ SAL RR- _
+ SAL R R
+ SAL SCH(EOU)- SK
+ SAL SC(IEY)- S
+ SAL SH X
+ SAL SI(AO)- X
+ SAL SS- _
+ SAL S S
+ SAL TI(AO)- X
+ SAL TH @
+ SAL TCH-- _
+ SAL TOUGH^ TF
+ SAL TT- _
+ SAL T T
+ SAL UH(AEIOUY)-^ *H
+ SAL UR(AEIOUY)-^ *R
+ SAL U(HR)^ *
+ SAL U^ *
+ SAL UH(AEIOUY)- H
+ SAL UR(AEIOUY)- R
+ SAL U(HR) _
+ SAL V^ W
+ SAL V F
+ SAL WR^ R
+ SAL WH^ W
+ SAL W(AEIOU)- W
+ SAL X^ S
+ SAL X KS
+ SAL Y(AEIOU)- Y
+ SAL ZZ- _
+ SAL Z S
+
+ # When soundfolding "th" is turned into "@". When this is mistyped as "ht" it
+ # soundfolds to "ht". This difference is too big, thus use REP items to lower
+ # the score.
+ REPSAL 2
+ REPSAL ht @
+ REPSAL @ ht
+
# ordinal numbers
***************
*** 16,18 ****
COMPOUNDRULE n*mp
! WORDCHARS 0123456789
--- 155,157 ----
COMPOUNDRULE n*mp
! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
! LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
! UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
!
! MIDWORD '
!
! RARE ?
! BAD %
!
! MAP 9
! MAP aàáâãäå
! MAP eèéêë
! MAP iìíîï
! MAP oòóôõö
! MAP uùúûü
! MAP nñ
! MAP cç
! MAP yÿý
! MAP sß
!
! # This comes from Aspell en_phonet.dat, version 1.1, 2000-01-07
!
! SAL AH(AEIOUY)-^ *H
! SAL AR(AEIOUY)-^ *R
! SAL A(HR)^ *
! SAL A^ *
! SAL AH(AEIOUY)- H
! SAL AR(AEIOUY)- R
! SAL A(HR) _
! SAL À^ *
! SAL Å^ *
! SAL BB- _
! SAL B B
! SAL CQ- _
! SAL CIA X
! SAL CH X
! SAL C(EIY)- S
! SAL CK K
! SAL COUGH^ KF
! SAL CC< C
! SAL C K
! SAL DG(EIY) K
! SAL DD- _
! SAL D T
! SAL É< E
! SAL EH(AEIOUY)-^ *H
! SAL ER(AEIOUY)-^ *R
! SAL E(HR)^ *
! SAL ENOUGH^$ *NF
! SAL E^ *
! SAL EH(AEIOUY)- H
! SAL ER(AEIOUY)- R
! SAL E(HR) _
! SAL FF- _
! SAL F F
! SAL GN^ N
! SAL GN$ N
! SAL GNS$ NS
! SAL GNED$ N
! SAL GH(AEIOUY)- K
! SAL GH _
! SAL GG9 K
! SAL G K
! SAL H H
! SAL IH(AEIOUY)-^ *H
! SAL IR(AEIOUY)-^ *R
! SAL I(HR)^ *
! SAL I^ *
! SAL ING6 N
! SAL IH(AEIOUY)- H
! SAL IR(AEIOUY)- R
! SAL I(HR) _
! SAL J K
! SAL KN^ N
! SAL KK- _
! SAL K K
! SAL LAUGH^ LF
! SAL LL- _
! SAL L L
! SAL MB$ M
! SAL MM M
! SAL M M
! SAL NN- _
! SAL N N
! SAL OH(AEIOUY)-^ *H
! SAL OR(AEIOUY)-^ *R
! SAL O(HR)^ *
! SAL O^ *
! SAL OH(AEIOUY)- H
! SAL OR(AEIOUY)- R
! SAL O(HR) _
! SAL PH F
! SAL PN^ N
! SAL PP- _
! SAL P P
! SAL Q K
! SAL RH^ R
! SAL ROUGH^ RF
! SAL RR- _
! SAL R R
! SAL SCH(EOU)- SK
! SAL SC(IEY)- S
! SAL SH X
! SAL SI(AO)- X
! SAL SS- _
! SAL S S
! SAL TI(AO)- X
! SAL TH @
! SAL TCH-- _
! SAL TOUGH^ TF
! SAL TT- _
! SAL T T
! SAL UH(AEIOUY)-^ *H
! SAL UR(AEIOUY)-^ *R
! SAL U(HR)^ *
! SAL U^ *
! SAL UH(AEIOUY)- H
! SAL UR(AEIOUY)- R
! SAL U(HR) _
! SAL V^ W
! SAL V F
! SAL WR^ R
! SAL WH^ W
! SAL W(AEIOU)- W
! SAL X^ S
! SAL X KS
! SAL Y(AEIOU)- Y
! SAL ZZ- _
! SAL Z S
!
! # When soundfolding "th" is turned into "@". When this is mistyped as "ht" it
! # soundfolds to "ht". This difference is too big, thus use REP items to lower
! # the score.
! REPSAL 2
! REPSAL ht @
! REPSAL @ ht
!
! # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
! # suggestions is extremely slow.
! ## ordinal numbers
! #COMPOUNDMIN 1
! ## only in compounds: 1th, 2th, 3th
! #ONLYINCOMPOUND c
! ## compound rules:
! ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
! ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
! #COMPOUNDRULE 2
! #COMPOUNDRULE n*1t
! #COMPOUNDRULE n*mp
! #NOCOMPOUNDSUGS
!
! # WORDCHARS 0123456789
*** en_CA.orig.dic 2015-12-30 18:20:47.803358258 +0100
--- en_CA.dic 2015-12-30 18:59:26.490267196 +0100
--- en_CA.dic 2016-01-08 23:03:52.562085247 +0100
***************
*** 1,25 ****
48929
! 0/nm
! 0th/pt
! 1/n1
! 1st/p
! 1th/tc
! 2/nm
! 2nd/p
! 2th/tc
! 3/nm
! 3rd/p
! 3th/tc
! 4/nm
! 4th/pt
! 5/nm
! 5th/pt
! 6/nm
! 6th/pt
! 7/nm
! 7th/pt
! 8/nm
! 8th/pt
! 9/nm
! 9th/pt
A/SM
--- 1,12 ----
48929
! 0th
! 1st
! 2nd
! 3rd
! 4th
! 5th
! 6th
! 7th
! 8th
! 9th
A/SM
***************
*** 48930 ****
--- 48930,48940 ----
--- 48917,48927 ----
zymurgy/M
+ a a/%
+ a an/%
+42 -6
View File
@@ -1,5 +1,5 @@
*** en_GB.orig.aff 2015-12-30 18:49:37.568638905 +0100
--- en_GB.aff 2015-12-30 18:59:04.186508433 +0100
--- en_GB.aff 2016-01-09 13:15:56.490432894 +0100
***************
*** 20,21 ****
--- 20,158 ----
@@ -142,29 +142,65 @@
+ REPSAL @ ht
+
REP 27
***************
*** 49,50 ****
--- 186,203 ----
+ # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
+ # suggestions is extremely slow.
+ ## ordinal numbers
+ #COMPOUNDMIN 1
+ ## only in compounds: 1th, 2th, 3th
+ #ONLYINCOMPOUND ,
+ ## compound rules:
+ ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
+ ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
+ #COMPOUNDRULE 2
+ #COMPOUNDRULE (*:)
+ #COMPOUNDRULE (*{}
+ #NOCOMPOUNDSUGS
+
+ # WORDCHARS 0123456789
+
PFX A Y 2
*** en_GB.orig.dic 2015-12-30 18:49:42.360587040 +0100
--- en_GB.dic 2015-12-30 19:03:23.035708178 +0100
--- en_GB.dic 2016-01-08 23:03:35.510272903 +0100
***************
*** 1,2 ****
--- 1,12 ----
56453
+ 0th
+ 1st
+ 2nd
+ 3rd
+ 4th
+ 5th
+ 6th
+ 7th
+ 8th
+ 9th
'gainst
***************
*** 3615,3617 ****
autosuggestion
- autosuggestion
autotest/S
--- 3615,3616 ----
--- 3625,3626 ----
***************
*** 9325,9327 ****
Church
- church
Church-of-England
--- 9324,9325 ----
--- 9334,9335 ----
***************
*** 22885,22887 ****
hand-painted
- hand-pick/D
hand-pick/GSD
--- 22883,22884 ----
--- 22893,22894 ----
***************
*** 56454 ****
--- 56451,56461 ----
--- 56461,56471 ----
émigré/S
+ a a/%
+ a an/%
+87 -53
View File
@@ -1,5 +1,5 @@
*** en_NZ.orig.aff 2010-05-15 13:03:47.000000000 +0200
--- en_NZ.aff 2015-12-30 19:08:13.884560313 +0100
--- en_NZ.aff 2016-01-09 13:16:01.734376292 +0100
***************
*** 7,9 ****
SET ISO8859-1
@@ -148,7 +148,8 @@
!
REP 66
***************
*** 76,95 ****
*** 75,95 ****
REP ura aru
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -169,7 +170,25 @@
PFX E Y 1
! PFX E 0 dis .
PFX F Y 5
--- 214,233 ----
--- 213,250 ----
REP ura aru
+
+ # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
+ # suggestions is extremely slow.
+ ## ordinal numbers
+ #COMPOUNDMIN 1
+ ## only in compounds: 1th, 2th, 3th
+ #ONLYINCOMPOUND ,
+ ## compound rules:
+ ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
+ ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
+ #COMPOUNDRULE 2
+ #COMPOUNDRULE (*:)
+ #COMPOUNDRULE (*{}
+ #NOCOMPOUNDSUGS
+
+ # WORDCHARS 0123456789
+
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -587,7 +606,7 @@
SFX T y iest [^aeiou]y
! SFX T 0 er [aeiou]y
SFX T 0 est [aeiou]y
--- 237,631 ----
--- 254,648 ----
PFX F 0 col l
! PFX F 0 con [^abehilmopru].
PFX K Y 1
@@ -1672,7 +1691,7 @@
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
\ No newline at end of file
--- 638,1323 ----
--- 655,1340 ----
SFX R Y 72
! SFX R 0 r e
! SFX R 0 rs e
@@ -2360,29 +2379,44 @@
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
*** en_NZ.orig.dic 2010-05-15 13:03:48.000000000 +0200
--- en_NZ.dic 2015-12-30 19:08:04.928657238 +0100
--- en_NZ.dic 2016-01-08 23:04:05.825939282 +0100
***************
*** 1,2 ****
--- 1,12 ----
47141
+ 0th
+ 1st
+ 2nd
+ 3rd
+ 4th
+ 5th
+ 6th
+ 7th
+ 8th
+ 9th
3GPP
***************
*** 4,6 ****
2ZB
- A
a/o
--- 4,5 ----
--- 14,15 ----
***************
*** 927,929 ****
Al-Zawahiri
- al/FAC
Al/M
--- 926,927 ----
--- 936,937 ----
***************
*** 2941,2944 ****
B.Sc.
- bless
- bible
baa/GSD
--- 2939,2940 ----
--- 2949,2950 ----
***************
*** 4974,4975 ****
--- 4970,4972 ----
--- 4980,4982 ----
Brampton/M
+ Bram/M
bran/SDGM
@@ -2391,7 +2425,7 @@
C.Lit.
! cation/SM
Ca/y
--- 5704,5706 ----
--- 5714,5716 ----
C.Lit.
! cation/MWS
Ca/y
@@ -2400,10 +2434,10 @@
Cathy
- cation/MW
catkin/SM
--- 6447,6448 ----
--- 6457,6458 ----
***************
*** 8589,8590 ****
--- 8585,8587 ----
--- 8595,8597 ----
coniferous
+ conj.
conjectural
@@ -2412,16 +2446,16 @@
red's
- dally
dab/TSGD
--- 10150,10151 ----
--- 10160,10161 ----
***************
*** 10360,10361 ****
--- 10356,10358 ----
--- 10366,10368 ----
dBm
+ dBd
DBMS
***************
*** 12535,12536 ****
--- 12532,12534 ----
--- 12542,12544 ----
Dutchwomen/M
+ Farsi
duteous/Y
@@ -2430,13 +2464,13 @@
duvet/SM
- duxes
DVD/MS
--- 12540,12541 ----
--- 12550,12551 ----
***************
*** 13901,13903 ****
estuary/MS
! et
ETA
--- 13898,13901 ----
--- 13908,13911 ----
estuary/MS
! et cetera
! et al.
@@ -2447,13 +2481,13 @@
- fable
- fist/MS
fa/M
--- 14529,14530 ----
--- 14539,14540 ----
***************
*** 15323,15325 ****
fissure/DSMG
! fist/6GD
fistfight/MS
--- 15319,15321 ----
--- 15329,15331 ----
fissure/DSMG
! fist/6GDMS
fistfight/MS
@@ -2462,44 +2496,44 @@
g's
- gable
gist/MS
--- 16602,16603 ----
--- 16612,16613 ----
***************
*** 16797,16799 ****
Garvey
- Gary/M
gas-permeable
--- 16792,16793 ----
--- 16802,16803 ----
***************
*** 18177,18179 ****
gyroscope/SWM
- dish
ha
--- 18171,18172 ----
--- 18181,18182 ----
***************
*** 22321,22323 ****
K-factor
- disk/MS
kabob's
--- 22314,22315 ----
--- 22324,22325 ----
***************
*** 23129,23132 ****
lassoer/M
- last-ditch
- last-minute
last/YSDGkJ
--- 23121,23122 ----
--- 23131,23132 ----
***************
*** 26396,26398 ****
Missy
! mist/CDRGS
mistakable/U
--- 26386,26388 ----
--- 26396,26398 ----
Missy
! mist/CDRGSM
mistakable/U
***************
*** 26745,26746 ****
--- 26735,26737 ----
--- 26745,26747 ----
Moog
+ Moolenaar/M
moon/MGpDS
@@ -2508,7 +2542,7 @@
mozzarella/SM
- MP3
mpg
--- 27009,27010 ----
--- 27019,27020 ----
***************
*** 27365,27372 ****
N'Djamena
@@ -2519,7 +2553,7 @@
- national
- nationally
Na/M
--- 27355,27359 ----
--- 27365,27369 ----
N'Djamena
! native/SP
natively
@@ -2530,7 +2564,7 @@
Nathaniel/M
! nation/M
national/sQ3Sq
--- 27494,27496 ----
--- 27504,27506 ----
Nathaniel/M
! nation/MS
national/sQ3Sq
@@ -2539,7 +2573,7 @@
nationwide
- native/SP
nativity/SM
--- 27508,27509 ----
--- 27518,27519 ----
***************
*** 29852,29857 ****
P.O.
@@ -2548,16 +2582,16 @@
- imply
- comply
pa/oM
--- 29838,29839 ----
--- 29848,29849 ----
***************
*** 31702,31703 ****
--- 31684,31686 ----
--- 31694,31696 ----
pneumonia/MS
+ pneumonic
PO
***************
*** 31885,31886 ****
--- 31868,31870 ----
--- 31878,31880 ----
pompom/SM
+ pompon/M
pomposity/SM
@@ -2566,30 +2600,30 @@
qwertys
- r/d
Ra
--- 33545,33546 ----
--- 33555,33556 ----
***************
*** 35456,35458 ****
rt
- rte
Ru/M
--- 35439,35440 ----
--- 35449,35450 ----
***************
*** 35619,35622 ****
singly
- sable
- sally/DSG
SA
--- 35601,35602 ----
--- 35611,35612 ----
***************
*** 40763,40766 ****
T's
- mist/MS
- overt
Ta
--- 40743,40744 ----
--- 40753,40754 ----
***************
*** 43574,43575 ****
--- 43552,43554 ----
--- 43562,43564 ----
unsearchable
+ searchable
unseeing/Y
@@ -2598,7 +2632,7 @@
Vilnius/M
! vim/M
vinaigrette/MS
--- 44313,44316 ----
--- 44323,44326 ----
Vilnius/M
! Vim/M
! vim/?
@@ -2608,79 +2642,79 @@
y'all
- prey/M
yacht/M5SmGD
--- 45886,45887 ----
--- 45896,45897 ----
***************
*** 46152,46154 ****
zymurgy/S
- à
font/SM
--- 46131,46132 ----
--- 46141,46142 ----
***************
*** 46198,46200 ****
rata/M
- kaka/M
waka/M
--- 46176,46177 ----
--- 46186,46187 ----
***************
*** 46216,46218 ****
jandal/MS
- Swanndri/M
hoon/MS
--- 46193,46194 ----
--- 46203,46204 ----
***************
*** 46242,46244 ****
Invercargill/M
- Te
Alexandra/M
--- 46218,46219 ----
--- 46228,46229 ----
***************
*** 46261,46263 ****
Kawerau/M
- Kerikeri/M
Lyttelton/M
--- 46236,46237 ----
--- 46246,46247 ----
***************
*** 46491,46493 ****
Waianakarua
- Hakatere
Swin
--- 46465,46466 ----
--- 46475,46476 ----
***************
*** 46690,46692 ****
Omarama/M
- Wairarapa/M
Kilda/M
--- 46663,46664 ----
--- 46673,46674 ----
***************
*** 46711,46713 ****
Wellsford/M
- Akaroa/M
Avonhead/M
--- 46683,46684 ----
--- 46693,46694 ----
***************
*** 46838,46840 ****
Ballantyne's
- DB
Monteith's
--- 46809,46810 ----
--- 46819,46820 ----
***************
*** 46920,46922 ****
Egmont/M
- Waitaki/M
katipo/M
--- 46890,46891 ----
--- 46900,46901 ----
***************
*** 46956,46958 ****
Sunnyside/M
- Wairau/M
Waikoropupu
--- 46925,46926 ----
--- 46935,46936 ----
***************
*** 47141,47142 ****
Burkina
! Faso/M
\ No newline at end of file
--- 47109,47124 ----
--- 47119,47134 ----
Burkina
! Faso/M
! nd
+77 -11
View File
@@ -1,12 +1,28 @@
*** en_US.orig.aff 2015-12-30 18:55:30.352821552 +0100
--- en_US.aff 2015-12-30 19:01:19.849041178 +0100
--- en_US.aff 2016-01-09 13:16:31.514054846 +0100
***************
*** 2,5 ****
*** 1,18 ****
SET UTF8
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
! ICONV 1
! ICONV '
NOSUGGEST !
--- 2,144 ----
! # ordinal numbers
! COMPOUNDMIN 1
! # only in compounds: 1th, 2th, 3th
! ONLYINCOMPOUND c
! # compound rules:
! # 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
! # 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
! COMPOUNDRULE 2
! COMPOUNDRULE n*1t
! COMPOUNDRULE n*mp
! WORDCHARS 0123456789
--- 1,164 ----
+ # Affix file for US English MySpell dictionary
SET UTF8
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
!
! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
@@ -150,20 +166,70 @@
! # ICONV '
!
NOSUGGEST !
***************
*** 16,18 ****
COMPOUNDRULE n*mp
! WORDCHARS 0123456789
--- 155,157 ----
COMPOUNDRULE n*mp
! # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
! # suggestions is extremely slow.
! # This is disabled, because without NOCOMPOUNDSUGS support giving suggestions
! # is extremely slow.
! ## ordinal numbers
! #COMPOUNDMIN 1
! ## only in compounds: 1th, 2th, 3th
! #ONLYINCOMPOUND c
! ## compound rules:
! ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
! ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
! #COMPOUNDRULE 2
! #COMPOUNDRULE n*1t
! #COMPOUNDRULE n*mp
! #NOCOMPOUNDSUGS
!
! # WORDCHARS 0123456789
*** en_US.orig.dic 2015-12-30 18:55:58.928512408 +0100
--- en_US.dic 2015-12-30 18:58:56.026596695 +0100
--- en_US.dic 2016-01-08 23:04:15.241835664 +0100
***************
*** 1,25 ****
48756
! 0/nm
! 0th/pt
! 1/n1
! 1st/p
! 1th/tc
! 2/nm
! 2nd/p
! 2th/tc
! 3/nm
! 3rd/p
! 3th/tc
! 4/nm
! 4th/pt
! 5/nm
! 5th/pt
! 6/nm
! 6th/pt
! 7/nm
! 7th/pt
! 8/nm
! 8th/pt
! 9/nm
! 9th/pt
A/SM
--- 1,12 ----
48756
! 0th
! 1st
! 2nd
! 3rd
! 4th
! 5th
! 6th
! 7th
! 8th
! 9th
A/SM
***************
*** 48757 ****
--- 48757,48767 ----
--- 48744,48754 ----
zymurgy/M
+ a a/%
+ a an/%
+4 -2
View File
@@ -50,10 +50,12 @@ $SPELLDIR/en.ascii.spl : $FILES
# Fetching the files from OpenOffice.org.
# THIS URL NO LONGER WORKS.
#
# Files for en_US, en_CA and en_GB obtaind from
# Files for en_US, en_CA and en_GB can be obtained from:
# github.com/marcoagpinto/aoo-mozilla-en-dict
# Unfortunately, giving suggestions becomes terribly slow with these.
# TODO: find out why suggestions are slow and fix that.
#
# NOTE: en_AU and en_NZ use older libraries.
# For now we use the older libraries.
#
OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
:attr {fetch = $OODIR/%file%} en_US.zip en_CA.zip en_NZ.zip
+100 -35
View File
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: APT config file
" Maintainer: Yann Amar <quidame@poivron.org>
" Last Change: 2013 Apr 12
" Last Change: 2015 Dec 22
" For version 5.x: Clear all syntax items
" For version 6.x and 7.x: Quit when a syntax file was already loaded
@@ -38,22 +38,22 @@ setlocal iskeyword+=/,-,.,_,+
" Incomplete keywords will be treated differently than completely bad strings:
syn keyword aptconfGroupIncomplete
\ a[cquire] a[ptitude] d[ebtags] d[ebug] d[ir] d[pkg] d[select]
\ o[rderlist] p[ackagemanager] p[kgcachegen] q[uiet] r[pm]
\ u[nattended-upgrade]
\ a[cquire] a[dequate] a[ptitude] a[ptlistbugs] d[ebtags] d[ebug]
\ d[ir] d[pkg] d[select] o[rderlist] p[ackagemanager] p[kgcachegen]
\ q[uiet] r[pm] s[ynaptic] u[nattended-upgrade] w[hatmaps]
" Only the following keywords can be used at toplevel (to begin an option):
syn keyword aptconfGroup
\ acquire apt aptitude debtags debug dir dpkg dselect
\ orderlist packagemanager pkgcachegen quiet rpm
\ unattended-upgrade
\ acquire adequate apt aptitude aptlistbugs debtags debug
\ dir dpkg dselect orderlist packagemanager pkgcachegen
\ quiet rpm synaptic unattended-upgrade whatmaps
" Possible options for each group:
" Acquire: {{{
syn keyword aptconfAcquire contained
\ cdrom Check-Valid-Until CompressionTypes ForceHash ftp gpgv
\ GzipIndexes http https Languages Max-ValidTime Min-ValidTime PDiffs
\ Queue-Mode Retries Source-Symlinks
\ cdrom Check-Valid-Until CompressionTypes ForceHash ForceIPv4
\ ForceIPv6 ftp gpgv GzipIndexes http https Languages Max-ValidTime
\ Min-ValidTime PDiffs Queue-Mode Retries Source-Symlinks
syn keyword aptconfAcquireCDROM contained
\ AutoDetect CdromOnly Mount UMount
@@ -62,14 +62,15 @@ syn keyword aptconfAcquireCompressionTypes contained
\ bz2 lzma gz Order
syn keyword aptconfAcquireFTP contained
\ Passive Proxy ProxyLogin Timeout
\ ForceExtended Passive Proxy ProxyLogin Timeout
syn keyword aptconfAcquireHTTP contained
\ AllowRedirect Dl-Limit Max-Age No-Cache No-Store Pipeline-Depth
\ Proxy Timeout User-Agent
\ Proxy ProxyAutoDetect Proxy-Auto-Detect Timeout User-Agent
syn keyword aptconfAcquireHTTPS contained
\ CaInfo CaPath CrlFile IssuerCert SslCert SslForceVersion SslKey
\ AllowRedirect CaInfo CaPath CrlFile Dl-Limit IssuerCert Max-Age
\ No-Cache No-Store Proxy SslCert SslForceVersion SslKey Timeout
\ Verify-Host Verify-Peer
syn keyword aptconfAcquireMaxValidTime contained
@@ -83,14 +84,21 @@ syn cluster aptconfAcquire_ contains=aptconfAcquire,
\ aptconfAcquireHTTP,aptconfAcquireHTTPS,aptconfAcquireMaxValidTime,
\ aptconfAcquirePDiffs
" }}}
" Adequate: {{{
syn keyword aptconfAdequate contained
\ Enabled
syn cluster aptconfAdequate_ contains=aptconfAdequate
" }}}
" Apt: {{{
syn keyword aptconfApt contained
\ Architecture Architectures Archive Authentication AutoRemove
\ Build-Essential Cache Cache-Grow Cache-Limit Cache-Start CDROM
\ Changelogs Clean-Installed Compressor Default-Release
\ Force-LoopBreak Get Ignore-Hold Immediate-Configure
\ Build-Essential Build-Profiles Cache Cache-Grow Cache-Limit
\ Cache-Start CDROM Changelogs Clean-Installed Compressor
\ Default-Release Force-LoopBreak Get Ignore-Hold Immediate-Configure
\ Install-Recommends Install-Suggests Keep-Fds List-Cleanup
\ NeverAutoRemove Never-MarkAuto-Sections Periodic Status-Fd Update
\ Move-Autobit-Sections NeverAutoRemove Never-MarkAuto-Sections
\ Periodic Status-Fd Update VersionedKernelPackages
syn keyword aptconfAptAuthentication contained
\ TrustCDROM
@@ -124,11 +132,12 @@ syn keyword aptconfAptGet contained
syn keyword aptconfAptPeriodic contained
\ AutocleanInterval BackupArchiveInterval BackupLevel
\ Download-Upgradeable-Packages MaxAge MaxSize MinAge
\ Unattended-Upgrade Update-Package-Lists Verbose
\ Download-Upgradeable-Packages Download-Upgradeable-Packages-Debdelta
\ Enable MaxAge MaxSize MinAge Unattended-Upgrade Update-Package-Lists
\ Verbose
syn keyword aptconfAptUpdate contained
\ Pre-Invoke Post-Invoke Post-Invoke-Success
\ List-Refresh Pre-Invoke Post-Invoke Post-Invoke-Success
syn cluster aptconfApt_ contains=aptconfApt,
\ aptconfAptAuthentication,aptconfAptAutoRemove,aptconfAptCache,
@@ -240,6 +249,12 @@ syn cluster aptconfAptitude_ contains=aptconfAptitude,
\ aptconfAptitudeUIKeyBindings,aptconfAptitudeUIStyles,
\ aptconfAptitudeUIStylesElements
" }}}
" AptListbugs: {{{
syn keyword aptconfAptListbugs contained
\ IgnoreRegexp Severities
syn cluster aptconfAptListbugs_ contains=aptconfAptListbugs
" }}}
" DebTags: {{{
syn keyword aptconfDebTags contained
\ Vocabulary
@@ -251,7 +266,8 @@ syn keyword aptconfDebug contained
\ Acquire aptcdrom BuildDeps Hashes IdentCdrom Nolocking
\ pkgAcquire pkgAutoRemove pkgCacheGen pkgDepCache pkgDPkgPM
\ pkgDPkgProgressReporting pkgInitialize pkgOrderList
\ pkgPackageManager pkgPolicy pkgProblemResolver sourceList
\ pkgPackageManager pkgPolicy pkgProblemResolver RunScripts
\ sourceList
syn keyword aptconfDebugAcquire contained
\ cdrom Ftp gpgv Http Https netrc
@@ -295,7 +311,7 @@ syn keyword aptconfDirMedia contained
\ MountPath
syn keyword aptconfDirState contained
\ cdroms extended_states Lists mirrors status
\ cdroms extended_states Lists mirrors preferences status
syn cluster aptconfDir_ contains=aptconfDir,
\ aptconfDirAptitude,aptconfDirBin,aptconfDirCache,aptconfDirEtc,
@@ -303,15 +319,16 @@ syn cluster aptconfDir_ contains=aptconfDir,
" }}}
" DPkg: {{{
syn keyword aptconfDPkg contained
\ Build-Options Chroot-Directory ConfigurePending FlushSTDIN MaxArgs
\ MaxBytes NoTriggers options Pre-Install-Pkgs Pre-Invoke Post-Invoke
\ Build-Options Chroot-Directory ConfigurePending FlushSTDIN
\ MaxArgBytes MaxArgs MaxBytes NoTriggers options
\ Pre-Install-Pkgs Pre-Invoke Post-Invoke
\ Run-Directory StopOnError Tools TriggersPending
syn keyword aptconfDPkgTools contained
\ Options Version
\ adequate InfoFD Options Version
syn cluster aptconfDPkg_ contains=aptconfDPkg,
\ aptconfDPkgOrderList,aptconfDPkgOrderListScore,aptconfDPkgTools
\ aptconfDPkgTools
" }}}
" DSelect: {{{
syn keyword aptconfDSelect contained
@@ -353,23 +370,59 @@ syn keyword aptconfRpm contained
syn cluster aptconfRpm_ contains=aptconfRpm
" }}}
" Unattened Upgrade: {{{
" Synaptic: {{{
syn keyword aptconfSynaptic contained
\ AskQuitOnProceed AskRelated AutoCleanCache CleanCache DefaultDistro
\ delAction delHistory Download-Only ftpProxy ftpProxyPort httpProxy
\ httpProxyPort Install-Recommends LastSearchType Maximized noProxy
\ OneClickOnStatusActions ShowAllPkgInfoInMain showWelcomeDialog
\ ToolbarState undoStackSize update upgradeType useProxy UseStatusColors
\ UseTerminal useUserFont useUserTerminalFont ViewMode
\ availVerColumnPos availVerColumnVisible componentColumnPos
\ componentColumnVisible descrColumnPos descrColumnVisible
\ downloadSizeColumnPos downloadSizeColumnVisible hpanedPos
\ instVerColumnPos instVerColumnVisible instSizeColumnPos
\ instSizeColumnVisible nameColumnPos nameColumnVisible
\ sectionColumnPos sectionColumnVisible statusColumnPos
\ statusColumnVisible supportedColumnPos supportedColumnVisible
\ vpanedPos windowWidth windowHeight windowX windowY closeZvt
\ color-available color-available-locked color-broken color-downgrade
\ color-install color-installed-locked color-installed-outdated
\ color-installed-updated color-new color-purge color-reinstall
\ color-remove color-upgrade
syn keyword aptconfSynapticUpdate contained
\ last type
syn cluster aptconfSynaptic_ contains=aptconfSynaptic,
\ aptconfSynapticUpdate
" }}}
" Unattended Upgrade: {{{
syn keyword aptconfUnattendedUpgrade contained
\ AutoFixInterruptedDpkg Automatic-Reboot InstallOnShutdown Mail
\ MailOnlyOnError MinimalSteps Origins-Pattern Package-Blacklist
\ AutoFixInterruptedDpkg Automatic-Reboot Automatic-Reboot-Time
\ Automatic-Reboot-WithUsers InstallOnShutdown Mail MailOnlyOnError
\ MinimalSteps Origins-Pattern Package-Blacklist
\ Remove-Unused-Dependencies
syn cluster aptconfUnattendedUpgrade_ contains=aptconfUnattendedUpgrade
" }}}
" Whatmaps: {{{
syn keyword aptconfWhatmaps contained
\ Enable-Restart Security-Update-Origins
syn cluster aptconfWhatmaps_ contains=aptconfWhatmaps
" }}}
syn case match
" Now put all the keywords (and 'valid' options) in a single cluster:
syn cluster aptconfOptions contains=aptconfRegexpOpt,
\ @aptconfAcquire_,@aptconfApt_,@aptconfAptitude_,@aptconfDebTags_,
\ @aptconfDebug_,@aptconfDir_,@aptconfDPkg_,@aptconfDSelect_,
\ @aptconfOrderList_,@aptconfPackageManager_,@aptconfPkgCacheGen_,
\ @aptconfQuiet_,@aptconfRpm_,@aptconfUnattendedUpgrade_
\ @aptconfAcquire_,@aptconfAdequate_,@aptconfApt_,@aptconfAptitude_,
\ @aptconfAptListbugs_,@aptconfDebTags_,@aptconfDebug_,@aptconfDir_,
\ @aptconfDPkg_,@aptconfDSelect_,@aptconfOrderList_,
\ @aptconfPackageManager_,@aptconfPkgCacheGen_,@aptconfQuiet_,
\ @aptconfRpm_,@aptconfSynaptic_,@aptconfUnattendedUpgrade_,
\ @aptconfWhatmaps_
" Syntax:
syn match aptconfSemiColon ';'
@@ -382,8 +435,11 @@ syn region aptconfInclude matchgroup=aptconfOperator start='::' end='::\|\s'me=
" Basic Syntax Errors: XXX avoid to generate false positives !!!
"
" * Invalid comment format (seems to not cause errors, but...):
syn match aptconfAsError display '^#.*'
" * Undocumented inline comment. Since it is currently largely used, and does
" not seem to cause trouble ('apt-config dump' never complains when # is used
" the same way than //) it has been moved to aptconfComment group. But it
" still needs to be defined here (i.e. before #clear and #include directives)
syn match aptconfComment '#.*' contains=@aptconfCommentSpecial
"
" * When a semicolon is missing after a double-quoted string:
" There are some cases (for example in the Dir group of options, but not only)
@@ -445,6 +501,8 @@ hi def link aptconfAcquireHTTPS aptconfOption
hi def link aptconfAcquireMaxValidTime aptconfOption
hi def link aptconfAcquirePDiffs aptconfOption
hi def link aptconfAdequate aptconfOption
hi def link aptconfApt aptconfOption
hi def link aptconfAptAuthentication aptconfOption
hi def link aptconfAptAutoRemove aptconfOption
@@ -471,6 +529,8 @@ hi def link aptconfAptitudeUIKeyBindings aptconfOption
hi def link aptconfAptitudeUIStyles aptconfOption
hi def link aptconfAptitudeUIStylesElements aptconfOption
hi def link aptconfAptListbugs aptconfOption
hi def link aptconfDebTags aptconfOption
hi def link aptconfDebug aptconfOption
@@ -504,8 +564,13 @@ hi def link aptconfQuiet aptconfOption
hi def link aptconfRpm aptconfOption
hi def link aptconfSynaptic aptconfOption
hi def link aptconfSynapticUpdate aptconfOption
hi def link aptconfUnattendedUpgrade aptconfOption
hi def link aptconfWhatmaps aptconfOption
let b:current_syntax = "aptconf"
let &cpo = s:cpo_save
+3 -3
View File
@@ -2,7 +2,7 @@
" Language: reStructuredText documentation format
" Maintainer: Marshall Ward <marshall.ward@gmail.com>
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2015-09-07
" Latest Revision: 2016-01-05
if exists("b:current_syntax")
finish
@@ -13,8 +13,6 @@ set cpo&vim
syn case ignore
syn match rstSections "^\%(\([=`:.'"~^_*+#-]\)\1\+\n\)\=.\+\n\([=`:.'"~^_*+#-]\)\2\+$"
syn match rstTransition /^[=`:.'"~^_*+#-]\{4,}\s*$/
syn cluster rstCruft contains=rstEmphasis,rstStrongEmphasis,
@@ -123,6 +121,8 @@ call s:DefineInlineMarkup('InlineLiteral', '``', "", '``')
call s:DefineInlineMarkup('SubstitutionReference', '|', '|', '|_\{0,2}')
call s:DefineInlineMarkup('InlineInternalTargets', '_`', '`', '`')
syn match rstSections "^\%(\([=`:.'"~^_*+#-]\)\1\+\n\)\=.\+\n\([=`:.'"~^_*+#-]\)\2\+$"
" TODO: Cant remember why these two cant be defined like the ones above.
execute 'syn match rstFootnoteReference contains=@NoSpell' .
\ ' +\[\%(\d\+\|#\%(' . s:ReferenceName . '\)\=\|\*\)\]_+'
+9 -3
View File
@@ -2,8 +2,8 @@
" Language: shell (sh) Korn shell (ksh) bash (sh)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
" Last Change: Nov 09, 2015
" Version: 142
" Last Change: Dec 11, 2015
" Version: 143
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH
" For options and settings, please use: :help ft-sh-syntax
" This file includes many ideas from Eric Brunet (eric.brunet@ens.fr)
@@ -119,7 +119,7 @@ syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSu
syn cluster shCommandSubList contains=shAlias,shArithmetic,shComment,shCmdParenRegion,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shEcho,shEscape,shExDoubleQuote,shExpr,shExSingleQuote,shNumber,shOperator,shOption,shPosnParm,shSingleQuote,shSpecial,shStatement,shSubSh,shTest,shVariable
syn cluster shCurlyList contains=shNumber,shComma,shDeref,shDerefSimple,shDerefSpecial
syn cluster shDblQuoteList contains=shCommandSub,shDeref,shDerefSimple,shEscape,shPosnParm,shCtrlSeq,shSpecial
syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPPS
syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPSR,shDerefPPS
syn cluster shDerefVarList contains=shDerefOp,shDerefVarArray,shDerefOpError
syn cluster shEchoList contains=shArithmetic,shCommandSub,shDeref,shDerefSimple,shEscape,shExpr,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shCtrlSeq,shEchoQuote
syn cluster shExprList1 contains=shCharClass,shNumber,shOperator,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shDblBrace,shDeref,shDerefSimple,shCtrlSeq
@@ -493,6 +493,11 @@ if exists("b:is_bash")
syn match shDerefPPS contained '/\{1,2}' nextgroup=shDerefPPSleft
syn region shDerefPPSleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPPSright contains=@shCommandSubList
syn region shDerefPPSright contained start='.' skip=@\%(\\\\\)\+@ end='\ze}' contains=@shCommandSubList
" bash : ${parameter/#substring/replacement}
syn match shDerefPSR contained '/#' nextgroup=shDerefPSRleft
syn region shDerefPSRleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPSRright
syn region shDerefPSRright contained start='.' skip=@\%(\\\\\)\+@ end='\ze}'
endif
" Arithmetic Parenthesized Expressions: {{{1
@@ -563,6 +568,7 @@ hi def link shColon shComment
hi def link shDerefOp shOperator
hi def link shDerefPOL shDerefOp
hi def link shDerefPPS shDerefOp
hi def link shDerefPSR shDerefOp
hi def link shDeref shShellVariables
hi def link shDerefDelim shOperator
hi def link shDerefSimple shDeref
+13 -5
View File
@@ -2,9 +2,10 @@
" Language: OpenSSH client configuration file (ssh_config)
" Author: David Necas (Yeti)
" Maintainer: Dominik Fischer <d dot f dot fischer at web dot de>
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
" Last Change: 2015 Dec 3
" SSH Version: 7.0
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
" Contributor: Karsten Hopp <karsten@redhat.com>
" Last Change: 2016 Jan 15
" SSH Version: 7.1
"
" Setup
@@ -69,8 +70,8 @@ syn keyword sshconfigSysLogFacility DAEMON USER AUTH AUTHPRIV LOCAL0 LOCAL1
syn keyword sshconfigSysLogFacility LOCAL2 LOCAL3 LOCAL4 LOCAL5 LOCAL6 LOCAL7
syn keyword sshconfigAddressFamily inet inet6
syn match sshconfigIPQoS "af1[1234]"
syn match sshconfigIPQoS "af2[23]"
syn match sshconfigIPQoS "af1[123]"
syn match sshconfigIPQoS "af2[123]"
syn match sshconfigIPQoS "af3[123]"
syn match sshconfigIPQoS "af4[123]"
syn match sshconfigIPQoS "cs[0-7]"
@@ -106,6 +107,10 @@ syn keyword sshconfigMatch canonical exec host originalhost user localuser all
syn keyword sshconfigKeyword AddressFamily
syn keyword sshconfigKeyword BatchMode
syn keyword sshconfigKeyword BindAddress
syn keyword sshconfigKeyword CanonicalDomains
syn keyword sshconfigKeyword CanonicalizeFallbackLocal
syn keyword sshconfigKeyword CanonicalizeHostname
syn keyword sshconfigKeyword CanonicalizeMaxDots
syn keyword sshconfigKeyword ChallengeResponseAuthentication
syn keyword sshconfigKeyword CheckHostIP
syn keyword sshconfigKeyword Cipher
@@ -145,6 +150,8 @@ syn keyword sshconfigKeyword HostbasedKeyTypes
syn keyword sshconfigKeyword IPQoS
syn keyword sshconfigKeyword IdentitiesOnly
syn keyword sshconfigKeyword IdentityFile
syn keyword sshconfigKeyword IgnoreUnknown
syn keyword sshconfigKeyword IPQoS
syn keyword sshconfigKeyword KbdInteractiveAuthentication
syn keyword sshconfigKeyword KbdInteractiveDevices
syn keyword sshconfigKeyword KexAlgorithms
@@ -182,6 +189,7 @@ syn keyword sshconfigKeyword UseBlacklistedKeys
syn keyword sshconfigKeyword UsePrivilegedPort
syn keyword sshconfigKeyword User
syn keyword sshconfigKeyword UserKnownHostsFile
syn keyword sshconfigKeyword UseRoaming
syn keyword sshconfigKeyword VerifyHostKeyDNS
syn keyword sshconfigKeyword VisualHostKey
syn keyword sshconfigKeyword XAuthLocation
+7 -4
View File
@@ -4,9 +4,10 @@
" Maintainer: Dominik Fischer <d dot f dot fischer at web dot de>
" Contributor: Thilo Six
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
" Contributor: Karsten Hopp <karsten@redhat.com>
" Originally: 2009-07-09
" Last Change: 2015 Dec 3
" SSH Version: 7.0
" Last Change: 2016 Jan 12
" SSH Version: 7.1
"
" Setup
@@ -65,8 +66,8 @@ syn keyword sshdconfigSysLogFacility LOCAL2 LOCAL3 LOCAL4 LOCAL5 LOCAL6 LOCAL7
syn keyword sshdconfigCompression delayed
syn match sshdconfigIPQoS "af1[1234]"
syn match sshdconfigIPQoS "af2[23]"
syn match sshdconfigIPQoS "af1[123]"
syn match sshdconfigIPQoS "af2[123]"
syn match sshdconfigIPQoS "af3[123]"
syn match sshdconfigIPQoS "af4[123]"
syn match sshdconfigIPQoS "cs[0-7]"
@@ -109,6 +110,7 @@ syn keyword sshdconfigKeyword AllowGroups
syn keyword sshdconfigKeyword AllowStreamLocalForwarding
syn keyword sshdconfigKeyword AllowTcpForwarding
syn keyword sshdconfigKeyword AllowUsers
syn keyword sshdconfigKeyword AuthenticationMethods
syn keyword sshdconfigKeyword AuthorizedKeysFile
syn keyword sshdconfigKeyword AuthorizedKeysCommand
syn keyword sshdconfigKeyword AuthorizedKeysCommandUser
@@ -132,6 +134,7 @@ syn keyword sshdconfigKeyword GSSAPIStrictAcceptorCheck
syn keyword sshdconfigKeyword GatewayPorts
syn keyword sshdconfigKeyword HostCertificate
syn keyword sshdconfigKeyword HostKey
syn keyword sshdconfigKeyword HostKeyAgent
syn keyword sshdconfigKeyword HostKeyAlgorithms
syn keyword sshdconfigKeyword HostbasedAcceptedKeyTypes
syn keyword sshdconfigKeyword HostbasedAuthentication
+21 -21
View File
@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 7.4 script
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: November 30, 2015
" Version: 7.4-38
" Last Change: January 04, 2016
" Version: 7.4-39
" Automatically generated keyword lists: {{{1
" Quit when a syntax file was already loaded {{{2
@@ -18,24 +18,24 @@ syn keyword vimTodo contained COMBAK FIXME TODO XXX
syn cluster vimCommentGroup contains=vimTodo,@Spell
" regular vim commands {{{2
syn keyword vimCommand contained a arga[dd] argl[ocal] ba[ll] bn[ext] breakd[el] bufdo cabc[lear] cb[uffer] cf[ile] changes cl[ist] cn[ext] col[der] conf[irm] cq[uit] cw[indow] delc[ommand] deletl delp diffpu[t] dir doau ea e[dit] endfo[r] ene[w] files fini[sh] foldd[oopen] g h helpt[ags] iabc[lear] intro k l lan lc[d] lefta[bove] lg[etfile] lla[st] lnew[er] lNf[ile] lockv[ar] ls lvimgrepa[dd] mat[ch] mk[exrc] mo n n[ext] nore on[ly] pe popu[p] pro pta[g] ptn[ext] pw[d] py[thon] r red[o] retu[rn] rub[y] rv[iminfo] sba[ll] sbN[ext] scripte[ncoding] setf[iletype] sh[ell] sl sme sno[magic] so[urce] spellr[epall] sre[wind] startg[replace] stopi[nsert] sus[pend] sync tab tabfir[st] tabn[ext] tabs tclf[ile] tl[ast] tn[ext] tr[ewind] u undol[ist] up[date] vert[ical] vi[sual] w windo wp[revious] wundo xmapc[lear] xprop
syn keyword vimCommand contained ab argd ar[gs] bd[elete] bN[ext] breakl[ist] b[uffer] cad[dbuffer] cc cfir[st] chd[ir] clo[se] cN[ext] colo[rscheme] con[tinue] cr[ewind] d delel deletp dep diffs[plit] di[splay] dp earlier el[se] endfun ex filet fir[st] foldo[pen] go[to] ha[rdcopy] hi if is[earch] keepa la lan[guage] lch[dir] lex[pr] lgr[ep] lli[st] lne[xt] lo lol[der] lt[ag] lw[indow] menut mks[ession] mod[e] nbc[lose] nmapc[lear] nos[wapfile] o[pen] ped[it] pp[op] profd[el] ptf[irst] ptN[ext] py python3 re redr[aw] rew[ind] rubyd[o] sal[l] sbf[irst] sbp[revious] scr[iptnames] setg[lobal] sig sla[st] smenu snoreme spe spellu[ndo] st star[tinsert] sts[elect] sv[iew] syncbind tabc[lose] tabl[ast] tabN[ext] ta[g] te[aroff] tm tN[ext] try un unh[ide] v vi viu[sage] wa[ll] winp[os] wq wv[iminfo] xme xunme
syn keyword vimCommand contained abc[lear] argd[elete] argu[ment] bel[owright] bo[tright] br[ewind] buffers cadde[xpr] ccl[ose] cgetb[uffer] che[ckpath] cmapc[lear] cnf com cope[n] cs de delep delf di difft[his] dj[ump] dr[op] ec elsei[f] endf[unction] exi[t] filetype fix[del] for gr[ep] h[elp] hid[e] ij[ump] isp[lit] keepalt lad la[st] lcl[ose] lf[ile] lgrepa[dd] lmak[e] lN[ext] loadk lop[en] lua ma menut[ranslate] mksp[ell] m[ove] nb[key] noa nu[mber] opt[ions] pe[rl] pr prof[ile] ptj[ump] ptp[revious] py3 q r[ead] redraws[tatus] ri[ght] rubyf[ile] san[dbox] sbl[ast] sbr[ewind] scs setl[ocal] sign sl[eep] sn[ext] snoremenu spelld[ump] spellw[rong] sta[g] startr[eplace] sun[hide] sw[apname] syntime tabd[o] tabm[ove] tabo[nly] tags tf[irst] tm[enu] to[pleft] ts[elect] una[bbreviate] unl ve vie[w] vmapc[lear] wh[ile] win[size] wqa[ll] x xmenu xunmenu
syn keyword vimCommand contained abo[veleft] argdo as[cii] bf[irst] bp[revious] bro[wse] bun[load] caddf[ile] cd cgete[xpr] checkt[ime] cn cNf comc[lear] co[py] cscope debug d[elete] delf[unction] diffg[et] diffu[pdate] dl ds[earch] echoe[rr] em[enu] en[dif] exu[sage] fin fo[ld] fu grepa[dd] helpc[lose] his[tory] il[ist] iuna[bbrev] keepj[umps] laddb[uffer] lat lcs lfir[st] lh[elpgrep] lmapc[lear] lnf loadkeymap lpf[ile] luado mak[e] mes mkv mz nbs[tart] noautocmd o ownsyntax perld[o] pre[serve] promptf[ind] ptl[ast] ptr[ewind] py3do qa[ll] rec[over] reg[isters] rightb[elow] rundo sa[rgument] sbm[odified] sb[uffer] scscope sf[ind] sil[ent] sm[agic] sN[ext] so spe[llgood] sp[lit] star stj[ump] sunme sy t tabe[dit] tabN tabp[revious] tc[l] th[row] tn tp[revious] tu u[ndo] unlo[ckvar] verb[ose] vim[grep] vne[w] win wn[ext] w[rite] xa[ll] xnoreme xwininfo
syn keyword vimCommand contained al[l] arge[dit] au bl[ast] brea[k] bu bw[ipeout] cal[l] ce[nter] cg[etfile] cl cN cnf[ile] comp[iler] cpf[ile] cstag debugg[reedy] deletel dell diffo[ff] dig dli[st] dsp[lit] echom[sg] en endt[ry] f fina[lly] foldc[lose] fun gui helpf[ind] i imapc[lear] j[oin] kee[pmarks] lad[dexpr] later lcscope lgetb[uffer] l[ist] lN lNf lo[adview] lp[revious] luafile ma[rk] messages mkvie[w] mzf[ile] ne noh[lsearch] ol[dfiles] p po[p] prev[ious] promptr[epl] ptn pts[elect] pydo q[uit] red res[ize] ru ru[ntime] sav[eas] sbn[ext] scr se[t] sfir[st] sim[alt] sm[ap] sni[ff] sor[t] spelli[nfo] spr[evious] start st[op] sunmenu syn ta tabf[ind] tabnew tabr[ewind] tcld[o] tj[ump] tN tr tu[nmenu] undoj[oin] uns[ilent] ve[rsion] vimgrepa[dd] vs[plit] winc[md] wN[ext] ws[verb] x[it] xnoremenu y[ank]
syn keyword vimCommand contained ar argg[lobal] bad[d] bm[odified] breaka[dd] buf c cat[ch] cex[pr] c[hange] cla[st] cnew[er] cNf[ile] con cp[revious] cuna[bbrev] del deletep delm[arks] diffp[atch] dig[raphs] do e echon endf endw[hile] f[ile] fin[d] folddoc[losed] fu[nction] gvim helpg[rep] ia in ju[mps] keepp[atterns] laddf[ile] lb[uffer] le[ft] lgete[xpr] ll lne lnf[ile] loc[kmarks] lr[ewind] lv[imgrep] marks mk mkv[imrc] mz[scheme] new nor omapc[lear] pc[lose] popu p[rint] ps[earch] ptN pu[t] pyf[ile] quita[ll] redi[r] ret[ab]
syn keyword vimCommand contained a arga[dd] argl[ocal] ba[ll] bn[ext] breakd[el] bufdo cabc[lear] cat[ch] ce[nter] cgetb[uffer] che[ckpath] cmapc[lear] cnf com cope[n] cs de delep delf di difft[his] dj[ump] dr[op] ec elsei[f] endf[unction] exi[t] filetype fix[del] for gr[ep] h[elp] hid[e] ij[ump] isp[lit] keepalt lad la[st] lcl[ose] lex[pr] lgete[xpr] ll lne lnf[ile] loc[kmarks] lr[ewind] lv[imgrep] marks mk mkv[imrc] mz[scheme] new noswap[file] o[pen] ped[it] pp[op] profd[el] ptf[irst] ptN[ext] py python3 re redr[aw] rew[ind] rubyf[ile] sa[rgument] sbn[ext] scripte[ncoding] setf[iletype] sh[ell] sim[alt] sm[ap] sni[ff] sor[t] spelli[nfo] spr[evious] start st[op] sunmenu syn ta tabf[ind] tabnew tabr[ewind] tcld[o] tj[ump] tN tr tu[nmenu] undoj[oin] uns[ilent] ve[rsion] vimgrepa[dd] vs[plit] winc[md] wN[ext] ws[verb] x[it] xnoremenu
syn keyword vimCommand contained ab argd ar[gs] bd[elete] bN[ext] breakl[ist] b[uffer] cad cb[uffer] cex[pr] cgete[xpr] checkt[ime] cn cNf comc[lear] co[py] cscope debug d[elete] delf[unction] diffg[et] diffu[pdate] dl ds[earch] echoe[rr] em[enu] en[dif] exu[sage] fin fo[ld] fu grepa[dd] helpc[lose] his[tory] il[ist] iuna[bbrev] keepj[umps] laddb[uffer] lat lcs lf lg[etfile] lla[st] lnew[er] lNf[ile] lockv[ar] ls lvimgrepa[dd] mat[ch] mk[exrc] mo n n[ext] nu[mber] opt[ions] pe[rl] pr prof[ile] ptj[ump] ptp[revious] py3 q r[ead] redraws[tatus] ri[ght] rundo sav[eas] sbN[ext] scrip[tnames] setg[lobal] si sl sme sno[magic] so[urce] spellr[epall] sre[wind] startg[replace] stopi[nsert] sus[pend] sync tab tabfir[st] tabn[ext] tabs tclf[ile] tl[ast] tn[ext] tr[ewind] u undol[ist] up[date] vert[ical] vi[sual] w windo wp[revious] wundo xmapc[lear] xunme
syn keyword vimCommand contained abc[lear] argd[elete] argu[ment] bel[owright] bo[tright] br[ewind] buffers caddb[uffer] cc cf cg[etfile] cl cN cnf[ile] comp[iler] cpf[ile] cstag debugg[reedy] deletel dell diffo[ff] dig dli[st] dsp[lit] echom[sg] en endt[ry] f fina[lly] foldc[lose] fun gui helpf[ind] i imapc[lear] j[oin] kee[pmarks] lad[dexpr] later lcscope lfdo lgr[ep] lli[st] lne[xt] lo lol[der] lt[ag] lw[indow] menut mks[ession] mod[e] nbc[lose] nmapc[lear] o ownsyntax perld[o] pre[serve] promptf[ind] ptl[ast] ptr[ewind] py3do qa[ll] rec[over] reg[isters] rightb[elow] ru[ntime] sba[ll] sbp[revious] scs setl[ocal] sig sla[st] smenu snoreme spe spellu[ndo] st star[tinsert] sts[elect] sv[iew] syncbind tabc[lose] tabl[ast] tabN[ext] ta[g] te[aroff] tm tN[ext] try un unh[ide] v vi viu[sage] wa[ll] winp[os] wq wv[iminfo] xme xunmenu
syn keyword vimCommand contained abo[veleft] argdo as[cii] bf[irst] bp[revious] bro[wse] bun[load] cad[dexpr] ccl[ose] cfdo c[hange] cla[st] cnew[er] cNf[ile] con cp[revious] cuna[bbrev] del deletep delm[arks] diffp[atch] dig[raphs] do e echon endf endw[hile] f[ile] fin[d] folddoc[losed] fu[nction] gvim helpg[rep] ia in ju[mps] keepp[atterns] laddf[ile] lb[uffer] ld[o] lf[ile] lgrepa[dd] lmak[e] lN[ext] loadk lop[en] lua ma menut[ranslate] mksp[ell] m[ove] nb[key] noa ol[dfiles] p po[p] prev[ious] promptr[epl] ptn pts[elect] pydo q[uit] red res[ize] ru rv[iminfo] sbf[irst] sbr[ewind] scscope sf[ind] sign sl[eep] sn[ext] snoremenu spelld[ump] spellw[rong] sta[g] startr[eplace] sun[hide] sw[apname] syntime tabd[o] tabm[ove] tabo[nly] tags tf[irst] tm[enu] to[pleft] ts[elect] una[bbreviate] unl ve vie[w] vmapc[lear] wh[ile] win[size] wqa[ll] x xmenu xwininfo
syn keyword vimCommand contained al[l] arge[dit] au bl[ast] brea[k] bu bw[ipeout] caddf[ile] cd cf[ile] changes cl[ist] cn[ext] col[der] conf[irm] cq[uit] cw[indow] delc[ommand] deletl delp diffpu[t] dir doau ea e[dit] endfo[r] ene[w] files fini[sh] foldd[oopen] g h helpt[ags] iabc[lear] intro k l lan lc[d] le[ft] lfir[st] lh[elpgrep] lmapc[lear] lnf loadkeymap lpf[ile] luado mak[e] mes mkv mz nbs[tart] noautocmd omapc[lear] pc[lose] popu p[rint] ps[earch] ptN pu[t] pyf[ile] quita[ll] redi[r] ret[ab] rub[y] sal[l] sbl[ast] sb[uffer] se[t] sfir[st] sil[ent] sm[agic] sN[ext] so spe[llgood] sp[lit] star stj[ump] sunme sy t tabe[dit] tabN tabp[revious] tc[l] th[row] tn tp[revious] tu u[ndo] unlo[ckvar] verb[ose] vim[grep] vne[w] win wn[ext] w[rite] xa[ll] xnoreme y[ank]
syn keyword vimCommand contained ar argg[lobal] bad[d] bm[odified] breaka[dd] buf c cal[l] cdo cfir[st] chd[ir] clo[se] cN[ext] colo[rscheme] con[tinue] cr[ewind] d delel deletp dep diffs[plit] di[splay] dp earlier el[se] endfun ex filet fir[st] foldo[pen] go[to] ha[rdcopy] hi if is[earch] keepa la lan[guage] lch[dir] lefta[bove] lgetb[uffer] l[ist] lN lNf lo[adview] lp[revious] luafile ma[rk] messages mkvie[w] mzf[ile] ne noh[lsearch] on[ly] pe popu[p] pro pta[g] ptn[ext] pw[d] py[thon] r red[o] retu[rn] rubyd[o] san[dbox] sbm[odified] scrip
syn match vimCommand contained "\<z[-+^.=]\=\>"
syn keyword vimStdPlugin contained DiffOrig Man N[ext] P[rint] S TOhtml XMLent XMLns
" vimOptions are caught only when contained in a vimSet {{{2
syn keyword vimOption contained acd ambw arshape background ballooneval bg bl brk buftype cf cinkeys cmdwinheight com concealcursor cp cscopeprg csprg cul def diff display edcompatible endofline errorformat fcl fdm fex fileformats fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imcmdline imsf indentexpr is isp keywordprg laststatus lisp loadplugins ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pheader previewheight printmbcharset pvw readonly restorescreen rnu ruf sc scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf syntax tagcase tbi termbidi tgst titleold top ttimeoutlen ttyscroll ul ur verbosefile visualbell wcm wi wildmenu winfixwidth wm wrapscan
syn keyword vimOption contained ai anti autochdir backspace balloonexpr bh bo browsedir casemap cfu cino cmp comments conceallevel cpo cscopequickfix csqf cursorbind define diffexpr dy ef eol esckeys fcs fdn ff fileignorecase flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imd imstatusfunc indentkeys isf isprint km lazyredraw lispwords lpl macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pi previewwindow printmbfont pythondll redrawtime revins ro ruler scb scs sessionoptions shellquote shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf ta taglength tbidi termencoding thesaurus titlestring tpm ttm ttytype undodir ut vfile vop wd wic wildmode winheight wmh write
syn keyword vimOption contained akm antialias autoindent backup bdir bin bomb bs cb ch cinoptions cms commentstring confirm cpoptions cscoperelative csre cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs filetype fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatefunc imdisable inc indk isfname joinspaces kmp lbr list ls magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste perldll pm printdevice printoptions pythonthreedll regexpengine ri rop rulerformat scr sect sft shellredir shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws tabline tagrelative tbis terse tildeop tl tr tty tw undofile vb vi wa weirdinvert wig wildoptions winminheight wmnu writeany
syn keyword vimOption contained al ar autoread backupcopy bdlay binary breakat bsdir cc charconvert cinw co compatible consk cpt cscopetag cst cursorline dex digraph ead ei equalalways eventignore fde fdt fic fillchars fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imactivatekey imi include inex isi js kp lcs listchars lsp makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pex pmbcs printencoding prompt qe relativenumber rightleft rs runtimepath scroll sections sh shellslash shm showmode sj smd spell splitbelow ssl stl sw sxe tabpagemax tags tbs textauto timeout tm ts ttybuiltin tx undolevels vbs viewdir wak wfh wildchar wim winminwidth wmw writebackup
syn keyword vimOption contained aleph arab autowrite backupdir belloff biosk breakindent bsk ccv ci cinwords cocu complete conskey crb cscopetagorder csto cwh dg dip eadirection ek equalprg ex fdi fen fileencoding fixendofline fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imaf iminsert includeexpr inf isident key langmap linebreak lm luadll makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pexpr pmbfn printexpr pt quoteescape remap rightleftcmd rtp sb scrollbind secure shcf shelltemp shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tagstack tc textmode timeoutlen to tsl ttyfast uc undoreload vdir viewoptions warn wfw wildcharm winaltkeys winwidth wop writedelay
syn keyword vimOption contained allowrevins arabic autowriteall backupext beval bioskey breakindentopt bt cd cin clipboard cole completefunc copyindent cryptmethod cscopeverbose csverb debug dict dir eb enc errorbells expandtab fdl fenc fileencodings fixeol foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imak ims incsearch infercase isk keymap langmenu lines lmap lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode pfn popt printfont pumheight rdt renderoptions rl ru sbo scrolljump sel shell shelltype shortname shq sm so spellfile spr st sts swapsync syn tag tal tenc textwidth title toolbar tsr ttym udf updatecount ve viminfo wb wh wildignore window wiv wrap ws
syn keyword vimOption contained altkeymap arabicshape aw backupskip bex bk bri bufhidden cdpath cindent cm colorcolumn completeopt cot cscopepathcomp cspc cuc deco dictionary directory ed encoding errorfile exrc fdls fencs fileformat fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imc imsearch inde insertmode iskeyword keymodel langnoremap linespace lnr lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path ph preserveindent printheader pvh re report rlc rubydll sbr scrolloff selection shellcmdflag shellxescape showbreak si smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tb term tf titlelen toolbariconsize ttimeout ttymouse udir updatetime verbose virtualedit wc whichwrap wildignorecase winfixheight wiw wrapmargin ww
syn keyword vimOption contained ambiwidth ari awa balloondelay bexpr bkc briopt buflisted cedit cink cmdheight columns
syn keyword vimOption contained acd ambw arshape background ballooneval bg bl brk buftype cf cinkeys cmp com concealcursor cp cscopeprg csprg cul def diff display edcompatible endofline errorformat fcl fdm fex fileformats fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imcmdline imsf indentexpr is isp keywordprg laststatus lisp loadplugins ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pheader previewheight printmbcharset pvw readonly restorescreen rnu ruf sc scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf syntax tagcase tbi termbidi tgst titleold top ttimeoutlen ttyscroll ul ur verbosefile visualbell wcm wi wildmenu winfixwidth wm wrapscan
syn keyword vimOption contained ai anti autochdir backspace balloonexpr bh bo browsedir casemap cfu cino cms comments conceallevel cpo cscopequickfix csqf cursorbind define diffexpr dy ef eol esckeys fcs fdn ff fileignorecase flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imd imstatusfunc indentkeys isf isprint km lazyredraw lispwords lpl macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pi previewwindow printmbfont pythondll redrawtime revins ro ruler scb scs sessionoptions shellquote shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf ta taglength tbidi termencoding thesaurus titlestring tpm ttm ttytype undodir ut vfile vop wd wic wildmode winheight wmh write
syn keyword vimOption contained akm antialias autoindent backup bdir bin bomb bs cb ch cinoptions co commentstring confirm cpoptions cscoperelative csre cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs filetype fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatefunc imdisable inc indk isfname joinspaces kmp lbr list ls magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste perldll pm printdevice printoptions pythonthreedll regexpengine ri rop rulerformat scr sect sft shellredir shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws tabline tagrelative tbis terse tildeop tl tr tty tw undofile vb vi wa weirdinvert wig wildoptions winminheight wmnu writeany
syn keyword vimOption contained al ar autoread backupcopy bdlay binary breakat bsdir cc charconvert cinw cocu compatible consk cpt cscopetag cst cursorline dex digraph ead ei equalalways eventignore fde fdt fic fillchars fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imactivatekey imi include inex isi js kp lcs listchars lsp makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pex pmbcs printencoding prompt qe relativenumber rightleft rs runtimepath scroll sections sh shellslash shm showmode sj smd spell splitbelow ssl stl sw sxe tabpagemax tags tbs textauto timeout tm ts ttybuiltin tx undolevels vbs viewdir wak wfh wildchar wim winminwidth wmw writebackup
syn keyword vimOption contained aleph arab autowrite backupdir belloff biosk breakindent bsk ccv ci cinwords cole complete conskey crb cscopetagorder csto cwh dg dip eadirection ek equalprg ex fdi fen fileencoding fixendofline fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imaf iminsert includeexpr inf isident key langmap linebreak lm luadll makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pexpr pmbfn printexpr pt quoteescape remap rightleftcmd rtp sb scrollbind secure shcf shelltemp shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tagstack tc textmode timeoutlen to tsl ttyfast uc undoreload vdir viewoptions warn wfw wildcharm winaltkeys winwidth wop writedelay
syn keyword vimOption contained allowrevins arabic autowriteall backupext beval bioskey breakindentopt bt cd cin clipboard colorcolumn completefunc copyindent cryptmethod cscopeverbose csverb debug dict dir eb enc errorbells expandtab fdl fenc fileencodings fixeol foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imak ims incsearch infercase isk keymap langmenu lines lmap lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode pfn popt printfont pumheight rdt renderoptions rl ru sbo scrolljump sel shell shelltype shortname shq sm so spellfile spr st sts swapsync syn tag tal tenc textwidth title toolbar tsr ttym udf updatecount ve viminfo wb wh wildignore window wiv wrap ws
syn keyword vimOption contained altkeymap arabicshape aw backupskip bex bk bri bufhidden cdpath cindent cmdheight columns completeopt cot cscopepathcomp cspc cuc deco dictionary directory ed encoding errorfile exrc fdls fencs fileformat fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imc imsearch inde insertmode iskeyword keymodel langnoremap linespace lnr lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path ph preserveindent printheader pvh re report rlc rubydll sbr scrolloff selection shellcmdflag shellxescape showbreak si smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tb term tf titlelen toolbariconsize ttimeout ttymouse udir updatetime verbose virtualedit wc whichwrap wildignorecase winfixheight wiw wrapmargin ww
syn keyword vimOption contained ambiwidth ari awa balloondelay bexpr bkc briopt buflisted cedit cink cmdwinheight
" vimOptions: These are the turn-off setting variants {{{2
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobk nobuflisted nocin noconfirm nocopyindent nocscoperelative nocsre nocuc nocursorcolumn nodelcombine nodigraph noed noendofline noerrorbells noex nofen nofixendofline nofkmap nogdefault nohidden nohkmapp nohlsearch noicon noim noimcmdline noimdisable noinf noinsertmode nojoinspaces nolazyredraw nolinebreak nolist nolpl noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx noundofile novisualbell nowarn noweirdinvert nowfw nowildignorecase nowinfixheight nowiv nowrap nowrite nowritebackup
@@ -48,8 +48,8 @@ syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautoc
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbioskey invbomb invci invcompatible invconskey invcrb invcscopeverbose invcsverb invcursorbind invdeco invdiff inveb invek invequalalways invet invexrc invfileignorecase invfk invgd invhid invhkmap invhls
" termcap codes (which can also be set) {{{2
syn keyword vimOption contained t_AB t_al t_bc t_ce t_cl t_Co t_Cs t_CV t_db t_DL t_EI t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RB t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_SR t_te t_ti t_ts t_u7 t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xn t_xs t_ZH t_ZR
syn keyword vimOption contained t_AF t_AL t_cd t_Ce t_cm t_cs t_CS t_da t_dl
syn keyword vimOption contained t_AB t_al t_bc t_ce t_cl t_Co t_Cs t_CV t_db t_dl t_DL t_EI t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_SR t_te t_ti t_ts t_u7 t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xn t_xs t_ZH t_ZR
syn keyword vimOption contained t_AF t_AL t_cd t_Ce t_cm t_cs t_CS t_da
syn match vimOption contained "t_%1"
syn match vimOption contained "t_#2"
syn match vimOption contained "t_#4"
@@ -75,9 +75,9 @@ syn match vimHLGroup contained "Conceal"
syn case match
" Function Names {{{2
syn keyword vimFuncName contained abs and argidx asin browse buflisted bufnr byteidx ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdline getcmdwintype getfontname getftime getloclist getpos getregtype getwinposx glob has hasmapto histget hlID indent inputdialog inputsave invert items len line localtime luaeval mapcheck matchaddpos matchend max mode nr2char pow pumvisible range reltimestr remote_peek remove resolve screenattr screenrow searchpair server2client setcharsearch setloclist setqflist settabwinvar shellescape sin soundfold split str2float strchars strftime string strpart strtrans submatch synconcealed synIDattr synstack systemlist tabpagenr tagfiles tan tempname toupper trunc undofile uniq virtcol wildmenumode wincol winline winrestcmd winsaveview writefile
syn keyword vimFuncName contained acos append arglistid atan browsedir bufloaded bufwinnr byteidxcomp changenr clearmatches complete_add copy count deepcopy diff_filler escape executable exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdpos getcurpos getfperm getftype getmatches getqflist gettabvar getwinposy glob2regpat has_key histadd histnr hostname index inputlist inputsecret isdirectory join libcall line2byte log map match matcharg matchlist min mzeval or prevnonblank py3eval readfile remote_expr remote_read rename reverse screenchar search searchpairpos serverlist setcmdpos setmatches setreg setwinvar shiftwidth sinh spellbadword sqrt str2nr strdisplaywidth stridx strlen strridx strwidth substitute synID synIDtrans system tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree values visualmode winbufnr winheight winnr winrestview winwidth xor
syn keyword vimFuncName contained add argc argv atan2 bufexists bufname byte2line call char2nr col complete_check cos cscope_connection delete diff_hlID eval exepath expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcharsearch getcmdtype getcwd getfsize getline getpid getreg gettabwinvar getwinvar globpath haslocaldir histdel hlexists iconv input inputrestore insert islocked keys libcallnr lispindent log10 maparg matchadd matchdelete matchstr mkdir nextnonblank pathshorten printf pyeval reltime remote_foreground remote_send repeat round screencol searchdecl searchpos setbufvar setline setpos settabvar sha256 simplify sort spellsuggest
syn keyword vimFuncName contained abs and argidx asin assert_true browse buflisted bufnr byteidx ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdline getcmdwintype getfontname getftime getloclist getpos getregtype getwinposx glob has hasmapto histget hlID indent inputdialog inputsave invert items len line localtime luaeval mapcheck matchaddpos matchend max mode nr2char pow pumvisible range reltimestr remote_peek remove resolve screenattr screenrow searchpair server2client setcharsearch setloclist setqflist settabwinvar shellescape sin soundfold split str2nr strftime strlen strridx strwidth substitute synID synIDtrans system tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree values visualmode winbufnr winheight winnr winrestview winwidth writefile
syn keyword vimFuncName contained acos append arglistid assert_equal atan browsedir bufloaded bufwinnr byteidxcomp changenr clearmatches complete_add copy count deepcopy diff_filler escape executable exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdpos getcurpos getfperm getftype getmatches getqflist gettabvar getwinposy glob2regpat has_key histadd histnr hostname index inputlist inputsecret isdirectory join libcall line2byte log map match matcharg matchlist min mzeval or prevnonblank py3eval readfile remote_expr remote_read rename reverse screenchar search searchpairpos serverlist setcmdpos setmatches setreg setwinvar shiftwidth sinh spellbadword sqrt strchars stridx strpart strtrans submatch synconcealed synIDattr synstack systemlist tabpagenr tagfiles tan tempname toupper trunc undofile uniq virtcol wildmenumode wincol winline winrestcmd winsaveview wordcount xor
syn keyword vimFuncName contained add argc argv assert_false atan2 bufexists bufname byte2line call char2nr col complete_check cos cscope_connection delete diff_hlID eval exepath expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcharsearch getcmdtype getcwd getfsize getline getpid getreg gettabwinvar getwinvar globpath haslocaldir histdel hlexists iconv input inputrestore insert islocked keys libcallnr lispindent log10 maparg matchadd matchdelete matchstr mkdir nextnonblank pathshorten printf pyeval reltime remote_foreground remote_send repeat round screencol searchdecl searchpos setbufvar setline setpos settabvar sha256 simplify sort spellsuggest str2float strdisplaywidth string
"--- syntax here and above generated by mkvimvim ---
" Special Vim Highlighting (not automatic) {{{1
-77
View File
@@ -1,77 +0,0 @@
# Project: gvimext
# Generates gvimext.dll with gcc.
# To be used with Cygwin.
#
# Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000
# Now it is allocated dymanically by the linker by evaluating all DLLs
# already loaded in memory. The binary image contains as well information
# for automatic pseudo-rebasing, if needed by the system. ALV 2004-02-29
# If cross-compiling set this to yes, else set it to no
CROSS = no
#CROSS = yes
# For the old MinGW 2.95 (the one you get e.g. with debian woody)
# set the following variable to yes and check if the executables are
# really named that way.
# If you have a newer MinGW or you are using cygwin set it to no and
# check also the executables
MINGWOLD = no
# Link against the shared versions of libgcc/libstdc++ by default. Set
# STATIC_STDCPLUS to "yes" to link against static versions instead.
STATIC_STDCPLUS=no
#STATIC_STDCPLUS=yes
# Note: -static-libstdc++ is not available until gcc 4.5.x.
LDFLAGS += -shared
ifeq (yes, $(STATIC_STDCPLUS))
LDFLAGS += -static-libgcc -static-libstdc++
endif
ifeq ($(CROSS),yes)
DEL = rm
ifeq ($(MINGWOLD),yes)
CXXFLAGS := -O2 -fvtable-thunks
else
CXXFLAGS := -O2
endif
else
CXXFLAGS := -O2
ifneq (sh.exe, $(SHELL))
DEL = rm
else
DEL = del
endif
endif
CXX := $(CROSS_COMPILE)g++
WINDRES := $(CROSS_COMPILE)windres
WINDRES_CXX = $(CXX)
WINDRES_FLAGS = --preprocessor="$(WINDRES_CXX) -E -xc" -DRC_INVOKED
LIBS := -luuid
RES := gvimext.res
DEFFILE = gvimext_ming.def
OBJ := gvimext.o
DLL := gvimext.dll
.PHONY: all all-before all-after clean clean-custom
all: all-before $(DLL) all-after
$(DLL): $(OBJ) $(RES) $(DEFFILE)
$(CXX) $(LDFLAGS) $(CXXFLAGS) -s -o $@ \
-Wl,--enable-auto-image-base \
-Wl,--enable-auto-import \
-Wl,--whole-archive \
$^ \
-Wl,--no-whole-archive \
$(LIBS)
gvimext.o: gvimext.cpp
$(CXX) $(CXXFLAGS) -DFEAT_GETTEXT -c $? -o $@
$(RES): gvimext_ming.rc
$(WINDRES) $(WINDRES_FLAGS) --input-format=rc --output-format=coff -DMING $? -o $@
clean: clean-custom
-$(DEL) $(OBJ) $(RES) $(DLL)
+1 -1
View File
@@ -1,6 +1,6 @@
# Project: gvimext
# Generates gvimext.dll with gcc.
# To be used with MingW.
# To be used with MingW and Cygwin.
#
# Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000
# Now it is allocated dymanically by the linker by evaluating all DLLs
+27 -8
View File
@@ -12,6 +12,25 @@ APPVER=5.0
NODEBUG = 1
!endif
!ifdef PROCESSOR_ARCHITECTURE
# On Windows NT
! ifndef CPU
CPU = i386
! if !defined(PLATFORM) && defined(TARGET_CPU)
PLATFORM = $(TARGET_CPU)
! endif
! ifdef PLATFORM
! if ("$(PLATFORM)" == "x64") || ("$(PLATFORM)" == "X64")
CPU = AMD64
! elseif ("$(PLATFORM)" != "x86") && ("$(PLATFORM)" != "X86")
! error *** ERROR Unknown target platform "$(PLATFORM)". Make aborted.
! endif
! endif
! endif
!else
CPU = i386
!endif
!ifdef SDK_INCLUDE_DIR
!include $(SDK_INCLUDE_DIR)\Win32.mak
!else
@@ -30,15 +49,15 @@ gvimext.dll: gvimext.obj \
gvimext.obj: gvimext.h
.cpp.obj:
$(cc) $(cflags) -DFEAT_GETTEXT $(cvarsmt) $*.cpp
$(cc) $(cflags) -DFEAT_GETTEXT $(cvarsmt) $*.cpp
gvimext.res: gvimext.rc
$(rc) $(rcflags) $(rcvars) gvimext.rc
$(rc) $(rcflags) $(rcvars) gvimext.rc
clean:
- if exist gvimext.dll del gvimext.dll
- if exist gvimext.lib del gvimext.lib
- if exist gvimext.exp del gvimext.exp
- if exist gvimext.obj del gvimext.obj
- if exist gvimext.res del gvimext.res
- if exist gvimext.dll.manifest del gvimext.dll.manifest
- if exist gvimext.dll del gvimext.dll
- if exist gvimext.lib del gvimext.lib
- if exist gvimext.exp del gvimext.exp
- if exist gvimext.obj del gvimext.obj
- if exist gvimext.res del gvimext.res
- if exist gvimext.dll.manifest del gvimext.dll.manifest
+297 -30
View File
@@ -13,7 +13,7 @@ be fine for most people.
With the exception of two sections (Windows 3.1 and MS-DOS), this document
assumes that you are building Vim for Win32 or later.
(Windows 95/98/Me/NT/2000/XP/2003/Vista/7)
(Windows 95/98/Me/NT/2000/XP/2003/Vista/7/8/10)
Contents:
@@ -23,11 +23,16 @@ Contents:
4. Borland
5. Cross compiling for Win32 from a Linux machine
6. Building with Python support
7. Building with MzScheme support
8. Windows 3.1
9. MS-DOS
7. Building with Python3 support
8. Building with MzScheme/Racket support
9. Building with Lua support
10. Building with Perl support
11. Building with Ruby support
12. Building with Tcl support
13. Windows 3.1
14. MS-DOS
10. Installing after building from sources
15. Installing after building from sources
The currently preferred method is using the free Visual C++ Toolkit 2008
@@ -42,8 +47,9 @@ you need the executable to run on Windows 98 or ME, use the 2003 one
Visual Studio
-------------
Building with Visual Studio (VS 98, VS .NET, VS .NET 2003, VS 2005, and VS 2008)
is straightforward. (These instructions should also work for VS 4 and VS 5.)
Building with Visual Studio (VS 98, VS .NET, VS .NET 2003, VS 2005, VS 2008,
VS2010, VS2012, VS2013 and VS2015) is straightforward. (These instructions
should also work for VS 4 and VS 5.)
Using VS C++ 2008 Express is recommended, the binaries build with that run on
nearly all platforms. Binaries from later versions may not run on Windows 95
@@ -195,7 +201,7 @@ Vim with Make_mvc.mak.
Targeting Windows XP with new MSVC *new-msvc-windows-xp*
----------------------------------
Beginning with Visual C++ 2010, Microsoft changed the behavior of LINK.EXE
Beginning with Visual C++ 2012, Microsoft changed the behavior of LINK.EXE
so that it targets Windows 6.0 (Vista) by default. In order to override
this, the target Windows version number needs to be passed to LINK like
follows:
@@ -345,6 +351,17 @@ Now you have created the Windows binary from your Linux box! Have fun...
For building with MSVC 2008 the "Windows Installer" from www.python.org
works fine.
When building, you need to set the following variables at least:
PYTHON: Where Python is installed. E.g. C:\Python27
DYNAMIC_PYTHON: Whether dynamic linking is used. Usually, set to yes.
PYTHON_VER: Python version. E.g. 27 for Python 2.7.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
PYTHON=C:\Python27 DYNAMIC_PYTHON=yes PYTHON_VER=27
(rest written by Ron Aaron: <ronaharon@yahoo.com>)
Building with the mingw32 compiler, and the ActiveState ActivePython:
@@ -380,8 +397,28 @@ And if you use msys2 to build python support (as one line):
You will end up with a Python-enabled, Win32 version. Enjoy!
7. Building with MzScheme support
=================================
7. Building with Python3 support
================================
For building with MSVC 2008 the "Windows Installer" from www.python.org
works fine. Python 3.4 is recommended.
When building, you need to set the following variables at least:
PYTHON3: Where Python3 is installed. E.g. C:\Python34
DYNAMIC_PYTHON3: Whether dynamic linking is used. Usually, set to yes.
PYTHON3_VER: Python3 version. E.g. 34 for Python 3.4.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
PYTHON3=C:\Python34 DYNAMIC_PYTHON3=yes PYTHON3_VER=34
8. Building with MzScheme/Racket support
========================================
1) Building with MzScheme support
(written by Sergey Khorev <sergey.khorev@gmail.com>)
@@ -416,8 +453,238 @@ After a successful build, these dlls can be freely removed, leaving them in
%WINDOWS%\System32 only.
8. Windows 3.1x
===============
2) Building with Racket support
MzScheme and PLT Scheme names have been rebranded as Racket. Vim with Racket
(https://racket-lang.org/) support can be built with either MSVC or MinGW (or
Cygwin).
You need to set the following variables:
MZSCHEME: Where Racket is installed.
E.g. C:\Program Files (x86)\Racket
DYNAMIC_MZSCHEME: Whether dynamic linking is used. Usually, set to yes.
MZSCHEME_VER: Racket DLL version. E.g. 3m_9z0ds0 for Racket 6.3.
MZSCHEME_COLLECTS: (Optional) Path of the collects directory used at
runtime. Default: $(MZSCHEME)\collects
User can override this with the PLTCOLLECTS environment
variable.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
MZSCHEME="C:\Program Files (x86)\Racket" DYNAMIC_MZSCHEME=yes
MZSCHEME_VER=3m_9z0ds0
Or when using MinGW (as one line):
mingw32-make -f Make_ming.mak
MZSCHEME='C:/Program\ Files\ (x86)/Racket' DYNAMIC_MZSCHEME=yes
MZSCHEME_VER=3m_9z0ds0
Spaces should be escaped with '\'.
9. Building with Lua support
============================
Vim with Lua support can be built with either MSVC or MinGW (or maybe Cygwin).
You can use binaries from LuaBinaries: http://luabinaries.sourceforge.net/
This also applies to when you get a Vim executable and don't build yourself,
do the part up to "Build".
1) Download and install LuaBinaries
Go to the Download page of LuaBinaries:
http://luabinaries.sourceforge.net/download.html
Download lua-X.Y.Z_Win32_dllw4_lib.zip for x86 or
lua-X.Y.Z_Win64_dllw4_lib.zip for x64. You can use them both for MSVC and
MinGW.
Unpack it to a working directory. E.g. C:\projects\lua53.
Lua's header files will be installed under the include directory.
Copy luaXY.dll to your Windows system directory. The system directory depends
on your Windows bitness and Vim bitness:
32-bit Vim on 32-bit Windows: C:\Windows\System32
32-bit Vim on 64-bit Windows: C:\Windows\SysWOW64
64-bit Vim on 64-bit Windows: C:\Windows\System32
Or another option is copying luaXY.dll to the directory where gvim.exe
(or vim.exe) is.
2) Build
You need to set LUA, DYNAMIC_LUA and LUA_VER.
LUA: Where Lua's header files are installed. E.g. C:\projects\lua53.
DYNAMIC_LUA: Whether dynamic linking is used. Set to yes.
LUA_VER: Lua version. E.g. 53 for Lua 5.3.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
LUA=C:\projects\lua53 DYNAMIC_LUA=yes LUA_VER=53
Or when using MinGW (as one line):
mingw32-make -f Make_mingw.mak
LUA=C:\projects\lua53 DYNAMIC_LUA=yes LUA_VER=53
Or when using Cygwin (as one line) (untested):
make -f Make_cyg.mak
LUA=/cygdrive/c/projects/lua53 DYNAMIC_LUA=yes LUA_VER=53
10. Building with Perl support
==============================
Vim with Perl support can be built with either MSVC or MinGW (or Cygwin).
You can use binaries from ActiveState (ActivePerl) or Strawberry Perl.
http://www.activestate.com/activeperl
http://strawberryperl.com/
When building, you need to set the following variables:
PERL: Where perl is installed. E.g. C:\Perl, C:\Strawberry\perl
DYNAMIC_PERL: Whether dynamic linking is used. Usually, set to yes.
PERL_VER: Perl version. E.g. 522 for Perl 5.22.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
PERL=C:\Perl DYNAMIC_PERL=yes PERL_VER=522
Or when using MinGW (as one line):
mingw32-make -f Make_mingw.mak
PERL=C:\Perl DYNAMIC_PERL=yes PERL_VER=522
11. Building with Ruby support
==============================
Vim with Ruby support can be built with either MSVC or MinGW (or Cygwin).
Ruby doesn't provide the official Windows binaries. The most widely used
Windows binaries might be RubyInstaller.
http://rubyinstaller.org/
If you use MinGW you can easily build with RubyInstaller, but if you use MSVC
you need some tricks described below.
(Another binary distribution is ActiveScriptRuby:
http://www.artonx.org/data/asr/)
When building, you need to set the following variables at least:
RUBY: Where ruby is installed. E.g. C:\Ruby22
DYNAMIC_RUBY: Whether dynamic linking is used. Usually, set to yes.
RUBY_VER: Ruby version. E.g. 22 for Ruby 2.2.X.
RUBY_VER_LONG: Ruby API version in a long format.
E.g. 2.2.0 for Ruby 2.2.X.
Ruby version vs. Ruby API version:
Ruby ver. | Ruby API ver.
=========================
1.8.X | 1.8
1.9.[1-3] | 1.9.1
2.0.0 | 2.0.0
2.X.Y | 2.X.0
(Ruby 1.9.0 is excluded from the table because it is an unstable version.)
A) Using MSVC
If you want to link with ruby, normally you must use the same compiler as
which was used to build the ruby binary. RubyInstaller is built with MinGW,
so normally you cannot use MSVC for building Vim if you want to link with
RubyInstaller. If you use a different complier, there are mainly two problems:
config.h and Ruby's DLL name. Here are the steps for working around them:
1) Download and Install RubyInstaller.
You can install RubyInstaller with the default options and directory.
E.g.:
C:\Ruby22 (32-bit) or C:\Ruby22-x64 (64-bit)
Ruby 2.2.X is used in this example.
2) Download Ruby 2.2.X's source code and generate config.h:
cd C:\projects
git clone https://github.com/ruby/ruby.git -b ruby_2_2
cd ruby
win32\configure.bat
nmake .config.h.time
Note that ruby_2_2 is the branch name for Ruby 2.2.X's source code.
There is no need to build whole Ruby, just config.h is needed.
If you use 32-bit MSVC10, the config.h is generated in the
.ext\include\i386-mswin32_100 directory.
3) Install the generated config.h.
xcopy /s .ext\include C:\Ruby22\include\ruby-2.2.0
Note that 2.2.0 is Ruby API version of Ruby 2.2.X.
4) Build Vim. Note that you need to adjust some variables (as one line):
nmake -f Make_mvc.mak
RUBY=C:\Ruby22 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_VER_LONG=2.2.0
RUBY_MSVCRT_NAME=msvcrt
WINVER=0x500
WINVER must be set to >=0x500, when building with Ruby 2.1 or later.
When using this trick, you also need to set RUBY_MSVCRT_NAME to msvcrt
which is used for the Ruby's DLL name.
B) Using MinGW
Using MinGW is easier than using MSVC when linking with RubyInstaller.
After you install RubyInstaller, just type this (as one line):
mingw32-make -f Make_ming.mak
RUBY=C:/Ruby22 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_VER_LONG=2.2.0
WINVER=0x500
WINVER must be set to >=0x500, when building with Ruby 2.1 or later.
12. Building with Tcl support
=============================
Vim with Tcl support can be built with either MSVC or MinGW (or Cygwin).
You can use binaries from ActiveState (ActiveTcl).
http://www.activestate.com/activetcl
When building, you need to set the following variables:
TCL: Where tcl is installed. E.g. C:\Tcl86
DYNAMIC_TCL: Whether dynamic linking is used. Usually, set to yes.
TCL_VER: Tcl version in a short format. E.g. 86 for Tcl 8.6.X.
TCL_VER_LONG: Tcl version in a long format. E.g. 8.6 for Tcl 8.6.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
TCL=C:\Tcl86 DYNAMIC_TCL=yes TCL_VER=86 TCL_VER_LONG=8.6
Or when using MinGW (as one line):
mingw32-make -f Make_mingw.mak
TCL=C:\Tcl86 DYNAMIC_TCL=yes TCL_VER=86 TCL_VER_LONG=8.6
13. Windows 3.1x
================
make -f Make_w16.mak 16 bit, Borland C++ 5.0
@@ -436,8 +703,8 @@ In MSVC 4.2 support for Win32s was dropped! Use this command:
nmake -f Make_mvc.mak GUI=yes
9. MS-DOS
=========
14. MS-DOS
==========
Summary:
ren Make_bc3.mak Makefile; make 16 bit, Borland C++ and Turbo C++
@@ -479,48 +746,48 @@ If you get all kinds of strange error messages when compiling, try changing
the file format from "unix" to "dos".
10. Installing after building from sources
15. Installing after building from sources
==========================================
[provided by Michael Soyka]
After you've built the Vim binaries as described above, you're ready to
install Vim on your system. However, if you've obtained the Vim sources
using Mercurial or by downloading them as a unix tar file, you must first
create a "vim73" directory. If you instead downloaded the sources as
using Git, Mercurial or by downloading them as a unix tar file, you must
first create a "vim74" directory. If you instead downloaded the sources as
zip files, you can skip this setup as the zip archives already have the
correct directory structure.
A. Create a Vim "runtime" subdirectory named "vim73"
A. Create a Vim "runtime" subdirectory named "vim74"
-----------------------------------------------------
If you obtained your Vim sources as zip files, you can skip this step.
Otherwise, continue reading.
Go to the directory that contains the Vim "src" and "runtime"
directories and create a new subdirectory named "vim73".
directories and create a new subdirectory named "vim74".
Copy the "runtime" files into "vim73":
copy runtime\* vim73
Copy the "runtime" files into "vim74":
copy runtime\* vim74
B. Copy the new binaries into the "vim73" directory
B. Copy the new binaries into the "vim74" directory
----------------------------------------------------
Regardless of how you installed the Vim sources, you need to copy the
new binaries you created above into "vim73":
new binaries you created above into "vim74":
copy src\*.exe vim73
copy src\GvimExt\gvimext.dll vim73
copy src\xxd\xxd.exe vim73
copy src\*.exe vim74
copy src\GvimExt\gvimext.dll vim74
copy src\xxd\xxd.exe vim74
C. Move the "vim73" directory into the Vim installation subdirectory
C. Move the "vim74" directory into the Vim installation subdirectory
---------------------------------------------------------------------
Move the "vim73" subdirectory into the subdirectory where you want Vim
Move the "vim74" subdirectory into the subdirectory where you want Vim
to be installed. Typically, this subdirectory will be named "vim".
If you already have a "vim73" subdirectory in "vim", delete it first
If you already have a "vim74" subdirectory in "vim", delete it first
by running its uninstal.exe program.
D. Install Vim
---------------
"cd" to your Vim installation subdirectory "vim\vim73" and run the
"cd" to your Vim installation subdirectory "vim\vim74" and run the
"install.exe" program. It will ask you a number of questions about
how you would like to have your Vim setup. Among these are:
- You can tell it to write a "_vimrc" file with your preferences in the
-50
View File
@@ -1,50 +0,0 @@
{
IBClasses = (
{
ACTIONS = {"_cycleWindows" = id; "_cycleWindowsBackwards" = id; addNewTab = id; };
CLASS = FirstResponder;
LANGUAGE = ObjC;
SUPERCLASS = NSObject;
},
{
ACTIONS = {
fileOpen = id;
fontSizeDown = id;
fontSizeUp = id;
forceNewWindow = id;
newWindow = id;
newWindowAndActivate = id;
openWebsite = id;
orderFrontPreferencePanel = id;
selectNextWindow = id;
selectPreviousWindow = id;
showHelp = id;
showVimHelp = id;
zoomAll = id;
};
CLASS = MMAppController;
LANGUAGE = ObjC;
SUPERCLASS = NSObject;
},
{CLASS = NSMenu; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
{
ACTIONS = {didAdjustSubviews = RBSplitView; willAdjustSubviews = RBSplitView; };
CLASS = NSObject;
LANGUAGE = ObjC;
},
{CLASS = RBSplitSubview; LANGUAGE = ObjC; SUPERCLASS = NSView; },
{
CLASS = RBSplitView;
LANGUAGE = ObjC;
OUTLETS = {delegate = id; };
SUPERCLASS = RBSplitSubview;
},
{
ACTIONS = {checkForUpdates = id; };
CLASS = SUUpdater;
LANGUAGE = ObjC;
SUPERCLASS = NSObject;
}
);
IBVersion = 1;
}
+211
View File
@@ -0,0 +1,211 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="9531" systemVersion="15C50" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
<deployment version="1060" identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="9531"/>
</dependencies>
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="NSApplication">
<connections>
<outlet property="delegate" destination="235" id="236"/>
<outlet property="dockMenu" destination="337" id="341"/>
</connections>
</customObject>
<customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
<customObject id="-3" userLabel="Application"/>
<menu title="MainMenu" systemMenu="main" id="29" userLabel="MainMenu">
<items>
<menuItem title="MacVim" id="56">
<menu key="submenu" title="MacVim" systemMenu="apple" id="57">
<items>
<menuItem title="About MacVim" id="58">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
</connections>
</menuItem>
<menuItem title="Check for updates…" id="255">
<connections>
<action selector="checkForUpdates:" target="Jqk-qh-n0J" id="Wau-rL-cbn"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="196">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
<menuItem title="Preferences…" keyEquivalent="," id="129">
<connections>
<action selector="orderFrontPreferencePanel:" target="235" id="252"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="143">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
<menuItem title="Services" id="131">
<menu key="submenu" title="Services" systemMenu="services" id="130"/>
</menuItem>
<menuItem isSeparatorItem="YES" id="144">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
<menuItem title="Hide MacVim" keyEquivalent="h" id="134">
<connections>
<action selector="hide:" target="-2" id="152"/>
</connections>
</menuItem>
<menuItem title="Hide Others" keyEquivalent="h" id="145">
<modifierMask key="keyEquivalentModifierMask" option="YES" command="YES"/>
<connections>
<action selector="hideOtherApplications:" target="-2" id="146"/>
</connections>
</menuItem>
<menuItem title="Show All" id="150">
<connections>
<action selector="unhideAllApplications:" target="-2" id="153"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="149">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
<menuItem title="Quit MacVim" keyEquivalent="q" id="136">
<connections>
<action selector="terminate:" target="-2" id="139"/>
</connections>
</menuItem>
</items>
</menu>
</menuItem>
<menuItem title="File" id="217">
<menu key="submenu" title="File" id="218">
<items>
<menuItem title="New Window" keyEquivalent="n" id="219">
<connections>
<action selector="newWindow:" target="235" id="251"/>
</connections>
</menuItem>
<menuItem title="Open…" keyEquivalent="o" id="261">
<connections>
<action selector="fileOpen:" target="235" id="277"/>
</connections>
</menuItem>
<menuItem title="Open Recent" id="262">
<menu key="submenu" title="Open Recent" id="271">
<items>
<menuItem title="Clear Menu" id="272">
<connections>
<action selector="clearRecentDocuments:" target="-1" id="278"/>
</connections>
</menuItem>
</items>
</menu>
</menuItem>
<menuItem isSeparatorItem="YES" id="263">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
<menuItem title="Close" keyEquivalent="w" id="248">
<connections>
<action selector="performClose:" target="-1" id="249"/>
</connections>
</menuItem>
</items>
</menu>
</menuItem>
<menuItem title="Edit" id="281">
<menu key="submenu" title="Edit" id="282">
<items>
<menuItem title="Undo" keyEquivalent="z" id="283">
<connections>
<action selector="undo:" target="-1" id="316"/>
</connections>
</menuItem>
<menuItem title="Redo" keyEquivalent="Z" id="284">
<connections>
<action selector="redo:" target="-1" id="317"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="285">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
<menuItem title="Cut" keyEquivalent="x" id="286">
<connections>
<action selector="cut:" target="-1" id="318"/>
</connections>
</menuItem>
<menuItem title="Copy" keyEquivalent="c" id="287">
<connections>
<action selector="copy:" target="-1" id="319"/>
</connections>
</menuItem>
<menuItem title="Paste" keyEquivalent="v" id="288">
<connections>
<action selector="paste:" target="-1" id="320"/>
</connections>
</menuItem>
<menuItem title="Delete" id="290">
<connections>
<action selector="delete:" target="-1" id="321"/>
</connections>
</menuItem>
<menuItem title="Select All" keyEquivalent="a" id="291">
<connections>
<action selector="selectAll:" target="-1" id="322"/>
</connections>
</menuItem>
</items>
</menu>
</menuItem>
<menuItem title="Window" id="309">
<menu key="submenu" title="Window" id="310">
<items>
<menuItem title="Minimize" keyEquivalent="m" id="311">
<connections>
<action selector="performMiniaturize:" target="-1" id="323"/>
</connections>
</menuItem>
<menuItem title="Zoom" id="312">
<connections>
<action selector="performZoom:" target="-1" id="324"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="313">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
<menuItem title="Bring All to Front" id="314">
<connections>
<action selector="arrangeInFront:" target="-1" id="325"/>
</connections>
</menuItem>
</items>
</menu>
</menuItem>
<menuItem title="Help" id="232">
<menu key="submenu" title="Help" id="233">
<items>
<menuItem title="MacVim Help" keyEquivalent="?" id="275">
<modifierMask key="keyEquivalentModifierMask" shift="YES" command="YES"/>
<connections>
<action selector="showVimHelp:" target="235" id="329"/>
</connections>
</menuItem>
<menuItem title="MacVim Website" id="234">
<connections>
<action selector="openWebsite:" target="235" id="274"/>
</connections>
</menuItem>
</items>
</menu>
</menuItem>
</items>
</menu>
<customObject id="235" userLabel="MMAppController" customClass="MMAppController"/>
<menu id="337" userLabel="DockMenu">
<items>
<menuItem title="New Window" id="338">
<attributedString key="attributedTitle"/>
<connections>
<action selector="newWindowAndActivate:" target="235" id="350"/>
</connections>
</menuItem>
</items>
</menu>
<customObject id="Jqk-qh-n0J" customClass="SUUpdater"/>
</objects>
</document>
-27
View File
@@ -1,27 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IBDocumentLocation</key>
<string>84 130 356 240 0 0 1024 746 </string>
<key>IBEditorPositions</key>
<dict>
<key>29</key>
<string>84 375 281 44 0 0 1024 746 </string>
</dict>
<key>IBFramework Version</key>
<string>489.0</string>
<key>IBLastKnownRelativeProjectPath</key>
<string>../../MacVim.xcodeproj</string>
<key>IBOldestOS</key>
<integer>5</integer>
<key>IBOpenObjects</key>
<array>
<integer>29</integer>
</array>
<key>IBSystem Version</key>
<string>8S165</string>
<key>targetFramework</key>
<string>IBCocoaFramework</string>
</dict>
</plist>
Binary file not shown.
File diff suppressed because it is too large Load Diff
Binary file not shown.
+9 -2
View File
@@ -1255,7 +1255,12 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>89</string>
<string>93</string>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
@@ -1301,7 +1306,9 @@
</dict>
</array>
<key>SUFeedURL</key>
<string>http://b4winckler.github.com/macvim/appcast/stable.xml</string>
<string>https://raw.githubusercontent.com/macvim-dev/macvim/gh-pages/appcast/latest.xml</string>
<key>SUPublicDSAKeyFile</key>
<string>dsa_pub.pem</string>
<key>NSAppleScriptEnabled</key>
<true/>
+8 -1
View File
@@ -155,7 +155,14 @@ enum {
[[target windowController] setWindow:self];
oldTabBarStyle = [[view tabBarControl] styleName];
[[view tabBarControl] setStyleNamed:@"Unified"];
NSString *style;
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10
style = @"Yosemite";
#else
style = @"Unified";
#endif
[[view tabBarControl] setStyleNamed:style];
// add text view
oldPosition = [view frame].origin;
+10 -2
View File
@@ -115,8 +115,8 @@ enum {
// Create the tab bar control (which is responsible for actually
// drawing the tabline and tabs).
NSRect tabFrame = { { 0, frame.size.height - 22 },
{ frame.size.width, 22 } };
NSRect tabFrame = { { 0, frame.size.height - kPSMTabBarControlHeight },
{ frame.size.width, kPSMTabBarControlHeight } };
tabBarControl = [[PSMTabBarControl alloc] initWithFrame:tabFrame];
[tabView setDelegate:tabBarControl];
@@ -125,10 +125,18 @@ enum {
[tabBarControl setDelegate:self];
[tabBarControl setHidden:YES];
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10
CGFloat screenWidth = [[NSScreen mainScreen] frame].size.width;
[tabBarControl setStyleNamed:@"Yosemite"];
[tabBarControl setCellMinWidth:120];
[tabBarControl setCellMaxWidth:screenWidth];
[tabBarControl setCellOptimumWidth:screenWidth];
#else
[tabBarControl setCellMinWidth:[ud integerForKey:MMTabMinWidthKey]];
[tabBarControl setCellMaxWidth:[ud integerForKey:MMTabMaxWidthKey]];
[tabBarControl setCellOptimumWidth:
[ud integerForKey:MMTabOptimumWidthKey]];
#endif
[tabBarControl setShowAddTabButton:[ud boolForKey:MMShowAddTabButtonKey]];
[[tabBarControl addTabButton] setTarget:self];
+12 -4
View File
@@ -80,6 +80,14 @@
#define FUOPT_BGCOLOR_HLGROUP 0x004
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10
# define TABBAR_STYLE_UNIFINED @"Yosemite"
# define TABBAR_STYLE_METAL @"Yosemite"
#else
# define TABBAR_STYLE_UNIFINED @"Unified"
# define TABBAR_STYLE_METAL @"Metal"
#endif
@interface MMWindowController (Private)
- (NSSize)contentSize;
@@ -1173,7 +1181,7 @@
[[window animator] setAlphaValue:0];
} completionHandler:^{
[window setStyleMask:([window styleMask] | NSFullScreenWindowMask)];
[[vimView tabBarControl] setStyleNamed:@"Unified"];
[[vimView tabBarControl] setStyleNamed:TABBAR_STYLE_UNIFINED];
[self updateTablineSeparator];
// Stay dark for some time to wait for things to sync, then do the full screen operation
@@ -1234,7 +1242,7 @@
fullScreenEnabled = NO;
[window setAlphaValue:1];
[window setStyleMask:([window styleMask] & ~NSFullScreenWindowMask)];
[[vimView tabBarControl] setStyleNamed:@"Metal"];
[[vimView tabBarControl] setStyleNamed:TABBAR_STYLE_METAL];
[self updateTablineSeparator];
[window setFrame:preFullScreenFrame display:YES];
}
@@ -1264,7 +1272,7 @@
[[window animator] setAlphaValue:0];
} completionHandler:^{
[window setStyleMask:([window styleMask] & ~NSFullScreenWindowMask)];
[[vimView tabBarControl] setStyleNamed:@"Metal"];
[[vimView tabBarControl] setStyleNamed:TABBAR_STYLE_METAL];
[self updateTablineSeparator];
[window setFrame:preFullScreenFrame display:YES];
@@ -1309,7 +1317,7 @@
fullScreenEnabled = YES;
[window setAlphaValue:1];
[window setStyleMask:([window styleMask] | NSFullScreenWindowMask)];
[[vimView tabBarControl] setStyleNamed:@"Unified"];
[[vimView tabBarControl] setStyleNamed:TABBAR_STYLE_UNIFINED];
[self updateTablineSeparator];
[self maximizeWindow:fullScreenOptions];
}
@@ -64,6 +64,9 @@
1DE9B9500D341AB8008FEDD4 /* MMWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 1DE9B94E0D341AB8008FEDD4 /* MMWindow.m */; };
1DED78600C6DE43D0079945F /* vimrc in Copy Vim Runtime Files */ = {isa = PBXBuildFile; fileRef = 1DED785F0C6DE43D0079945F /* vimrc */; };
1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D493DB90C52533B00AB718C /* PSMTabBarControl.framework */; };
52A364731C4A5789005757EC /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52A364721C4A5789005757EC /* Sparkle.framework */; };
52A364761C4A57C1005757EC /* Sparkle.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 52A364721C4A5789005757EC /* Sparkle.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
52B7ED9B1C4A4D6900AFFF15 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */; };
8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; };
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
@@ -112,6 +115,7 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
52A364761C4A57C1005757EC /* Sparkle.framework in Copy Frameworks */,
1D493DBA0C52534300AB718C /* PSMTabBarControl.framework in Copy Frameworks */,
);
name = "Copy Frameworks";
@@ -214,6 +218,8 @@
29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
32CA4F630368D1EE00C91783 /* MacVim_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacVim_Prefix.pch; sourceTree = "<group>"; };
52818AFA1C1C075300F59085 /* QuickLookStephen.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = QuickLookStephen.xcodeproj; path = qlstephen/QuickLookStephen.xcodeproj; sourceTree = "<group>"; };
52A364721C4A5789005757EC /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = "<group>"; };
52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = "<group>"; };
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
8D1107320486CEB800E47090 /* MacVim.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MacVim.app; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
@@ -226,6 +232,7 @@
1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */,
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
1D8B5A53104AF9FF002E59D5 /* Carbon.framework in Frameworks */,
52A364731C4A5789005757EC /* Sparkle.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -379,6 +386,7 @@
29B97317FDCFA39411CA2CEA /* Resources */ = {
isa = PBXGroup;
children = (
52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */,
1D384A0D100D671700D3C22F /* KeyBinding.plist */,
1D9C602E0EF79C0C0034AD44 /* MacVim.icns */,
1D8BEA73104992290069B072 /* FindAndReplace.nib */,
@@ -402,6 +410,7 @@
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
isa = PBXGroup;
children = (
52A364721C4A5789005757EC /* Sparkle.framework */,
1D8B5A52104AF9FF002E59D5 /* Carbon.framework */,
1D493DB30C52533B00AB718C /* PSMTabBarControl.xcodeproj */,
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
@@ -513,6 +522,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
52B7ED9B1C4A4D6900AFFF15 /* dsa_pub.pem in Resources */,
8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */,
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */,
1D0E051C0BA5F83800B6049E /* Colors.plist in Resources */,
@@ -664,6 +674,7 @@
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
"$(PROJECT_DIR)",
);
FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)\"";
GCC_DYNAMIC_NO_PIC = NO;
@@ -676,6 +687,7 @@
HEADER_SEARCH_PATHS = "";
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = "";
ONLY_ACTIVE_ARCH = YES;
PRODUCT_BUNDLE_IDENTIFIER = org.vim.MacVim;
@@ -694,6 +706,7 @@
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
"$(PROJECT_DIR)",
);
FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)\"";
GCC_DYNAMIC_NO_PIC = YES;
@@ -705,6 +718,7 @@
HEADER_SEARCH_PATHS = "";
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = "";
ONLY_ACTIVE_ARCH = YES;
PRODUCT_BUNDLE_IDENTIFIER = org.vim.MacVim;
@@ -35,6 +35,10 @@
52C0B9B515BDB7A9000C268F /* overflowImagePressed@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 52C0B9B315BDB7A9000C268F /* overflowImagePressed@2x.png */; };
52C268D015BDB72B0012FECA /* overflowImage.png in Resources */ = {isa = PBXBuildFile; fileRef = 52C268CE15BDB72B0012FECA /* overflowImage.png */; };
52C268D115BDB72B0012FECA /* overflowImagePressed.png in Resources */ = {isa = PBXBuildFile; fileRef = 52C268CF15BDB72B0012FECA /* overflowImagePressed.png */; };
52FAFCCF1C30F4B500C6E613 /* TabNewYosemite.png in Resources */ = {isa = PBXBuildFile; fileRef = 52FAFCCD1C30F4B500C6E613 /* TabNewYosemite.png */; };
52FAFCD01C30F4B500C6E613 /* TabNewYosemite@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 52FAFCCE1C30F4B500C6E613 /* TabNewYosemite@2x.png */; };
52FAFCD31C30F4DF00C6E613 /* PSMYosemiteTabStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = 52FAFCD11C30F4DF00C6E613 /* PSMYosemiteTabStyle.h */; };
52FAFCD41C30F4DF00C6E613 /* PSMYosemiteTabStyle.m in Sources */ = {isa = PBXBuildFile; fileRef = 52FAFCD21C30F4DF00C6E613 /* PSMYosemiteTabStyle.m */; };
546DEAF1067F63070098DCC4 /* PSMTabBarControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 0259C576FE90428111CA0C5A /* PSMTabBarControl.m */; };
546DEAF2067F630E0098DCC4 /* PSMTabBarControl.h in Headers */ = {isa = PBXBuildFile; fileRef = 0259C57AFE90428111CA0C5A /* PSMTabBarControl.h */; settings = {ATTRIBUTES = (Public, ); }; };
A2082A9009EAEB34009AC8BE /* PSMTabDragAssistant.h in Headers */ = {isa = PBXBuildFile; fileRef = A2082A8D09EAEB33009AC8BE /* PSMTabDragAssistant.h */; };
@@ -111,6 +115,10 @@
52C0B9B315BDB7A9000C268F /* overflowImagePressed@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "overflowImagePressed@2x.png"; path = "images/overflowImagePressed@2x.png"; sourceTree = "<group>"; };
52C268CE15BDB72B0012FECA /* overflowImage.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = overflowImage.png; path = images/overflowImage.png; sourceTree = "<group>"; };
52C268CF15BDB72B0012FECA /* overflowImagePressed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = overflowImagePressed.png; path = images/overflowImagePressed.png; sourceTree = "<group>"; };
52FAFCCD1C30F4B500C6E613 /* TabNewYosemite.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = TabNewYosemite.png; path = images/TabNewYosemite.png; sourceTree = "<group>"; };
52FAFCCE1C30F4B500C6E613 /* TabNewYosemite@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "TabNewYosemite@2x.png"; path = "images/TabNewYosemite@2x.png"; sourceTree = "<group>"; };
52FAFCD11C30F4DF00C6E613 /* PSMYosemiteTabStyle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PSMYosemiteTabStyle.h; path = source/PSMYosemiteTabStyle.h; sourceTree = "<group>"; };
52FAFCD21C30F4DF00C6E613 /* PSMYosemiteTabStyle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PSMYosemiteTabStyle.m; path = source/PSMYosemiteTabStyle.m; sourceTree = "<group>"; };
53DF68FD067E5B5A0090B5B0 /* PSMTabBarControl.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PSMTabBarControl.framework; sourceTree = BUILT_PRODUCTS_DIR; };
53DF68FE067E5B5A0090B5B0 /* PSMTabBarControlFramework-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "PSMTabBarControlFramework-Info.plist"; sourceTree = "<group>"; };
54D33B2806778E3300C9C163 /* PSMTabBarControl.ibclassdescription */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PSMTabBarControl.ibclassdescription; sourceTree = "<group>"; };
@@ -309,6 +317,8 @@
A2D32EFF09A63D7A00EC8662 /* PSMMetalTabStyle.m */,
A2D98B070A2B432C0064C6F8 /* PSMUnifiedTabStyle.h */,
A2D98B080A2B432C0064C6F8 /* PSMUnifiedTabStyle.m */,
52FAFCD11C30F4DF00C6E613 /* PSMYosemiteTabStyle.h */,
52FAFCD21C30F4DF00C6E613 /* PSMYosemiteTabStyle.m */,
A268EA5F09A9831800E082AA /* PSMRolloverButton.h */,
A268EA6009A9831800E082AA /* PSMRolloverButton.m */,
A251BE810959A1B90058BC7F /* PSMOverflowPopUpButton.h */,
@@ -382,6 +392,8 @@
523897EE15BDA9AC00498A53 /* TabClose_Front_Pressed@2x.png */,
52A57C0E15BBA230003EC59C /* TabClose_Front_Rollover.png */,
523897EF15BDA9AC00498A53 /* TabClose_Front_Rollover@2x.png */,
52FAFCCD1C30F4B500C6E613 /* TabNewYosemite.png */,
52FAFCCE1C30F4B500C6E613 /* TabNewYosemite@2x.png */,
);
name = Images;
sourceTree = "<group>";
@@ -396,6 +408,7 @@
546DEAF2067F630E0098DCC4 /* PSMTabBarControl.h in Headers */,
A251BE850959A1B90058BC7F /* PSMOverflowPopUpButton.h in Headers */,
A251BE870959A1B90058BC7F /* PSMTabBarCell.h in Headers */,
52FAFCD31C30F4DF00C6E613 /* PSMYosemiteTabStyle.h in Headers */,
A2D32EDC09A634C900EC8662 /* PSMTabStyle.h in Headers */,
A2D32F0009A63D7A00EC8662 /* PSMMetalTabStyle.h in Headers */,
A268EA6209A9831800E082AA /* PSMRolloverButton.h in Headers */,
@@ -478,8 +491,10 @@
52A57C0F15BBA230003EC59C /* TabClose_Front.png in Resources */,
52A57C1015BBA230003EC59C /* TabClose_Front_Pressed.png in Resources */,
52A57C1115BBA230003EC59C /* TabClose_Front_Rollover.png in Resources */,
52FAFCCF1C30F4B500C6E613 /* TabNewYosemite.png in Resources */,
523897F415BDA9AC00498A53 /* TabClose_Front_Pressed@2x.png in Resources */,
523897F515BDA9AC00498A53 /* TabClose_Front_Rollover@2x.png in Resources */,
52FAFCD01C30F4B500C6E613 /* TabNewYosemite@2x.png in Resources */,
523897F615BDA9AC00498A53 /* TabClose_Front@2x.png in Resources */,
523897F715BDA9AC00498A53 /* TabNewMetal@2x.png in Resources */,
523897F815BDA9AC00498A53 /* TabNewMetalPressed@2x.png in Resources */,
@@ -505,6 +520,7 @@
A268EA6309A9831800E082AA /* PSMRolloverButton.m in Sources */,
A2129BB309AEB58F00724E6C /* PSMProgressIndicator.m in Sources */,
A2082A9109EAEB34009AC8BE /* PSMTabDragAssistant.m in Sources */,
52FAFCD41C30F4DF00C6E613 /* PSMYosemiteTabStyle.m in Sources */,
A2D98B0B0A2B432C0064C6F8 /* PSMUnifiedTabStyle.m in Sources */,
A2D98B130A2B43FA0064C6F8 /* NSBezierPath_AMShading.m in Sources */,
);
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

@@ -393,12 +393,7 @@ void MyNSDrawWindowBackground(NSRect rect)
if ([cell closeButtonPressed]) closeButton = metalCloseButtonDown;
closeButtonSize = [closeButton size];
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6
[closeButton drawInRect:closeButtonRect fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0 respectFlipped:YES hints:nil];
#else
[closeButton setFlipped:YES];
[closeButton drawAtPoint:closeButtonRect.origin fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0];
#endif
// scoot label over
labelPosition += closeButtonSize.width + kPSMTabBarCellPadding;
@@ -40,15 +40,14 @@
}
NSImage *image = (_down) ? _PSMTabBarOverflowDownPopUpImage : _PSMTabBarOverflowPopUpImage;
NSSize imageSize = [image size];
rect.origin.x = NSMidX(rect) - (imageSize.width * 0.5);
rect.origin.y = NSMidY(rect) - (imageSize.height * 0.5);
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6
[image drawInRect:rect fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0 respectFlipped:YES hints:nil];
#else
[image setFlipped:YES];
[image drawAtPoint:rect.origin fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0];
#endif
NSSize imageSize = [image size];
NSRect bounds = [self bounds];
NSPoint drawPoint = NSMakePoint(NSMidX(bounds) - (imageSize.width * 0.5f),
NSMidY(bounds) - (imageSize.height * 0.5f));
[image drawAtPoint:drawPoint
fromRect:NSZeroRect
operation:NSCompositeSourceOver
fraction:1.0f];
}
- (void)mouseDown:(NSEvent *)event
@@ -12,26 +12,18 @@
#import <Cocoa/Cocoa.h>
#ifndef NSINTEGER_DEFINED
// NSInteger was introduced in 10.5
# if __LP64__ || NS_BUILD_32_LIKE_64
typedef long NSInteger;
typedef unsigned long NSUInteger;
# else
typedef int NSInteger;
typedef unsigned int NSUInteger;
# endif
# define NSINTEGER_DEFINED 1
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10
# define kPSMTabBarControlHeight 25
#else
# define kPSMTabBarControlHeight 22
#endif
#ifndef MAC_OS_X_VERSION_10_6
# define MAC_OS_X_VERSION_10_6 1060
#endif
#define kPSMTabBarControlHeight 22
// internal cell border
#define MARGIN_X 6
#define MARGIN_Y 3
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10
# define MARGIN_Y 5
#else
# define MARGIN_Y 3
#endif
// padding between objects
#define kPSMTabBarCellPadding 4
// fixed size objects
@@ -13,6 +13,7 @@
#import "PSMTabStyle.h"
#import "PSMMetalTabStyle.h"
#import "PSMUnifiedTabStyle.h"
#import "PSMYosemiteTabStyle.h"
#import "PSMTabDragAssistant.h"
@interface PSMTabBarControl (Private)
@@ -254,10 +255,11 @@
- (void)setStyleNamed:(NSString *)name
{
[style release];
if ([name isEqualToString:@"Unified"]){
style = [[PSMUnifiedTabStyle alloc] init];
}
else {
if([name isEqualToString:@"Unified"]){
style = [[PSMUnifiedTabStyle alloc] init];
} else if([name isEqualToString:@"Yosemite"]){
style = [[PSMYosemiteTabStyle alloc] init];
} else {
style = [[PSMMetalTabStyle alloc] init];
}
@@ -389,13 +389,8 @@
if ([cell closeButtonPressed]) closeButton = unifiedCloseButtonDown;
closeButtonSize = [closeButton size];
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6
[closeButton drawInRect:closeButtonRect fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0 respectFlipped:YES hints:nil];
#else
[closeButton setFlipped:YES];
[closeButton drawAtPoint:closeButtonRect.origin fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0];
#endif
// scoot label over
labelPosition += closeButtonSize.width + kPSMTabBarCellPadding;
}
@@ -0,0 +1,28 @@
//
// PSMYosemiteTabStyle.h
// PSMTabBarControl
//
// Created by Christoffer Winterkvist on 25/08/14.
//
//
#import <Cocoa/Cocoa.h>
#import "PSMTabStyle.h"
@interface PSMYosemiteTabStyle : NSObject <PSMTabStyle> {
NSImage *closeButton;
NSImage *closeButtonDown;
NSImage *closeButtonOver;
NSImage *_addTabButtonImage;
NSImage *_addTabButtonPressedImage;
NSImage *_addTabButtonRolloverImage;
NSMutableParagraphStyle *truncatingTailParagraphStyle;
NSMutableParagraphStyle *centeredParagraphStyle;
}
- (void)drawInteriorWithTabCell:(PSMTabBarCell *)cell inView:(NSView*)controlView;
- (void)encodeWithCoder:(NSCoder *)aCoder;
- (id)initWithCoder:(NSCoder *)aDecoder;
@end
@@ -0,0 +1,498 @@
//
// PSMYosemiteTabStyle.m
// PSMTabBarControl
//
// Created by Christoffer Winterkvist on 25/08/14.
//
//
#import "PSMYosemiteTabStyle.h"
#define kPSMMetalObjectCounterRadius 7.0
#define kPSMMetalCounterMinWidth 20
void YosemiteNSDrawWindowBackground(NSRect rect, NSColor *color)
{
[color set];
NSRectFill( rect );
}
@implementation PSMYosemiteTabStyle
- (void)dealloc
{
[closeButton release];
[closeButtonDown release];
[closeButtonOver release];
[_addTabButtonImage release];
[_addTabButtonPressedImage release];
[_addTabButtonRolloverImage release];
[truncatingTailParagraphStyle release];
[centeredParagraphStyle release];
[super dealloc];
}
#pragma mark -
#pragma mark Initializers
- (id)init
{
self = [super init];
if (!self) return nil;
closeButton = [[NSImage alloc] initByReferencingFile:[[PSMTabBarControl bundle] pathForImageResource:@"TabClose_Front"]];
//NSLog(@"closeButton=%@ path=%@", metalCloseButton,
// [[PSMTabBarControl bundle] pathForImageResource:@"TabClose_Front"]);
closeButtonDown = [[NSImage alloc] initByReferencingFile:[[PSMTabBarControl bundle] pathForImageResource:@"TabClose_Front_Pressed"]];
closeButtonOver = [[NSImage alloc] initByReferencingFile:[[PSMTabBarControl bundle] pathForImageResource:@"TabClose_Front_Rollover"]];
_addTabButtonImage = [[NSImage alloc] initByReferencingFile:[[PSMTabBarControl bundle] pathForImageResource:@"TabNewMetal"]];
_addTabButtonPressedImage = [[NSImage alloc] initByReferencingFile:[[PSMTabBarControl bundle] pathForImageResource:@"TabNewMetalPressed"]];
_addTabButtonRolloverImage = [[NSImage alloc] initByReferencingFile:[[PSMTabBarControl bundle] pathForImageResource:@"TabNewMetalRollover"]];
return self;
}
- (NSString *)name
{
return @"Yosemite";
}
#pragma mark -
#pragma mark Control Specific
- (float)leftMarginForTabBarControl
{
return -1.0f;
}
- (float)rightMarginForTabBarControl
{
return 24.0f;
}
#pragma mark -
#pragma mark Add Tab Button
- (NSImage *)addTabButtonImage
{
return _addTabButtonImage;
}
- (NSImage *)addTabButtonPressedImage
{
return _addTabButtonPressedImage;
}
- (NSImage *)addTabButtonRolloverImage
{
return _addTabButtonRolloverImage;
}
- (NSColor *)backgroundColor:(BOOL)isKeyWindow
{
NSColor *backgroundColor;
if (isKeyWindow) {
backgroundColor = [NSColor colorWithCalibratedHue:0.000 saturation:0.000 brightness:0.875 alpha:1];
} else {
backgroundColor = [NSColor colorWithCalibratedHue:0.000 saturation:0.000 brightness:0.957 alpha:1];
}
return backgroundColor;
}
- (NSColor *)borderColor
{
return [NSColor colorWithCalibratedHue:0.000 saturation:0.000 brightness:0.678 alpha:1];
}
#pragma mark -
#pragma mark Cell Specific
- (NSRect) closeButtonRectForTabCell:(PSMTabBarCell *)cell
{
NSRect cellFrame = [cell frame];
if ([cell hasCloseButton] == NO) {
return NSZeroRect;
}
NSRect result;
result.size = [closeButton size];
result.origin.x = cellFrame.origin.x + MARGIN_X;
result.origin.y = cellFrame.origin.y + MARGIN_Y + 2.0;
return result;
}
- (NSRect)iconRectForTabCell:(PSMTabBarCell *)cell
{
NSRect cellFrame = [cell frame];
if ([cell hasIcon] == NO) {
return NSZeroRect;
}
NSRect result;
result.size = NSMakeSize(kPSMTabBarIconWidth, kPSMTabBarIconWidth);
result.origin.x = cellFrame.origin.x + MARGIN_X;
result.origin.y = cellFrame.origin.y + MARGIN_Y;
if([cell hasCloseButton] && ![cell isCloseButtonSuppressed])
result.origin.x += [closeButton size].width + kPSMTabBarCellPadding;
if([cell state] == NSOnState){
result.origin.y += 1;
}
return result;
}
- (NSRect)indicatorRectForTabCell:(PSMTabBarCell *)cell
{
NSRect cellFrame = [cell frame];
if ([[cell indicator] isHidden]) {
return NSZeroRect;
}
NSRect result;
result.size = NSMakeSize(kPSMTabBarIndicatorWidth, kPSMTabBarIndicatorWidth);
result.origin.x = cellFrame.origin.x + cellFrame.size.width - MARGIN_X - kPSMTabBarIndicatorWidth;
result.origin.y = cellFrame.origin.y + MARGIN_Y;
if([cell state] == NSOnState){
result.origin.y -= 1;
}
return result;
}
- (NSRect)objectCounterRectForTabCell:(PSMTabBarCell *)cell
{
NSRect cellFrame = [cell frame];
if ([cell count] == 0) {
return NSZeroRect;
}
float countWidth = [[self attributedObjectCountValueForTabCell:cell] size].width;
countWidth += (2 * kPSMMetalObjectCounterRadius - 6.0);
if(countWidth < kPSMMetalCounterMinWidth)
countWidth = kPSMMetalCounterMinWidth;
NSRect result;
result.size = NSMakeSize(countWidth, 2 * kPSMMetalObjectCounterRadius); // temp
result.origin.x = cellFrame.origin.x + cellFrame.size.width - MARGIN_X - result.size.width;
result.origin.y = cellFrame.origin.y + MARGIN_Y + 1.0;
if(![[cell indicator] isHidden])
result.origin.x -= kPSMTabBarIndicatorWidth + kPSMTabBarCellPadding;
return result;
}
- (float)minimumWidthOfTabCell:(PSMTabBarCell *)cell
{
float resultWidth = 0.0;
// left margin
resultWidth = MARGIN_X;
// close button?
if([cell hasCloseButton] && ![cell isCloseButtonSuppressed])
resultWidth += [closeButton size].width + kPSMTabBarCellPadding;
// icon?
if([cell hasIcon])
resultWidth += kPSMTabBarIconWidth + kPSMTabBarCellPadding;
// the label
resultWidth += kPSMMinimumTitleWidth;
// object counter?
if([cell count] > 0)
resultWidth += [self objectCounterRectForTabCell:cell].size.width + kPSMTabBarCellPadding;
// indicator?
if ([[cell indicator] isHidden] == NO)
resultWidth += kPSMTabBarCellPadding + kPSMTabBarIndicatorWidth;
// right margin
resultWidth += MARGIN_X;
return ceil(resultWidth);
}
- (float)desiredWidthOfTabCell:(PSMTabBarCell *)cell
{
float resultWidth = 0.0;
// left margin
resultWidth = MARGIN_X;
// close button?
if ([cell hasCloseButton] && ![cell isCloseButtonSuppressed])
resultWidth += [closeButton size].width + kPSMTabBarCellPadding;
// icon?
if([cell hasIcon])
resultWidth += kPSMTabBarIconWidth + kPSMTabBarCellPadding;
// the label
resultWidth += [[cell attributedStringValue] size].width;
// object counter?
if([cell count] > 0)
resultWidth += [self objectCounterRectForTabCell:cell].size.width + kPSMTabBarCellPadding;
// indicator?
if ([[cell indicator] isHidden] == NO)
resultWidth += kPSMTabBarCellPadding + kPSMTabBarIndicatorWidth;
// right margin
resultWidth += MARGIN_X;
return ceil(resultWidth);
}
#pragma mark -
#pragma mark Cell Values
- (NSAttributedString *)attributedObjectCountValueForTabCell:(PSMTabBarCell *)cell
{
NSMutableAttributedString *attrStr;
NSFontManager *fm = [NSFontManager sharedFontManager];
NSNumberFormatter *nf = [[[NSNumberFormatter alloc] init] autorelease];
[nf setLocalizesFormat:YES];
[nf setFormat:@"0"];
[nf setHasThousandSeparators:YES];
NSString *contents = [nf stringFromNumber:[NSNumber numberWithInt:[cell count]]];
attrStr = [[[NSMutableAttributedString alloc] initWithString:contents] autorelease];
NSRange range = NSMakeRange(0, [contents length]);
// Add font attribute
[attrStr addAttribute:NSFontAttributeName value:[fm convertFont:[NSFont fontWithName:@"Helvetica" size:11.0] toHaveTrait:NSBoldFontMask] range:range];
[attrStr addAttribute:NSForegroundColorAttributeName value:[[NSColor whiteColor] colorWithAlphaComponent:0.85] range:range];
return attrStr;
}
- (NSAttributedString *)attributedStringValueForTabCell:(PSMTabBarCell *)cell
{
NSMutableAttributedString *attrStr;
NSString *contents = [cell stringValue];
attrStr = [[[NSMutableAttributedString alloc] initWithString:contents] autorelease];
NSRange range = NSMakeRange(0, [contents length]);
// Add font attribute
[attrStr addAttribute:NSFontAttributeName value:[NSFont systemFontOfSize:11.0] range:range];
PSMTabBarControl *bar = (PSMTabBarControl *)cell.controlView;
BOOL isKeyWindow = [bar.window isKeyWindow];
CGFloat textAlpha;
if ([cell state] == NSOnState) {
textAlpha = (isKeyWindow) ? 1.0f : 0.5f;
} else {
textAlpha = (isKeyWindow) ? 0.5f : 0.25f;
}
NSColor *textColor = [[NSColor textColor] colorWithAlphaComponent:textAlpha];
[attrStr addAttribute:NSForegroundColorAttributeName value:textColor range:range];
// Paragraph Style for Truncating Long Text
if (!truncatingTailParagraphStyle) {
truncatingTailParagraphStyle = [[[NSParagraphStyle defaultParagraphStyle] mutableCopy] retain];
[truncatingTailParagraphStyle setLineBreakMode:NSLineBreakByTruncatingHead];
[truncatingTailParagraphStyle setAlignment:NSCenterTextAlignment];
}
[attrStr addAttribute:NSParagraphStyleAttributeName value:truncatingTailParagraphStyle range:range];
return attrStr;
}
#pragma mark -
#pragma mark ---- drawing ----
- (void)drawTabCell:(PSMTabBarCell *)cell
{
NSRect cellFrame = [cell frame];
NSColor * lineColor = nil;
NSBezierPath* bezier = [NSBezierPath bezierPath];
lineColor = [self borderColor];
if ([cell state] == NSOnState) {
// selected tab
NSRect aRect = NSMakeRect(cellFrame.origin.x, cellFrame.origin.y, cellFrame.size.width, cellFrame.size.height);
PSMTabBarControl *bar = (PSMTabBarControl *)cell.controlView;
BOOL isKeyWindow = [bar.window isKeyWindow];
// background
YosemiteNSDrawWindowBackground(aRect, [self backgroundColor:isKeyWindow]);
aRect.size.height -= 1.0f;
aRect.origin.y += 0.5f;
// frame
[lineColor set];
[bezier moveToPoint:NSMakePoint(aRect.origin.x, aRect.origin.y)];
[bezier lineToPoint:NSMakePoint(aRect.origin.x, aRect.origin.y+aRect.size.height)];
[bezier lineToPoint:NSMakePoint(aRect.origin.x+aRect.size.width, aRect.origin.y+aRect.size.height)];
[bezier lineToPoint:NSMakePoint(aRect.origin.x+aRect.size.width, aRect.origin.y)];
[bezier lineToPoint:NSMakePoint(aRect.origin.x, aRect.origin.y)];
[bezier stroke];
} else {
// unselected tab
NSRect aRect = NSMakeRect(cellFrame.origin.x, cellFrame.origin.y, cellFrame.size.width, cellFrame.size.height);
aRect.origin.x += 0.5;
[[NSColor colorWithCalibratedWhite:0.0 alpha:0.1] set];
NSRectFillUsingOperation(aRect, NSCompositeSourceAtop);
// frame
[lineColor set];
[bezier moveToPoint:NSMakePoint(aRect.origin.x, aRect.origin.y)];
[bezier lineToPoint:NSMakePoint(aRect.origin.x + aRect.size.width, aRect.origin.y)];
if(!([cell tabState] & PSMTab_RightIsSelectedMask)){
[bezier lineToPoint:NSMakePoint(aRect.origin.x + aRect.size.width, aRect.origin.y + aRect.size.height)];
}
[bezier stroke];
}
[self drawInteriorWithTabCell:cell inView:[cell controlView]];
}
- (void)drawInteriorWithTabCell:(PSMTabBarCell *)cell inView:(NSView*)controlView
{
NSRect cellFrame = [cell frame];
float labelPosition = cellFrame.origin.x + MARGIN_X;
// close button
if ([cell hasCloseButton] && ![cell isCloseButtonSuppressed]) {
NSSize closeButtonSize = NSZeroSize;
NSRect closeButtonRect = [cell closeButtonRectForFrame:cellFrame];
NSImage *button = nil;
if ([cell closeButtonOver]) button = closeButtonOver;
if ([cell closeButtonPressed]) button = closeButtonDown;
closeButtonSize = [button size];
[button drawInRect:closeButtonRect fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0 respectFlipped:YES hints:nil];
}
// object counter
if([cell count] > 0){
[[NSColor colorWithCalibratedWhite:0.3 alpha:0.6] set];
NSBezierPath *path = [NSBezierPath bezierPath];
NSRect myRect = [self objectCounterRectForTabCell:cell];
[path moveToPoint:NSMakePoint(myRect.origin.x + kPSMMetalObjectCounterRadius, myRect.origin.y)];
[path lineToPoint:NSMakePoint(myRect.origin.x + myRect.size.width - kPSMMetalObjectCounterRadius, myRect.origin.y)];
[path appendBezierPathWithArcWithCenter:NSMakePoint(myRect.origin.x + myRect.size.width - kPSMMetalObjectCounterRadius, myRect.origin.y + kPSMMetalObjectCounterRadius) radius:kPSMMetalObjectCounterRadius startAngle:270.0 endAngle:90.0];
[path lineToPoint:NSMakePoint(myRect.origin.x + kPSMMetalObjectCounterRadius, myRect.origin.y + myRect.size.height)];
[path appendBezierPathWithArcWithCenter:NSMakePoint(myRect.origin.x + kPSMMetalObjectCounterRadius, myRect.origin.y + kPSMMetalObjectCounterRadius) radius:kPSMMetalObjectCounterRadius startAngle:90.0 endAngle:270.0];
[path fill];
// draw attributed string centered in area
NSRect counterStringRect;
NSAttributedString *counterString = [self attributedObjectCountValueForTabCell:cell];
counterStringRect.size = [counterString size];
counterStringRect.origin.x = myRect.origin.x + ((myRect.size.width - counterStringRect.size.width) / 2.0) + 0.25;
counterStringRect.origin.y = myRect.origin.y + ((myRect.size.height - counterStringRect.size.height) / 2.0) + 0.5;
[counterString drawInRect:counterStringRect];
}
// label rect
NSRect labelRect;
labelRect.origin.x = labelPosition;
labelRect.size.width = cellFrame.size.width - (labelRect.origin.x - cellFrame.origin.x) - kPSMTabBarCellPadding;
labelRect.size.height = cellFrame.size.height;
labelRect.origin.y = cellFrame.origin.y + MARGIN_Y + 1.0;
if(![[cell indicator] isHidden])
labelRect.size.width -= (kPSMTabBarIndicatorWidth + kPSMTabBarCellPadding);
if([cell count] > 0)
labelRect.size.width -= ([self objectCounterRectForTabCell:cell].size.width + kPSMTabBarCellPadding);
// label
[[cell attributedStringValue] drawInRect:labelRect];
}
- (void)drawTabBar:(PSMTabBarControl *)bar inRect:(NSRect)rect
{
BOOL isKeyWindow = [bar.window isKeyWindow];
YosemiteNSDrawWindowBackground(rect, [self backgroundColor:isKeyWindow]);
[[NSColor colorWithCalibratedWhite:0.0 alpha:0.0] set];
NSRectFillUsingOperation(rect, NSCompositeSourceAtop);
[[self borderColor] set];
[NSBezierPath strokeLineFromPoint:NSMakePoint(rect.origin.x,rect.origin.y+0.5) toPoint:NSMakePoint(rect.origin.x+rect.size.width,rect.origin.y+0.5)];
[NSBezierPath strokeLineFromPoint:NSMakePoint(rect.origin.x,rect.origin.y+rect.size.height-0.5) toPoint:NSMakePoint(rect.origin.x+rect.size.width,rect.origin.y+rect.size.height-0.5)];
// no tab view == not connected
if(![bar tabView]){
NSRect labelRect = rect;
labelRect.size.height -= 4.0;
labelRect.origin.y += 4.0;
NSMutableAttributedString *attrStr;
NSString *contents = @"PSMTabBarControl";
attrStr = [[[NSMutableAttributedString alloc] initWithString:contents] autorelease];
NSRange range = NSMakeRange(0, [contents length]);
[attrStr addAttribute:NSFontAttributeName value:[NSFont systemFontOfSize:11.0] range:range];
if (!centeredParagraphStyle) {
centeredParagraphStyle = [[[NSParagraphStyle defaultParagraphStyle] mutableCopy] retain];
[centeredParagraphStyle setAlignment:NSCenterTextAlignment];
}
[attrStr addAttribute:NSParagraphStyleAttributeName value:centeredParagraphStyle range:range];
[attrStr drawInRect:labelRect];
return;
}
// draw cells
NSEnumerator *e = [[bar cells] objectEnumerator];
PSMTabBarCell *cell;
while(cell = [e nextObject]){
if(![cell isInOverflowMenu]){
[cell drawWithFrame:[cell frame] inView:bar];
}
}
}
#pragma mark -
#pragma mark Archiving
- (void)encodeWithCoder:(NSCoder *)aCoder
{
if ([aCoder allowsKeyedCoding]) {
[aCoder encodeObject:closeButton forKey:@"metalCloseButton"];
[aCoder encodeObject:closeButtonDown forKey:@"metalCloseButtonDown"];
[aCoder encodeObject:closeButtonOver forKey:@"metalCloseButtonOver"];
[aCoder encodeObject:_addTabButtonImage forKey:@"addTabButtonImage"];
[aCoder encodeObject:_addTabButtonPressedImage forKey:@"addTabButtonPressedImage"];
[aCoder encodeObject:_addTabButtonRolloverImage forKey:@"addTabButtonRolloverImage"];
}
}
- (id)initWithCoder:(NSCoder *)aDecoder
{
if ([aDecoder allowsKeyedCoding]) {
closeButton = [[aDecoder decodeObjectForKey:@"metalCloseButton"] retain];
closeButtonDown = [[aDecoder decodeObjectForKey:@"metalCloseButtonDown"] retain];
closeButtonOver = [[aDecoder decodeObjectForKey:@"metalCloseButtonOver"] retain];
_addTabButtonImage = [[aDecoder decodeObjectForKey:@"addTabButtonImage"] retain];
_addTabButtonPressedImage = [[aDecoder decodeObjectForKey:@"addTabButtonPressedImage"] retain];
_addTabButtonRolloverImage = [[aDecoder decodeObjectForKey:@"addTabButtonRolloverImage"] retain];
}
return self;
}
@end
+1
View File
@@ -0,0 +1 @@
Versions/Current/Modules
+1
View File
@@ -0,0 +1 @@
Versions/Current/PrivateHeaders
@@ -1,13 +0,0 @@
//
// NSApplication+AppCopies.h
// Sparkle
//
// Created by Andy Matuschak on 3/16/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface NSApplication (SUAppCopies)
- (int)copiesRunning;
@end
@@ -1,11 +0,0 @@
//
// NSFileManager+Authentication.m
// Sparkle
//
// Created by Andy Matuschak on 3/9/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
@interface NSFileManager (SUAuthenticationAdditions)
- (BOOL)movePathWithAuthentication:(NSString *)src toPath:(NSString *)dst;
@end
@@ -1,15 +0,0 @@
//
// NSFileManager+Verification.h
// Sparkle
//
// Created by Andy Matuschak on 3/16/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
// For the paranoid folks!
@interface NSFileManager (SUVerification)
- (BOOL)validatePath:(NSString *)path withMD5Hash:(NSString *)hash;
- (BOOL)validatePath:(NSString *)path withEncodedDSASignature:(NSString *)encodedSignature;
@end
@@ -1,61 +0,0 @@
/*
BSD License
Copyright (c) 2002, Brent Simmons
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of ranchero.com or Brent Simmons nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/*
NSString+extras.h
NetNewsWire
Created by Brent Simmons on Fri Jun 14 2002.
Copyright (c) 2002 Brent Simmons. All rights reserved.
*/
#import <Foundation/Foundation.h>
#import <CoreFoundation/CoreFoundation.h>
@interface NSString (extras)
- (NSString *)stringWithSubstitute:(NSString *)subs forCharactersFromSet:(NSCharacterSet *)set;
- (NSString *) trimWhiteSpace;
- (NSString *) stripHTML;
- (NSString *) ellipsizeAfterNWords: (int) n;
+ (BOOL) stringIsEmpty: (NSString *) s;
@end
@@ -1,98 +0,0 @@
/*
BSD License
Copyright (c) 2002, Brent Simmons
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of ranchero.com or Brent Simmons nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/*
RSS.h
A class for reading RSS feeds.
Created by Brent Simmons on Wed Apr 17 2002.
Copyright (c) 2002 Brent Simmons. All rights reserved.
*/
#import <Cocoa/Cocoa.h>
#import <CoreFoundation/CoreFoundation.h>
#import "NSString+extras.h"
@interface RSS : NSObject {
NSDictionary *headerItems;
NSMutableArray *newsItems;
NSString *version;
BOOL flRdf;
BOOL normalize;
}
/*Public*/
- (RSS *) initWithTitle: (NSString *) title andDescription: (NSString *) description;
- (RSS *) initWithData: (NSData *) rssData normalize: (BOOL) fl;
- (RSS *) initWithURL: (NSURL *) url normalize: (BOOL) fl;
- (RSS *) initWithURL: (NSURL *) url normalize: (BOOL) fl userAgent:(NSString *)userAgent;
- (NSDictionary *) headerItems;
- (NSMutableArray *) newsItems;
- (NSString *) version;
// AMM's extensions for Sparkle
- (NSDictionary *)newestItem;
/*Private*/
- (void) createheaderdictionary: (CFXMLTreeRef) tree;
- (void) createitemsarray: (CFXMLTreeRef) tree;
- (void) setversionstring: (CFXMLTreeRef) tree;
- (void) flattenimagechildren: (CFXMLTreeRef) tree into: (NSMutableDictionary *) dictionary;
- (void) flattensourceattributes: (CFXMLNodeRef) node into: (NSMutableDictionary *) dictionary;
- (CFXMLTreeRef) getchanneltree: (CFXMLTreeRef) tree;
- (CFXMLTreeRef) getnamedtree: (CFXMLTreeRef) currentTree name: (NSString *) name;
- (void) normalizeRSSItem: (NSMutableDictionary *) rssItem;
- (NSString *) getelementvalue: (CFXMLTreeRef) tree;
@end
@@ -6,22 +6,21 @@
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#ifndef SUAPPCAST_H
#define SUAPPCAST_H
@class RSS, SUAppcastItem;
@interface SUAppcast : NSObject {
NSArray *items;
id delegate;
}
#import <Foundation/Foundation.h>
#import "SUExport.h"
- (void)fetchAppcastFromURL:(NSURL *)url;
- (void)setDelegate:delegate;
@class SUAppcastItem;
SU_EXPORT @interface SUAppcast : NSObject<NSURLDownloadDelegate>
- (SUAppcastItem *)newestItem;
- (NSArray *)items;
@property (copy) NSString *userAgentString;
@property (copy) NSDictionary *httpHeaders;
- (void)fetchAppcastFromURL:(NSURL *)url completionBlock:(void (^)(NSError *))err;
@property (readonly, copy) NSArray *items;
@end
@interface NSObject (SUAppcastDelegate)
- appcastDidFinishLoading:(SUAppcast *)appcast;
@end
#endif
@@ -6,52 +6,39 @@
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#ifndef SUAPPCASTITEM_H
#define SUAPPCASTITEM_H
#import <Foundation/Foundation.h>
#import "SUExport.h"
@interface SUAppcastItem : NSObject {
NSString *title;
NSDate *date;
NSString *description;
NSURL *releaseNotesURL;
NSString *DSASignature;
NSString *MD5Sum;
NSURL *fileURL;
NSString *fileVersion;
NSString *versionString;
}
SU_EXPORT @interface SUAppcastItem : NSObject
@property (copy, readonly) NSString *title;
@property (copy, readonly) NSDate *date;
@property (copy, readonly) NSString *itemDescription;
@property (strong, readonly) NSURL *releaseNotesURL;
@property (copy, readonly) NSString *DSASignature;
@property (copy, readonly) NSString *minimumSystemVersion;
@property (copy, readonly) NSString *maximumSystemVersion;
@property (strong, readonly) NSURL *fileURL;
@property (copy, readonly) NSString *versionString;
@property (copy, readonly) NSString *displayVersionString;
@property (copy, readonly) NSDictionary *deltaUpdates;
@property (strong, readonly) NSURL *infoURL;
// Initializes with data from a dictionary provided by the RSS class.
- initWithDictionary:(NSDictionary *)dict;
- (instancetype)initWithDictionary:(NSDictionary *)dict;
- (instancetype)initWithDictionary:(NSDictionary *)dict failureReason:(NSString **)error;
- (NSString *)title;
- (void)setTitle:(NSString *)aTitle;
@property (getter=isDeltaUpdate, readonly) BOOL deltaUpdate;
@property (getter=isCriticalUpdate, readonly) BOOL criticalUpdate;
@property (getter=isInformationOnlyUpdate, readonly) BOOL informationOnlyUpdate;
- (NSDate *)date;
- (void)setDate:(NSDate *)aDate;
// Returns the dictionary provided in initWithDictionary; this might be useful later for extensions.
@property (readonly, copy) NSDictionary *propertiesDictionary;
- (NSString *)description;
- (void)setDescription:(NSString *)aDescription;
- (NSURL *)releaseNotesURL;
- (void)setReleaseNotesURL:(NSURL *)aReleaseNotesURL;
- (NSString *)DSASignature;
- (void)setDSASignature:(NSString *)aDSASignature;
- (NSString *)MD5Sum;
- (void)setMD5Sum:(NSString *)aMd5Sum;
- (NSURL *)fileURL;
- (void)setFileURL:(NSURL *)aFileURL;
- (NSString *)fileVersion;
- (void)setFileVersion:(NSString *)aFileVersion;
- (NSString *)versionString;
- (void)setVersionString:(NSString *)versionString;
- (NSURL *)infoURL;
@end
#endif
@@ -1,21 +0,0 @@
//
// SUAutomaticUpdateAlert.h
// Sparkle
//
// Created by Andy Matuschak on 3/18/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@class SUAppcastItem;
@interface SUAutomaticUpdateAlert : NSWindowController {
SUAppcastItem *updateItem;
}
- initWithAppcastItem:(SUAppcastItem *)item;
- (IBAction)relaunchNow:sender;
- (IBAction)relaunchLater:sender;
@end
@@ -1,20 +0,0 @@
//
// SUConstants.h
// Sparkle
//
// Created by Andy Matuschak on 3/16/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
extern NSString *SUUpdaterWillRestartNotification;
extern NSString *SUCheckAtStartupKey;
extern NSString *SUFeedURLKey;
extern NSString *SUShowReleaseNotesKey;
extern NSString *SUSkippedVersionKey;
extern NSString *SUScheduledCheckIntervalKey;
extern NSString *SULastCheckTimeKey;
extern NSString *SUExpectsDSASignatureKey;
extern NSString *SUPublicDSAKeyKey;
extern NSString *SUAutomaticallyUpdateKey;
extern NSString *SUAllowsAutomaticUpdatesKey;
@@ -0,0 +1,47 @@
//
// SUErrors.h
// Sparkle
//
// Created by C.W. Betts on 10/13/14.
// Copyright (c) 2014 Sparkle Project. All rights reserved.
//
#ifndef SUERRORS_H
#define SUERRORS_H
#import <Foundation/Foundation.h>
#import "SUExport.h"
/**
* Error domain used by Sparkle
*/
SU_EXPORT extern NSString *const SUSparkleErrorDomain;
typedef NS_ENUM(OSStatus, SUError) {
// Appcast phase errors.
SUAppcastParseError = 1000,
SUNoUpdateError = 1001,
SUAppcastError = 1002,
SURunningFromDiskImageError = 1003,
// Downlaod phase errors.
SUTemporaryDirectoryError = 2000,
// Extraction phase errors.
SUUnarchivingError = 3000,
SUSignatureError = 3001,
// Installation phase errors.
SUFileCopyFailure = 4000,
SUAuthenticationFailure = 4001,
SUMissingUpdateError = 4002,
SUMissingInstallerToolError = 4003,
SURelaunchError = 4004,
SUInstallationError = 4005,
SUDowngradeError = 4006,
// System phase errors
SUSystemPowerOffError = 5000
};
#endif
@@ -0,0 +1,18 @@
//
// SUExport.h
// Sparkle
//
// Created by Jake Petroules on 2014-08-23.
// Copyright (c) 2014 Sparkle Project. All rights reserved.
//
#ifndef SUEXPORT_H
#define SUEXPORT_H
#ifdef BUILDING_SPARKLE
#define SU_EXPORT __attribute__((visibility("default")))
#else
#define SU_EXPORT
#endif
#endif
@@ -0,0 +1,38 @@
//
// SUStandardVersionComparator.h
// Sparkle
//
// Created by Andy Matuschak on 12/21/07.
// Copyright 2007 Andy Matuschak. All rights reserved.
//
#ifndef SUSTANDARDVERSIONCOMPARATOR_H
#define SUSTANDARDVERSIONCOMPARATOR_H
#import <Foundation/Foundation.h>
#import "SUExport.h"
#import "SUVersionComparisonProtocol.h"
/*!
Sparkle's default version comparator.
This comparator is adapted from MacPAD, by Kevin Ballard.
It's "dumb" in that it does essentially string comparison,
in components split by character type.
*/
SU_EXPORT @interface SUStandardVersionComparator : NSObject <SUVersionComparison>
/*!
Returns a singleton instance of the comparator.
*/
+ (SUStandardVersionComparator *)defaultComparator;
/*!
Compares version strings through textual analysis.
See the implementation for more details.
*/
- (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB;
@end
#endif
@@ -1,26 +0,0 @@
//
// SUStatusChecker.h
// Sparkle
//
// Created by Evan Schoenberg on 7/6/06.
//
#import <Cocoa/Cocoa.h>
#import <Sparkle/SUUpdater.h>
@class SUStatusChecker;
@protocol SUStatusCheckerDelegate <NSObject>
//versionString will be nil and isNewVersion will be NO if version checking fails.
- (void)statusChecker:(SUStatusChecker *)statusChecker foundVersion:(NSString *)versionString isNewVersion:(BOOL)isNewVersion;
@end
@interface SUStatusChecker : SUUpdater {
id<SUStatusCheckerDelegate> scDelegate;
}
// Create a status checker which will notifiy delegate once the appcast version is determined.
// Notification occurs via the method defined in the SUStatusCheckerDelegate informal protocol.
+ (SUStatusChecker *)statusCheckerForDelegate:(id<SUStatusCheckerDelegate>)delegate;
@end
@@ -1,33 +0,0 @@
//
// SUStatusController.h
// Sparkle
//
// Created by Andy Matuschak on 3/14/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface SUStatusController : NSWindowController {
double progressValue, maxProgressValue;
NSString *title, *statusText, *buttonTitle;
IBOutlet NSButton *actionButton;
}
// Pass 0 for the max progress value to get an indeterminate progress bar.
// Pass nil for the status text to not show it.
- (void)beginActionWithTitle:(NSString *)title maxProgressValue:(double)maxProgressValue statusText:(NSString *)statusText;
// If isDefault is YES, the button's key equivalent will be \r.
- (void)setButtonTitle:(NSString *)buttonTitle target:target action:(SEL)action isDefault:(BOOL)isDefault;
- (void)setButtonEnabled:(BOOL)enabled;
- (double)progressValue;
- (void)setProgressValue:(double)value;
- (double)maxProgressValue;
- (void)setMaxProgressValue:(double)value;
- (void)setStatusText:(NSString *)statusText;
@end
@@ -1,25 +0,0 @@
//
// SUUnarchiver.h
// Sparkle
//
// Created by Andy Matuschak on 3/16/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface SUUnarchiver : NSObject {
id delegate;
}
- (void)unarchivePath:(NSString *)path;
- (void)setDelegate:delegate;
@end
@interface NSObject (SUUnarchiverDelegate)
- (void)unarchiver:(SUUnarchiver *)unarchiver extractedLength:(long)length;
- (void)unarchiverDidFinish:(SUUnarchiver *)unarchiver;
- (void)unarchiverDidFail:(SUUnarchiver *)unarchiver;
@end
@@ -1,40 +0,0 @@
//
// SUUpdateAlert.h
// Sparkle
//
// Created by Andy Matuschak on 3/12/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
typedef enum
{
SUInstallUpdateChoice,
SURemindMeLaterChoice,
SUSkipThisVersionChoice
} SUUpdateAlertChoice;
@class WebView, SUAppcastItem;
@interface SUUpdateAlert : NSWindowController {
SUAppcastItem *updateItem;
id delegate;
IBOutlet WebView *releaseNotesView;
IBOutlet NSTextField *description;
NSProgressIndicator *releaseNotesSpinner;
BOOL webViewFinishedLoading;
}
- initWithAppcastItem:(SUAppcastItem *)item;
- (void)setDelegate:delegate;
- (IBAction)installUpdate:sender;
- (IBAction)skipThisVersion:sender;
- (IBAction)remindMeLater:sender;
@end
@interface NSObject (SUUpdateAlertDelegate)
- (void)updateAlert:(SUUpdateAlert *)updateAlert finishedWithChoice:(SUUpdateAlertChoice)updateChoice;
@end
@@ -6,50 +6,359 @@
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#ifndef SUUPDATER_H
#define SUUPDATER_H
// Before you use Sparkle in your app, you must set SUFeedURL in Info.plist to the
// address of the appcast on your webserver. If you don't already have an
// appcast, please see the Sparkle documentation to learn about how to set one up.
#import <Foundation/Foundation.h>
#import "SUExport.h"
#import "SUVersionComparisonProtocol.h"
#import "SUVersionDisplayProtocol.h"
// .zip, .dmg, .tar, .tbz, .tgz archives are supported at this time.
@class SUUpdateDriver, SUAppcastItem, SUHost, SUAppcast;
// By default, Sparkle offers to show the user the release notes of the build they'll be
// getting, which it assumes are in the description (or body) field of the relevant RSS item.
// Set SUShowReleaseNotes to <false/> in Info.plist to hide the button.
@protocol SUUpdaterDelegate;
@class SUAppcastItem, SUUpdateAlert, SUStatusController;
@interface SUUpdater : NSObject {
SUAppcastItem *updateItem;
SUStatusController *statusController;
SUUpdateAlert *updateAlert;
NSURLDownload *downloader;
NSString *downloadPath;
NSTimer *checkTimer;
NSTimeInterval checkInterval;
BOOL verbose;
BOOL updateInProgress;
}
/*!
The main API in Sparkle for controlling the update mechanism.
// This IBAction is meant for a main menu item. Hook up any menu item to this action,
// and Sparkle will check for updates and report back its findings verbosely.
- (IBAction)checkForUpdates:sender;
This class is used to configure the update paramters as well as manually
and automatically schedule and control checks for updates.
*/
SU_EXPORT @interface SUUpdater : NSObject
// This method is similar to the above, but it's intended for updates initiated by
// the computer instead of by the user. It does not alert the user when he is up to date,
// and it remains silent about network errors in fetching the feed. This is what you
// want to call to update programmatically; only use checkForUpdates: with buttons and menu items.
@property (unsafe_unretained) IBOutlet id<SUUpdaterDelegate> delegate;
+ (SUUpdater *)sharedUpdater;
+ (SUUpdater *)updaterForBundle:(NSBundle *)bundle;
- (instancetype)initForBundle:(NSBundle *)bundle;
@property (readonly, strong) NSBundle *hostBundle;
@property (strong, readonly) NSBundle *sparkleBundle;
@property BOOL automaticallyChecksForUpdates;
@property NSTimeInterval updateCheckInterval;
/*!
* The URL of the appcast used to download update information.
*
* This property must be called on the main thread.
*/
@property (copy) NSURL *feedURL;
@property (nonatomic, copy) NSString *userAgentString;
@property (copy) NSDictionary *httpHeaders;
@property BOOL sendsSystemProfile;
@property BOOL automaticallyDownloadsUpdates;
/*!
Explicitly checks for updates and displays a progress dialog while doing so.
This method is meant for a main menu item.
Connect any menu item to this action in Interface Builder,
and Sparkle will check for updates and report back its findings verbosely
when it is invoked.
*/
- (IBAction)checkForUpdates:(id)sender;
/*!
Checks for updates, but does not display any UI unless an update is found.
This is meant for programmatically initating a check for updates. That is,
it will display no UI unless it actually finds an update, in which case it
proceeds as usual.
If the fully automated updating is turned on, however, this will invoke that
behavior, and if an update is found, it will be downloaded and prepped for
installation.
*/
- (void)checkForUpdatesInBackground;
// This method allows you to schedule a check to run every time interval. You can
// pass 0 to this method to cancel a previously scheduled timer. You probably don't want
// to call this directly: if you set a SUScheduledCheckInterval key in Info.plist or
// the user defaults, Sparkle will set this up for you automatically on startup. You might
// just want to call this every time the user changes the setting in the preferences.
- (void)scheduleCheckWithInterval:(NSTimeInterval)interval;
/*!
Checks for updates and, if available, immediately downloads and installs them.
A progress dialog is shown but the user will never be prompted to read the
release notes.
You may want to respond to the userDidCancelDownload delegate method in case
the user clicks the "Cancel" button while the update is downloading.
*/
- (void)installUpdatesIfAvailable;
@end
/*!
Returns the date of last update check.
\returns \c nil if no check has been performed.
*/
@property (readonly, copy) NSDate *lastUpdateCheckDate;
/*!
Begins a "probing" check for updates which will not actually offer to
update to that version.
However, the delegate methods
SUUpdaterDelegate::updater:didFindValidUpdate: and
SUUpdaterDelegate::updaterDidNotFindUpdate: will be called,
so you can use that information in your UI.
*/
- (void)checkForUpdateInformation;
/*!
Appropriately schedules or cancels the update checking timer according to
the preferences for time interval and automatic checks.
This call does not change the date of the next check,
but only the internal NSTimer.
*/
- (void)resetUpdateCycle;
@property (readonly) BOOL updateInProgress;
@end
// -----------------------------------------------------------------------------
// SUUpdater Notifications for events that might be interesting to more than just the delegate
// The updater will be the notification object
// -----------------------------------------------------------------------------
SU_EXPORT extern NSString *const SUUpdaterDidFinishLoadingAppCastNotification;
SU_EXPORT extern NSString *const SUUpdaterDidFindValidUpdateNotification;
SU_EXPORT extern NSString *const SUUpdaterDidNotFindUpdateNotification;
SU_EXPORT extern NSString *const SUUpdaterWillRestartNotification;
#define SUUpdaterWillRelaunchApplicationNotification SUUpdaterWillRestartNotification;
#define SUUpdaterWillInstallUpdateNotification SUUpdaterWillRestartNotification;
// Key for the SUAppcastItem object in the SUUpdaterDidFindValidUpdateNotification userInfo
SU_EXPORT extern NSString *const SUUpdaterAppcastItemNotificationKey;
// Key for the SUAppcast object in the SUUpdaterDidFinishLoadingAppCastNotification userInfo
SU_EXPORT extern NSString *const SUUpdaterAppcastNotificationKey;
// -----------------------------------------------------------------------------
// SUUpdater Delegate:
// -----------------------------------------------------------------------------
/*!
Provides methods to control the behavior of an SUUpdater object.
*/
@protocol SUUpdaterDelegate <NSObject>
@optional
/*!
Returns whether to allow Sparkle to pop up.
For example, this may be used to prevent Sparkle from interrupting a setup assistant.
\param updater The SUUpdater instance.
*/
- (BOOL)updaterMayCheckForUpdates:(SUUpdater *)updater;
/*!
Returns additional parameters to append to the appcast URL's query string.
This is potentially based on whether or not Sparkle will also be sending along the system profile.
\param updater The SUUpdater instance.
\param sendingProfile Whether the system profile will also be sent.
\return An array of dictionaries with keys: "key", "value", "displayKey", "displayValue", the latter two being specifically for display to the user.
*/
- (NSArray *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile;
/*!
Returns a custom appcast URL.
Override this to dynamically specify the entire URL.
\param updater The SUUpdater instance.
*/
- (NSString *)feedURLStringForUpdater:(SUUpdater *)updater;
/*!
Returns whether Sparkle should prompt the user about automatic update checks.
Use this to override the default behavior.
\param updater The SUUpdater instance.
*/
- (BOOL)updaterShouldPromptForPermissionToCheckForUpdates:(SUUpdater *)updater;
/*!
Called after Sparkle has downloaded the appcast from the remote server.
Implement this if you want to do some special handling with the appcast once it finishes loading.
\param updater The SUUpdater instance.
\param appcast The appcast that was downloaded from the remote server.
*/
- (void)updater:(SUUpdater *)updater didFinishLoadingAppcast:(SUAppcast *)appcast;
/*!
Returns the item in the appcast corresponding to the update that should be installed.
If you're using special logic or extensions in your appcast,
implement this to use your own logic for finding a valid update, if any,
in the given appcast.
\param appcast The appcast that was downloaded from the remote server.
\param updater The SUUpdater instance.
*/
- (SUAppcastItem *)bestValidUpdateInAppcast:(SUAppcast *)appcast forUpdater:(SUUpdater *)updater;
/*!
Called when a valid update is found by the update driver.
\param updater The SUUpdater instance.
\param item The appcast item corresponding to the update that is proposed to be installed.
*/
- (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)item;
/*!
Called when a valid update is not found.
\param updater The SUUpdater instance.
*/
- (void)updaterDidNotFindUpdate:(SUUpdater *)updater;
/*!
Called immediately before downloading the specified update.
\param updater The SUUpdater instance.
\param item The appcast item corresponding to the update that is proposed to be downloaded.
\param request The mutable URL request that will be used to download the update.
*/
- (void)updater:(SUUpdater *)updater willDownloadUpdate:(SUAppcastItem *)item withRequest:(NSMutableURLRequest *)request;
/*!
Called after the specified update failed to download.
\param updater The SUUpdater instance.
\param item The appcast item corresponding to the update that failed to download.
\param error The error generated by the failed download.
*/
- (void)updater:(SUUpdater *)updater failedToDownloadUpdate:(SUAppcastItem *)item error:(NSError *)error;
/*!
Called when the user clicks the cancel button while and update is being downloaded.
\param updater The SUUpdater instance.
*/
- (void)userDidCancelDownload:(SUUpdater *)updater;
/*!
Called immediately before installing the specified update.
\param updater The SUUpdater instance.
\param item The appcast item corresponding to the update that is proposed to be installed.
*/
- (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)item;
/*!
Returns whether the relaunch should be delayed in order to perform other tasks.
This is not called if the user didn't relaunch on the previous update,
in that case it will immediately restart.
\param updater The SUUpdater instance.
\param item The appcast item corresponding to the update that is proposed to be installed.
\param invocation The invocation that must be completed before continuing with the relaunch.
\return \c YES to delay the relaunch until \p invocation is invoked.
*/
- (BOOL)updater:(SUUpdater *)updater shouldPostponeRelaunchForUpdate:(SUAppcastItem *)item untilInvoking:(NSInvocation *)invocation;
/*!
Returns whether the application should be relaunched at all.
Some apps \b cannot be relaunched under certain circumstances.
This method can be used to explicitly prevent a relaunch.
\param updater The SUUpdater instance.
*/
- (BOOL)updaterShouldRelaunchApplication:(SUUpdater *)updater;
/*!
Called immediately before relaunching.
\param updater The SUUpdater instance.
*/
- (void)updaterWillRelaunchApplication:(SUUpdater *)updater;
/*!
Returns an object that compares version numbers to determine their arithmetic relation to each other.
This method allows you to provide a custom version comparator.
If you don't implement this method or return \c nil,
the standard version comparator will be used.
\sa SUStandardVersionComparator
\param updater The SUUpdater instance.
*/
- (id<SUVersionComparison>)versionComparatorForUpdater:(SUUpdater *)updater;
/*!
Returns an object that formats version numbers for display to the user.
If you don't implement this method or return \c nil,
the standard version formatter will be used.
\sa SUUpdateAlert
\param updater The SUUpdater instance.
*/
- (id<SUVersionDisplay>)versionDisplayerForUpdater:(SUUpdater *)updater;
/*!
Returns the path which is used to relaunch the client after the update is installed.
The default is the path of the host bundle.
\param updater The SUUpdater instance.
*/
- (NSString *)pathToRelaunchForUpdater:(SUUpdater *)updater;
/*!
Called before an updater shows a modal alert window,
to give the host the opportunity to hide attached windows that may get in the way.
\param updater The SUUpdater instance.
*/
- (void)updaterWillShowModalAlert:(SUUpdater *)updater;
/*!
Called after an updater shows a modal alert window,
to give the host the opportunity to hide attached windows that may get in the way.
\param updater The SUUpdater instance.
*/
- (void)updaterDidShowModalAlert:(SUUpdater *)updater;
/*!
Called when an update is scheduled to be silently installed on quit.
\param updater The SUUpdater instance.
\param item The appcast item corresponding to the update that is proposed to be installed.
\param invocation Can be used to trigger an immediate silent install and relaunch.
*/
- (void)updater:(SUUpdater *)updater willInstallUpdateOnQuit:(SUAppcastItem *)item immediateInstallationInvocation:(NSInvocation *)invocation;
/*!
Calls after an update that was scheduled to be silently installed on quit has been canceled.
\param updater The SUUpdater instance.
\param item The appcast item corresponding to the update that was proposed to be installed.
*/
- (void)updater:(SUUpdater *)updater didCancelInstallUpdateOnQuit:(SUAppcastItem *)item;
/*!
Called after an update is aborted due to an error.
\param updater The SUUpdater instance.
\param error The error that caused the abort
*/
- (void)updater:(SUUpdater *)updater didAbortWithError:(NSError *)error;
@end
#endif
@@ -1,20 +0,0 @@
//
// SUUtilities.h
// Sparkle
//
// Created by Andy Matuschak on 3/12/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import <Cocoa/Cocoa.h>
id SUInfoValueForKey(NSString *key);
NSString *SUHostAppName();
NSString *SUHostAppDisplayName();
NSString *SUHostAppVersion();
NSString *SUHostAppVersionString();
NSComparisonResult SUStandardVersionComparison(NSString * versionA, NSString * versionB);
// If running make localizable-strings for genstrings, ignore the error on this line.
NSString *SULocalizedString(NSString *key, NSString *comment);
@@ -0,0 +1,30 @@
//
// SUVersionComparisonProtocol.h
// Sparkle
//
// Created by Andy Matuschak on 12/21/07.
// Copyright 2007 Andy Matuschak. All rights reserved.
//
#ifndef SUVERSIONCOMPARISONPROTOCOL_H
#define SUVERSIONCOMPARISONPROTOCOL_H
#import <Cocoa/Cocoa.h>
#import "SUExport.h"
/*!
Provides version comparison facilities for Sparkle.
*/
@protocol SUVersionComparison
/*!
An abstract method to compare two version strings.
Should return NSOrderedAscending if b > a, NSOrderedDescending if b < a,
and NSOrderedSame if they are equivalent.
*/
- (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; // *** MAY BE CALLED ON NON-MAIN THREAD!
@end
#endif
@@ -0,0 +1,25 @@
//
// SUVersionDisplayProtocol.h
// EyeTV
//
// Created by Uli Kusterer on 08.12.09.
// Copyright 2009 Elgato Systems GmbH. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import "SUExport.h"
/*!
Applies special display formatting to version numbers.
*/
@protocol SUVersionDisplay
/*!
Formats two version strings.
Both versions are provided so that important distinguishing information
can be displayed while also leaving out unnecessary/confusing parts.
*/
- (void)formatVersion:(NSString **)inOutVersionA andVersion:(NSString **)inOutVersionB;
@end
@@ -2,21 +2,24 @@
// Sparkle.h
// Sparkle
//
// Created by Andy Matuschak on 3/16/06.
// Created by Andy Matuschak on 3/16/06. (Modified by CDHW on 23/12/07)
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#import "SUUpdater.h"
#import "SUUtilities.h"
#import "SUConstants.h"
#ifndef SPARKLE_H
#define SPARKLE_H
#import <Cocoa/Cocoa.h>
// This list should include the shared headers. It doesn't matter if some of them aren't shared (unless
// there are name-space collisions) so we can list all of them to start with:
#import "SUAppcast.h"
#import "SUAppcastItem.h"
#import "SUUpdateAlert.h"
#import "SUAutomaticUpdateAlert.h"
#import "SUStatusController.h"
#import "SUUnarchiver.h"
#import "SUStatusChecker.h"
#import "SUStandardVersionComparator.h"
#import "SUUpdater.h"
#import "SUVersionComparisonProtocol.h"
#import "SUVersionDisplayProtocol.h"
#import "SUErrors.h"
#import "NSApplication+AppCopies.h"
#import "NSFileManager+Authentication.h"
#import "NSFileManager+Verification.h"
#endif
@@ -0,0 +1,6 @@
framework module Sparkle {
umbrella header "Sparkle.h"
export *
module * { export * }
}
@@ -0,0 +1,35 @@
//
// SUUnarchiver.h
// Sparkle
//
// Created by Andy Matuschak on 3/16/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//
#ifndef SUUNARCHIVER_H
#define SUUNARCHIVER_H
#import <Foundation/Foundation.h>
@class SUHost;
@protocol SUUnarchiverDelegate;
@interface SUUnarchiver : NSObject
@property (copy, readonly) NSString *archivePath;
@property (copy, readonly) NSString *updateHostBundlePath;
@property (weak) id<SUUnarchiverDelegate> delegate;
+ (SUUnarchiver *)unarchiverForPath:(NSString *)path updatingHostBundlePath:(NSString *)host;
- (void)start;
@end
@protocol SUUnarchiverDelegate <NSObject>
- (void)unarchiverDidFinish:(SUUnarchiver *)unarchiver;
- (void)unarchiverDidFail:(SUUnarchiver *)unarchiver;
@optional
- (void)unarchiver:(SUUnarchiver *)unarchiver extractedProgress:(double)progress;
@end
#endif
@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
<string>15C50</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>Autoupdate</string>
<key>CFBundleIconFile</key>
<string>AppIcon</string>
<key>CFBundleIdentifier</key>
<string>org.sparkle-project.Sparkle.Autoupdate</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.13.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>MacOSX</string>
</array>
<key>CFBundleVersion</key>
<string>1.13.0</string>
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
<string>7C68</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
<string>15C43</string>
<key>DTSDKName</key>
<string>macosx10.11</string>
<key>DTXcode</key>
<string>0720</string>
<key>DTXcodeBuild</key>
<string>7C68</string>
<key>LSBackgroundOnly</key>
<string>1</string>
<key>LSMinimumSystemVersion</key>
<string>10.7</string>
<key>LSUIElement</key>
<string>1</string>
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
</dict>
</plist>

Some files were not shown because too many files have changed in this diff Show More