浏览代码

Apply Leandro Lucarella <llucax@gmail.com>'s patches for VIM highlighting
and not setting execute bit on protoc outputs.

temporal 17 年之前
父节点
当前提交
8ccb79057e
共有 3 个文件被更改,包括 11 次插入2 次删除
  1. 1 0
      CONTRIBUTORS.txt
  2. 9 1
      editors/proto.vim
  3. 1 1
      src/google/protobuf/compiler/command_line_interface.cc

+ 1 - 0
CONTRIBUTORS.txt

@@ -38,3 +38,4 @@ Non-Google patch contributors:
   Kevin Ko <kevin.s.ko@gmail.com>
   Kevin Ko <kevin.s.ko@gmail.com>
   Johan Euphrosine <proppy@aminche.com>
   Johan Euphrosine <proppy@aminche.com>
   Ulrich Kunitz <kune@deine-taler.de>
   Ulrich Kunitz <kune@deine-taler.de>
+  Leandro Lucarella <llucax@gmail.com>

+ 9 - 1
editors/proto.vim

@@ -23,6 +23,9 @@
 " augroup filetype
 " augroup filetype
 "   au! BufRead,BufNewFile *.proto setfiletype proto
 "   au! BufRead,BufNewFile *.proto setfiletype proto
 " augroup end
 " augroup end
+"
+" Or just create a new file called ~/.vim/ftdetect/proto.vim with the
+" previous lines on it.
 
 
 if version < 600
 if version < 600
   syntax clear
   syntax clear
@@ -32,6 +35,9 @@ endif
 
 
 syn case match
 syn case match
 
 
+syn keyword pbTodo       contained TODO FIXME XXX
+syn cluster pbCommentGrp contains=pbTodo
+
 syn keyword pbSyntax     syntax import option
 syn keyword pbSyntax     syntax import option
 syn keyword pbStructure  package message group
 syn keyword pbStructure  package message group
 syn keyword pbRepeat     optional required repeated
 syn keyword pbRepeat     optional required repeated
@@ -50,7 +56,7 @@ syn match   pbInt     /\<0[xX]\x+\>/
 syn match   pbFloat   /\<-\?\d*\(\.\d*\)\?/
 syn match   pbFloat   /\<-\?\d*\(\.\d*\)\?/
 " TODO: .proto also supports C-style block comments;
 " TODO: .proto also supports C-style block comments;
 " see /usr/share/vim/vim70/syntax/c.vim for how it's done.
 " see /usr/share/vim/vim70/syntax/c.vim for how it's done.
-syn match   pbComment /\/\/.*$/
+syn region  pbComment start="//" skip="\\$" end="$" keepend contains=@pbCommentGrp
 syn region  pbString  start=/"/ skip=/\\"/ end=/"/
 syn region  pbString  start=/"/ skip=/\\"/ end=/"/
 syn region  pbString  start=/'/ skip=/\\'/ end=/'/
 syn region  pbString  start=/'/ skip=/\\'/ end=/'/
 
 
@@ -62,6 +68,8 @@ if version >= 508 || !exists("did_proto_syn_inits")
     command -nargs=+ HiLink hi def link <args>
     command -nargs=+ HiLink hi def link <args>
   endif
   endif
 
 
+  HiLink pbTodo         Todo
+
   HiLink pbSyntax       Include
   HiLink pbSyntax       Include
   HiLink pbStructure    Structure
   HiLink pbStructure    Structure
   HiLink pbRepeat       Repeat
   HiLink pbRepeat       Repeat

+ 1 - 1
src/google/protobuf/compiler/command_line_interface.cc

@@ -203,7 +203,7 @@ io::ZeroCopyOutputStream* CommandLineInterface::DiskOutputDirectory::Open(
   do {
   do {
     file_descriptor =
     file_descriptor =
       open((root_ + filename).c_str(),
       open((root_ + filename).c_str(),
-           O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0777);
+           O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0666);
   } while (file_descriptor < 0 && errno == EINTR);
   } while (file_descriptor < 0 && errno == EINTR);
 
 
   if (file_descriptor < 0) {
   if (file_descriptor < 0) {