mirror of
				https://github.com/amix/vimrc
				synced 2025-10-30 21:43:35 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			92 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| priority -50
 | |
| 
 | |
| global !p
 | |
| def create_table(snip):
 | |
|     # retrieving single line from current string and treat it like tabstops count
 | |
|     placeholders_string = snip.buffer[snip.line].strip()[2:].split("x",1)
 | |
|     rows_amount = int(placeholders_string[0])
 | |
|     columns_amount = int(placeholders_string[1])
 | |
| 
 | |
|     # erase current line
 | |
|     snip.buffer[snip.line] = ''
 | |
| 
 | |
|     # create anonymous snippet with expected content and number of tabstops
 | |
|     anon_snippet_title = ' | '.join(['$' + str(col) for col in range(1,columns_amount+1)]) + "\n"
 | |
|     anon_snippet_delimiter = ':-|' * (columns_amount-1) + ":-\n"
 | |
|     anon_snippet_body = ""
 | |
|     for row in range(1,rows_amount+1):
 | |
|         anon_snippet_body += ' | '.join(['$' + str(row*columns_amount+col) for col in range(1,columns_amount+1)]) + "\n"
 | |
|     anon_snippet_table = anon_snippet_title + anon_snippet_delimiter + anon_snippet_body
 | |
| 
 | |
|     # expand anonymous snippet
 | |
|     snip.expand_anon(anon_snippet_table)
 | |
| endglobal
 | |
| 
 | |
| ###########################
 | |
| # Sections and Paragraphs #
 | |
| ###########################
 | |
| snippet sec "Section" b
 | |
| # ${1:Section Name} #
 | |
| $0
 | |
| endsnippet
 | |
| 
 | |
| snippet ssec "Sub Section" b
 | |
| ## ${1:Section Name} ##
 | |
| $0
 | |
| endsnippet
 | |
| 
 | |
| snippet sssec "SubSub Section" b
 | |
| ### ${1:Section Name} ###
 | |
| $0
 | |
| endsnippet
 | |
| 
 | |
| snippet par "Paragraph" b
 | |
| #### ${1:Paragraph Name} ####
 | |
| $0
 | |
| endsnippet
 | |
| 
 | |
| snippet spar "Paragraph" b
 | |
| ##### ${1:Paragraph Name} #####
 | |
| $0
 | |
| endsnippet
 | |
| 
 | |
| ################
 | |
| # Common stuff #
 | |
| ################
 | |
| snippet link "Link to something"
 | |
| [${1:${VISUAL:Text}}](${3:http://${2:www.url.com}})$0
 | |
| endsnippet
 | |
| 
 | |
| snippet img "Image"
 | |
| $0
 | |
| endsnippet
 | |
| 
 | |
| snippet ilc "Inline Code" i
 | |
| \`$1\`$0
 | |
| endsnippet
 | |
| 
 | |
| snippet cbl "Codeblock" b
 | |
| \`\`\`
 | |
| $1
 | |
| \`\`\`
 | |
| $0
 | |
| endsnippet
 | |
| 
 | |
| snippet refl "Reference Link"
 | |
| [${1:${VISUAL:Text}}][${2:id}]$0
 | |
| 
 | |
| [$2]:${4:http://${3:www.url.com}} "${5:$4}"
 | |
| endsnippet
 | |
| 
 | |
| snippet fnt "Footnote"
 | |
| [^${1:${VISUAL:Footnote}}]$0
 | |
| 
 | |
| [^$1]:${2:Text}
 | |
| endsnippet
 | |
| 
 | |
| pre_expand "create_table(snip)"
 | |
| snippet "tb(\d+x\d+)" "Customizable table" br
 | |
| endsnippet
 | |
| 
 | |
| # vim:ft=snippets:
 | 
