After Refactoring, Sudden Slew of Nonsensical Errors

After I refactored the name of one of my files (GameManager), other errors in another file started appearing, and refuse to go away. This segment of code was working fine before, but now Unity is giving me errors…

using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Text.RegularExpressions;
using System.Text;
using System.Xml;
using System.Collections.Generic;



public class TextCreepScript : Singleton<TextCreepScript> {

	public Script script;
	public float timePerChar;
	public float periodPauseTime;
	public float ellipsisFactor;
	public float commaPauseTime;
	public float returnPauseTime;
	public float shortPauseTime;
	private Text dialogueBox;
	private AudioSource source;
	public AudioClip[] clips;
	private StringBuilder stringBuilder;

	void Start() {
		script = GetScriptFromXML(Application.loadedLevelName);

	}

	public IEnumerator PreGameText() {
		StartCoroutine(GameManager.fadeIn(DialogueGroup.Instance.GetComponent<CanvasGroup>(), 1e10f));
		dialogueBox = GetComponent<Text>();
		source = GetComponent<AudioSource>();
		Session session = script.sessions[0];
		yield return StartCoroutine(UpdateText(session));
		StartCoroutine(GameManager.fadeOut(DialogueGroup.Instance.GetComponent<CanvasGroup>(), GameManager.Instance.opacPerFrame));

	}
	public IEnumerator InGameText() {
		List<Session> inGameSessions = script.sessions.GetRange(1, script.sessions.Count - 1);

		foreach (Session session in inGameSessions) {
			yield return new WaitForSeconds(session.startTime);
			StartCoroutine(GameManager.fadeOut(DialogueGroup.Instance.GetComponent<CanvasGroup>(), GameManager.Instance.opacPerFrame * 4));
			yield return StartCoroutine(UpdateText(session));
			StartCoroutine(GameManager.fadeOut(DialogueGroup.Instance.GetComponent<CanvasGroup>(), GameManager.Instance.opacPerFrame * 4));
		}

	}

	public IEnumerator UpdateText(Session session) {
		source.clip = session.clip;
		source.Play();
		string trueString = session.text;
		dialogueBox.text = "";
		int charsShown = 0;
		int totalChars = trueString.Length;
		stringBuilder = new StringBuilder();

		while (charsShown < totalChars) {
			if (Input.GetKey("s")) {
				source.Stop();
				break;
			}
			stringBuilder.Append(trueString[charsShown]);
			if (charsShown > 0 && (trueString[charsShown-1] == '.' || trueString[charsShown-1] == '!')) {
				yield return new WaitForSeconds(periodPauseTime);
			} else if (charsShown > 0 && trueString[charsShown-1] == ',') {
				yield return new WaitForSeconds(commaPauseTime);
			} else if (charsShown > 0 && trueString[charsShown-1] == '…') {
				yield return new WaitForSeconds(periodPauseTime * ellipsisFactor);
			} else if (charsShown > 0 && trueString[charsShown-1] == '

‘) {
yield return new WaitForSeconds(returnPauseTime);
stringBuilder.Length = 0; // “clears” the stringBuilder
stringBuilder.Append(trueString[charsShown].ToString());
charsShown++;
dialogueBox.text = stringBuilder.ToString();
continue;
} else if (charsShown > 0 && trueString[charsShown-1] == ’ ‘) {
charsShown++;
dialogueBox.text = stringBuilder.ToString();
continue;
} else if (charsShown > 0 && trueString[charsShown-1] == ‘~’) {
print(stringBuilder.Length.ToString());
print((charsShown-1).ToString());
int endIndex = stringBuilder.Length - 2;
stringBuilder.Replace(’~’, ‘​’, endIndex, 1); // zero-width space in 2nd pair of single quotes
dialogueBox.text = stringBuilder.ToString();
charsShown++;
yield return new WaitForSeconds(shortPauseTime);
continue;
} else {
yield return new WaitForSeconds(timePerChar * session.scale);
}
charsShown++;
dialogueBox.text = stringBuilder.ToString();
}
}
Script GetScriptFromXML(string fileName) {
TextAsset tAsset = (TextAsset) Resources.Load(fileName, typeof(TextAsset));
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(tAsset.text);
Script s = new Script();
foreach (XmlElement node in xmlDoc.SelectNodes(“sessionCollection/session”)) {
s.sessions.Add(new Session(node.InnerText, float.Parse(node.GetAttribute(“time”)), float.Parse(node.GetAttribute(“scale”))));
}
// Attach audio clips to each session
for (int i=0; i<s.sessions.Count; i++) {
Session tempSession = s.sessions*;*
_ tempSession.clip = clips*;_
_ s.sessions = tempSession;
}*_

* return s;*
* }*
* public class Script {*
* public List sessions;*

* public Script() {*
* this.sessions = new List();*
* }*

* }*
* public struct Session {*
* public string text;*
* public float startTime;*
* public float scale;*
* public AudioClip clip;*
* public Session(string t, float sT, float scl) {*
* this.text = t;*
* this.startTime = sT;*
* this.scale = scl;*
* this.clip = null;*
* }*
* }*
}
I now have the following errors, many of which reference rows and columns that lack any code at all (whitespace or otherwise).
Assets/Scripts/TextCreepScript.cs(70,84): error CS1012: Too many characters in character literal
Assets/Scripts/TextCreepScript.cs(70,86): error CS1525: Unexpected symbol <internal>'*_</em> <em>_*Assets/Scripts/TextCreepScript.cs(68,32): warning CS0642: Possible mistaken empty statement*_</em> <em>_*Assets/Scripts/TextCreepScript.cs(72,30): error CS1525: Unexpected symbol else’
Assets/Scripts/TextCreepScript.cs(79,30): error CS1519: Unexpected symbol else' in class, struct, or interface member declaration*_</em> <em>_*Assets/Scripts/TextCreepScript.cs(79,47): error CS1519: Unexpected symbol >’ in class, struct, or interface member declaration
Assets/Scripts/TextCreepScript.cs(79,54): error CS0178: Invalid rank specifier: expected ,' or ]'
Assets/Scripts/TextCreepScript.cs(79,80): error CS1519: Unexpected symbol ==' in class, struct, or interface member declaration*_</em> <em>_*Assets/Scripts/TextCreepScript.cs(80,44): error CS1519: Unexpected symbol ++’ in class, struct, or interface member declaration
Assets/Scripts/TextCreepScript.cs(81,50): error CS1519: Unexpected symbol =' in class, struct, or interface member declaration*_</em> <em>_*Assets/Scripts/TextCreepScript.cs(81,74): error CS1519: Unexpected symbol (’ in class, struct, or interface member declaration
Assets/Scripts/TextCreepScript.cs(83,30): error CS8025: Parsing error
Any help would be greatly appreciated.

Found my own solution… I feel a bit silly now for asking…

Replace the ‘…’ and zero-width-space for their unicode IDs, i.e. '\u2026' and '\u200b' respectively.

Not sure why ‘…’ was working before, but oh well.