]> code.delx.au - gnu-emacs-elpa/commitdiff
* safety commit :-). But `yas/ruby-require' is working!
authorcapitaomorte <joaotavora@gmail.com>
Tue, 6 Apr 2010 15:33:39 +0000 (15:33 +0000)
committercapitaomorte <joaotavora@gmail.com>
Tue, 6 Apr 2010 15:33:39 +0000 (15:33 +0000)
extras/imported/ruby-mode/.yas-setup.el

index b3be5b80296fdaac27889435ac6c2fa3496bb688..bc27466b591cb330c359344534d7af74adb541b8 100644 (file)
 
 (defun yas/ruby-toggle-single-multi-line-block ()
   (interactive)
-  (save-excursion
-    (let* ((block-start (progn (ruby-beginning-of-block) (point)))
-           (block-end (progn (ruby-end-of-block) (forward-word)(point))))
-      (when (and block-start
-                 block-end)
-        (goto-char block-start)
-        (cond ((not (eq (line-number-at-pos block-end)
-                        (line-number-at-pos block-start)))
-               (when (looking-at ".*[^\w]\\(do\\)[^\w]\\(|.*|\\)?")
-                 (goto-char block-end)
-                 (insert "}")
-                 (goto-char block-start)
-                 (replace-regexp "do" "{" t block-start (line-end-position))))
-              (t
-               (replace-regexp "\\(.*\\){[^w]\\(|.*|\\)" "\1do \2\n" nil block-start block-end)))))))
+  (let* ((do-block-start (save-excursion
+                           (ruby-beginning-of-block)
+                           (when (looking-at ".*[^\w]\\(do\\)[^\w]\\(|.*|\\)?")
+                             (point))))
+         (brace-block-start (save-excursion
+                              (condition-case nil
+                                  (while (progn (up-list -1) (not (eq (char-after) ?{))))
+                                (point))
+                              (error nil))))
+    (if (and do-block-start brace-block-start)
+        (if (< do-block-start brace-block-start)
+            (setq do-block-start nil)
+          (setq brace-block-start nil)))
+    (cond (do-block-start
+           (ruby-end-of-block)
+           (forward-word)
+           (insert "}")
+           (goto-char do-block-start))
+          (brace-block-start
+           ))))
+
+(defvar yas/ruby-require-regexps
+  '(("abbrev"                            . ("abbrev"))
+    ("base64"                            . ("Base64"))
+    ("benchmark"                         . ("Benchmark"))
+    ("bigdecimal"                        . ("BigDecimal"))
+    ("bigdecimal/math"                   . ("BigMath"))
+    ("cgi"                               . ("CGI"))
+    ("complex"                           . ("Complex"))
+    ("csv"                               . ("CSV"))
+    ("curses"                            . ("Curses"))
+    ("date"                              . ("Date(?:Time)?"))
+    ("dbm"                               . ("DBM"))
+    ("delegate"                          . ("DelegateClass" "Delegator" "SimpleDelegator "))
+    ("digest"                            . ("MD5" "SHA1"))
+    ("dl"                                . ("DL"))
+    ("enumerator"                        . ("(?:enum|each)_(?:cons|slice)" "enum_(?:for|with_index)" "to_enum "))
+    ("erb"                               . ("ERB"))
+    ("etc"                               . ("Etc"))
+    ("fcntl"                             . ("Fcntl"))
+    ("fileutils"                         . ("FileUtils"))
+    ("find"                              . ("Find(?:\.|::)find"))
+    ("forwardable"                       . ("(?:Single)?Forwardable"))
+    ("gdbm"                              . ("GDBM"))
+    ("generator"                         . ("Generator" "SyncEnumerator"))
+    ("getoptlong"                        . ("GetoptLong"))
+    ("gserver"                           . ("GServer"))
+    ("iconv"                             . ("Iconv"))
+    ("ipaddr"                            . ("IpAddr"))
+    ("logger"                            . ("Logger"))
+    ("matrix"                            . ("Matrix" "Vector"))
+    ("monitor"                           . ("Monitor(?:Mixin)?"))
+    ("net/ftp"                           . ("Net::FTP"))
+    ("net/http"                          . ("Net::HTTP"))
+    ("net/imap"                          . ("Net::IMAP"))
+    ("net/pop"                           . ("Net::(?:APOP|POP3)"))
+    ("net/smtp"                          . ("Net::SMTP"))
+    ("net/telnet"                        . ("Net::Telnet"))
+    ("nkf"                               . ("NKF"))
+    ("observer"                          . ("Observable"))
+    ("open3"                             . ("Open3"))
+    ("optparse"                          . ("OptionParser"))
+    ("ostruct"                           . ("OpenStruct"))
+    ("pathname"                          . ("Pathname"))
+    ("ping"                              . ("Ping"))
+    ("pp"                                . ("pp"))
+    ("pstore"                            . ("PStore"))
+    ("rational"                          . ("Rational"))
+    ("rdoc/usage"                        . ("RDoc(?:\.|::)usage"))
+    ("rdoc/markup/simple_markup"         . ("SM::SimpleMarkup"))
+    ("rdoc/markup/simple_markup/to_html" . ("SM::SimpleMarkup"))
+    ("rdoc/usage"                        . ("RDoc(?:\.|::)usage"))
+    ("resolv"                            . ("Resolv"))
+    ("rexml/document"                    . ("REXML"))
+    ("rinda/tuplespace"                  . ("Rinda::TupleSpace(?:Proxy)?"))
+    ("rinda/ring"                        . ("Rinda::Ring(?:Finger|Server)?"))
+    ("rss"                               . ("RSS"))
+    ("scanf"                             . ("scanf"))
+    ("sdbm"                              . ("SDBM"))
+    ("set"                               . ("(?:Sorted)?Set"))
+    ("singleton"                         . ("Singleton"))
+    ("soap"                              . ("SOAP"))
+    ("socket"                            . (" (?:TCP|UNIX)(?:Socket|Server)" "(?:UDP)?Socket"))
+    ("stringio"                          . ("StringIO"))
+    ("strscan"                           . ("StringScanner"))
+    ("syslog"                            . ("Syslog"))
+    ("tempfile"                          . ("Tempfile"))
+    ("test/unit"                         . ("Test::Unit"))
+    ("thread"                            . (" ConditionVariable" "Mutex" "(?:Sized)?Queue "))
+    ("time"                              . ("Time(?:\.|::)parse"))
+    ("timeout"                           . ("Timeout(?:\.|::)timeout"))
+    ("tk"                                . ("TK"))
+    ("tmpdir"                            . ("Dir(?:\.|::)tmpdir"))
+    ("tracer"                            . ("Tracer"))
+    ("tsort"                             . ("TSort"))
+    ("uri"                               . ("URI"))
+    ("weakref"                           . ("WeakRef"))
+    ("webrick"                           . ("WEBrick"))
+    ("Win32API"                          . ("Win32(?:API)?"))
+    ("win32ole"                          . ("WIN32OLE"))
+    ("wsdl"                              . ("WSDL"))
+    ("xmlrpc"                            . ("XMLRPC"))
+    ("yaml"                              . ("YAML"))
+    ("zlib"                              . ("Zlib"))))
 
+(defun yas/ruby-require (package)
+  (save-excursion
+    (goto-char (point-min))
+    (unless (search-forward-regexp (format "^[\s\t]*require[( ][ ]*\"%s\"[ )]*$"
+                                           package) nil t)
+      (unless (search-forward-regexp "^[\s\t]*require.*\n" nil t)
+        (search-forward-regexp "^[\s\t]*[^#]" nil t)
+        (goto-char (line-beginning-position)))
+      (insert "require \"" package "\"\n"))))
 
 ;; conditions
 ;; 
 ;; 
 ;; ${1/([\w&&[^_]]+)|./\u$1/g}                                                       =yyas> ${1:$(replace-regexp-in-string "[_/]" "" (capitalize yas/text))}
 ;;
-;; 0F940CBC-2173-49FF-B6FD-98A62863F8F2                                              =yyas> (yas/ruby-wrap-in-begin-rescue)
+;; 0F940CBC-2173-49FF-B6FD-98A62863F8F2               =yyas> (yas/ruby-wrap-in-begin-rescue)
+;; 7E084412-80E6-4B70-8092-C03D1ECE4CD2               =yyas> (yas/ruby-require "eac")(yas/expand-uuid 'ruby-mode "FDD73070-6D32-4301-A86A-C55B77C3D8ED")
+
 ;;
 ;; `[[ $TM_LINE_INDEX != 0 ]] && echo; echo`                                         =yyas> `(concat (if (eq 0 current-line) "\n" "") "\n")`
 ;; 
 ;; 
 ;; Substitutions for: content
 ;; 
+;; # as in Macros/xmlread(__).yasnippet
+;; F6BF907E-FDF7-4D9B-9E57-BE159561349D                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/Overwrite } in #{ .. }.yasnippet
+;; E5158F94-CC52-4424-A495-14EF9272653F                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Check Ruby Syntax.yasnippet
+;; EE5F19BA-6C02-11D9-92BA-0011242E4184                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Enclose in + (RDoc comments).yasnippet
+;; 2DDB6FE0-6111-4C40-A149-8E67E76F8272                                                       =yyas> (yas/unknown)
+;; 
 ;; # as in Snippets/RDoc documentation block.yasnippet
 ;; `(concat (if (eq 0 current-line) "\n" "") "\n")`                                           =yyas> (yas/unknown)
 ;; 
+;; # as in Macros/require_gem __.yasnippet
+;; 33969819-62C5-4E03-B824-C2337205F364                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/map_with_index { e, i .. } (mapwi).yasnippet
+;; BFB65D1C-62F1-485D-8A67-3E5A2E55107C                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/each_slice(..) { group .. } (eas).yasnippet
+;; 825B721D-4367-4DF7-98C0-F005695DF9E3                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/YAML.dump(.., file) (Yd).yasnippet
+;; 9460392B-C036-4A76-A5AE-1191F10E4B1B                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Run.yasnippet
+;; 35222962-C50D-4D58-A6AE-71E7AD980BE4                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Enclose in _ (RDoc comments).yasnippet
+;; DAA69A0C-FC1E-4509-9931-DFFB38B4D6AE                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/Toggle Single Multi Line Block.yasnippet
+;; 7990EE60-C850-4779-A8C0-7FD2C853B99B                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Omit from RDoc.yasnippet
+;; BF4CA9F1-51CD-48D4-8357-852234F59046                                                       =yyas> (yas/unknown)
+;; 
 ;; # as in Snippets/flunk(..) (fl).yasnippet
 ;; `yas/ruby-snippet-close-paren`                                                             =yyas> (yas/unknown)
 ;; 
 ;; # as in Snippets/#usrlocalbinruby -w.yasnippet
 ;; `yas/ruby-shebang-args`                                                                    =yyas> (yas/unknown)
 ;; 
+;; # as in Macros/YAML.load(file) (Yl).yasnippet
+;; 2C07D4E7-D74F-4AE4-82BE-B0BA82247AFA                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Toggle StringSymbol.yasnippet
+;; B297E4B8-A8FF-49CE-B9C4-6D4911724D43                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Run Rake Task.yasnippet
+;; 569C9822-8C41-4907-94C7-1A8A0031B66D                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Execute and Insert Results.yasnippet
+;; FBFC214F-B019-4967-95D2-028F374A3221                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/Benchmark_bmbm(__) do __ end.yasnippet
+;; C649F945-DAB8-4DA2-B73C-2EFF9D7D34F3                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/word_wrap() (worw).yasnippet
+;; 97054C4D-E4A3-45B1-9C00-B82DBCB30CAD                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Toggle Quote Style.yasnippet
+;; 6519CB08-8326-4B77-A251-54722FFBFC1F                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/extend Forwardable (Forw).yasnippet
+;; 58FDEA60-10AF-4C49-AA09-29B77030DB25                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Make Destructive Call.yasnippet
+;; 7F79BC8D-8A4F-4570-973B-05DFEC25747F                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Insert Missing Requires.yasnippet
+;; 9FB64639-F776-499B-BA6F-BB45F86F80FD                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Toggle ERb Tags.yasnippet
+;; 835FAAC6-5431-436C-998B-241F7226B99B                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Completion Ruby (rcodetools).yasnippet
+;; 47D203ED-EB9B-4653-A07B-A897800CEB76                                                       =yyas> (yas/unknown)
+;; 
 ;; # as in Snippets/flunk(..) (fl).yasnippet
 ;; `yas/ruby-snippet-open-paren`                                                              =yyas> (yas/unknown)
 ;; 
+;; # as in Macros/class .. DelegateClass .. initialize .. end (class).yasnippet
+;; 121B334B-2AA6-4E9A-A8B8-BF93B627982B                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/New Method.yasnippet
+;; 0275EF39-9357-408F-AF20-79E415CA9504                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Execute Line with Ruby.yasnippet
+;; EE5F1FB2-6C02-11D9-92BA-0011242E4184                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/PStore_new( __ ).yasnippet
+;; 5AE7CFB4-418E-4E00-AD76-06DB755EE876                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Show RDoc for this file.yasnippet
+;; 1AD6A138-2E89-4D6A-AB3F-416BF9CE968D                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Run focused unit test.yasnippet
+;; 5289EE40-86B8-11D9-A8D4-000A95E13C98                                                       =yyas> (yas/unknown)
+;; 
 ;; # as in Snippets/module .. module_function .. end.yasnippet
 ;; `(yas/ruby-infer-class-name)`                                                              =yyas> (yas/unknown)
 ;; 
+;; # as in Commands/Check ERB Syntax.yasnippet
+;; 76FCF165-54CB-4213-BC55-BD60B9C6A3EC                                                       =yyas> (yas/unknown)
+;; 
 ;; # as in Snippets/open yield block ({).yasnippet
 ;; `yas/selected-text`                                                                        =yyas> (yas/unknown)
 ;; 
+;; # as in Macros/Delete forwardbackward.yasnippet
+;; A83F68A9-F751-4BB4-AE16-56812878C16A                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Macros/each_cons(..) { group .. } (eac).yasnippet
+;; EC73D5CC-5F05-46B9-A6F4-82037E4A38C9                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Lookup in Documentation.yasnippet
+;; 63F3B3B7-CBE2-426B-B551-657733F3868B                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Open Require.yasnippet
+;; 8646378E-91F5-4771-AC7C-43FC49A93576                                                       =yyas> (yas/unknown)
+;; 
+;; # as in Commands/Enclose in (RDoc comments).yasnippet
+;; 931DD73E-615E-476E-9B0D-8341023AE730                                                       =yyas> (yas/unknown)
+;; 
 ;; 
 
 ;; Substitutions for: condition