hi, i’m trying to build a plugin that edit all href in the current file, and replace them with base64 of them content.
But the plugin work only for the first href.
I really don’t know why, here is the code :
import sublime
import sublime_plugin
from base64 import b64encode
import re
class HrefToB64Command(sublime_plugin.TextCommand):
	def run(self, edit):
		# all the href in the file
		hrefRegions = self.view.find_all('href="([^"]*)"')
		# once we get all the regions
		# we loop on them
		for href in hrefRegions:
			# the full text (href="...")
			text = self.view.substr(href)
			# the link in the text
			link = re.match('href="([^"]*)"', text).group(1)
			# the link base64 encoded
			link = str(b64encode(bytes(link, 'utf-8')), 'utf-8')
			print(link)
			# the final href encoded
			finalHref = 'href="'+link+'"'
			# the replace
			self.view.replace(edit, href, finalHref)