(CNN) The racists had been on parade for parts of two days, but it was only around 20 minutes before reports -- and graphic video -- of the attack that killed a protester in Charlottesville, Virginia, went public on Saturday that President Donald Trump logged on.

"We ALL must be united & condemn all that hate stands for," he tweeted. "There is no place for this kind of violence in America. Lets come together as one!"

Trump's subsequent live comments, delivered hours later, were panned by both Democrats and Republicans. On-camera and online, he was unusually vague. Owner of Twitter's most feared account, to say nothing of the Presidential bully pulpit, Trump turned suddenly circumspect.

An innocent woman had been killed peacefully demonstrating and the President, perpetually animated by his anger, assigned the blame, meekly, to "many sides." No mention of neo-Nazis or white supremacists, no condemnation of their hateful ideology. Graded by his own standard, Trump's remarks came off like an artful dodge. One he wouldn't even attempt to address for another two days.

Suddenly silent

The most positive review of his initial response came from the Daily Stormer, a neo-Nazi and white supremacist website, which wrote, "Trump comments were good," noting that he "refused to answer a question about White Nationalists supporting him" and that, "when asked to condemn, (Trump) just walked out of the room."

By the time Trump returned, on Monday afternoon, to offer a more pointed response, the moment had passed. No matter what he said, his initial refusal to name the racist, anti-Semitic, anti-gay (the list goes on) demonstrators in Charlottesville would always say more.

"Trump's belated criticism of his staunchest supporters -- racist, Nazi, KKK terrorists -- rings hollow," said Murshed Zaheed, the liberal group CREDO's political director, in an email after Monday's brief speech. "When it is politically convenient, Trump frequently and aggressively bullies individuals and organizations by name, but in this case, he disgracefully protected white supremacist Nazis for days before speaking out."

Happy to attack

When terrorists struck London on a Saturday night in early June, the President reacted on Twitter before officials overseas had a full account. First, Trump retweeted an unsourced report of "Fears of new terror attack after van 'mows down 20 people' on London Bridge..." posted by Drudge

We need to be smart, vigilant and tough. We need the courts to give us back our rights. We need the Travel Ban as an extra level of safety! — Donald J. Trump (@realDonaldTrump) June 3, 2017

Soon after, he pivoted to his own policy push: "We need to be smart, vigilant and tough," he tweeted. "We need the courts to give us back our rights. We need the Travel Ban as an extra level of safety!" Over the next 72 hours, he tweeted repeatedly about the incident, including an attack on London's mayor, Sadiq Khan.

Pathetic excuse by London Mayor Sadiq Khan who had to think fast on his "no reason to be alarmed" statement. MSM is working hard to sell it! — Donald J. Trump (@realDonaldTrump) June 5, 2017

Patience has never been a marker of Trump's response to terror -- confirmed or not.

During the presidential campaign, Trump at the beginning of a stump speech in Colorado told the crowd, "a bomb went off in New York and nobody knows exactly what's going on." He said this about two hours before city officials publicized details of the incident or what actually caused the explosion.

