美文网首页
Aotm Snippets自定义自动展开代码块

Aotm Snippets自定义自动展开代码块

作者: vimtest | 来源:发表于2017-09-25 22:35 被阅读0次

    原文链接

    主要是编辑snippets.CSON文件,下面是一些实例代码:

    '.text.html.erb':
      'if each do end':
        'prefix':'doe'
        'body':'
        <% ${1:condition}.each do |${2:value}| %>
        \n\t${3:comment}
        \n<% end %>
        '
    
      'if any end':
        'prefix':'ifany'
        'body':'
        <% if ${1:condition}.any? %>
        \n\t${3:comment}
        \n<% end %>
        '
    

    自动展开代码如下

    <% condition.each do |value| %> 
      comment 
    <% end %>
    
    <% if condition.any? %> 
      comment 
    <% end %>
    
    1. 代码 '.text.html.erb' , 这个是 "scope" ,表示你添加的代码是在文件尾缀为 .erb 中使用。'.source.ruby' ,这个表示可以在文件尾缀为 .rb 中使用。如果你想添加到不同类型的文件中,就需要找到文件对应的scope。
    2. 如何找到 scope 呢?
    1. 用快捷键 ⌘, 呼出 settings:2. 在package 的搜索栏中查找 language ,找到你对应需要的如 java/html/ruby 等等;3. 可以在标题 java/html/ruby Grammar 下第一行找到文件对应的 scope 。特别注意当添加多个自定义展开代码的时候,只需要在这个 scope string 下追加。
    1. prefix 表示你需要用什么名字缩写,代替你自定义的展开代码。当你使用时候,你输入这个名字就能展开。
    2. \n 表示的是纯文本中默认并不显示的“scope”;
    3. \t 表示的是 tab(不是 tab 键,而是文本中显示的“缩进” —— 通常相当于两个空格,或者四个空格);
    4. $1 是展开后光标所在的位置;
    5. $2 是再次按 ⇥ 键的时候,光标应该所在的下一个位置。

    下表是常见的scope:

    语言名称 scope 文件类型
    HTML text.html.basic ejs,htm,html,kit,shtml,tmpl,tpl,xhtml
    CSS source.css css,css.erb
    javascript source.js js,_js,es,es6,gs,htc,jscad,jslib,jsm,json5,jspre,pac,pjs,sjs,xsjs,xsjslib
    python sourec.python cpy,gyp,gypi,kv,py,pyw,rpy,SConscript,SConstruct,sconstruct,Snakefile,tac,wsgi
    json source.json avsc, babelrc, bowerrc, composer.lock, geojson, gltf, htmlhintrc, ipynb, jscsrc, jshintrc, jslintrc, json, jsonl, jsonld, languagebabel, ldj, ldjson, schema, stylintrc, template, tern-config, tern-project, tfstate, tfstate.backup, topojson, webapp, webmanifest
    sql source.sql ddl, dml, dsql, hql, pgsql, psql, q, sql
    git text.git-commit COMMIT_EDITMSG, MERGE_MSG
    shell source.shell sh, bash, ksh, zsh, zsh-theme, zshenv, zlogin, zlogout, zprofile, zshrc, bashrc, bash_aliases, bash_profile, bash_login, profile, bash_logout, .textmate_init, npmrc, PKGBUILD, install, cygport, bats, ebuild

    相关文章

      网友评论

          本文标题:Aotm Snippets自定义自动展开代码块

          本文链接:https://www.haomeiwen.com/subject/kfhjextx.html