/// <summary>
        ///     Write a line of text to the output pane.
        /// </summary>
        /// <param name="outputPane">
        ///     The output window pane.
        /// </param>
        /// <param name="messageOrFormat">
        ///     The message or message-format specifier to write.
        /// </param>
        /// <param name="formatArguments">
        ///     Optional message-format arguments.
        /// </param>
        public static void WriteLine(this IVsOutputWindowPane outputPane, string messageOrFormat, params object[] formatArguments)
        {
            if (outputPane == null)
            {
                throw new ArgumentNullException(nameof(outputPane));
            }

            if (String.IsNullOrWhiteSpace(messageOrFormat))
            {
                throw new ArgumentException($"Argument cannot be null, empty, or entirely composed of whitespace: {nameof(messageOrFormat)}.", nameof(messageOrFormat));
            }

            outputPane.WriteLine(
                String.Format(messageOrFormat, formatArguments)
                );
        }