Unlike his past criticism of people like union leader Chuck Jones , the target of a tweet last December ("Chuck Jones, who is President of United Steelworkers 1999, has done a terrible job representing workers. No wonder companies flee country!) or Meryl Streep ("One of the most over-rated actresses in Hollywood, doesn't know me but attacked last night at the Golden Globes..."), to whom he responded in a much more timely way, the President only sharpened his response to the Charlottesville attack after it become politically unfeasible to remain quiet.

He rarely requires such prodding. Just ask Arnold Schwarzenegger. The actor and Republican former governor of California, who had been critical of Trump, then succeeded him as host of "The Celebrity Apprentice," has been a frequent target. Trump at the National Prayer Breakfast in February, offered to "pray for Arnold, if we can, for those ratings, OK?" Schwarzenegger responded, lightheartedly offering to exchange jobs, but Trump wasn't ready to let go.

"Yes, Arnold Schwarzenegger did a really bad job as Governor of California and even worse on the Apprentice," he tweeted the next morning, "but at least he tried hard!

Yes, Arnold Schwarzenegger did a really bad job as Governor of California and even worse on the Apprentice...but at least he tried hard! — Donald J. Trump (@realDonaldTrump) February 3, 2017

A month later, when Schwarzenegger's run on the show came to an end, Trump called him out again, tweeting that "he was fired by his bad (pathetic) ratings, not by me. Sad end to great show."

Arizona Sen. John McCain too knows just how sharply Trump is capable of retaliating when he senses a personal affront. Online or off. Early on in the run-up to the 2016 primary season, McCain was critical of Trump. The candidate fired back by dissing McCain's military service.

"He's not a war hero," Trump said of the Vietnam veteran, who spent more than five years a prisoner of war in Hanoi. "He's a war hero because he was captured. I like people who weren't captured."

What he doesn't say

Beyond petty political squabbles, Trump has never been overly cautious or shy about denouncing or naming those who carry out terror attacks, often using passionate, angry language to make his point.

After the nightclub massacre in Orlando last summer, Trump called the gunman a "son of a b---h" and, in a tweet, relayed "reporting" from an unknown source that claimed, "Orlando killer shouted 'Allah hu Akbar!' as he slaughtered clubgoers."

Reporting that Orlando killer shouted "Allah hu Akbar!" as he slaughtered clubgoers. 2nd man arrested in LA with rifles near Gay parade. — Donald J. Trump (@realDonaldTrump) June 12, 2016

In February, less than a week after Trump let pass without comment a French-Canadian man's deadly attack on a mosque in Quebec City, the President was quick to tweet his condemnation of "a new radical Islamic terrorist."

That person, Trump shared as if from a news anchor's desk, "has just attacked in Louvre Museum in Paris. Tourists were locked down. France on edge again. GET SMART U.S."

A new radical Islamic terrorist has just attacked in Louvre Museum in Paris. Tourists were locked down. France on edge again. GET SMART U.S. — Donald J. Trump (@realDonaldTrump) February 3, 2017

So the temperature was already up when a white supremacist mob descended on Charlottesville late Friday, parading around the city with their store-bought torches. As the rally turned violent that night, and clashes with anti-racist protesters carried over into Saturday morning, Trump was nowhere to be found.

Language matters — or does it?

In the second presidential debate debate last fall, Trump explained why he felt so strongly that President Barack Obama and his Democratic opponent, Hillary Clinton, needed to speak the words "radical Islamic terrorism."

First citing attacks in Paris, Orlando, New York and San Bernardino, California, Trump then pivoted to Clinton.

"To solve a problem, you have to be able to state what the problem is or at least say the name," he said. "She won't say the name and President Obama won't say the name. But the name is there. It's radical Islamic terror. And before you solve it, you have to say the name."

It wasn't until early Monday afternoon, some 72 hours after the deadly attack in Charlottesville, Virginia, that Trump finally took his own advice.

"Racism is evil," he said, "and those who cause violence in its name are criminals and thugs, including KKK, neo-Nazis, white supremacists, and other hate groups are repugnant to everything we hold dear as Americans."

Now that Ken Frazier of Merck Pharma has resigned from President's Manufacturing Council,he will have more time to LOWER RIPOFF DRUG PRICES! — Donald J. Trump (@realDonaldTrump) August 14, 2017

But even then, his carefully reworked statement stood in contrast to a morning tweet, when he attacked Merck CEO Kenneth Frazier, who is black, after Frazier quit the White House manufacturing council in protest of Trump's handling of the Charlottesville killing. The tweet had been composed with such ease. His remarks, less so.

What's in a name?

Pressed by CNN's Jake Tapper Sunday on "State of the Union," Thomas Bossert, the White House homeland security adviser, defended Trump's decision to not more directly call out -- or name -- the white supremacists in Charlottesville.

Why? Trump, he said, chose not to "dignify the names of these groups of people," opting instead to keep the focus of his initial statement on "the fundamental issue."

JUST WATCHED WH adviser: Trump didn't dignify groups Replay More Videos ... MUST WATCH WH adviser: Trump didn't dignify groups 01:25

But only a couple weeks earlier, Trump at a speech in New York very openly named, shamed and threatened members of a specific gang — one with roots in both Central America and the US.

"Together we're going to restore safety to our streets and peace to our communities and we're going to destroy the vile, criminal cartel MS-13 and many other gangs," Trump said, a comment that, by Bossert's logic, only would have dignified the group. Trump has also very openly railed against ISIS, the North Korean regime... again, the list drags on.

Rather than any broader principle, the boundaries of his self-interest seem to be the most consistent indicator of what Trump will say or who he'll skewer.

His talk of "radical Islamic terror" ceased during a May visit to Saudi Arabia, when tap danced around it for, in all likelihood, the same reason the Obama administration had -- it is a blunt, blanket term that risks alienating the wider Muslim world, to say nothing of US strategic allies in the Gulf.

Florida Sen. Marco Rubio spoke about the "consequences" of electing a loose-lipped commander in chief during a GOP primary debate in early 2016 . "Presidents," he warned, "can't just say anything they want."