Some names are lowercase for example names of programs like grep, ls and vi. If any of these names starts a sentence, should the first letter be capitalised?

Linux has many nice programs. vi is a popular editor. grep is a system tool.

  • 2
    No; I'd use semicolons here to avoid the conflict of rules. Jul 30, 2017 at 15:07
  • 1
    This question is not about English. The English rule demands that you must start with a capital letter, but you cannot change the case of those commands because the filesystem is case-sensitive.
    – tchrist
    Jul 30, 2017 at 15:07
  • 3
    I do not know the rulebook answer, but for ease of reading I would structure the sentence so as to not begin with such words. Jul 30, 2017 at 15:08
  • 3
    @tchrist - How would your publisher handle an article about iPhones?
    – Dan
    Jul 30, 2017 at 16:23
  • 2
    @DjDac - good find. Clearly a ticklish topic! I'm most comfortable with the comment "I suppose it's up to you which rule you give priority, but I'd have thought the right of eBay to say what their own name is outweighs the "right" of pedants to say what constitutes good grammar." There are also many scientific terms (not brand names) that present the same 'problem' - mRNA for example. Suggesting that sentences should be written so as to avoid having these 'problem' words at the start is ridiculous to me. The 'tail' of grammar theory should not be allowed to wag the 'dog' of clarity!
    – Dan
    Jul 30, 2017 at 16:43

1 Answer 1


What is the purpose of what's being written? This is core to providing a relevant answer.

First off I'm going to dismiss that a correct answer is a link to some "official" style guide and that anything less is not an answer. There's no criteria for picking such a guide to be a/the "correct" guide, and they're just conventions anyway, not hard and fast rules. I'm instead going to focus on style as a means of accurately conveying information to a target audience.

For a paper, article, or PowerPoint where you're talking about the commands but where it isn't a guide that people will be working from, I'd say capitalize to avoid the confusion about whether or not the preceding period is part of the command:

Linux has many nice programs. vi is a popular editor.

Linux has many nice programs. Vi is a popular editor.

To an uneducated eye, it's not clear if ".vi" is a file extension or some techie jargon - they don't know whether or not to parse the sentence on the period.

You can also use quotes to clariy:

Linux has many nice programs. "vi" is a popular editor.

Linux has many nice programs. "Vi" is a popular editor.

But for documentation, or a how-to article, or a textbook, or even a presentation or article with a techie target audience, it's more clear to stylize the code in a different, monospaced font and with a slight highlight color, just as it appears in your question or in established docs like the python docs here.

I have written a lot of documentation for Python, Powershell, SQL, and others over the last 5 years and I have found this convention to be the most clear and unambiguous.

Not the answer you're looking for? Browse other questions tagged or ask your own question.